|
| 1 | +# Changelog |
| 2 | +All notable changes to this project will be documented in this file. |
| 3 | + |
| 4 | +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) |
| 5 | +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). |
| 6 | + |
| 7 | +## [Unreleased] |
| 8 | + |
| 9 | +## [2.10.0] - 2013-12-06 |
| 10 | +### Added |
| 11 | +- Enable term filtering for listcon. |
| 12 | +- Add make install command. |
| 13 | +- Enable use of global config file in `/etc/todo/config`. `make install` installs a global config file. |
| 14 | +- Allow use of `post_filter_command` for `listall` and `listpri`. |
| 15 | +- Print usage help for custom action and all passed actions. |
| 16 | +- Allow configuring null data files (done.txt and report.txt) and don't create |
| 17 | + them. |
| 18 | +- Color contexts and projects without an add-on, just by setting vars in the |
| 19 | + config file. |
| 20 | +- Place add-ons in subfolders (for easier git clone). |
| 21 | + |
| 22 | +### Changed |
| 23 | +- Improve code commenting/documentation. |
| 24 | +- Refactor code for speed/better organization. |
| 25 | +- Improve test coverage and test library. |
| 26 | + |
| 27 | +### Removed |
| 28 | +- Removed add date from line completion, ie, `todo.sh ls 10[tab]`. |
| 29 | + |
| 30 | +### Fixed |
| 31 | +- Properly replace date when replacing task with priority and date. |
| 32 | +- Handle `-h`, `shorthelp`, and `help` when a Fatal Error happens. |
| 33 | +- Fix `todo_completion` problem with Bash 3.1. |
| 34 | + |
| 35 | +## [2.9.0] - 2012-04-08 |
| 36 | +### Added |
| 37 | +- Added tab auto-completion of projects and contexts from `todo.txt` and `done.txt`. Type `@<Tab>` or `+<Tab>` while entering a task. |
| 38 | +- Added new listaddons command displays installed addons. |
| 39 | +- List priorities within a range using listpri. For example, to see tasks prioritized A-B, use `todo.sh listpri A-B` |
| 40 | + |
| 41 | +### Fixed |
| 42 | +- Fixed various cosmetic issues, bugs, and added developer test library enhancements. |
| 43 | + |
| 44 | + |
| 45 | +## [2.8.0] - 2011-09-13 |
| 46 | +### Added |
| 47 | +- `listpri`/`lsp` now filters by term. For example, `todo.sh lsp A book` will only return tasks prioritized `A` with the word book in them. |
| 48 | +- Added support for todo directory paths with spaces in them. |
| 49 | +- Tasks with priority included and auto prepend date on (`-t`) get the date where expected. |
| 50 | +- Smarter action completion messaging: `do`, `pri`, and `depri` all let you know if a task is already done, prioritized, or deprioritized. |
| 51 | +- Made more parameters available to offer more control to custom actions (`-c`, `-A`, `-N`, `-T`) |
| 52 | + |
| 53 | +### Changed |
| 54 | +- Improved portability for Dropbox or USB key users. If not specified, todo.sh checks for a config file in its own directory; default todo.txt location is todo.sh's directory. |
| 55 | +- Improved script performance thanks to optimized code |
| 56 | +- Exposed `cleaninput()` for use in addons |
| 57 | +- Improved testing framework: |
| 58 | + - Better escaped input handling |
| 59 | + - Abstracted make_action function to test custom action behavior |
| 60 | + - Added tests for source code compliance |
| 61 | + - Cleaner, simpler, modernized, optimized code |
| 62 | + |
| 63 | +### Fixed |
| 64 | +- Custom action output no longer prefaced by `TODO:` so it's easier to see when the core script vs. addon is performing an action |
| 65 | +- `listpri` complains if specified priority is invalid |
| 66 | +- Don't abort task listing when items contain certain escape sequences (`\c \033`) |
| 67 | +- Condense whitespace ONLY whe task is quoted; automatically convert CRLF to space |
| 68 | +- Don't delete `|` (pipe) from task input |
| 69 | +- `-+` and `-@` no longer break task coloring if context or project appears at the end of the line |
| 70 | + |
| 71 | + |
| 72 | +## [2.7.0] - 2010-08-03 |
| 73 | +### Added |
| 74 | +- Added generalization of the _PRI_X_ color support to all priorities |
| 75 | +- Added highlighting of done, but not yet archived tasks via *COLOR_DONE* |
| 76 | +- Color map (BLACK, ...) now supports spaces in the color definitions, making it possible to override the default ANSI escape codes with e.g. Conky tags (`${color black}`) |
| 77 | + |
| 78 | +### Changed |
| 79 | +- Cleanup: help messages, consistent output messages |
| 80 | +- Exporting `die()` function for use in custom commands |
| 81 | +- `prepend` and `replace` actions keep prepended date, `append` considers sentence delimiters |
| 82 | +- Tests: several regression tests added |
| 83 | + |
| 84 | +## [2.6.0] - 2010-05-11 |
| 85 | +### Added |
| 86 | +- Added a case for the fixed replace command. |
| 87 | + |
| 88 | +### Changed |
| 89 | +- Changed odd tabs to spaces. |
| 90 | +- Faster help/useage document outputs. |
| 91 | +- Consolidated `TODOTXT_VERBOSE` tests. |
| 92 | +- Refactored various add functionality to one function. |
| 93 | +- Updated `_list()` output to match updated `addto`. |
| 94 | + |
| 95 | +### Fixed |
| 96 | +- Quoting regexp to parse properly. |
| 97 | +- Fixed erroneous hide/show comments. |
| 98 | +- Correctly fixed regexp quoting issue for bash v3.1.x and v3.2.x. |
| 99 | +- Old versions of bash do not have `=~` |
| 100 | +- Fix line endings. |
| 101 | +- Fixed bug for replace command. |
| 102 | + |
| 103 | +## [2.5.0] - 2010-05-05 |
| 104 | +### Added |
| 105 | +- Support use of `$HOME/.todo/` for all todo.sh configuration |
| 106 | +- Added new multiple do capability to help message |
| 107 | +- Added option to disable final filter |
| 108 | +- Added a new variable `$TODO_FULL_SH` |
| 109 | +- Added new action `addm` |
| 110 | +- Added support PAGER pipe for help output |
| 111 | +- Added some additional mappings, plus a project context |
| 112 | + |
| 113 | +### Changed |
| 114 | +- Added 'silent' to a bunch of calls |
| 115 | + |
| 116 | +### Fixed |
| 117 | +- Fixing prepend and priority issue. |
| 118 | +- Replace with `priority` set |
| 119 | +- Multiple `do` items |
| 120 | +- `prepend` not correct on prioritized tasks |
| 121 | +- Invalid date range. Changed regex `[ -~]` to `[ ~-]`. |
| 122 | +- `do`: no safeguard to `do` twice. Tests item is not marked done before attempting to mark item as "done". |
| 123 | +- Fixed `add` does not escape line breaks |
| 124 | +- `append` and `replace` unexpected behavior if there's an `&` in task (even in quotes) |
| 125 | +- Tasks whose `ID` begins with `0` ought to be ignored. |
| 126 | +- Fixed auto-complete function name for contexts |
| 127 | + |
| 128 | + |
| 129 | +## [2.4.0] - 2009-05-11 |
| 130 | +### Added |
| 131 | +- Added support for `TODOTXT_FINAL_FILTER` to provide a final custom list filter. |
| 132 | +- Added support for custom sorting (can set in `todo.cfg`) |
| 133 | +- Added parameterize for `.todo.actions.d` directory |
| 134 | + |
| 135 | +### Removed |
| 136 | +- Removed annoying trailing space on `pri` tasks |
| 137 | +- Don't set colors in default `todo.cfg`. |
| 138 | +- Don't set sort command in default `todo.cfg`. |
| 139 | + |
| 140 | +### Fixed |
| 141 | +- `listcon` and `listproj` now work correctly on Mac OS X 10.5 |
| 142 | +- `pri` accepted priorities of more than a single letter |
| 143 | +- Support commands combination for `TODOTXT_SORT_COMMAND`; e.g. piped commands can be used: `export TODOTXT_SORT_COMMAND=" env LC_COLLATE=C sort -f -k2 - | grep -m 10 ."` |
| 144 | +- Replace now echoes old item AND new item, like it used to. |
| 145 | +- `depri` no longer wipes out tasks with more than just the priority in parentheses |
| 146 | +- Now throws an error if you try to prioritize with more than one letter, ie, `todo.sh pri AA` doesn't work any more. |
| 147 | + |
| 148 | +## [2.3.0] - 2009-04-02 |
| 149 | +### Added |
| 150 | +- Added hide priority, context, and projects options now enabled `-P`, `-@` and `-+` |
| 151 | +- Enabled recursive call of todo.sh from add-ons |
| 152 | +- Exported variables for use in add-ons |
| 153 | +- Added `-vv` option for debugging output |
| 154 | +- Added short usage statement (that fits on one screen) with `-h` |
| 155 | +- Added Makefile dist infrastructure for versioned releases in Downloads area on GitHub |
| 156 | + |
| 157 | +### Changed |
| 158 | +- Separated `_list` function for reuse by various versions of list command to reduce duplicate code |
| 159 | +- Set `ls` as the default action |
| 160 | + |
| 161 | + |
| 162 | +## [2.2.0] - 2009-03-?? |
| 163 | +### Fixed |
| 164 | +- For awhile here during the GitHub transition, we stripped the version number from todo.sh and updated it kind of willy-nilly, so we're back-versioning all unversioned copies v 2.2. |
| 165 | + |
| 166 | + |
| 167 | +## [2.1.0] - 2009-02-23 |
| 168 | +### Added |
| 169 | +- Added "pluggability" with `~/.todo.actions.d/` support (via [Tammy and Ed](http://tech.groups.yahoo.com/group/todotxt/message/1739)) |
| 170 | +- Added `-t` param, off by default. When specified, it automatically prepends the current date to new todo's on add |
| 171 | +- Searches for more Unix-y `~/.todo.cfg` if `~/todo.cfg` doesn't exist (via [Ed](http://tech.groups.yahoo.com/group/todotxt/message/1767)) |
| 172 | + |
| 173 | +### Fixed |
| 174 | +- Corrected "ambiguous redirect" bug with done file (via [Jeff](http://tech.groups.yahoo.com/group/todotxt/message/1764)) |
| 175 | +- Corrected usage and help message with new params |
| 176 | +- Corrected config file miscomment about colors |
| 177 | + |
| 178 | + |
| 179 | +## [2.0.1] - 2009-02-17 |
| 180 | +### Fixed |
| 181 | +- Restored `-d` parameter functionality broken in 2.0 (d'oh, thanks Jason, you made the changelog! ) |
| 182 | + |
| 183 | + |
| 184 | +## [2.0.0] - 2009-02-17 |
| 185 | +### Added |
| 186 | +- Added `addto [DEST] "Text to add"` will append text to any file in the todo directory, like `ideas.txt` or `maybelater.txt`. |
| 187 | +- Added `mv # [DEST]` will move a task from `todo.txt` to another file `[DEST]` in the todo directory, like if you decide your `"Learn French"` task should go into your `maybelater.txt` file. |
| 188 | +- `depri #` removes priority from a task. |
| 189 | +- `rm # [TERM]` or `del # [TERM]` will delete just the `[TERM]` from the task on line # in todo.txt. |
| 190 | +- `listfile [SRC] [TERM]` or `lf [SRC] [TERM]` will list the contents of any text file in the todo directory, and filter by keyword `[TERM]`. |
| 191 | +- `listcon` (`lsc`) and `listproj` (`lsprj`) lists contexts and projects, respectively, that appear in todo.txt. (Requires `gawk`) |
| 192 | +- On task deletion, line number preservation is on by default (known issue, leaves blank lines). Optional, can be turned off with `-n` option. |
| 193 | +- Auto-archive on task completion is now on by default; can be turned off with `-a` parameter. |
| 194 | + |
| 195 | +### Changed |
| 196 | +- Separated config file into a non hidden dot file. |
| 197 | + |
| 198 | +### Fixed |
| 199 | +- Better error handling throughout for all commands. |
| 200 | +- Archive now defrags the file (removes blank lines; see line preservation option.) |
| 201 | +- Using `/bin/bash` instead of `/bin/sh` |
| 202 | + |
| 203 | + |
| 204 | +## [1.7.3] - 2006-07-29 |
| 205 | +### Added |
| 206 | +- Added short action aliases – `add/a`, `list/ls`, `listpri/lsp`, `listall/lsa`, `prepend/prep`, `append/app`, `del/rm` |
| 207 | + |
| 208 | + |
| 209 | +## [1.7.2] - 2006-07-28 |
| 210 | +### Added |
| 211 | +- `listpri` automatically capitalizes lowercase priorities |
| 212 | +- `listpri` now displays friendly error message, and the # of tasks returned in verbose mode |
| 213 | + |
| 214 | +### Changed |
| 215 | +- `do` action removes priority from task automatically |
| 216 | + Update: |
| 217 | + |
| 218 | +### Fixed |
| 219 | +- Actions are now case-insensitive (ie, `todo.sh Add` will work) |
| 220 | + |
| 221 | + |
| 222 | +## [1.7.1] - 2006-07-21 |
| 223 | +### Changed |
| 224 | +- I'm a big dummy and didn't keep track of what I fixed here. Sorry! |
| 225 | + |
| 226 | + |
| 227 | +## [1.7.0] - 2006-07-19 |
| 228 | +### Added |
| 229 | +- Interactive `add`, `append`, `prepend`, and `replace` (tx, Ben!) |
| 230 | +- Action `listall` displays tasks from both todo.txt and done.txt |
| 231 | +- Option `-f` forces delete action and disables interactive input (for todobot.pl) |
| 232 | +- Option `-h` displays full help message. |
| 233 | + |
| 234 | +### Deprecated |
| 235 | +- Option `-q` deprecated; Use `-v` to turn on verbose mode |
| 236 | + |
| 237 | +### Changed |
| 238 | +- A very short version of usage message displays by default instead of the long version. |
| 239 | +- Comment in info about `.todo` file being required |
| 240 | + |
| 241 | +### Fixed |
| 242 | +- No colors display for done tasks (tx, Tanja!) |
| 243 | +- Sort is now case-insensitive (tx, Lonnie!) |
| 244 | + |
| 245 | + |
| 246 | +## [1.6.3] - 2006-07-06 |
| 247 | +### Added |
| 248 | +- Line numbers now padded, up to 100 characters. (tx, Tanja!) |
| 249 | + |
| 250 | + |
| 251 | +## [1.6.2] - 2006-07-05 |
| 252 | +### Fixed |
| 253 | +- Windows config files with spaces now work (tx Ron) |
| 254 | + |
| 255 | + |
| 256 | +## [1.6.1] - 2006-07-05 |
| 257 | +### Changed |
| 258 | +- The default location of your `.todo` file is now `$HOME/.todo` |
| 259 | + |
| 260 | +### Fixed |
| 261 | +- No colors mode (`-p`) now works as expected |
| 262 | + |
| 263 | + |
| 264 | +## [1.6.0] - 2006-07-04 |
| 265 | +### Added |
| 266 | +- Action `prepend` adds text to an item at the beginning of the line. |
| 267 | +- Configuration file is now separated from script into `.todo` file |
| 268 | +- Specify a config file other than `.todo` using the `-d` option |
| 269 | +- Option `-q` quiets todo.sh's chattiness. |
| 270 | +- Option `-V` shows version and license information. |
| 271 | + |
| 272 | +### Changed |
| 273 | +- The option to turn off colors is now `-p` (no longer `-nc` as in 1.5.2) |
| 274 | + |
| 275 | + |
| 276 | +## [1.5.2] - 2006-06-26 |
| 277 | +### Fixed |
| 278 | +- Items that start with `x ` (an x with a space after) are archived now to avoid lines that start with a word like `xander` from being archived. (tx, Tannie!) |
| 279 | +- Report now only archives items that start with `x ` as well. |
| 280 | + |
| 281 | + |
| 282 | +## [1.5.1] - 2006-06-26 |
| 283 | +### Fixed |
| 284 | +- Items with an `x` in them at all were being deleted on archive with 1.5; all fixed now. |
| 285 | + |
| 286 | + |
| 287 | +## [1.5.0] - 2006-06-24 |
| 288 | +### Added |
| 289 | +- Option to turn off colors (to avoid characters in piped text files or IM bot), ie `todo.sh -nc [COMMAND]` |
| 290 | +- A date is added to a completed todo, ie `x 2006-06-24` (tx SETH) |
| 291 | +- Action `remdup` removes exact duplicate lines from todo.txt (tx Tannie) |
| 292 | +- Action `del` removes any blank lines from todo.txt (tx Tannie) |
| 293 | + |
| 294 | +### Changed |
| 295 | +- Using `sed -i` instead of copying tmp file (tx Tannie) |
| 296 | + |
| 297 | +### Fixed |
| 298 | +- Colors show in OS/X 10.4 (tx SETH & misha) |
| 299 | + |
| 300 | + |
| 301 | +## [1.4.0] - 2006-06-17 |
| 302 | +### Added |
| 303 | +- Tasks are color-coded by priority in Cygwin (Thanks, Abraham, Manuel and Luis!) |
| 304 | + |
| 305 | +### Changed |
| 306 | +- Switched endless `if-then` to a `case` statement, and tightened up `wc -l` regex. (Thanks, Sash!) |
| 307 | + |
| 308 | +### Fixed |
| 309 | +- If you `replace`/`do`/`append` to a non-existent task, your todo.txt is no longer overwritten and the error is handled gracefully. (Thanks, Scott!) |
| 310 | + |
| 311 | + |
| 312 | +## [1.3.0] - 2006-05-29 |
| 313 | +### Added |
| 314 | +- Displays the number of newly added todo (Thanks, Amy!) |
| 315 | +- Confirms whether or not you really want to delete a todo |
| 316 | +- Displays success messages and confirmations on `append`, `replace`, `do`, etc. |
| 317 | +- Added licensing information in comments. GPL, baby! |
| 318 | + |
| 319 | +### Changed |
| 320 | +- Alphabetized command workflow in if/then construction |
| 321 | +- Tightened up `sed` commands, removed unnecessary `grep`s and `cat`s (Thanks, Sash!) |
| 322 | +- Stripped whitespace around number lines from wc results |
| 323 | + |
| 324 | +### Removed |
| 325 | +- Removed filenames from `report.txt` format, for easier graphing or Excel imports. |
| 326 | + |
| 327 | +### Fixed |
| 328 | +- Todos are now sorted alphabetically when listed by a term. (ie: `todo list flowers) |
| 329 | + |
| 330 | + |
| 331 | +## [1.2.0] - 2006-05-15 |
| 332 | +### Added |
| 333 | +- `list` is case insenstive. ie, `todo list Mac` will match lines with "mac" and "Mac" |
| 334 | + |
| 335 | +### Changed |
| 336 | +- `todo list` matches multiple [TERM]s. ie, `todo list mac offline` will match all lines that contain the words "mac" and "offline" |
| 337 | +- `repri` and `pri` actions combined into `pri` action (Thanks Mike!) |
| 338 | +- Quotes no longer required with `add` and `replace` (Thanks Karl!) |
| 339 | +- Any priority added to a todo must be uppercase to preserve sort order, enforced now. ie `todo pri 1 a` will return a usage error. |
| 340 | + |
| 341 | +### Fixed |
| 342 | +- File "sanity checks" and cleanup function, test script and various fantastic stylistic improvements added. Extra big thanks to Karl! |
| 343 | + |
| 344 | + |
| 345 | +## [1.1.0] - 2006-05-12 |
| 346 | +### Added |
| 347 | +- Supports file paths with spaces (ie `C:\Documents and Settings\gina\todo.txt`) |
| 348 | + |
| 349 | + |
| 350 | +## 1.0.0 - 2006-05-11 |
| 351 | +### Added |
| 352 | +- Consolidated into one master script with usage notes and released. |
| 353 | + |
| 354 | + |
| 355 | +[Unreleased]: https://github.com/todotxt/todo.txt-cli/compare/v2.10.0...HEAD |
| 356 | +[2.10.0]: https://github.com/todotxt/todo.txt-cli/compare/v2.9.0...v2.10.0 |
| 357 | +[2.9.0]: https://github.com/todotxt/todo.txt-cli/compare/v2.8.0...v2.9.0 |
| 358 | +[2.8.0]: https://github.com/todotxt/todo.txt-cli/compare/v2.7.0...v2.8.0 |
| 359 | +[2.7.0]: https://github.com/todotxt/todo.txt-cli/compare/v2.6.0...v2.7.0 |
| 360 | +[2.6.0]: https://github.com/todotxt/todo.txt-cli/compare/v2.5.0...v2.6.0 |
| 361 | +[2.5.0]: https://github.com/todotxt/todo.txt-cli/compare/v2.4.0...v2.5.0 |
| 362 | +[2.4.0]: https://github.com/todotxt/todo.txt-cli/compare/v2.3.0...v2.4.0 |
| 363 | +[2.3.0]: https://github.com/todotxt/todo.txt-cli/compare/v2.2.0...v2.3.0 |
| 364 | +[2.2.0]: https://github.com/todotxt/todo.txt-cli/compare/v2.1.0...v2.2.0 |
| 365 | +[2.1.0]: https://github.com/todotxt/todo.txt-cli/compare/v2.0.1...v2.1.0 |
| 366 | +[2.0.1]: https://github.com/todotxt/todo.txt-cli/compare/v2.0.0...v2.0.1 |
| 367 | +[2.0.0]: https://github.com/todotxt/todo.txt-cli/compare/v1.7.3...v2.0.0 |
| 368 | +[1.7.3]: https://github.com/todotxt/todo.txt-cli/compare/v1.7.2...v1.7.3 |
| 369 | +[1.7.2]: https://github.com/todotxt/todo.txt-cli/compare/v1.7.1...v1.7.2 |
| 370 | +[1.7.1]: https://github.com/todotxt/todo.txt-cli/compare/v1.7.0...v1.7.1 |
| 371 | +[1.7.0]: https://github.com/todotxt/todo.txt-cli/compare/v1.6.3...v1.7.0 |
| 372 | +[1.6.3]: https://github.com/todotxt/todo.txt-cli/compare/v1.6.2...v1.6.3 |
| 373 | +[1.6.2]: https://github.com/todotxt/todo.txt-cli/compare/v1.6.1...v1.6.2 |
| 374 | +[1.6.1]: https://github.com/todotxt/todo.txt-cli/compare/v1.6.0...v1.6.1 |
| 375 | +[1.6.0]: https://github.com/todotxt/todo.txt-cli/compare/v1.5.2...v1.6.0 |
| 376 | +[1.5.2]: https://github.com/todotxt/todo.txt-cli/compare/v1.5.1...v1.5.2 |
| 377 | +[1.5.1]: https://github.com/todotxt/todo.txt-cli/compare/v1.5.0...v1.5.1 |
| 378 | +[1.5.0]: https://github.com/todotxt/todo.txt-cli/compare/v1.4.0...v1.5.0 |
| 379 | +[1.4.0]: https://github.com/todotxt/todo.txt-cli/compare/v1.3.0...v1.4.0 |
| 380 | +[1.3.0]: https://github.com/todotxt/todo.txt-cli/compare/v1.2.0...v1.3.0 |
| 381 | +[1.2.0]: https://github.com/todotxt/todo.txt-cli/compare/v1.1.0...v1.2.0 |
| 382 | +[1.1.0]: https://github.com/todotxt/todo.txt-cli/compare/v1.0.0...v1.1.0 |
0 commit comments