Housekeeping a community Django package: django-moderation.

This is a draft post. Find out more about what that means. Get in touch if this post could use an improvement.

This is a part of the 100 Days To Offload challenge.

My employer is looking to hire a full-time junior Django developer.

Moderation for user and staff content is a common project spec. Django 3.2 LTS is what I am working with at the moment and for the foreseeable future too (It’s supported until April 2024!)

The Django community has a packaged called django-moderation by dominno. I’m not quite sure if we will use it at work yet, but I thought some tidying up and the response to my issues/PRs will be one more parameter in deciding if we should. And, if nothing else, I can take some inspiration from the source code, and build an internal package for this.

Contributing.

I wanted to make sure the package was updated to be tested against only the supported/actively developed Django versions, as well as be updated to reflect the correct trove classifiers on PyPi. I often use those trove classifiers to filter what I should not be using, so it’s very important to me to have that be correct.

This is one example of “trove classifiers” by the way:

A screenshot from the Python package repository of a package, showing its trove classifiers. Information includes development status, framework, intended audience, license, programming languages, development status, and operating system.
A screenshot of the trove classifiers for django-moderation as seen on 2021-08-14.

I finally opened two PRs and both have been merged:

Once support for Django 3.x is also merged in, a new release would be in order.

Although I won’t be making many open-source contributions anymore (a blog on this soon, hopefully), this was semi-helpful for work and semi-educational, so I didn’t mind.

Takeaways.

  • tox is amazing. I love that it’s so easy to run tests for different combinations of packages with just one command. tox-asdf is available for asdf users. 😊
  • Multiple versions of Node and Python, and third party packages, really pile up as far as disk size goes. I guess we all know this!
  • Random: cleaning my laptop fans really helped my laptop deal with 5 compiles in a row pretty well. πŸ˜‰

Join the discussion on Mastodon, Twitter, or write me an email. Photo by Darryl Kelly on Unsplash.