<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>A GREAT step to get this long pending requirement available for
      Thunderbird!</p>
    <p>Many thanks for the hard work, and it's good to see the <a
        href="https://github.com/mozilla-comm/ical.js/">ical.js</a>
      makes it's way to become a Thunderbird standard!<br>
    </p>
    <p>Günter<br>
    </p>
    <p><br>
    </p>
    <div class="moz-cite-prefix">Am 27.08.20 um 04:04 schrieb Geoff
      Lankow:<br>
    </div>
    <blockquote type="cite"
      cite="mid:54604844-b7aa-a832-ef7d-0927b90a8cc7@thunderbird.net">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <p>You may already be aware that bits and pieces of CardDAV
        support have landed in various versions of Thunderbird. This is
        an appropriate point for me to update you on what Thunderbird
        can and can't do with regards to CardDAV.<b><br>
        </b></p>
      <p><i>Please note that CardDAV support is <b>NOT</b> considered
          ready for general use.</i><br>
      </p>
      <p><b>Status of ESR, Thunderbird 78:</b></p>
      <p>ESR shipped with the bulk of the pieces in place. Unfortunately
        there wasn't time to complete the work, and so we're not
        publicising CardDAV as a feature of 78.</p>
      <p>Currently on ESR, CardDAV can connect to a server and download
        your contacts, and updates you make to contacts will be sent to
        the server, but there are no synchronisation abilities. The UI
        to create a CardDAV address book (File – New – CardDAV Address
        Book in the Address Book window) is hidden behind the preference
        <font face="monospace"> mail.addr_book.carddav.enabled</font>.</p>
      <p><b>Status of Beta, Thunderbird 81:</b></p>
      <p>CardDAV has the ability to do periodic and on-demand
        synchronisation with the server. You can right click on an
        address book in the UI and choose synchronise. Automatic
        synchronisation happens shortly after Thunderbird starts, and
        every 30 minutes after that, but there's no control it. The
        preference still exists.</p>
      <p>If you've been trying out earlier versions of the Thunderbird
        CardDAV implementation, you should remove any directories you
        created and recreate them. The set-up process now does some
        things it didn't previously do.<br>
      </p>
      <p><b>Plan for Daily, Thunderbird 82:</b></p>
      <p>The final pieces of the initial implementation of CardDAV are
        in review and are going to land any day now. When they do I'll
        consider this phase complete and remove the preference.</p>
      <p><b>What's been done so far:</b></p>
      <p>The origins of Thunderbird's address book system date back to
        the 1990s and they're deeply entwined with the rest of the
        program. They are also not very compatible with many of the
        features of the vCard format, which is used for the exchange of
        information between client and server.</p>
      <p>A lot of work has gone into modernising Thunderbird's support
        for vCard. What existed before was the absolute minimum of
        read/write capabilities for vCard 2.1. vCard 2.1 has since been
        superseded by vCard 3.0 and 4.0. I have completely replaced
        Thunderbird's vCard implementation with that of <a
          href="https://github.com/mozilla-comm/ical.js/"
          moz-do-not-send="true">ical.js</a>, which we ship as part of
        the Thunderbird calendar. Thunderbird can now read and write
        vCards in versions 3.0 and 4.0, and still (through a variety of
        hacks) read vCard 2.1.</p>
      <p>To translate vCards into objects the rest of Thunderbird
        understands (<font face="monospace">nsIAbCard</font>), without
        completely rewriting everything, I've created utility functions
        that translate between the two formats. Not all vCard data can
        be represented in the nsIAbCard format, so I've tried hard to
        ensure that Thunderbird can use the most relevant information,
        and that information doesn't get lost when converting back to
        vCard. (And yes, for those of you who have read the CardDAV
        documentation, we do store the original vCard and only modify it
        as necessary.)</p>
      <p>Finally we took our base address book storage, added the
        CardDAV protocol to it, and this is where we are today.</p>
      <p><i>At this point I'd like to thank the various people who have
          provided access to different types of servers for testing.
          That's been very helpful. Thank you.</i></p>
      <p><b>Can I do all of the things CardDAV is capable of, like mark
          an email address as "home" or "work"?</b></p>
      <p>No. Not only is our current format incapable of handling this
        information, but there is no user interface to do it with. For
        all intents and purposes, at this stage, a CardDAV address book
        behaves just like a normal Thunderbird address book, except that
        changes are relayed to a remote server and updates are retrieved
        from the server.</p>
      <p><b>Will I be able to do these things in the future?</b></p>
      <p>Yes. That's the intention anyway, but I haven't got a crystal
        ball so can't see what the future holds.</p>
      <p>By next year's ESR release, we should have a new user interface
        for the address book. This should be able to do many of the
        useful things you can do in other address book software, but it
        will require a lot more work in the background.</p>
      <p><b>Can I use this to connect to my Google contacts?</b></p>
      <p>Not at this stage. As per usual, Google have to be different,
        and they use OAuth instead of standard HTTP authorisation. The
        code is written, but we're waiting on Google to allow us to ask
        you for permission to access your contacts.</p>
      <p><b>How does this affect WebExtensions?</b></p>
      <p>To WebExtensions, a CardDAV address book appears the same as a
        regular address book, and no modifications are necessary at this
        point. In the future there may be some additional API functions
        available, and we'll try to do this in a backwards-compatible
        way.</p>
      <b>Where do I report bugs?</b><br>
      <p> Please use the <a
href="https://bugzilla.mozilla.org/enter_bug.cgi?product=MailNews+Core&component=Address+Book"
          moz-do-not-send="true">Mailnews Core – Address Book</a>
        component to report bugs, unless the bug is in the UI, in which
        case use <a
href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Thunderbird&component=Address+Book"
          moz-do-not-send="true">Thunderbird – Address Book</a>. Please
        provide as much information as you can, including the version of
        Thunderbird you see the problem in, any applicable error
        messages, and if it's relevant, the server software you're
        connecting to.</p>
      <p>The Network Inspector tool (Tools – Developer Tools – Developer
        Toolbox, then choose Network) is very useful for debugging
        problems. If the server reports an error message and Thunderbird
        fails to handle it appropriately, please file a bug.</p>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
tb-planning mailing list
<a class="moz-txt-link-abbreviated" href="mailto:tb-planning@mozilla.org">tb-planning@mozilla.org</a>
<a class="moz-txt-link-freetext" href="https://mail.mozilla.org/listinfo/tb-planning">https://mail.mozilla.org/listinfo/tb-planning</a>
</pre>
    </blockquote>
  </body>
</html>