-
Notifications
You must be signed in to change notification settings - Fork 26
Automate publishing to PyPI and gh-pages #24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Nice automation work? How do we determine what semver / "next version" to release at? Or does a PR have to update the version string in |
|
Good catch, fixed in faf6075. |
|
I think I understand what's happening here now, but just to be sure, can you walk me through the lifecycle of things a human does from their computer and then after things Travis does to github and PyPI once we decide to cut a release from say current Thanks! And maybe we should have some "how to release" notes in a CONTRIBUTING.rst file or something? |
|
Added the release publishing instructions in 0c2714c. Once this PR is merged, all that a human will have to do to publish a new release is to go here, name the release tag like The CD build then does:
|
|
Thanks! That all sounds good with just one remaining question: how does the code change to |
|
The code change currently doesn't get pushed back to master. The idea here is that it's not a real code change (it's really metadata for the PyPI release) so there's no need for the exact version information to be in the source tree (it would be redundant with the PyPI release history and the git tags). I've made this more explicit in |
|
It's been a while since I've attempted this, but don't we want to support git-based dependencies on this project wherein the Usually in JS land we do something like: $ npm version major|minor|patch|ACTUAL_VERSION_STRING
# updates `package.json:version`, commits to git and does `git tag -a `vVERSION`
$ npm publish
# dependency available from npm as `yarn add foo@v1.2.3`
$ git push && git push --tags
# dependency available from github as `yarn add ORG/foo#v1.2.3`Can you walk me through modern expectations in the Python community for the git Thanks! |
|
When doing a git-based install, one would usually specify something like |
ryan-roemer
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, thanks for the walkthrough and a lot of follow-on work on this PR. If that's the normal expected workflow, I'm fine with that!
I've just added one comment about reverting localdev changes if an actual human runs the publishing steps. Rest LGTM!
|
@ryan-roemer Any suggestions for what the next release's version number should be? |
|
|
This change automates the release to PyPI and gh-pages: whenever a new tag is pushed or a new release is authored in the Github UI, a new version of the project automatically gets published.