Zest.releaser addition: ‘no input’ mode

Tags: python, zestreleaser

Zest.releaser makes it easy to release your software. Update the version number, add a new header in the changelog, record the release date in the changelog, tagging it, that sort of stuff. And it works with svn/git/hg/bzr. To make it all safe, it tells you what it has changed or what it is about to do and asks you to hit <enter>. If you see something strange, you can press ctrl-c just fine.

Sometimes you want to run zest.releaser without hitting <enter> all the time, though. You might want to run zest.releaser from your automatic test environment, for instance, automatically releasing a project every friday if there are no test errors or so. For that, there’s the new --no-input commandline option (new in 3.43). Pass that and all defaults will be accepted automatically.

This means your version number and so must be OK. If you want to have a different version number from the one in your setup.py, you’ll need to change it yourself by hand. And the next version number will be chosen automatically, too. So 1.2 will become 1.3. This won’t detect that you might want to do a 1.3 after a 1.2.1 bugfix release, but we cannot perform feats of magic in zest.releaser :-) You’ll just have to change the number by hand as usual.

In case you always want to accept the defaults, a setting in your setup.cfg is available:

[zest.releaser]
no-input = true

An important reminder: if you want to make sure you never upload anything automatically to the python package index, include the release = no setting in setup.cfg:

[zest.releaser]
no-input = true
release = no

Personally, I’m happy to hit <enter> a couple of times. Quick enough and sometimes it catches an error. But if you don’t want it or if you want to include zest.releaser in some automatic build process: hurray for the new option!

Thanks go to Jonathan Sanchez Pando for suggesting the feature and doing the initial pull request!

 
vanrees.org logo

Reinout van Rees

My name is Reinout van Rees and I program in Python, I live in the Netherlands, I cycle recumbent bikes and I have a model railway.

Weblog feeds

Most of my website content is in my weblog. You can keep up to date by subscribing to the automatic feeds (for instance with Google reader):