Skip to content

2.4.0

Latest

Choose a tag to compare

@github-actions github-actions released this 07 Jun 07:24

2.4.0 (2026-06-07)

This is mainly a maintenance release with many smaller fixes and updates to the codebase to better adhere with the new Community Scorecard.

Features

  • ✨ extract readwise document mapper service (4ce5ba5)
  • ✨ polish settings and confirmation UI (8e12c90)
  • ✨ update multiple notes (cdba106)

Bug Fixes

  • 🐛 do not skip empty-string metadata fields. (e791fba)
  • 🐛 abort fetch after max rate-limit retries (f0ec560)
  • 🐛 adjust template rendering behavior (51a7caa)
  • 🐛 align template preview status with validation result (cd7fca9)
  • 🐛 await display() calls in settings tab (3f2eb32)
  • 🐛 cap slugified filenames to max length (86f0d11)
  • 🐛 correct eslint project file matching (98c9458)
  • 🐛 correct template rendering bugs and remove dead code (3c40d66)
  • 🐛 derive mapped dates from filtered highlights (933c488)
  • 🐛 escape backslashes in yaml double-quoted strings (d469d54)
  • 🐛 fix a regression with duplicates (90af0a9)
  • 🐛 fix load order and improve initiation logic (74135a7)
  • 🐛 gate folder sync success notice on update call (373b8ad)
  • 🐛 gate timer logs behind debug mode (18444db)
  • 🐛 guard frontmatter parsing against undefined content (a4f6e93)
  • 🐛 harden async flows and runtime safety (63140f6)
  • 🐛 initialize CommandManager only after successful controller setup (fa2c180)
  • 🐛 only clear sync cursor when library trash succeeds (8580f57)
  • 🐛 reject non-numeric tracking IDs strictly (0787976)
  • 🐛 rename template validation result flag (b3b6e7c)
  • 🐛 resolve registered templates by key presence (61056ab)
  • 🐛 serialize filename adjustment with syncLock (27d0a28)
  • 🐛 split template render and yaml parse failures (2e4da33)
  • 🐛 use fresh settings token in api client (7fc47b1)
  • 🐛 use window.moment and fix ReadwiseLoader.getSource return type (7331579)
  • 🐛 validate token before persisting settings (f6adf43)
  • 👷 ensure versions reflect min version (88d032f)
  • 🔒 strengthen type safety across the document writing pipeline (cdff770)
  • 🧹 tighten metadata escaping (ebdd8d1)
  • 🩹 don't depend on moment (e97e08e)
  • 🩹 fix console log grouping (bff065e)
  • 🩹 fix folder check (c7cde41)
  • 🩹 fix minor regressions with commands (e360c32)
  • 🩹 fix several regressions in the code (11ead76)
  • apply CodeRabbit auto-fixes (132d3cd)
  • frontmatter: handle escaped double quotes with backslash parity (75f31b3)
  • frontmatter: validate quoted YAML strings before skipping escape (3215373)
  • remove extra newline when concatenating frontmatter and body (3431962), closes #85
  • remove misleading "Previous sync not detected" toast wording (7b3e880)
  • settings-tab: 🐛 harden auth UI typing and null safety (2b7e3b1)
  • trim Nunjucks core template whitespace (5754f90), closes #83

Prevent single article parsing error from being a fatal error stopping sync or update c532953 (workaround for #92, by @jaxley) c532953)