Changes

Jump to: navigation, search

Auto-tools/Projects/Mozbase

3,438 bytes removed, 16:48, 20 February 2014
Versioning
When you bump a version of any mozbase package, it should be released to [http://pypi.python.org/pypi pypi]:
python setup.py sdist upload
python setup.py egg_info -RDb "" sdist register upload and the [https://github.com/mozilla/mozbase github repository] should be [http://git-scm.com/book/en/Git-Basics-Tagging tagged] a la 'mozrunner-1.2'. If multiple package versions are bumped, then the same changeset should be tagged for each of the package versions bumped. Tagging the version on [https://github.com/mozilla/mozbase github]:  git pull --tags mozilla master git tag mozrunner-1.5.5 git push --tags mozilla master ==== Using versionbump.py ==== A scriptNote, versionbump.py, located at https://github.com/mozilla/mozbase/blob/master/versionbump.pyhas been written to perform the steps for[https://wiki.mozilla.org/Auto-tools/Projects/MozBase#Versioning mozbase versioning] : * Make sure if you are on the master branch of the mozbase repository. If you aren't the script will bail out. * Make sure you don't have any uncommitted changes. If you do, the script will bail out. * You should probably pull from git@github.com:mozilla/mozbase.git prior to running the script. If not, the script will attempt to do this for you, though it will not attempt to resolve conflicts. * As per usual, running <pre>versionbump.py --help</pre> will display usage information and help about CLI options * <pre>versionbump.py --info</pre> will display the package versions and their dependencies and exit In order to bump versions, [https://github.com/mozilla/mozbase/blob/master/versionbump.py versionbump.py] is used like:  versionbump.py mozrunner=5.8 mozprofile=0.5 -m 'bug 123456 - bump mozprofile to 0.5' You should pass in all the packages that need bumping. If you specifyuploading a new package which is pegged as an exact dependency of anotherpackage (e.g. ''mozrunner'' requires ''mozprofile == 0.5''), you must alsobump all packages which exactly depend on this package. As anexample:  versionbump.py mozprofile=0.5 would not work as ''mozrunner'' requires ''mozprofile==0.4'' (as of thiswriting) and all packages in the repository HEAD must be compatiblewith all other packages in the repository. In addition, packagespegged with '>=' also follow this rule unless ''--strict'' is passed. * running <pre>versionbump.py --diff path/to/file</pre> will output the resultant diff to the file and revert the mozbaserepository. The repository will not be tagged nor will anything be uploaded it needs to pypi * -m or --message should be passed to the command line in order to finalize the commit, tag the repository, and upload to pypi. If you do not pass -m or --message, the changes will be made to your working copy but not committed. The repository will not be tagged nor will packages be uploaded to pypi * --dry-run will print out what versionbump.py will do but no files will be changed or commands actually called It is encouraged to use --diff and/or --dry-run before actually doingthe version bump to make sure that it will do what you expect it todo. In the case where a known error is encountered, versionbump.pywill revert to the original (clean) repository state. In the casewhere an unexpected error is encountered, the repository state is notreverted (so that it is easier to debug what happened). '''Limitations of versionbump.pyregistered first:''' * it is expected that '' python setup.py'' versions are specified as <pre>PACKAGE_VERSION = '1.2.3'</pre> (or "1.2.3"). They currently all are. * versionbump.py can only handle simple dependencies. That is for install_requires, foo, foo == 1.2.3, bar >= 4.5.6 are fine, but foo == 1.1, == 1.2 is not. Mozbase currently only has simple dependencies.sdist register
==== PyPI ====
* elvis314
* jgriffin
* k0s
* markrcote
* whimboo
Confirm
651
edits

Navigation menu