Plurrrr

Mon 03 Aug 2026

And another tumblelog update

In the afternoon I pushed a small tumblelog update to GitHub. The changelog for version 6.3.0 is as follows:

  • Improve typing hints (tumblelog.py)
  • Use int for years in create_year_pages and create_tag_pages (tumblelog.py)
  • Check page names are unique and don't conflict with blog
  • Format year correctly (tumblelog.py)
  • Move setlocale to main (tumblelog.py)

I really like mypy to check type hints. Together with dataclasses, introduced in tumblelog version 6.2.0, it makes the code much cleaner.

And another one plus a bug

In the evening I finished a slightly larger tumblelog update. The changelog for version 6.4.0 is as follows:

  • Replace error function with raise (tumblelog.py)
  • Replace assert with raise RuntimeError (tumblelog.py)
  • Raise a RuntimeError if tags is None in create_tag_pages (tumblelog.py)
  • Remove cast of article.html to str (tumblelog.py)
  • Handle a TumblelogError exception end-user friendly (tumblelog.py)
  • Use longer variable names (tumblelog.py)
  • Use / instead of joinpath (tumblelog.py)
  • Replace Any with object (tumblelog.py)
  • Fix exception message (tumblelog.py)

I am really happy with what the Python version has become.

However, while testing the Perl version I noticed a subtle bug which I fixed:

  • Push to pages instead of days if state equals PAGE (tumblelog.pl)

After this fix and bumping the version of both to 6.4.1 I pushed to GitHub.