Skip to content

Releases: Xheldon/Yoke-Calendar

0.8.2

Choose a tag to compare

@Xheldon Xheldon released this 13 Jul 08:23

0.8.2 — 2026-07-13

Added

  • Search now looks inside notes. ⌘F/Ctrl+F matches note content in addition to requirement names, business lines and tags — across every requirement, past or present. A matched requirement shows the surrounding note fragment under its title with the hit highlighted; title matches still rank first. Markdown noise (image syntax, HTML, link URLs) is ignored, so only real text matches.

Changed

  • Sidebar day groups now show the weekday. The by-time groups read 今天(周一), 明天(周二), 后天(周三), 第 4 天(周四)… so you no longer have to work out which day of the week "第 5 天" lands on. Week-level groups (下周 / 第 N 周) are unchanged.

0.8.1

Choose a tag to compare

@Xheldon Xheldon released this 10 Jul 15:56

0.8.1 — 2026-07-10

Fixed

  • Clicking the title bar with a menu open now reliably closes the menu. The 0.7.1 fix turned out to be incomplete — the window's drag areas are assembled in page order, so the title bar could re-claim the area the menu's backdrop had just released, and a click there still dragged the window (most visible on Windows). Now every drag surface stands down for as long as a menu or context menu is open, so the next click always lands — dismissing the menu — and window dragging resumes the moment it closes. Modals and dialogs intentionally keep the title bar draggable, matching native behavior.

0.8.0

Choose a tag to compare

@Xheldon Xheldon released this 10 Jul 12:46

0.8.0 — 2026-07-10

