Skip to content

v5.0.13

Latest

Choose a tag to compare

@jobisoft jobisoft released this 30 Jul 23:57

A modernized version of the EAS provider for TbSync v5 for Thunderbird 153

This version has gone through extensive testing, but it is still an early beta release. Please be prepared for data duplication or data loss issues, and have a backup of your calendar and contacts at hand.

Because of the internal changes in this release, it is probably best to disable all your accounts and re-enable them afterwards, to start fresh. This re-downloads everything from the server and clears out any stale local state.

You can install the beta version of the EAS provider by dragging the .xpi file links from the Assets section below into Thunderbird’s Add-on Manager. Thunderbird will see the link and download and install the add-on automatically. You also need the beta version of TbSync v5.

Update TbSync as well. This release changes the internal protocol between TbSync and its providers. This provider will not connect to TbSync v5.0.12 or older, and TbSync v5.0.13 will not accept this provider at v5.0.12 or older.

Release plan

This version will auto-update to every new released beta version. At some later time, the version will also be published on ATN (addons.thunderbird.net) for general availability.

Technical notes

This rewrite is on track to eliminate the use of Experiment APIs and become fully compatible with Thunderbird's Release Channel. TbSync and its providers will become pure WebExtensions.

The current beta versions still rely on Experiments for:

  • Migrating existing data to WebExtension storage
  • Calendar support

See: #309 for discussions.

Important bug fixes in v5.0.13

  • all-day events no longer shift by a day. Depending on your time zone they appeared one day early (east of UTC) or one day late (west of it), both when reading them from the server and when sending them back. Thanks to @mvdberge for finding and fixing this
  • recurring events authored in another time zone no longer drift by an hour around daylight-saving changes. Zones that share your UTC offset but switch DST on a different date were all treated as the same zone, so the series expanded with the wrong rule. Also from @mvdberge
  • a rescheduled or cancelled occurrence of a recurring event now updates. On Exchange 16.x the server names the affected occurrence differently, and the provider did not recognise it — so a moved occurrence kept its original time and a cancelled one was never struck through. Diagnosed and first fixed for v4 by @NielBuys, and confirmed against a live server by @tomaskovacik
    • If you are already affected, the corrected data arrives after a one-time re-download of the calendar: uncheck it in TbSync, sync, re-check it, sync again.
  • if Thunderbird reports no usable default time zone, the Event Log now says so, instead of silently treating your zone as UTC and getting every date wrong by the offset

Changes in v5.0.13

  • the provider no longer asks for the management permission. It only ever used it to watch for TbSync being installed or enabled, which is no longer how the two find each other
  • a two-second pause after every sync that uploaded something is now optional, and off by default. It exists because some Exchange servers re-send a change they have just accepted, which can overwrite an edit made in the meantime. Most syncs that upload something are now that much quicker. If local changes ever go missing, turn Wait for the server to echo back uploaded changes back on in the add-on's Advanced options
  • the protocol this provider speaks to TbSync moves from 1.2 to 1.3

Changes carried forward from v5.0.12

Important bug fixes

  • re-authenticating an account now works. The account's action button — labelled Authenticate as of that version — did nothing at all: the provider never implemented the hook behind it, so the Event Log filled with onReauthenticate not implemented by provider and the account stayed frozen. The only way out was to delete the account and add it back. Signing in as a different user is refused, and clicking the button again while the sign-in window is open brings that window to the front
  • username/password accounts can recover from an authentication failure. They previously had no way out either: correcting the password did not clear the error, and Connect was greyed out. The button now opens the account's settings and hands the account back once you save
  • a server-initiated resync no longer duplicates every item in a folder. When a server rejects our sync key, the whole folder is re-fetched — and every item was being re-created next to the copy already in your address book or calendar. Item identity is now recovered from the items themselves, so they are matched up instead
  • a refresh token rotated by the server is now saved, so an account that has been running for a while still works after a Thunderbird restart
  • cached credentials are dropped when an account is disabled or deleted, rather than living on until Thunderbird restarts

Changes carried forward from v5.0.11

Important bug fixes

  • Fixed multiple migration issues
  • return to legacy DeviceOS values (WINNT, Linux, Darwin)
  • provider should now correctly handle timezone in EAS v14.*
  • correctly handle recurrence across DST
  • better contact modification check
  • fix data loss bug
  • fix attempt for status 141 and status 165

New features in v5

  • EAS GAL is back (global directory lookup)
  • EAS provider allows setting the DeviceOS value manually in the global EAS add-on options (#257)