Skip to content

JNRowe/rdial

Repository files navigation

rdial - Minimal time tracking for maximal benefit

Development status Test state on master Coverage state on master Current PyPI release Supported Python versions Documentation Recent developments

rdial is a simple way to track the time you spend on tasks. It tracks the name of a task, its start time, its duration and optionally a message… nothing more.

rdial is released under the GPL v3 license.

Requirements

rdial’s mandatory dependencies outside of the standard library are:

It should work with Python version 3.6, or newer. If rdial doesn’t work with the version of Python you have installed, file an issue and I’ll endeavour to fix it.

The package has been tested on many UNIX-like systems, including Linux and OS X, but it may work fine on other systems too.

To run the tests you’ll need pytest. Once you have pytest installed you can run the tests with the following commands:

$ pytest tests

Database

The database is just a directory of simple CSV files, making it useful to use and abuse in other applications. A sample database could be a file named task.csv with the following contents:

start,delta,message
2011-05-04T08:00:00Z,PT01H00M00S,working on issue 4
2011-05-04T09:30:00Z,,

and a task2.csv file with the following contents:

start,delta,message
2011-05-04T09:15:00Z,PT00H15M00S,

The CSV files contain the following fields:

  1. Start time expressed in UTC
  2. Task duration
  3. An optional message associated with the event

The start time and duration fields are given as ISO 8601 formatted strings.

If a line does not contain a duration entry, then the task is considered to be running.

Interface

$ rdial start <task_name>
$ rdial stop
$ rdial report
+-------+----------------+
| task  | time           |
+-------+----------------+
| task  |        1:00:00 |
| task2 | 1 day, 0:15:00 |
+-------+----------------+

Contributors

I’d like to thank the following people who have contributed to rdial.

Patches

  • Nathan McGregor

Bug reports

  • Delphine Beauchemin
  • Henry Richards
  • James Gaffney
  • Ryan Sutton
  • Stephen Thorne

Ideas

  • Adam Baxter
  • Kevin Simmons
  • Thomas Gallagher

If I’ve forgotten to include your name I wholeheartedly apologise. Just drop me a mail and I’ll update the list!

Bugs

If you find any problems, bugs or just have a question about this package either file an issue or drop me a mail.

If you’ve found a bug please try to include a minimal testcase that reproduces the problem, or even better a patch that fixes it!