Dob

Latest version: v3.1.1

Safety actively analyzes 621803 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

3.0.14

===================

- Change ownership to https://github.com/tallybark.

- Docs: Bugfix: Correct typo.

3.0.13

===================

- Highlights: Much improved searching and reporting.

- A brief overview of what's documented in greater detail below:

- Add grouping (by Activity, Category, Tags, and/or start date).

- For instance, group by Activity, Category, and Day to see
how much time was spent on each Activity\Category each day.

- Add multi-column sorting.

- For instance, group by Activity, Category, and Day, and sort
by day and usage to see results ordered by which tasks had the
most time spent on them recently.

- Add search on Fact description.

- For instance, find all Facts whose description contains one
or more search terms.

- Add Tag frequency distributions.

- For instance, to see the number of times each Tag was used in
each result group.

- Add JSON output format.

- For instance, to prepare data to transmit elsewhere, such as
<third-party timesheet server>.

- Support human-friendly relative dates (like '1 day ago').

- E.g., ``dob find --since yesterday``.

- Wire since/until options to Activity, Category, and Tag searches
(via ``list`` and ``usage`` commands).

- E.g., ``dob list activities --since 'last week'``.

- New 'Journal' search results format, exemplified by the new
``dob report`` command.

- Includes sparklines and Tag frequencies, e.g.::

$ dob report
Fri Jun 12 8.3 hours ████▌ DevelopmentTally Bark dob(5)
2.5 hours █▍ Cooking & EatingPersonal salad

- Details: Add more powerful search and report options.

- Rename a few existing options and a handful of single-character
options, and add a number of new options for the search commands
(for the existing ``search``, ``list``, ``usage``, and ``export``
commands, and for the new ``report`` command).

- Bring parity to the ``list``, ``usage``, ``search`` and ``export``
commands, such that they all support as many of the same options as
reasonable.

- Add new report grouping options:

- New ``-A/--group-activity``, to group results by Activity.

- New ``-C/--group-category``, to group results by Category.

- New ``-T/--group-tags``, to group results by Tag names.

- New ``-Y/--group-days``, to group by Fact start date (YYYYMMDD).

- Allow multiple columns to be specified with ``-S/--sort/--order``.

- Remove ``-D/--desc`` and ``-A/--asc`` options and rely instead on
``-D/--direction/--dir`` option, which can now be specified multiple
times, to support specifying a separate sort order for each of the
now-multiple-allowed ``-S/--sort/--order`` options.

- Rename report option ``-g/--category`` to ``-c/--category`` (which
restricts results to matching Category), so that the option name
pneumonic is obvious.

- Add new ``-t/--tag`` search match option, to complement existing
``-a/--activity`` and ``-c/--category`` search match options.

- Add search term support, for matching against Fact description.

- E.g., ``dob find foo`` will find all Facts with 'foo' in their
description.

- Add single-character options for ``--since`` and ``--until`` options:
``-s`` and ``-u``.

- Disable deprecated report options, ``--hidden`` and ``--deleted``.

- Rename option ``-u/--usage`` to ``-U/--show-usage``.

- Rename option ``-s/--span/--no-span`` to ``-N/--hide-duration``.

- New option, ``-P/--hide-description``, to omit the Fact description.

- New option, ``-l/--column``, allows user to specify exactly what
details to include in the report (otherwise a reasonable set of
default columns is reported).

- E.g., the command,

``dob list facts --group-tags -l 'tag' -l 'group_count'``

will show two columns, 'Tag' and 'Uses', that indicate
each Tag name used on the grouped Facts, as well as how
many Facts it's used on, and excludes all other columns.

- Add a new sparkline output value, to visually represent the 'duration'.

- And add options to control the new sparkline output value:
``--spark-width``, ``--spark-total``, and ``--spark-secs``.

- Rename option ``-r/--rule`` to ``-R/--factoid-rule``, for readability.

- Replace poorly implemented ``-t/--truncate`` option with ``-W/--width``
option, to restrict report table or Factoid line to specific width.

- Also change Factoid report to default to compact view (no blank
lines) when width is used.

- E.g., ``dob find --since 'last week' --factoid --width 110``.

- Rename poorly-named ``-w/--doc`` output format option to ``--factoid``
(or use ``-f factoid``).

- Add JSON output format option (specify with ``-f json``, ``--json``,
or ``-J``).

