Releases: cjdduarte/pomodoroz
Releases · cjdduarte/pomodoroz
Release list
v26.7.1
Fixed
- Audit hardening protects corrupted local state — malformed
stateorstatisticsstorage is now detected distinctly from missing data and preserved under a backup key before defaults can replace it. - Tauri JSON import/export commands are stricter — native file commands now reject final file symlinks, retain JSON/size guardrails, and bound renderer-originated native payloads.
- Release automation now avoids partial updater feeds — version sync includes the local Cargo lock package version, PowerShell release validation matches the Unix order, and
latest.jsongeneration requires both active updater platforms. - Timer/task audit regressions were addressed — special breaks trigger within their configured window once per day, and automatic daily color cleanup no longer pollutes task undo history.
Changed
- CI and operational docs were aligned with audit findings — Rust CI gates now better match local preflight expectations, release docs no longer require a custom
GH_TOKENsecret, and version/roadmap/handoff references were refreshed. - Project dependencies were refreshed — pnpm, JS tooling/runtime packages, Rust Tauri/log crates, and cargo-audit transitives were updated without intentional behavior changes; remaining
quick-xmlRustSec advisories are temporarily ignored while blocked by upstream Tauri/plist constraints.
v26.6.3
Fixed
- Release uploads now use the GitHub Actions token — the release workflow no longer depends on the custom
GH_TOKENsecret for GitHub Release uploads, preventing Windows asset upload failures withHTTP 401: Bad credentialswhen that secret is expired or revoked.
v26.6.2
Added
- Development script contract was standardized —
scripts/dev.shnow exposes thesetup,up,check,build,update,status, andmenuverbs, while the newscripts/dev-full.showns the rich local validation menu. - Version tracking documentation was added —
docs/VERSIONS.mdrecords the local runtime, app, and dependency version policy for future update audits.
Changed
- Legacy validation entry point is now a transition alias —
scripts/validar-tudo.shdelegates toscripts/dev-full.shin non-interactive mode so existing callers keep working while documentation moves to the new script names. - Release and local tooling references now use the new validation script names — release, update-check, uninstall, contributor, and agent documentation now point to
dev-full.sh/dev.shwhere appropriate. - Project dependencies were refreshed — pnpm, JS tooling/runtime packages, CI Corepack pins, and the Rust
logcrate were updated without intentional behavior changes.
v26.6.1
Added
- CI now audits Rust dependencies for advisories — a new
tauri-rust-auditjob runscargo audit --deny warnings, failing on any new vulnerability or unmaintained/unsound advisory; asrc-tauri/.cargo/audit.tomlignore-list silences the pre-existing GTK3/transitive warnings that ship with Tauri. - Rust backend has its first unit tests —
window_bridge.rsnow covers the.jsonimport/export extension guard (case-insensitive, rejecting other extensions), the 5 MiB import size limit, and the window-dimension constants; thetauri-rust-checkjob runscargo test. - Standalone Rust update-check scripts —
scripts/check_rust.sh(root-deps logic fromcheck-updates.sh) andscripts/check_rust_2.sh(bash port of the PowerShell checker, scoped tosrc-tauri).
Changed
- Rust dependencies refreshed — the global-shortcut plugin and transitive crate pins were updated without intentional behavior changes (verified with
cargo fmt/clippy/check/auditand a runtime smoke test). - Toolchain pins refreshed — the pnpm pin was bumped across workflows and
packageManager, and dev/runtime tooling pins were refreshed.
v26.5.13
Changed
- Task grid priority view now has three modes — the priority toolbar button now cycles through normal grid order, prioritized-first layout, and prioritized-only filtering while keeping the grouped/ungrouped control independent; the filtered mode uses the same yellow star color as priority cards with a light outline for contrast.
- Task grid storage migration is now cleaned up — the legacy
tasks-grid-priority-filtervalue is removed after migrating to the newtasks-grid-priority-displaykey.
v26.5.12
Changed
- Libraries were updated — project library pins were refreshed without intentional behavior changes.
Fixed
- Statistics milestone badges align with their metric columns — milestone chips in the progress overview now use the same two-column rhythm as the progress metric cards and center their label text within each rounded badge.
v26.5.11
Changed
- Task grid columns can be set to four — the shared grid columns selector now includes a
4option for both normal and compact task grids. - Task grid cards read better in dense layouts — list names now render as compact labels with stronger contrast, task text keeps normal body text styling, and cards expose the full list/task text in their tooltip.
- Dead grid hint text and renderer debug logs were cleaned up — an unused compact grid hint translation and a committed renderer console log were removed, and the log filename is now ignored.
- Task lists can be reordered by priority — each List view action menu can move starred tasks to the top of that list while leaving lists without starred tasks unchanged.
- Task list actions no longer show the legacy priority-list shortcut — the obsolete list-level action was removed from the List view actions menu, unused option styles were removed, and the Timer task picker no longer uses priority-list wording.
- Rust update checks ignore invalid compatibility placeholders —
scripts/check-updates.shnow treatscargo outdatedcompatibility values such as---as unavailable, preventing them from being offered as Rust update targets. - Tooling dependencies were refreshed — project tooling pins were updated without intentional behavior changes.
v26.5.10
Changed
- Task grid Auto columns use a shared minimum card width — normal and compact grids now use the same
11remAuto column threshold and horizontal content padding, reducing layout differences between the two views. - Libraries were updated — project library pins were refreshed without intentional behavior changes.
v26.5.9
Fixed
- Task grid columns control stays right-aligned on narrow layouts — the grid toolbar now keeps the columns selector aligned to the right edge instead of placing it beside the left toolbar actions.
- Task grid reset action is ordered after draw and grouping — the reset-colors button now appears as the third toolbar icon instead of the first.
- Statistics opened from compact mode return to compact Timer — returning from the report to the Timer now restores compact mode instead of leaving the app in the normal layout.
- Task completion reducers now handle missing card IDs consistently — the done and not-done reducers now share the same no-op behavior when a card ID is absent.
v26.5.8
Added
- Task grid priorities — task cards can now be marked as priorities from the grid, pending priorities appear in a dedicated top section in both normal and compact grids, the grid toolbar can switch to prioritized-only mode, and task import/export preserves the new priority flag while remaining compatible with older task files.
- Priority cards keep stable sizing while grouping changes — toggling the grid group mode no longer changes the size of cards inside the
Prioritiessection, while the remaining task groups still follow the selected grouping layout. - Priority cards are visually separated from the rest of the grid — when pending priorities are shown in the ungrouped grid, a divider now separates the priority section from the remaining cards.
- Draw can be limited to prioritized tasks — Settings now includes a
Draw only prioritized tasksoption below the grid Draw button toggle; when enabled in all-task mode, Draw uses only prioritized eligible cards and falls back to the normal draw pool when no prioritized card is available. The visual prioritized-only filter keeps Draw limited to the visible grid pool. - Task priorities can be toggled from List view — task cards in the List view now expose the same priority star near the drag handle, away from edit/delete actions, and dragging a prioritized task between lists preserves the priority flag.
Changed
- Dependencies were refreshed — selected JS tooling pins and transitive Rust dependency pins were updated, including Rust updates that resolve current
cargo auditvulnerability errors, without intentional behavior changes.
Fixed
- Version and release dry-runs no longer prompt for a version —
scripts/version.sh --dry-runandscripts/release.sh --dry-runnow use the suggested version automatically when no version is provided. - Cargo update checks find user-installed tools consistently —
scripts/check-updates.shnow adds$CARGO_HOME/binor~/.cargo/binto its localPATHbefore checking forcargo-auditandcargo-outdated. - Compact focus-extension prompt keeps its expanded height while task controls are clicked — when
Continue focusing?is visible in compact mode, task footer panel controls are disabled so the grid/actions/dropdown cannot collapse the prompt-sized window. - Development validation aborts when the local install is already running —
scripts/validar-tudo.shnow stops before opening the dev runtime or local release binary if the locally installed Pomodoroz binary is open, preventing the installed window from being mistaken for the test runtime.