Skip to content

chore(deps): update dependency zennotes/zennotes to v2.33.0 - #568

Merged
renovate[bot] merged 1 commit into
mainfrom
renovate/zennotes-zennotes-2.x
Aug 20, 2026
Merged

chore(deps): update dependency zennotes/zennotes to v2.33.0#568
renovate[bot] merged 1 commit into
mainfrom
renovate/zennotes-zennotes-2.x

Conversation

@renovate

@renovate renovate Bot commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Update Change
ZenNotes/zennotes minor 2.31.02.33.0

Release Notes

ZenNotes/zennotes (ZenNotes/zennotes)

v2.33.0: ZenNotes 2.33.0: Cloud sync tells you the truth

Compare Source

ZenNotes 2.33.0: Cloud sync tells you the truth

A sync that could not finish no longer reports success. When ZenNotes Cloud turns an upload away for capacity (storage quota, active-item limit, or a file over the size cap), the status bar now says Sync incomplete with the real numbers and a Review action, instead of "Synced just now". Unlinking a device and deleting a Cloud vault are two different, clearly labeled actions, each with its own confirmation; deleting the Cloud copy from inside the app is new. The usage card counts synced files honestly, split into Markdown, binary, other, and ZenNotes metadata.

✨ New

  • Delete a Cloud vault from the app. Settings → Cloud, next to the linked vault, now has Delete Cloud vault. It asks first, in red, and spells out what happens: the Cloud copy, its backups, and its exports are removed permanently; local files on every device stay where they are. The device is unlinked afterward and a toast confirms it. How to test locally: link a throwaway vault, click Delete Cloud vault, cancel once, confirm once, then check that the vault is gone from the Cloud vault list and the local notes are untouched.

  • Usage shows what is actually stored. The "Synced notes" card is now Synced files, with a second line splitting the count into Markdown, binary, other, and ZenNotes metadata, because images, PDFs, and vault.json count toward capacity too. The numbers refresh after each manual sync.

🐛 Fixes

  • Sync admits when it is incomplete. A capacity rejection used to be filed under "1 conflict needs review" in settings while the status bar stayed green, though nothing had uploaded and there was nothing to review. There is now a third outcome between success and failure. The status bar switches to the warning tone with Sync incomplete and a Review action that opens Cloud settings; the summary reads "Cloud storage limit reached (4.8 GB of 5.0 GB)", or the active-item equivalent, or names the file-size cap, and says the waiting changes retry automatically. Real conflicts get their own sentences too: files that differ on first link, keep-both copies, and changes that could not be applied. The last successful sync time is kept, and a manual sync clears the previous summary before it starts, so a timeout cannot leave an earlier green box on screen. How to test locally: fill a Cloud vault to its limit, add one more file, press Sync now; the status bar should read Sync incomplete, and Review lands on the explanation.

  • Unlink asks first and says what it does. The one-click Unlink left people guessing whether their Cloud copy survived. It is now Unlink this device, with a confirmation stating that automatic sync stops here and the Cloud vault and backups stay available to other devices.

  • Plans without publishing no longer trip the Cloud surfaces. The published-note lookups behind the sidebar badges, the publish dialog, and Cloud settings threw when the account was disconnected or the plan has no publishing. They now return an empty list in those two cases; any other failure still surfaces.

🧰 For contributors

  • CloudSyncPhase gains attention; cloudSyncAttentionMessage(summary) in cloud-auto-sync.ts is the single source of the wording for both the status bar and the settings summary.
  • CloudSyncConflict carries an optional structured capacity block (dimension, used, reserved, limit, projected, can_retry_after_reduction); CAPACITY_EXCEEDED and FILE_SIZE_LIMIT_EXCEEDED join the conflict codes. Missing details degrade to a generic capacity message.
  • New bridge method deleteCloudVault() over CLOUD_VAULT_DELETE; the handler takes the vault root from main-process state, calls DELETE /api/v1/vaults/:id, then unlinks. The web bridge reports it as not implemented.