- Split table and markup formats from ``--format`` to a new option,
``--table-type/--type``.

- Now the ``-f/--format`` option only includes the higher-level
formats, which are also each mapped to their own option names,
e.g., ``--journal`` is equivalent to ``--format journal``.

This list of higher-level formats is:

``--journal``, ``--factoid``, ``--ical``, ``--csv``, ``--json``,
``--tsv``, ``--xml``, and ``--table``.

- The new ``--table-type/--type`` option is used to specify a table
or markup output format, and includes: html, mediawiki, rst, etc.

- E.g., ``dob find --since 'last week' --table --type rst``.

- Modify ``--table`` option to use the ``texttable`` package and disable
``tabulate`` and ``humanfriendly`` usage, because neither of those
packages wraps cell values, so their tables are not guaranteed to be
readable in one's terminal.

- This is mapped to the default ``--table-type normal`` option.

- Add new ``--broad-match/--broad`` option, for applying report command
search terms to matching meta fields, too.

- E.g., ``dob find --broad foo`` will find all Facts with 'foo' in
their description, in their Activity name, in their Category name,
or in one of their Tag names, including parts of any name. For
instance, it would match an Activity named 'afoobar'.

Whereas, e.g., ``dob find -a foo`` would only find Facts with an
Activity named exactly 'foo'.

- Allow multiple Activity, Category, and/or Tag filters.

- Rather than only accepting one attribute name to filter search
results, allow many (and OR the filters).

- E.g., ``dob find -a foo -a bar`` will find all Facts with
an Activity named with 'foo' or 'bar'.

- Add new config value, ``term.row_limit``, to replace hardcoded terminal
output row limit, but ignore if output is being redirected.

- This avoids overwhelming the terminal with too much output, unless
the user explicitly asks for it.

- Align columns better in the table output format.

- E.g., align 'duration' column on decimal places, and right-align
other number columns.

- New options to show or hide cumulative result totals in aggregate search.

- Feature: New ``dob report`` command shows time spent recently on each
Activity\Category, grouped by start date, and formatted using 'Journal'.

- The ``report`` command is essentially an alias for the otherwise
lengthy ``find`` command::

dob find \
--since 'last week' \
--group-days \
--group-activity \
--group-category \
--sort day \
--dir asc \
--sort time \
--dir desc \
--journal

- Extend all commands that output a table to support the other formats, too.

- In addition to table format, now also support CSV, TSV, XML, etc.

- This affects the ``list`` and ``usage`` commands, as well as the
``config show``, ``styles show``, ``rules show``, and ``ignore show``
commands.

- E.g., ``dob config dump --json``.

- Improve: Tweak other option names.

- Rename ``-C/--color/--no-color`` to ``-X/--color/--no-color``, and
rename ``-c/--config`` to ``-C/--config``, so that now all single-
character global options, save for ``-v/--version``, are capitalized.

- Rename import command option ``-X/--leave-backup`` to ``-b/--leave-backup``.

- Bugfix: Activity without Category crashes ``list activities``.

- That is, for any Activity that has NULL for the Category.

- Bugfix: ``dob usage tags`` crashes.

- Bugfix: ``dob list`` sort option broken.

- Alias: New ``dob find`` command is alias to ``dob search`` command.

- Improve: Add abbreviated ``list`` and ``usage`` command type names.

- E.g., ``dob list act`` is an alias for ``dob list activities``.

- Add ``--show-duration`` option to ``list`` command.

- Because of the complementary nature of the ``list`` and ``usage``
commands, add ``--show-duration`` to complement ``--hide-duration``,
to be used with ``list`` commands to achieve ``usage``-like output.

- Improve: Make ``dob export`` only generate Factoid report.

- Because that's the only format than can be imported.

- Also, require than an output file be specified for the ``export``
command, to better differentiate it from the ``search`` command
(because ``search`` could otherwise be used instead of ``export``).

- Improve: In reports, distinguish between Category with no name, and NULL.

- Specifically, if an Activity has no Category assigned, show '<NULL>'
rather than the empty string, which itself is a valid Activity name.

- Improve: Tweak ``details`` command output so colons align.

- Simplify: Hide ``migrate`` command (which is currently not needed).

- Bugfix: Catch overflow error when day delta too large.
[|dob-viewer|_]