Added

  • 坚果云, one click away. The WebDAV settings gained a 坚果云 preset — click the chip and the server address fills itself; you only enter your account email and an app password (a help link shows where to generate one — it's not your login password).
  • End-to-end encryption on WebDAV. Encryption is no longer Gist-only: enable it on a WebDAV store too, so even the drive operator sees only ciphertext. The dialog notes the drive may keep earlier plaintext versions in its own version history and suggests a fresh folder for a fully clean start.

Changed

  • Safer provider switching. Switching away from an encrypted store now asks for confirmation and explains exactly what happens next — plaintext uploads until encryption is re-enabled, or a fresh passphrase requirement when moving to Gist. Switching while the store is still locked warns that other devices' un-merged changes won't carry over.
  • Lighter on rate-limited drives. Background sync passes are spaced further apart, unchanged images are no longer re-checked on every launch, and a rate-limited server pauses background sync for a few minutes instead of retrying — manual sync always works. A comfortable fit for 坚果云's free tier.

Fixed

  • WebDAV robustness. Multi-level sync folders are created automatically, more server variants of "folder doesn't exist yet" are handled, rate-limit responses are no longer mistaken for wrong credentials, and all WebDAV error messages are properly localized.
  • Encryption safety. Enabling encryption first merges any readable remote data (so the reset can't destroy anything), refuses to run over an already-encrypted store it cannot read, and passphrase checks always read fresh metadata — protecting multi-device setups from key mix-ups.

0.7.1

Choose a tag to compare

@Xheldon Xheldon released this 10 Jul 05:59

0.7.1 — 2026-07-10

Changed

  • Windows / Linux: the sidebar now reaches the window top. The empty strip above the New-requirement button existed only for macOS traffic lights; on Windows it was a dead gap. The sidebar header itself now doubles as a window-drag area, so the window can still be moved from the top-left. macOS is unchanged.
  • The sync ☁ and AI Summary buttons now follow the calendar. With the editor placed on the right, the two buttons sit above the calendar's Today controls instead of hovering over the editor — and they track the divider in real time as you drag it.
  • The window title is now centered on the whole window. It previously centered on the area right of the sidebar, sitting visibly off the window's true center line.

Fixed

  • Clicking the title bar now dismisses an open menu. The drag strip is claimed by the OS, so that click never reached the app and the menu stayed open — while a menu is open the window briefly yields the drag area, so the click closes the menu; dragging resumes the moment it's closed. Applies to macOS and Windows alike.
  • On Windows / Linux, the top edge of the tag-filter count badge dragged the window instead of toggling the filter.
  • Release notes are now generated from the changelog section matching the released version, so a release can no longer republish an older version's notes.

0.7.0

Choose a tag to compare

@Xheldon Xheldon released this 09 Jul 10:58

0.7.0 — 2026-07-09

Added

  • See what the AI receives. The AI Summary window has a new read-only preview — expand it to see the exact prompt and schedule data (stages, requirement notes, tags) that will be sent, so generating a summary is no longer a black box.
  • Editor on either side. A new setting places the note editor to the right of the calendar instead of its left.
  • Paste images from the web. An image copied from a web page is now downloaded and stored locally, like a pasted file, so it renders and syncs to your other devices instead of showing as broken.

Changed

  • Richer AI summaries. The data sent to the AI now describes each in-range requirement in full — all of its stages, its business line (independent requirements are labelled as such), its full tag names, and its note as plain text (image embeds removed, links kept) — so prompts like "summarise each requirement's doc link" actually work.
  • Smarter default color. A new requirement's color is picked from the least-used hue among unfinished requirements only, so calendar bars stay distinct even once you have closed many.

Fixed

  • Note images now sync across devices. The device that added an image was not uploading it, so other devices showed a broken image; the creating device now uploads its own images, and previously-broken ones recover on the next sync.
  • Quieter crash reports. Transient network errors (VPN reconnects, dropped connectivity) and development-only hot-reload noise no longer show up in crash reporting.

0.6.0

Choose a tag to compare

@Xheldon Xheldon released this 07 Jul 11:12

0.6.0 — 2026-07-07

Added

  • Editable prompt presets. Prompt presets in the AI Summary window can now be renamed, edited, and deleted freely — down to none.

Changed

  • Encrypted API keys. AI provider keys are now encrypted at rest and stored in hardened, device-local files.
  • More reliable sync. Saves are stamped with a revision and flushed on quit, so edits made just before closing are no longer lost; a failed push is now surfaced instead of being silently reported as success; and deletions propagate correctly rather than reappearing.
  • Sharper list & calendar. A requirement's stages that fall in the same "group by time" bucket now merge into a single row, the calendar can scroll to a requirement outside the current week window, and week-row rendering is faster.
  • Under the hood. Upgraded to Electron 41 (off the end-of-life 31), a typed main↔renderer message contract, and fuller localization of system-generated messages.

Fixed

  • Correct calendar import/export. ICS recurrence, time zones, spans, and export conformance are fixed.
  • Safer dialogs and inputs. Modals trap and restore keyboard focus, blank or duplicate names are rejected, destructive actions ask for confirmation, and Escape closes the right layer.
  • Backup images preserved. An image referenced only by a saved backup is no longer removed by image cleanup.
  • Settings stopped overwriting each other. Preference changes now merge per setting instead of replacing the whole settings object.

0.5.2

Choose a tag to compare

@Xheldon Xheldon released this 29 Jun 10:26

0.5.2 — 2026-06-29

Changed

  • Refined tray / menu-bar icon. The calendar glyph is now vertically centred, and its three agenda bars are staggered to match the app icon — a short bar at the top-left, the longest across the centre, and a medium one at the bottom-right. Applies to both the Windows / Linux colour tray and the macOS monochrome menu-bar template.
  • More breathing room in the requirement list. Sidebar rows now have a few pixels of space between them in every grouping mode, so adjacent selected rows — such as one requirement shown across several "group by time" buckets — no longer merge into a single block.

Fixed

  • The tray icon's binder rings were clipped flat against the top edge; the glyph now renders with the ring caps intact.

0.5.1

Choose a tag to compare

@Xheldon Xheldon released this 28 Jun 07:02

0.5.1 — 2026-06-28

Changed

  • Tray icon now matches the app icon. The system-tray (Windows / Linux) and menu-bar (macOS) glyph is the notepad calendar — full-color on Windows / Linux, a monochrome template on macOS — replacing the old steering-wheel mark.

0.5.0

Choose a tag to compare

@Xheldon Xheldon released this 27 Jun 15:47

0.5.0 — 2026-06-26

Added

  • Usage analytics & crash reporting, both anonymous and opt-out. Privacy-hardened telemetry (Aptabase) and crash reporting (Sentry) help improve the app — no personal data is collected, and you can turn either off at any time.
  • Automatic colors for new requirements. Each new requirement now opens with a fresh, not-yet-used color, so its bars stand out on the calendar without picking one by hand.

Changed

  • New app icon — a notepad-style calendar with a red binding and colored bars. On macOS the development and packaged icons now match.
  • "Group by time" is now a day-and-week agenda. The sidebar groups by Today / Tomorrow / Day after / Day N for the rest of this week, then Next week / Week N beyond it. Grouping is per stage, so a requirement can show under several time buckets — e.g. development this week and testing next week — each tagged with the relevant stage. Requirements with nothing scheduled stay under Unscheduled.

Fixed

  • Usage analytics now start before the app finishes launching, so events are reported reliably.
  • A sourcemap-upload hiccup can no longer cause a release build to fail.

0.4.1

Choose a tag to compare

@Xheldon Xheldon released this 21 Jun 07:01
  • fix(ci): raise Node heap for release build (sourcemap OOM → exit 134)
  • chore: bump version to 0.4.1
  • fix(crash): never let a sourcemap-upload failure fail the release build
  • fix(telemetry): init Aptabase before app 'ready' (it never sent before)
  • feat(telemetry): report in dev too (drop YOKE_TELEMETRY_DEV gate)
  • feat(crash): opt-out crash reporting via Sentry (privacy-hardened)
  • feat(telemetry): opt-in dev reporting via YOKE_TELEMETRY_DEV
  • feat(telemetry): anonymous opt-out usage analytics (Aptabase)