Skip to content

Release 5.3.0 - #266

Merged
vycdev merged 183 commits into
masterfrom
develop
Oct 24, 2026
Merged

vycdev merged 183 commits into
masterfrom
develop

Conversation

@vycdev

@vycdev vycdev commented Oct 24, 2026

Copy link
Copy Markdown
Owner

Release 5.3.0: 183 commits since 5.2.0. The full notes are in CHANGELOG.md.

Merge with a merge commit, not squash. That matches past releases (#101, #102) and keeps develop and master history in sync.

Highlights

  • Nearly 30 new features, including:
    • HTML and Markdown export
    • a Due view
    • task timer pausing (Alt+T)
    • tag-scoped and archive statistics
    • an activity bar badge
    • Problems view entries for embedded todos
    • relative file links
    • unarchiving
    • many new view and color settings
  • Well over a hundred fixes. Most come from a full review of archiving, file discovery, embedded scanning, and lifecycle handling.
  • Faster file discovery: about 0.2–0.4 s instead of about 3 s in 5.2.0, on a 35k-file workspace. Alt+D and Alt+C are instant again for tasks without @depends.
  • Smaller download: 2.7 MB .vsix with 37 files, down from 5 MB and 2,556 files. It also adds Marketplace badges and a Patreon Sponsor button.

Compatibility notes

  • Statistics visibility conditions no longer run JavaScript. Custom conditions that call functions now hide those statistics. The defaults are unaffected.
  • Todo: Toggle Timer now pauses or resumes the task timer (Alt+T). The old status bar toggle is now Todo: Toggle Status Bar Timer.
  • The minimum VS Code version is 1.36.
  • The extension activates on Todo files, views, and commands instead of at startup.

Release checklist

vycdev and others added 30 commits July 2, 2026 12:40
Prepare 5.3.0 development changelog and update the VS Code-bundled ripgrep fallback to use the supported module lookup.
Replace eager startup activation with Todo language, view, and command activation events.
Render done tasks with strikethrough by default and add a setting to disable it.
Remove the broad dot-directory exclude, add targeted TODO markdown/text includes, and cover the defaults with regression tests.
Use the moment-mini package alias to shrink the bundled date library and cover precise range compatibility.
Add default @today cleanup for archived and finished tasks with configurable tag lists.
Add todo.hoursPerDay for short duration formatting while preserving the 24-hour default.
Remove package-lock.json from .gitignore so it's tracked. This ensures
reproducible installs across environments and CI.
Add AGENTS.md for AI coding agent onboarding
Remove stale package-lock boundary from AGENTS.md
When clicking a todo in the embedded or files tree view, the editor now
scrolls to center the target line in the middle of the screen, matching
VS Code's Problems tab behavior. Previously only minimal scrolling was
used (TextEditorRevealType.Default).

Closes #74
Center viewport when navigating to a todo from tree views
* feat: restore archived tasks in same-file archives (#72)

Add Todo: Unarchive for InSameFile archive storage. It restores selected finished tasks to their original project chain, recreates missing project headers, and moves attached comments with each task.

The command is registered for the command palette, editor context menu, and a Shift+Ctrl/Cmd+U shortcut only while same-file archiving is enabled.

Fixes #72

* fix: restore archived parent tasks to correct project

---------

Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
vycdev2 and others added 29 commits September 14, 2026 19:54
* feat: detect todos in Liquid comment blocks

* fix: harden Liquid comment scanning and batch reads

---------

Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Victor Sandu <vyctor661@gmail.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Victor Sandu <vyctor661@gmail.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Victor Sandu <vyctor661@gmail.com>
* feat: add auto-toggle for time tracking

- Add todo.timekeeping.autoToggle setting to automatically pause other active timers when starting a new task
- When enabled, starting a new timer will add @toggle tags to all other active timers in the workspace
- Fixes #91

* fix: apply auto-toggle across editor and tree timers

---------

Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Victor Sandu <vyctor661@gmail.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Victor Sandu <vyctor661@gmail.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Codex Integration Review <codex-integration-review@users.noreply.github.com>
* fix: avoid false embedded scan candidates for optional markers

* docs: record optional embedded marker fix

---------

Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Codex Integration Review <codex-integration-review@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Codex Integration Review <codex-integration-review@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Codex Integration Review <codex-integration-review@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Codex Integration Review <codex-integration-review@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Codex Integration Review <codex-integration-review@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Codex Integration Review <codex-integration-review@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Codex Integration Review <codex-integration-review@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Codex Integration Review <codex-integration-review@users.noreply.github.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Codex Integration Review <codex-integration-review@users.noreply.github.com>
* fix: preserve whitespace-only code spans in Markdown export

* fix: preserve code spaces across Markdown renderers

---------

Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Victor Sandu <vyctor661@gmail.com>
* fix: reject invalid slash-formatted estimate dates

* fix: validate unpadded estimate calendar dates

---------

Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Victor Sandu <vyctor661@gmail.com>
* fix: refresh calendar time estimates instead of caching them

* fix: anchor timer estimates to their preserved start time

---------

Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Victor Sandu <vyctor661@gmail.com>
* fix: resolve relative file links with mixed-case schemes

* fix: refresh calendar time estimates instead of caching them

* fix: anchor timer estimates to their preserved start time

---------

Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
Co-authored-by: Victor Sandu <vyctor661@gmail.com>
Co-authored-by: vycdev2 <vycdev2@users.noreply.github.com>
- Rebuild the 5.3.0 changelog: restore 34 entries lost to merge-conflict
  resolution (including timer pausing, relative file links, and archive
  statistics), group entries by feature and fix area, and add
  compatibility notes for statistics conditions and the Toggle Timer
  command change.
- Exclude repository-only files (AGENTS.md, CODE_REVIEW.md, .github,
  tooling configs) from the packaged extension.
- Drop `npm publish` from the publish script; the extension is not
  distributed on npm.
- Document `todo.timekeeping.autoToggle` in the README.
* fix: exclude bundled dependencies from the packaged extension

Webpack already bundles every runtime dependency into out/extension.js, so the packaged node_modules folder (2,519 files) was unused. The .vsix shrinks from 5.06 MB to 2.71 MB. Verified the packaged bundle loads without node_modules.

* chore: ignore packaged vsix files
…dencies (#263)

Toggle Done and Toggle Cancelled built the workspace-wide dependency index before every edit, even for tasks without @Depends(...). In a workspace with ~35k files this took about 6 seconds, and the version guard then dropped the edit if the document changed during the wait, so Alt+D and Alt+C appeared not to work. Only build the index when a toggled task, or a parent eligible for auto-completion, has dependencies.
Scan each workspace root once for all include globs by calling fast-glob
directly. globby 8 started a separate walk per pattern, so the default 18
include globs read every directory 18 times.

Stop doubling exclude globs that already end in /** into /**/**, and match
excludes against workspace-relative paths so folders above the root (for
example a workspace inside an out or build folder) no longer hide every file.

Replace the globby dependency with fast-glob 2, which globby already bundled.
@vycdev
vycdev merged commit e09848b into master Oct 24, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants