Skip to content

Releases: tagirov/rusk

0.6.9

24 Mar 20:50

Choose a tag to compare

Changes

  • Removed ID completion logic for all commands

This functionality turned out to be redundant and useless.

Now:

rusk edit <id><tab> — completes the task text
rusk edit <id> <tab> — suggests available flags

So one less keystroke for some of the most common actions.

  • Removed date suggestions for -d/--date flag
  • Removed -o/--output option to set the path to install the custom completion file

Features

  • Added relative date offset for add and edit commands (rusk add <task_text> -d 2d)
  • Enhanced CLI help for commands and their flags

0.6.8

08 Mar 18:12

Choose a tag to compare

  • Completion rusk edit <id> <tab>: fixed wrapping in quotes of task text in fish, zsh, and PowerShell

0.6.7

07 Mar 15:03

Choose a tag to compare

  • Completion rusk edit <id> <tab> now wraps task text with single quotes to escape special chars (if the text already contains single quotes — double quotes)

Special chars: | ; & > < ( ) [ ] { } $ " ' \` * ? ~ # @ ! % ^ = + - / : ,

0.6.6

04 Mar 02:06

Choose a tag to compare

  • Fixed handling of large text input in interactive editing mode (rusk edit <id>) (#6).

  • Added hidden rusk list --for-completion flag to unify implementation of text completion (rusk edit <id> <tab>) in all shells:

The previous implementation was difficult to debug because each shell had its own way of parsing task text from the task list: grep and sed, where/or for Nu, foreach and match for PowerShell.

Full Changelog: 0.6.5...0.6.6

0.6.5

02 Mar 21:14

Choose a tag to compare

  • Fix the terminal’s width handling

Full Changelog: 0.6.4...0.6.5

0.6.4

09 Jan 21:29

Choose a tag to compare

Changes

  • Changed the date format in Added task dialog
  • Default database path changed to ./.rusk/

The database path is now relative, making it easier to run Rusk from different project folders without needing to set a temporary environment variable each time (e.g., RUSK_DB=./.rusk rusk).

0.6.3

29 Dec 22:43

Choose a tag to compare

  • New date display format in rusk list: 1-jan-25 (was 01-01-2025)
  • Adjusted spacing between fields

Full Changelog: 0.6.2...0.6.3

0.6.2

15 Dec 16:50

Choose a tag to compare

  • Fix completion in zsh and bash shells (rusk add <tab>, rusk completions install <shell> <tab>)

Full Changelog: 0.6.1...0.6.2

0.6.1

13 Dec 22:56

Choose a tag to compare

  • Fix completion in fish shell (rusk edit <id> <tab>)

Full Changelog: 0.6.0...0.6.1

0.6.0

13 Dec 19:28

Choose a tag to compare

The key feature of the new version is a new way of editing tasks. There are now two options:

  • Command-line editing with tab-completions for the main shells: Nu shell, Zsh, Bash, Fish, and PowerShell.
  • TUI editing with tab-completion, ghost prefills, keyboard control (Ctrl+Arrow, Ctrl+W to jump between words or to erase previous word), no need to escape special characters.

Completions also works with the other commands as well.

Changes

  • Date format changed from YYYY-MM-DD to DD-MM-YYYY.
  • To remove all completed tasks, use rusk del --done (ex rusk del --all).
  • The commands now accept only comma-separated IDs (e.g., rusk mark 1,2,3).

Features

  • Added colors: dialogs, task list titles are now colored. The color switcher will be added in the future releases.
  • The testing logic is split between the app and completions.
  • If the task text contains characters that must be escaped, the completion will be enclosed in quotation marks.
  • Support for short year format (e.g., 25 instead of 2025) 1-12-25
  • Support for multiple date separators: - and / (d/m/yy or d-m-yy) 1/12/25
  • Instant key response for confirmation dialogs
  • Word wrapping for task text with 80 char limit
  • Debug mode (cargo run) now uses a temporary database and ignores the RUSK_DB variable. The current database in use is printed when running cargo run or cargo test --nocapture. Temporary folders:

  • Windows: Uses GetTempPath (typically C:\Users\<User>\AppData\Local\Temp). Files are placed under <temp>\rusk_test\<pid>\tasks.json.
  • macOS: Uses the system temp (Darwin TMPDIR), usually something like /var/folders/<xx>/<yy>/T. Files are placed under <tmp>/rusk_test/<pid>/tasks.json.
  • Linux: Uses /tmp (or $TMPDIR if set). Files are placed under /tmp/rusk_test/<pid>/tasks.json.

Full Changelog: 0.5.0...0.6.0