2022 UpdatesLink to section

2022 - DecemberLink to section

I’m not giving up being successfulLink to section

In 2023:

  • Snappable, expressive configurations will enliven tmuxp and vcspull

    Dataclasses will resemble the structure of the:

    • libtmux: tmux session, and
    • libvcs: the file paths of the user’s repository checkouts
  • My oldest library - libtmux - will be renewed with dataclasses, documentation, and improve tests

2022 - SeptemberLink to section

One more thing on doctestLink to section

I wrote a doctest module that can parse reStructuredText and markdown:

doctest_docutils

It also has a pytest plugin

On that note, I also made a pytest plugin for libtmux and libvcs:

2022 - Mid AugustLink to section

Promises keep comingLink to section

Additionally, test and quality infrastructure has been improved across all projects:

  • libtmux now has comprehensive typings (--strict mypy compliance) as of 0.13.0
  • All projects except vcspull now have basic mypy and doctest support.

2022 - Early AugustLink to section

Promises kept (and keep coming)Link to section

libvcs 0.14.0 released w/ typing annotations and doctests.

Also, added a URL Parser (compare to urlparse) for libvcs.parse.git, libvcs.parse.hg, and libvcs.parse.svn URLs. Extensible using framework tools. Built on dataclasses and uses doctest.

In the process, “side inventions” (License MIT):

  • libvcs._internal.query_list.QueryList: Nested searching of dict-like data.
  • libvcs._internal.subprocess.SubprocessCommand: Deferrable subprocess commands.
  • libvcs._internal.dataclasses.SkipDefaultFieldsReprMixin: Exclude default fields (useful for clearer pytest assertions / printing). Thanks Pietro Oldrati.

2022 - JuneLink to section

libvcs and vcspull rebuildLink to section

libvcs and vcspull are being rebuilt from the ground up. This will be a fresh take on one of my earliest python projects. What they’ll be using:

  • doctest: actual code demo in documentation which also function as tests
  • mypy: type checking through annotations (PEP 484, PEP 526)
  • dataclasses (experimental): As a library creator, I will put these to the test

The projects will be a proving ground for quality standards and patterns I’ll adopt across my other and future packages.

2022 - MarchLink to section

All sites moved to new design.