Skip to content

v6.16.0

Latest

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 22 Aug 16:17
· 34 commits to main since this release
Immutable release. Only release title and notes can be modified.

This release came out of draining the audit findings from v6.15.0, plus two rounds of adversarial review that found real defects in those fixes. Most of it is things that were quietly wrong.

The Firefox build was failing validation

v6.14.0 declared the Gecko data collection disclosure, which Firefox reads from version 140 and Firefox for Android from 142, while the manifest still claimed 121 as its floor. The pinned web-ext was old enough to reject the key outright, so the Firefox gate had been red since the key landed and nothing in the test suite ran it. The floors now match the key, Android has its own, and the builder refuses a manifest that regresses this. The extension installs into a real Firefox on a clean profile with a lint that reports no errors, warnings, or notices.

Firefox 121 through 139 are no longer supported. Firefox 140 or newer, and 142 or newer on Android.

A capture that failed to save can be retried

A page saved with an offline copy writes the bookmark first, then the archive. If storage failed on that second write the bookmark was already on disk, so the retry collided with it and got "Bookmark already exists", which the extension treats as final, and the captured page was thrown away. A retry carrying a snapshot now attaches it to the bookmark that is already there. Only a bookmark with no offline copy qualifies, so a capture can never replace one you already have, and a bookmark whose archive is on disk but whose sidecar is damaged still counts as having one. The title, tags, and notes on the saved row are left alone, and the extension says so rather than reporting a fresh save.

Fewer things stop to ask you

Deleting highlights, deleting an organization rule, applying rules over a conflict, and both import paths now just run and tell you what they did. The undo behind each is a stack, so a second delete does not throw the first away, and a restore that cannot go through keeps what it was holding. A restored rule goes back to its original position and is refused outright if another rule has taken its name. Replace or merge on a rules import moved out of a popup and into a checkbox; because replacing discards every rule at once, the previous set goes on that same undo stack.

Four prompts stay, because they change something you cannot take back: installing Ollama, sharing domains with a favicon proxy, and rotating or revoking a credential.

Encryption

Changing your passphrase no longer leaves a copy the old one still opens. The pre-rotation backup is written and read back so a failure between the two writes is recoverable, then deleted once the new file verifies. If rotation fails the backup stays, and the log says plainly that the old passphrase still opens it. Libraries written under the two oldest encrypted formats, which signed only the file's magic bytes, are rewritten under the current one the first time you decrypt them.

Writing

Every count now reads "1 bookmark" and "5 bookmarks" rather than "1 bookmark(s)", across the desktop, the command line, the undo history, and the recovery workflow. Forty-five of those messages carry both wordings into the translation catalogue instead of pasting finished English into a slot a translator cannot reach. Roughly fifty other messages and labels lost the em dashes the project's writing rule bans, and so did every historical changelog entry.

Downloads

BookmarkOrganizerPro.exe is the standalone desktop app, no Python needed. The extension archives install unpacked: load the chromium zip through chrome://extensions with developer mode on, or the firefox xpi through about:debugging.