Releases: eyalroz/removedupes
TB 150 compatibility, Originals folder mechanism revamp, etc.
- Compatibility: Known to be compatible with Thunderbird versions 140., 150. (and incompatible with Thunderbird 115 and earlier).
Changes relative to 0.6.5.1:
- #303 : Revamp of the Originals folders mechanism. The README files defines the new semantics. Most important changes: The Originals and search folders may now safely overlap, with a well-defined result; dupe sets only containing messages from Originals folders will be ignored, not deleted.
- #302 : Account for the fact that
window.statusFeedbackis no longer available with TB 150 - #301 : Removed references to some no-longer-existing Communicator suite stylesheets
- #298 : When deciding which folders to search, now properly accounting for the selected folders and the active folders (e.g. when right-clicking it).
- #272 : Fixed a bug preventing searching special folders for dupes even when such searches are enabled by the extension preferences.
- #272 : Now clearly reporting the situation of there not being any valid folders selected for a search (where before, the extension would have presented the wrong error message).
- #239 : Duplicate search no longer fails automatically when multiple folders are searched.
- #185 : Dupe review dialog tree widget - restored proper chrome for column header row, including a mini-button for picking which columns are visible.
- #185 : Layout improvement for the side-buttons for picking which copies to keep
- #185 : Shortened some button labels in Japanese to make sure they fit the width.
Also, some internal refactoring in removedupes.js, with more use of newer ECMAScript language facilities, locally-defined functions etc.
Unresolved Thunderbird compatibility issues
Despite being generally compatible with the newer versions, some serious outstanding issues do remain, which I have not (yet) been able to resolve:
- The toolbar menu-button: TB developers broke the main toolbar, and the new "unified toolbar" is difficult to get buttons onto. How to do so is not documented. The code seems to shut out regular extensions, not allowing addition of more buttons except through a tightly controlled and limited mechanism which straightjackets webextensions. Typically hostile design.
- Folder context menu items: Multi-folder selection works again in Thunderbird since v128, but - it hides all context menu items for multi-folder selection which it doesn't know about; and leaves no hooks for making them visible again, so our context menu items get wiped away. This is tracked as #305.
0.6.5.1: Ambitious max compatibility version, body comparison revamp, localization updates
- Compatibility: Known to be compatible with Thunderbird versions 147.* (and incompatible with Thunderbird 115 and earlier); assumed compatible with TB versions up to 160.0
Changes relative to 0.6.4:
- Since TB release a new version every month, and we can't keep pace with that - we'll bump the maximum compatible version, so that the extension is not rejected within the next year or so on account of incompatibility; essentially, we will now be optimistic rather than defensive in assuming forward compatibility.
- #285 No longer reporting negative numbers of messages when refining dupe sets with body comparison
- #288 Italian translation improvements (thanks @topoldo!)
- #293 Japanese translation corrections & some shortening for nicer review dialog layout (thanks @thinrope!).
Unresolved Thunderbird compatibility issues
Despite being generally compatible with the newer versions, some serious outstanding issues do remain, which I have not (yet) been able to resolve:
- The toolbar menu-button: TB developers broke the main toolbar, and the new "unified toolbar" is difficult to get buttons onto. How to do so is not documented. The code seems to shut out regular extensions, not allowing addition of more buttons except through a tightly controlled and limited mechanism which straightjackets webextensions. Typically hostile design.
- Folder context menu items: Multi-folder selection works again in Thunderbird since v128, but - it hides all context menu items for multi-folder selection which it doesn't know about; and leaves no hooks for making them visible again, so our context menu items get wiped away.
Version 0.6.4: TB 144.x compatibility & translation fixes
- Compatibility: Compatible with Thunderbird 144.* (and incompatible with Thunderbird 115 and earlier).
Changes relative to 0.6.3:
- Maximum compatible Thunderbird version bump
- #270 Fixed a few mis-translations into French
- German translation improvements
Unresolved Thunderbird compatibility issues
Despite being generally compatible with the newer versions, some serious outstanding issues do remain, which I have not (yet) been able to resolve:
- The toolbar menu-button: TB developers broke the main toolbar, and the new "unified toolbar" is difficult to get buttons onto. How to do so is not documented. The code seems to shut out regular extensions, not allowing addition of more buttons except through a tightly controlled and limited mechanism which straightjackets webextensions. Typically hostile design.
- Folder context menu items: Multi-folder selection works again in Thunderbird since v128, but - it hides all context menu items for multi-folder selection which it doesn't know about; and leaves no hooks for making them visible again, so our context menu items get wiped away.
Version 0.6.3: CSP restriction bug fix
- Compatibility: Compatible with Thunderbird 128.* through 137.* (and incompatible with Thunderbird 115 and earlier).
Changes relative to 0.6.2:
- #262 : In some cases, Thunderbird refuses to let our code work due to a hardening of the "content security policy" constraints. We now work around that by meeting the stricter constraints without a change of functionality.
Unresolved Thunderbird compatibility issues
Despite being generally compatible with the newer versions, some serious outstanding issues do remain, which I have not (yet) been able to resolve:
- The toolbar menu-button: TB developers broke the main toolbar, and the new "unified toolbar" is difficult to get buttons onto. How to do so is not documented. The code seems to shut out regular extensions, not allowing addition of more buttons except through a tightly controlled and limited mechanism which straightjackets webextensions. Typically hostile design.
- Folder context menu items: Multi-folder selection works again in Thunderbird since v128, but - it hides all context menu items for multi-folder selection which it doesn't know about; and leaves no hooks for making them visible again, so our context menu items get wiped away.
Version 0.6.2: Review dialog properly skinned, bug fixes
Changes relative to 0.6.1:
- Compatibility: Compatible with Thunderbird 128.* through 137.* (and incompatible with Thunderbird 115 and earlier).
Review dialog appearance/skinning fixed
- #251 : With TB 115, the duplicate review dialog got rather messed up. It's been functional, but looked rather horrid and there's been trouble with element sizes and with the overall dupe tree area size. Those are now fixed - as far as I can expect to be able to fix them. The styling is not 100% as I would like it, but it's quite usable, with the sizes and resizability in order, and with the relevant icons being displayed. Relevant bugs:
Bug fixes
- #202 The comparison of messages by body was broken (probably somewhere between Thunderbird 102 and 115); it is now fixed.
- #253 The extension now again properly recognizes selections of multiple folders, both for originals-marking and for dupe search.
Other changes
- #260: Now hiding a dummy column in the dialog tree column picker
Unresolved Thunderbird compatibility issues
Despite being generally compatible with the newer versions, some serious outstanding issues do remain, which I have not (yet) been able to resolve:
- The toolbar menu-button: TB developers broke the main toolbar, and the new "unified toolbar" is difficult to get buttons onto. How to do so is not documented. The code seems to shut out regular extensions, not allowing addition of more buttons except through a tightly controlled and limited mechanism which straightjackets webextensions. Typically hostile design.
- Folder context menu items: Multi-folder selection works again in Thunderbird since v128, but - it hides all context menu items for multi-folder selection which it doesn't know about; and leaves no hooks for making them visible again, so our context menu items get wiped away.
Version 0.6.1: Thunderbird 136 compatibility
- Compatibility: Compatible with Thunderbird 136.* - mostly.
- Compatibility: Not compatible with Thunderbird 115 and earlier
There is no change to the functionality or user-visible behavior with this version, only the compatibility.
Internal changes
- #249 The internal modules of the extensions are now ES6 EcmaScript modules.
- Loader script is now fully generic, knowning nothing about the extension and taking all information from the manifest file.
- WindowListener is updated to version 1.63 (which itself is partially my update, based on the version Axel Grude wrote.,
- Removed unused XUL files
Unresolved Thunderbird compatibility issues
Despite compatibility overall, several outstanding issues remain with newer version of Thunderbird, which I have not been able to resolve
- TB developers broke the main toolbar, and the new "unified toolbar" is difficult to get buttons onto. How to do so is not documented, and I have not figured it out yet. Toolbars on individual message reading and message composition windows work fine.
- Multi-folder selection works again in Thunderbird, but - it hides all context menu items for multi-folder selection which it doesn't know about; and leaves no hooks for making them visible again. How friendly.
- In recent versions, TB has mostly deprecated XUL controls, and replaced them with rickety XHTML alternatives, which don't allow us the control we once had. The review dialog therefore looks funny, not everything is resizable which should be, and resizing things doesn't seem to persist.
Version 0.6.0: Thunderbird 128 compatibility, "originals folders" fixed
- Compatibility: Compatible with Thunderbird 128.* - mostly.
- Compatibility: Not compatible with Thunderbird 115 and earlier
Unresolved TB 128 compatibility issues
Note: The extension is fully compatible with TB 115 except for this issue:
- TB developers broke the main toolbar, and the new "unified toolbar" is difficult to get buttons onto. How to do so is not documented, and I have not figured it out yet. Toolbars on individual message reading and message composition windows work fine.
Bug fixes:
- #183 Fixed a typo which prevented setting originals folders from working properly.
Other changes:
- #226 Added the URL of the extension's GitHub page to the manifest file
... and some internal refactoring/linting with no functionality changes.
Version 0.5.4 Beta 5: Thunderbird 115 compatibility
Changes since v0.5.3.2:
Features
- #160 Now using the progress animation of the status bar while working.
Compatibility
- Now supporting Thunderbird 115. There are likely some remaining issues - please report them!
- The toolbar menubutton is currently not supported with TB 115.
Improvements
Bug Fixes
- #154 Now properly updating the status bar both when building the dupe sets and when refining them (e.g. with the body).
- #177 When aborting the dupe search with an alert message, now clearing the status bar.
Noteworthy internal changes
- #180 Now using the WindowListener API v1.62
0.5.3.2: Code modernization, dark mode support, status bar updates
Changes since v0.5.2.2:
Compatibility
- Minimum supported Thunderbird version is now 91.
Other user-facing changes
- Proper support of the dupe review dialog for dark mode
- Bug fix: Now properly respecting the default action chosen in the add-on preferences dialog
- Status bar updates now work again! You will get updates while the dupes are searched for (but - not while they are removed, see issue #105)
- More status bar updates during actual removal of dupes: One status bar update for each folder being worked on
- No longer throwing an uncaught exception due to redundant loading of
customElement.js - Now properly handling the case of some of the dupes being in the target folder (i.e. target folder being one of the search folders)
- Changed "Size" label to "Size (Headers & Body)"
Internal
- using
.codeinstead of the deprecated.keyCode - No longer using
NsSyncStreamListenerfor getting message bodies - Defining global
RemoveDupesobject members separately to improve readability - Using the
XPCOMUtilsmodule to get services - Corrected some variable name typos in
removedupes.js - Removed all of the ifdef-DEBUG lines from the code
- Got rid of tabs had snuck into some
.jsfiles - A bunch of refactoring
- Linted the code with ESlint and now following all those rules (with some specific exceptions in the ESLint config file, which is now part of the extension)
- We now have a package.json file for the extension (which makes it easier for some IDEs to open it)
- Service references are now const + out of container objects with single members.
- Accommodating the "globalization" of the general Services module
- Less/no references to services we don't actually use
- Checkmark images are now inline SVGs (for light & dark mode)
v0.5.2.2: Thunderbird 91 (and 102) support
Changes since v0.5.1:
Compatibility - Thunderbird 91 (and 102)
- #56: No longer failing to recurse subfolders in dupe search with TB 86 and later
- #55: No longer failing when trying to move messages to Trash with TB 91
- Other minor internal changes required for TB 91 compatibility
- Works with TB 102 as well
Other user-facing changes
- #67 Support for common-account Trash folder as the default move target (which is the default action for dupes)
- Review dialog title change.
- Bug fix: Email address stripping no longer fails when some characters need to be escaped.
- #119 Satisfying ATN requirement of setting an explicit maximum compatible version (103.0)
Internal
- #108 : Now failing more gracefully when some folders' messages cannot be iterated, rather than "crashing" the entire dupe search
- #65 : Dropped our own custom preference wrapper code in favor of using
Preferences.jsm - Dropped some internal checks relevant for unsupported, older TB versions.
- #66 : Discarded our custom
isEmpty()implementation in favor of the same function fromObjectUtils.jsm - Updated the extension loader ("Window Listener") API to v1.5.6.
- Build script changes.
- Dropped the string2hex facility - we no longer use it
- Removed any remaining traces of the "(alternative)" qualifier after the extension name.
- Removed mentions of Eyal's old email address in favor of his current one at GMX.
- Whitespace, indentation changes