projecthamster / hamster-cli Goto Github PK
View Code? Open in Web Editor NEWA command line time tracker. Powered by 'hamster-lib'
Home Page: http://projecthamster.org
License: GNU General Public License v3.0
A command line time tracker. Powered by 'hamster-lib'
Home Page: http://projecthamster.org
License: GNU General Public License v3.0
Depends on hamsterlib
providing a corresponding writer class.
For now, it will suffice to dump config.ini
with the main package.
hamsterlib 0.0.3
requires an aditional config setting which we need to provide.
Depends on hamsterlib
providing a corresponding writer class.
Refactor hamstercli to reflect our current best knowlege about our expectations / the backend.
We need to check if our workdir exists, and if not, create it.
While we are at it we should adjust the default config.ini
to a saner value.
Command to launch specific gtk windows.
Currently the fixtures has its values hardcoded. By this it douplicates client_config
and lib_config
fixtures.
It would be desireable if it would construct the file from those two already existing fixtues instead.
While we are at it, we can do a general cleanup of all those config fixtures, removing deprecated keys.
after a temp fact has been started with hamsterlib-cli
, it apears this tmp-fact already gets anPK assigned. Once the fact is saved to persistent storage, this obviously breaks...
Right now, if we pass an empty string to start
we go all the way until Fact-instantiation until we raise an exception.
We should at least veryfy that we get some string.
See here.
Command to stop tracking of current ongoing fact
.
If hamster-gtk is present, provide a way to launch various sub-windows on demand.
Commands like start
and list
often ask for multiple arguments. Instead treating them as one huge chunk, maybe it is more viable to use Clicks veradic argmuments?!
Arguments containing whitespace needs to be wrapped in quotes, as usual. Main use cases are
raw_fact
start
(when date-time)end
(when date-time)Click allows for one veradic argument. It seems sensible to make use of that for raw_fact
. That means that any date-time specified will still have to be wrapped in quotes, but raw facts can be unquoted as CLICK will just assume all extra arguments to be part of raw_fact
.
Remove from codebase if not.
Our relevant commands used to handle 'ongoings facts' as part of the client. Now that this functionality is provided by the backend they need to be adjusted.
stop
current
cancel
start
config options should be renamed "day_start" and "day_end"!
Quite a few tests are without docstring. This should be fixed. :)
Command to list all activities stored in the backend.
ordered by lower(category.name)
Initial tests offen use 'foobar'-like strings for random content. This should be substitured by apropiate faker instances.
Times will not be trivial to change due to internal logic, but at least simple strings should be trivial.
When no categories are to be returned, still show a short and friendly feedback message.
Right now the export path is equal the work_dir
. The resulting files extension is given by the export format.
Its name is static: report
.
It would be nice to allow users greater control over these settings.
Command to write facts of a specified timeframe to a file of specified format.
Format:
Provide basic ways to start and stop recording a new fact. For convinience, also provivde a way to get info on our current fact status.
Mechanics to deal with 'ongoing facts' has been moved to thehamslib
backend. As a consequence any reference should be removed from the CLi.
command that lists all activities matching a given term within a given timeframe
This is different to the legacy list
command which does not filter by search term but just timeframe.
Parameters:
Returns:
Post-legacy releases shoudl unify this command with list
s functionality.
right now we only implement "installed mode" via dbus.
the original implementation also provides a "devel mode".
Although we most likly will abandon both of those, for compatibilit reasons want to keep both around.
Our test suite should make use of;
flake8-debugger
flake8-print
flake8-naming
Right now we still carry some older tests that are marked as 'xfail'.
Before release those should be either made functional or removed.
Right now our initial version is set to '0.0.1'.
It would be better to start at '0.1.0' so allow for easier hotfixes after release.
Right now start
does two distinct things.
Both functionalities should be represented by distinct commands.
Depends on hamsterlib
providing a corresponding writer class.
the user feedback displayed has a type: 'tracked'
Right now we just assume that config.ini
is part of our package.
It would be preferable if
a)
Our client crawl various standart config locations to look for an appropiate config file.
b)
Uses the packaged config file as a template to create a new user specific config file at a fixed location.
It is worth noting that the legacy CLI's list
does only allow for a timeframe and not for a search term.
This extended functionality is instread provided by the search
(#21) command.
Command to list all categories stored in the backend.
During the broken 0.0.2
release of hamsterlib
we disabled proper testing with tox
.
Now that 0.0.3
has been released, we can bring it back.
should be checked against the activity name.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.