{ "info": { "author": "Maintainer McGroo", "author_email": "work@maintain.er", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "Programming Language :: Python", "Topic :: Scientific/Engineering", "Topic :: Software Development :: Libraries" ], "description": "# stdprojectexample\nExample and practice area for python releases.\n\n## 0: Have a python package\nThere are several python packages that need your help.\n\n#### Register python project\n\n`python setup.py register`\n\n### 1: Accrue consensus for release\n\nUse peer review, and pull requests to your advantage.\nSet up a `dev` branch to prepare all releases. Create the first `dev` branch\nimmediately after the first release. Immediately create a pull request from\n`dev` into `master`. Encourage people to create topical branches into the\n`dev` branch. When the `dev` branch is ready to be merged into to the master\nbranch, this signals the developers belief that the code included should be\nused by default which creates a new release.\n\nMake sure to \"bump\" the [version number](http://semver.io/) to create the first\ncommit needed to create a pull request. In the initial development states,\nensure that the version number ends with the `-dev` label.\n\n### 2: Release Dance\n\nTo create a new release of a python module, ensure the version number is\naccurate according to http://semver.io/ in `setup.py`.\n\n#### Merge to master\nMerge the pull request either using the github merge button or using git on the\ncommandline from the `master` branch:\n\n```\ngit checkout dev && git pull\ngit checkout master && git pull\ngit merge dev\n```\n\n\nAt this point you have a git branch with everything needed for a release.\nIf using commandline instead of github pull request, ensure to close pull\nrequest and delete `dev` branch on github.\n\n#### Verify release\n\n```\n# Install locally as symlink\nsudo python setup.py develop\n# Install a copy as system package\nsudo python setup.py install\n# Should bring up a help page.\npydoc stdprojectexample\n```\n\nRun smoke tests.\nUpdate changelog.\nWe're about to create new commits.\n\n#### Tag Release\n\nSemver says the version will be `x.y.z`. Ensure the version is accurate. Edit\nthe `setup.py` file to ensure that the `-dev` label is removed, commit results.\nRepeat verification steps.\n\n```\ngit tag x.y.z\n```\nGit tag will allow you to add notes, changelog is recommended, citation of pull\nrequests is encouraged.\n\n#### Publish Results\n\nTransfering your results over a network link beyond your computer is indelible\nand irreversible. Any mistakes must be mitigated by another release. A\nrelease is a bell that cannot be unrung.\n\n##### Push to PyPi\n\n```\n# Upload to PyPi\npython setup.py build sdist_egg upload\n```\nObserve new release in pypi.\n\n##### Push to Github\n\nPush `master` branch along with all tags to github.\n```\ngit push origin --tags master\n```\n\nObserve new release in Github.\n\n\n### 3: Post Release\n\n```\ngit branch -d dev\ngit checkout -b dev\n# edit setup.py\n\n```\n\nEdit `setup.py` to bump the version number; according to semver, this would be\na patch release without any deltas, by default.\n\n```\ngit commit -avm \"init new development area\"\ngit push -u origin dev\n```\n\nCreate a new pull request on Github.\n\n## Congratulations\n\nGo tweet about your new release.\nTo install: `pip install -U stdprojectexample`.\n\nTo install an arbitrary (eg `dev`) version using pip without cloning the repo:\n```\npip install -U http+https://github.com/openaps/stdprojectexample.git@dev\n```", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/openaps/stdprojectexample", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "stdprojectexample", "package_url": "https://pypi.org/project/stdprojectexample/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/stdprojectexample/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/openaps/stdprojectexample" }, "release_url": "https://pypi.org/project/stdprojectexample/0.0.0/", "requires_dist": null, "requires_python": null, "summary": "Frib with Frobs with excellent Fermocity.", "version": "0.0.0" }, "last_serial": 2558908, "releases": { "0.0.0": [ { "comment_text": "", "digests": { "md5": "5b2435011d7cec010e1cff4f3f357370", "sha256": "5461b78aefbd39fe1b6d83485cd1e968e3c2882ebc88e13d9a7489cebe7003b5" }, "downloads": -1, "filename": "stdprojectexample-0.0.0-py2.7.egg", "has_sig": false, "md5_digest": "5b2435011d7cec010e1cff4f3f357370", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 3259, "upload_time": "2017-01-06T07:56:36", "url": "https://files.pythonhosted.org/packages/6c/e5/1597df22d35671c022693a0723d4009ba960c27d376bc08b1b5f5ff5aad3/stdprojectexample-0.0.0-py2.7.egg" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5b2435011d7cec010e1cff4f3f357370", "sha256": "5461b78aefbd39fe1b6d83485cd1e968e3c2882ebc88e13d9a7489cebe7003b5" }, "downloads": -1, "filename": "stdprojectexample-0.0.0-py2.7.egg", "has_sig": false, "md5_digest": "5b2435011d7cec010e1cff4f3f357370", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 3259, "upload_time": "2017-01-06T07:56:36", "url": "https://files.pythonhosted.org/packages/6c/e5/1597df22d35671c022693a0723d4009ba960c27d376bc08b1b5f5ff5aad3/stdprojectexample-0.0.0-py2.7.egg" } ] }