- For instance, if the user enters a jump command but with a date,
e.g.,``20200615J``, when they meant to instead use the ``f`` command,
not the ``J`` command, i.e., ``20200615f``, catch and recover
gracefully from the ``timedelta`` overflow error.

- Improve: Make mash-quit on unsaved changes prompt opt-in.
[|dob-viewer|_]

- As a convenience to developers, mashing Ctrl-q would skip the
save confirmation on exit; this feature is now opt in via the
new config setting, ``dev.allow_mash_quit``.

- Improve: Show hidden config options when requested directly.
[|dob-bright|_]

- E.g., ``dob config dump foo bar`` would previously not show
the config setting if ``foo.bar`` was marked ``hidden``.

- Improve: Add max-width option to ``Fact.friendly_str``.
[|nark|_]

- It previously applied to just the description, but now can be applied
to the complete friendly string.

- Also make ANSI-aware, so that strings with colors or ornamentation
are not truncated prematurely.

- Improve: Use 'at ...' syntax for Factoid with no end, not ' to <now>'.
[|nark|_]

- So that the active Fact writ as a Factoid is parsable on import.

- Restrict: Raise error on search if SQLite is not the engine.
[|nark|_]

- This conflicts with the goal (set by hamster-lib, and loftily sought
by nark) to support any DBMS, but the necessary SQL aggregate functions
are DBMS-specific, and SQLite is all that's been plumbed in this release
(to support the enhanced search and report features).

- Bugfix: Aggregate results for Facts with two or more Tags is incorrect.
[|nark|_]

- Usage and duration were being over-counted.

- Bugfix: Both ``antecedent`` and ``subsequent`` mishandle momentaneous Facts.
[|nark|_]

3.0.12

===================

- Bugfix: Windows: ``dob demo`` broken.
[|dob|_]

- Bugfix: Windows: Run ``notepad.exe`` if ``EDITOR`` not set.
[|dob-viewer|_]

- Normally if ``EDITOR`` is not set, the system's ``sensible-editor``
command will run Nano or Vi, neither of which is available on Windows.
Consequently, on Windows, when ``EDITOR`` is not set, dob displays a
warning, awaits acknowledgment, and then runs the Carousel again.

- Bugfix: Windows: Temporary file path broken because colon.
[|dob-viewer|_]

- Bugfix: Windows: dob shows backup file symlink error.
[|dob|_]

3.0.11

===================

- Bugfix: Windows support, aka upgrade to sqlalchemy 1.3.
[|nark|_]

- Bugfix: Ensure warnings not cleared before awaiting acknowledgment.
[|dob-viewer|_]

- Bugfix: Config settings path shows incorrectly when displaying errors.
[|dob-bright|_]

3.0.10

===================

- Bugfix: ``dob edit`` fails when no config, rather than printing message.
[|dob-bright|_]

- Also affects other commands that require the config.

- E.g., this happens if the user has not called ``dob init``.

In other words, this affects new users.

- Bugfix: ``dob edit`` does nothing after ``dob init`` on empty database.
[|dob|_]

- User should not be forced to dob-add a Fact before running the
interactive Carousel. Instead, we can start with a basic gap Fact.

- Bugfix: Config created by ``dob init`` crashes subsequent dob commands.
[|nark|_]

- The internal log level values were being writ to the config file,
rather than the friendly level names.

- Bugfix: Config file errors crash dob.
[|dob-bright|_]

- But rather than just catch one error, print it, and exit,
collect all errors, print them all, and then just keep chugging,
choosing to use default values rather then exiting.

- User will have option to bail before running Carousel, which now
requires the user's acknowledgement of the errors.

- Bugfix: ``dob edit`` shows most recently edited Fact.
[|dob|_]

- It should show the most recent Fact. So sort by start.

- Bugfix: Print error rather than crash on ``$EDITOR`` fail.
[|dob-viewer|_]

- Use case: User sets their ``EDITOR`` environment variable to
a bad path, or adds arguments (which is not supported -- but
one could use an intermediate shell script wrapper to add args).

- Bugfix: Post-processors not called after dob-add.
[|dob|_]

- Use case: On Carousel save, the export-commit plugin post processor
is triggered. The same should happen after editing/adding Facts through
the ``dob add`` family of commands, e.g., ``dob from xx to xx: A test!``

