I've just published a new version of my adventofcode PyPI package, just in time for Advent of Code that starts in 36 hours! 🎉
I've added a command line tool that helps you scaffold all the files for puzzle days because I got annoyed by copy pasting the same file each time!
Carlton's proposal to move Django to an annual release cycle makes all the sense.
The x.2 LTS releases always felt wrong to me since it has always been much easier and safer to upgrade each version rather than doing the LTS to LTS leap in one go.
I had a memory issue with Django's bulk_update queryset method.
The TLDR version is that bulk_update prepares all the update statements in advance (even when batch_size is set) which can use more memory than expected.
Details and a solution in the blog:
I've improved the performance of the starter packs list query from about 200ms to 2ms. 🎉
The trick was to stop dynamically computing the number of accounts in a starter pack and instead precompute it in a column.
A bit more work on each update, but worth it!
Yesterday, Python 3.14 was released, and today all of my Django side projects are running on 3.14. 🎉
The upgrade didn't require any code changes on my part, but I did see a few return statements in the finally block SyntaxWarnings in a few dependencies.