CherryPy / release.py

"""
This script will walk a developer through the process of cutting a release.

To cut a release, simply invoke this script at the changeset to be released.
"""

def check_status():
	"""
	Make sure there aren't outstanding changesets that are unpushed, maybe
	run the tests or ask the user if the tests are passing.
	"""
	raise NotImplementedError()

def bump_versions():
	"""
	Bump the versions in each of the places where it appears and commit.
	"""
	places = ('setup.py (twice)', 'cherrypy/__init__.py',
		'cherrypy/wsgiserver/wsgiserver\d')
	raise NotImplementedError()

def tag_release():
	"""
	Tag the release.
	"""
	raise NotImplementedError()

def build_and_upload():
	raise NotImplementedError()

def main():
	check_status()
	bump_versions()
	tag_release()
	build_and_upload()

if __name__ == '__main__':
	main()
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.