- Bugfix: Part-specific styles not appearing until after focus.
[|dob-viewer|_]

- Use case: Run ``dob edit`` and note the start and end time widget
styles. Now shift focus to one of the widgets, and then away.

- Depending on how the style is configured, the look of the widget
after shifting focus away from it does not look like how it
originally looked.

- Regression: Cannot enter colon (for clock time) in time widgets.
[|dob-viewer|_]

- Solution: Only enable colon commands when content has focus.

- Feature: Set app background color via ``label = <>`` in styles.conf.
[|dob-viewer|_]

- PTK already assigns 'class:label' to every widget. This updates the
style-clobbering calls to maintain the label. Thus, user could add,
say, ``label = 'bg:00AA66'`` to their ``styles.conf``, to give the
app a uniform background color.

- Improve: Require confirmation after printing errors on Carousel startup.
[|dob-viewer|_]

- Instead of pausing after printing error messages, require user to
confirm. Otherwise, user may not have time to read the errors. Also,
after quitting Carousel, errors are still off-screen (up-screen).

- Improve: Make easier to base styles off 'night' and 'light' base styles.
[|dob-viewer|_]

- Rather than assign the base color to all classes, which makes it
difficult to override them in styles.conf (because user is then
forced to override the highest-order class for every widget),
leave all the class styles empty except for the lowest ordered
class, which is common to all widgets, class:label.

- Improve: Use no precision in 'Gap Fact of' text until duration > 60 seconds.
[|dob-viewer|_]

- Otherwise the footer status message updates too frequently,
is too distracting.

- Improve: Warn when syntax errors found in style config.
[|dob-viewer|_]

3.0.9

==================

- Feature: New ``dob config edit`` command, to get straight to the point.
[|dob|_]

- Feature: New ``dob styles`` commands.
[|dob|_]

- | ``dob styles --help``
| ``dob styles create``
| ``dob styles conf``
| ``dob styles edit``
| ``dob styles list``
| ``dob styles show``

- Feature: New ``dob rules`` commands.
[|dob|_]

- | ``dob rules --help``
| ``dob rules create``
| ``dob rules conf``
| ``dob rules edit``
| ``dob rules list``
| ``dob rules show``

- Feature: New ``dob ignore`` commands.
[|dob|_]

- | ``dob ignore --help``
| ``dob ignore create``
| ``dob ignore edit``
| ``dob ignore list``
| ``dob ignore show``

- UX: Prefer config-show over config-dump.
[|dob|_]

- Docs: Add section on config file populate command.
[|dob|_]

- Improve: Ensure plugins loaded on config-create, too.
[|dob|_]

- Bugfix: Import ``FactsDiff`` display broken.
[|dob-viewer|_]

- Bugfix: 'value-tags' class missing from hash-and-label tag parts' styles.
[|dob-viewer|_]

- Feature: New ``dob styles`` commands.
[|dob-viewer|_]

- Feature: New ``dob rules`` commands.
[|dob-viewer|_]

- Feature: New ``dob ignore`` commands.
[|dob-viewer|_]

- Feature: Make tags_tuples parts styleable (for ``git edit``).
[|dob-viewer|_]

- Feature: Make factoid parts styleable (for ``git show``).
[|dob-viewer|_]

- Tweak: Update 'night' style settings.
[|dob-viewer|_]

- Enhance: Apply 'value-tags' class to tags diff parts.
[|dob-viewer|_]

- API: Rename functions; move functions between libraries.
[|dob-viewer|_]

- API: Update renamed config setting: ``stylit_fpath`` → ``rules_fpath``.
[|dob-viewer|_]

- Improve: Option to exclude section column from config table.
[|dob-bright|_]

- Improve: Do not assume ASCII table width.
[|dob-bright|_]

- UX: Change difficult to read 'red' warning text to 'yellow'.
[|dob-bright|_]

(Though really should be made configurable. Yellow works
better on a dark background.)

- Harden: Prevent stylize from failing on user input.
[|dob-bright|_]

- API: Rename to avoid confusion/match other usage: ``stylit`` → ``rules``.
[|dob-bright|_]

- Library: Refactor, Relocate, and DRY work.
[|dob-bright|_]

- API: De-scope function for broader usage.
[|nark|_]

- API: Rename function: oid_colorize → oid_stylize.
[|nark|_]

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.