Automated pushes to PyPI

For the last year and a half, I’ve been (co-)maintaining a handy little Python project called pytest-localserver.

Naturally, I completely neglected to mention this on the blog. (Surprise!)

Anyway… I just released a new version which has a nifty feature that I’ve been looking forward to for a while: the ability to build packages and upload them to PyPI as part of our automated build and test pipeline. That means we can release a new version by clicking buttons in GitHub’s web UI rather than manually running twine and other commands.

Normally I’m all for running things on the command line rather than clicking buttons, but when you’re maintaining a piece of software, repeatability and consistency are key. You don’t want some quirk of your local environment corrupting a build or sneaking some sensitive information into the package that’s going to be distributed to thousands (or let’s be honest, dozens) of people. During my time at SoundHound I developed a bunch of internal Python packages, some of which were shared outside the company, and leaking confidential info was always something to be very careful about.

Plus, with months between releases, a …

Featured Posts


New site!

I’m back! After lots of work improving the theme and the implementation of my website, I’m getting back to regular blogging!

Most of the site looks pretty similar to how it did before, but there are some significant changes under the hood.

  • I’ve converted almost the entire …

About saturation

Time to kick off a new year of blog posts! For my first post of 2015, I’m continuing a series I’ve had on hold since nearly the same time last year, about the research I work on for my job. This is based on a paper my group …


Lessons from my first half-week

Things that don’t exist in China:

  • Ubiquitous wireless internet. Not so surprising, really, because Americans do have a rather unhealthy obsession with their wireless, but one would think I’d get wifi in the hotel room. Surprise, nope! Naturally this makes it rather less convenient to put up blog …