Daily Dev Notes 2024/05/28

Finally starting to feel like I'm getting on top of this package publishing business. Yesterday I managed to get a project structure more or less sorted out, which also let me run proper linting, formatting, and tests.

Today I focused on implementing GitHub Actions workflows so that the full test suite runs on commit, and new packages are built and uploaded to PyPi!

The majority of help in getting this set up, came from Simon Willison's excellent blog post: Publish Python packages to PyPI with a python-lib cookiecutter template and GitHub Actions

I didn't follow his instructions to the letter, but reading the post finally made it all click about how to get it working. I did, however, copy his workflows from the datatsette-test package that he linked to from that article. I had to rely on my AI friend to help explain some of the finer points, but I managed to get there in the end.

Some of the key things I learned through this process:

    matrix:
        python-version: ["3.10", "3.11", "3.12"]
        django-version: ["4.2", "5.0"]

Overall, this has been an extremely satisfying process. I've learned lots, and am starting to get a much better handle on this whole process.