Miscellaneous Software

Here's information about various other software packages I've developed. These are mostly small tools that scratched a specific itch I had at the time. I've split these into "maintained" software and "unmaintained" software. "Maintained" here means that these tools are still part of my regular workflow, and I'll make a best effort to fix any issues that come up for those. "Unmaintained" tools are more a curiosity for anyone who wants to play with similar ideas.

Note that even the "maintained" packages tend not to have the quality of documentation or test suite that I provide with my main software projects.


Maintained software

Autorelease

In order to simplify my release process and to avoid packaging errors, I developed Autorelease. Autorelease consists of several CI workflows that make it so that cutting a tested release is as simple as making a pull request pointed at a specific branch. It also contains several tools to ensure that version numbers are updated correctly, and to draft release notes.

Source:

conda-rc-check

When a project depends heavily on a specific dependency, it is important to test against pre-releases of that dependency. To help OpenPathSampling test against pre-releases of OpenMM, I wrote a GitHub Action to facilitate automatic testing if and only if a release candidate has been publiched recently.

Source:
Posts:

plugcli

When writing the OpenPathSampling command line interface (CLI), I developed a useful framework for CLI plugins. When we started on the OpenFE CLI, I realized we would want to reuse that framework. So I separated it from the OPS CLI and made it into its own package, plugcli.

Source:

ticgithub

Our team at Open Free Energy needed a way to track support tickets. Most solutions were designed for full-time support teams (and priced that way). I wrote ticgithub as a tool to link our support email to GitHub issues, where we could leverage the tools for notifications, assignment, and collaboration that are built into GitHub, and which we already used.

Source:
Posts:

Unmaintained software

codemodel

I developed an interest in writing programs that would generate software code (metaprogramming), particularly as a way to make it easier to create scripts for OpenPathSampling. While code snippets are one approach, I thought I could create more flexibility by reshaping the abstract syntax tree. The result of those experiments was the codemodel package.

Source:

ghcontribs

After a lot of experience on GitHub, I wanted to be able to explore the various contributions I had made, and to see how much I had contributed to different GitHub repositories and organizations. So I wrote a little code to help me gather the relevant data and explore it.

Source:
Posts: