# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [2.1.0](https://crates.io/crates/rtw/2.1.0) Dec 8, 2020

* Add `--report` option to summary command.

## [2.0.1](https://crates.io/crates/rtw/2.0.1) Nov 3, 2020

* Fix CLI output for Windows 10 cf [#43](https://github.com/PicoJr/rtw/pull/43) thanks [ythri](https://github.com/ythri)

## [2.0.0](https://crates.io/crates/rtw/2.0.0) Jul 30, 2020

* Stabilize multiple ongoing activities
* Stabilize long descriptions

## 2.0.0-rc1 (not released on crates.io) Jul 20, 2020

* Timeline now displays ongoing activities.

## [2.0.0-beta](https://crates.io/crates/rtw/2.0.0-beta) Jul 16, 2020

This version is mostly backward compatible with previous `rtw` data,
please discard ongoing activities (remove `~/.rtw.json`) before using this version.
However previous versions of `rtw` will not work on data generated by this version.

* Support multiple ongoing activities.
* Timeline now supports overlapping activities (experimental).
* `stop` and `cancel` now have a `--id` optional parameter in order to disambiguate multiple ongoing activities.
* Add `deny_overlapping` option to `rtw` config.
* the json containing finished activities now also contains the `rtw` version.
* add `-d` `--description` option for `start`, `track` and `summary` cf [#40](https://github.com/PicoJr/rtw/issues/40).
* when provided, descriptions are used when exporting to calendar

## [2.0.0-alpha.1](https://crates.io/crates/rtw/2.0.0-alpha.1) Jul 12, 2020

* bump `htp` to 0.2.1 (fix `next <weekday>`) 

## [2.0.0-alpha](https://crates.io/crates/rtw/2.0.0-alpha) Jul 5, 2020

* Replace `chrono-english` with `htp`.
* Fix [#37](https://github.com/PicoJr/rtw/issues/37)

## [1.5.0](https://crates.io/crates/rtw/1.5.0) Jun 21, 2020 

* add `completion <shell>` command.

`rtw completion <shell>` generates completion file for `<shell>`

## [1.4.1](https://crates.io/crates/rtw/1.4.1) Jun 19, 2020 

* Fix timeline crash when activity spans over several days (#33)

## [1.4.0](https://crates.io/crates/rtw/1.3.1) Jun 17, 2020

* Add `dump` subcommand, dumps finished activities to [ICalendar](https://en.wikipedia.org/wiki/ICalendar).

## [1.3.1](https://crates.io/crates/rtw/1.3.1) Jun 16, 2020

* Fix timeline crash when activity is too short to be displayed (#28)

## [1.3.0](https://crates.io/crates/rtw/1.3.0) Jun 13, 2020

* Add multiline timeline

## [1.2.2](https://crates.io/crates/rtw/1.2.2) Jun 09, 2020

* Add `-n` dry-run option.

## [1.2.1](https://crates.io/crates/rtw/1.2.1) Jun 07, 2020

* Add warning: CLI usage stable but not `lib.rs` content.
* Fix doc.rs build issue (restore `lib.rs`).

## [1.2.0](https://crates.io/crates/rtw/1.2.0) Jun 07, 2020

* add `cancel` subcommand.
* deny overlapping activities
* add `timeline` subcommand.
* timeline colors can be configured in `rtw_config.json`
* add `day` subcommand (display timeline for the current day)
* add `week` subcommand (display timeline for the current week)

## [1.1.0](https://crates.io/crates/rtw/1.1.0) Mar 22, 2020

### Added

* add config using [config-rs](https://docs.rs/crate/config/0.10.1).

### Changed

* activities title are no longer truncated in summary

### Github CI

* Add platforms: `macos-latest`, `windows-latest` (see [rust.yml](.github/workflows/rust.yml)).

## [1.0.0](https://crates.io/crates/rtw/1.0.0) Mar 16, 2020

### Added

* crate [chrono-english](https://docs.rs/chrono-english/) for time parsing see [commands](commands.md).
* more unit and integration tests
* `summary --week` option
* `summary range_start - range_end` syntax

### Fixed

* Duration display bug: 1h was displayed as `01:60:3600` instead of `01:00:00`

### Breaking API Changes

`rtw` now uses the crate [chrono-english](https://docs.rs/chrono-english/) for time parsing.

As a result `rtw` now support the following [formats](https://docs.rs/chrono-english/#supported-formats) when supplying time hints.

The following syntax are not supported anymore:

* `rtw start 4m foo`, use `rtw start 4m ago foo` instead.
* `rtw stop 4m`, use `rtw stop 4m ago` instead.
* `rtw track 2019-12-25T19:43:00 2019-12-25T19:45:00 write doc`, use `rtw track 2019-12-25T19:43:00 - 2019-12-25T19:45:00 write doc` instead

## [0.2.1](https://crates.io/crates/rtw/0.2.1) Mar 8, 2020

### Fixed

* fix cargo-audit warning on `quote:1.0.2` being yanked

### Removed

* ram-only implementations

## [0.2.0](https://crates.io/crates/rtw/0.2.0) Dec 31, 2019

### Added

* `track` command
* `delete` command
* `summary --id` option
* doc test
* `continue` command
* `CHANGELOG.md`
* `commands.md`
* `summary --lastweek` option
* github action
* badges

### Changed

* `AbsTime` renamed to `DateTimeW`
* `ActiveActivity` renamed to `OngoingActivity`

### Fixed

* `summary` output is now sorted by start date
* `tempfile` and `assert_cmd` no longer required for build
* CLI version now matches `Cargo.toml` version

## [0.1.1](https://crates.io/crates/rtw/0.1.1) Dec 26, 2019

### Added

* repository url in `Cargo.toml`

## [0.1.0](https://crates.io/crates/rtw/0.1.0) Dec 26, 2019

### Added

* `start` command
* `stop` command
* `summary` command
