Diary 2019-04-13

By Max Woerner Chase

All right, let's look over the features that I'm hoping to replace with Poetry and Nox.

The big win I want to get from Nox is to avoid having the configuration file responsible for regenerating itself. I managed to get a merge conflict in that for Structured Data, and it rubbed me the wrong way, because I had to kind of, like, fix it twice at the same time, in the same way. So, my goal is to push all of such auto-manipulations to run-time metaprogramming, as needed.

I'm seeing Codecov/Coveralls support. I haven't tried to do that yet; I'll keep it in mind once I get everything else together enough to set up on GitHub.

There's documentation using Sphinx. I need to look into that more closely, with a focus on looking into how Sphinx is actually supposed to be used. (In that I haven't been looking into it very closely, and have basically just taken what the template gave me, though I did have to do some silly stuff to get PDF builds to work.)

There's isort and bumpversion. Poetry handles bumpversion's functionality. isort will look for configuration in pyproject.toml, which sounds fine to me.

There's various checks that get run as part of tox. Simple enough to port to Nox.

And C extensions, via Cython or cffi. I'm going to have to put a pin in that, as well.

So, let's see what I'm comfortable trying to get working to start with:

Now, let's see about some dependencies for checking.

I added dependencies. Some of this feels a little heavy-handed, like maybe there's room for a tool that's like Poetry, but not quite? I don't have a good problem statement in mind, so eh.

Anyway, there's just a few more dependencies to install and make use of, and then it's time to get code in. My basic hope is that I'll soon be set up with enough tests that I can confidently rewrite some of this stuff.

Anyway, it's too late right now. Good night.