Skip to content

v3.0.3

Latest
Compare
Choose a tag to compare
@matthijskooijman matthijskooijman released this 19 Nov 19:40
· 12 commits to master since this release
198ebe2

After a long hiatus and slow development, finally a hamster release
again! This version contains some usability fixes and makes hamster run
on newer systems.

Starting with this release, the hamster project also provides flatpak
builds of all releases (and also of git development versions). This is
now the recommended way of installing hamster, if your distribution does
not provide (up-to-date) packages.

One notable change is the parsing of the hamster cmdline (the
"activity@category, description, #tag, #other tag" string when you enter
or edit an activity as a single string), which is a bit simplified, but
no longer accepts everything it did before.

In particular:

  • Remove the need for using a double comma to start the description,
    a single comma can be used instead. Using double commas is still
    allowed for compatibility. This does mean that a comma can no longer
    be used in the activity or category.
  • The tags part must now be separated by a comma (previously, tags
    could be appended directly to the activity, category or description.
    This allows using # inside activity, category and description
    (without needing a double comma to force a possibly empty tags part
    at the end). For compatibility, the tags part can also be separated
    by a double comma.
  • Simple #hashwords are now extracted from the description as
    additional tags automatically (they can't start with numbers and
    can't contain spaces, but those can still be written in the "tags
    part" after a comma). This allows writing more natural descriptions
    with embedded tags, like Coding, fix #bugs in #hamster.
  • Limitations on the fields are more consistent. All fields can now
    contain any character, except:
    • The activity cannot contain @, since that would start the category.
    • The activity and category cannot contain a comma, since that would start
      the description.
    • The description cannot start with # or contain the tag separator
      (one or two commas followed by optional whitespace followed by
      a hash, e.g. , #), since this would start the tags part.
    • Tags in the tag part cannot contain a # or , (since that would
      look like the start of the next tag).
    • Tags in the description part must start with a letter (upper or
      lowercase a-z) and cannot contain whitespace.

Additional changes are:

  • A number changes to the overview screen:
    • Add daily total rows. (PR 596)
    • Remove lines previously shown for days without activity. (PR 650)
    • Refactor the range selection dropdown, preventing a problem where it would
      not be shown on systems using Wayland and some other systems. (issue 639,
      645, PR 647)
    • Do not periodically scroll to the top, only when displaying a new
      set of facts.(issue 594, PR 648)
    • Fix overlapping texts with wide fonts (issue 698, PR 699)
  • On Wayland, fix the popup below the tag field when editing activities
    and the time field in the preferences window. (PR 652)
  • Fix exception when calling the dbus UpdateJSON method with a string
    argument (issue 671, PR 672).
  • Fix the start date picker in the update/add activity window. (issue
    590, PR 674)
  • Allow resuming last activity with ctrl-space (issue 595, PR 678)
  • Added croation translation (PR 709)
  • Fix running on Python 3.11 by removing call to deprecated
    bind_textdomain_codeset gettext function (issue 715, PR 715)
  • Fix running on Python 3.12 by updating the waf build system to 2.0.26
    (PR 732)
  • Improve HTML export:
    • Preserve newlines and special characters (PR 704)
    • Make checkboxes work (PR 665)
  • Updated and improved flatpak packagaging (issue 123, 456, PR 321, 111, 333,
    610, 685)
  • Rework handling of tags in the cmdline, see below for details (issue
    334, 657, PR 663)
  • Stop using pyxdg, GLib could already give the same information about
    XDG directories (PR 727)
  • Minor updates to documentation (but far from complete for now)