Releases: HenriquesLab/TaskRepo
Releases · HenriquesLab/TaskRepo
Release v0.9.12
Full Changelog: v0.9.11...v0.9.12
Release v0.9.11
Release Highlights
New Features
🎹 TUI Keybindings for Subtask and Extend
- Press to create a subtask under selected task with inherited defaults
- Press to extend/set due dates for single or multiple tasks
- Supports both absolute dates (tomorrow, 2025-11-15) and relative durations (1w, 2d)
- Instant return to TUI without "Press Enter" prompts
🤖 Automatic Conflict Resolution
- Sync now automatically resolves git conflict markers after pull
- Smart merge using "keep newer" strategy based on modified timestamp
- Eliminates need for manual conflict marker cleanup
- Works in both CLI sync and TUI sync
Bug Fixes
🛡️ Rich Markup Escaping
- Fixed crashes when task content or error messages contain special characters like
[/],[+] - Conflict resolver now properly escapes all user content
- Sync errors no longer cause crashes due to markup interpretation
🎨 TUI Improvements
- Removed redundant "Press Enter" prompt after sync completes
- Status bar now wraps on narrow terminals (supports up to 3 lines)
- Reorganized keybindings for better mnemonics:
[a]dd- Add new task (was[n]ew)[d]one- Mark as done (was[w])de[l]- Delete task (was[x])ar[v]hive- Archive task (was[a])ex[t]end- Extend/set due date (new)s[u]btask- Create subtask (new)t[r]ee- Toggle tree view (was[t])
Installation
macOS (Homebrew)
brew update
brew upgrade taskrepopip
pip install --upgrade taskrepouv
uv pip install --upgrade taskrepoFull Changelog: https://github.com/HenriquesLab/TaskRepo/blob/main/CHANGELOG.md
Release v0.9.10
Highlights
- Unexpected file detection in sync: Protect against accidentally committing non-task files with interactive prompt and .gitignore management
- TUI improvements: Better text contrast, smarter context-aware sync, streamlined archive workflow
- Default .gitignore: New repositories automatically include sensible .gitignore patterns
Added
- Unexpected file detection in sync: Protect against accidentally committing non-task files
- Detects and groups unexpected files by pattern (*.log, .vscode/*, etc.)
- Interactive prompt with 4 options: add to .gitignore, delete, commit anyway, or skip
- Default .gitignore automatically created for new repositories
- Covers common patterns: editor files, Python cache, OS files, temporary files
- Works in both CLI sync and TUI sync commands
- New utility module:
src/taskrepo/utils/file_validation.py
Fixed
-
TUI selected row contrast: Improved text readability on light backgrounds
- Changed selected row text from white to black for better contrast
- Fixes visibility issue where selected text was nearly invisible on light/white backgrounds
-
TUI archive prompt: Removed redundant "Press Enter" after confirming archive
- Archive operation now returns immediately after y/n confirmation
- Consistent with other quick operations like done and in-progress
-
TUI sync in project/assignee views: Fixed context-aware repository syncing
- Project view: Now syncs only repositories containing tasks in that project
- Assignee view: Now syncs only repositories with tasks for that assignee
- Shows count of repositories being synced (e.g., "Syncing 3 repos with project 'X'")
- More efficient - doesn't sync unrelated repositories
Improved
- Default repository setup: New repositories include sensible defaults
- Automatic .gitignore with common patterns
- Protects against committing .DS_Store, .vscode/, pycache/, etc.
Installation
# macOS (Homebrew)
brew update
brew upgrade taskrepo
# pip/pipx
pipx upgrade taskrepo
# OR
pip install --upgrade taskrepoRelease v0.9.9
Full Changelog: v0.9.8...v0.9.9
Release v0.9.8
Full Changelog: v0.9.7...v0.9.8
Release v0.9.7
Full Changelog: v0.9.6...v0.9.7
Release v0.9.6
Full Changelog: v0.9.5...v0.9.6
Release v0.9.5
Full Changelog: v0.9.4...v0.9.5
Release v0.9.4
Full Changelog: v0.9.3...v0.9.4
Release v0.9.3
Full Changelog: v0.9.2...v0.9.3