Local-first and keyboard-first, as always.

v2.32.0: ZenNotes 2.32.0: wrapped Vim motions, your way

Compare Source

ZenNotes 2.32.0: wrapped Vim motions, your way

Vim motions under Word Wrap are now explicit instead of surprising. Keep ZenNotes' current display-row behavior, or switch $, I, A, and the operators built on them back to traditional logical-line semantics. The default is unchanged, and g0, g^, and g$ remain the always-display-row forms. Open Buffers now supports selective cleanup without dismissing the picker, and custom-status task moves in server-backed vaults survive the refresh that confirms them.

✨ New

  • Wrapped Vim motions can follow the screen or the source line. (#​638, reported by @​uNyanda) Settings → Editor → Vim now has a Wrapped line motions choice. Display row preserves the behavior introduced in 2.21: $, I, A, v$, y$, d$, and c$ stop at the visible wrapped row. Logical line restores traditional Vim behavior for those commands across the complete source line, while g0, g^, and g$ still target the display row in either mode. The preference is persisted as [vim].wrapped_line_motions in config.toml and applies in the main editor, Quick Capture, and floating-note windows. How to test locally: enable Word Wrap and Vim mode, open a paragraph that wraps across several rows, compare v$ in both settings, then confirm g$ still selects only to the current display-row end.

  • Open Buffers can close the highlighted buffer in place. (#​641, reported by @​uNyanda) Open the list with Space o or :buffers, highlight an entry, and press Ctrl+D. Only that buffer closes; the picker keeps its query and focus, and the highlight advances or clamps to the last row. The footer and Help advertise the shortcut. How to test locally: open four tabs, close two non-adjacent rows from Open Buffers, and confirm the other tabs remain while the picker stays open.

🐛 Fixes

  • Custom-status task moves now stick in server-backed vaults. (#​643, reported by @​mptpro) Moving a whole-note task into a custom Kanban status wrote the right status: frontmatter and showed the card in its new column immediately, but the server's follow-up task scan omitted custom fields. A few seconds later the board trusted that incomplete scan and put the card back under No status. The server parser now returns fields.status and the matching status value for whole-note tasks, and mirrors the desktop parser for inline @key:value fields too, so custom status, sprint, area, and other field boards all survive watcher rescans and manual refreshes. How to test locally: connect to a ZenNotes server, group the Tasks Kanban by Custom status, move a task file from Open into another status, wait for the watcher, then press Refresh; the card stays in its new column and its frontmatter keeps the same status.

🧰 For contributors

  • The CodeMirror-Vim boundary adapter reads the current preference at motion time, so changing the setting applies without re-registering Vim commands or reopening the editor. Invalid stored values normalize to the backward-compatible display default.
  • Open Buffers uses the existing close action, preserving dirty-note saves. A component test covers repeated closes, picker persistence, and selection clamping.
  • The Go server's Task JSON now carries the same fields map and status convenience value as VaultTask in shared-domain. Its inline-field grammar and note-level status fallback intentionally mirror the TypeScript parser so remote and local task scans classify Kanban cards identically.

Local-first and keyboard-first, as always.


Configuration

📅 Schedule: (in timezone America/Los_Angeles)

  • Branch creation
    • Every minute (* * * * *)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot enabled auto-merge (squash) August 20, 2026 17:56
renovate-approve[bot]
renovate-approve Bot previously approved these changes Aug 20, 2026
@renovate renovate Bot changed the title chore(deps): update dependency zennotes/zennotes to v2.32.0 chore(deps): update dependency zennotes/zennotes to v2.33.0 Aug 20, 2026
@renovate
renovate Bot merged commit 0f3af96 into main Aug 20, 2026
5 checks passed
@renovate
renovate Bot deleted the renovate/zennotes-zennotes-2.x branch August 20, 2026 21:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants