-
Notifications
You must be signed in to change notification settings - Fork 3.1k
[WIP] Automate the release process #4797
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
tasks/release/bump_version.py
Outdated
from invoke import task | ||
|
||
|
||
def _bump_version_str(version_str, major=False, minor=False, patch=False, |
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.
yet another version bumping system?
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.
It's super trivial?
invoke release.bump-version --minor/--major/--patch/--dev/--final
Anyway, it's an internal detail and won't be too hard to switch to setuptools_scm
or something if it's what others want to do.
@pypa/pip-committers Do you think this is a good idea/approach? |
I'm looking at picking up the release process for pip 10, so I'll find some time to take a look at this. |
It's not complete yet and my gut feeling is if pip 10 is gonna happen this month, it won't be done by then. Hopefully a pip 10.0.1 or something would be made using this. :) |
No problem, I'd rather not rush something like this in. It may well be better to look at it after a release anyway, while the experience is fresh in our minds :-) |
setup.py
Outdated
version_file, re.M) | ||
if version_match: | ||
return version_match.group(1) | ||
raise RuntimeError("Unable to find version string.") |
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.
I'd rather we keep the version in only one place.
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.
Yeah... I think so too now.
also, https://www.python.org/dev/peps/pep-0396/#specification (point 8)
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.
FWIW, I was trying to make setup.py as declarative as possible.
tasks/release/bump_version.py
Outdated
'dev': "Bumps the dev segment, retaining the other segments.", | ||
'final': "Drops any dev segment in the version.", | ||
}) | ||
def bump_version(ctx, major=False, minor=False, patch=False, |
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.
We could use zest.releaser
's bumpversion
command for that part.
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.
FWIW, I do think this should use some existing tool, I'm not sure which one though.
I'll look at zest.releaser
soon. :)
Hello! I am an automated bot and I have noticed that this pull request is not currently able to be merged. If you are able to either merge the |
a48887b
to
0f50caf
Compare
0f50caf
to
61b0112
Compare
Closing since I'm drafting. Don't look. :P |
This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Resolves #2312
Resolves #2313
Resolves #2314
In my head, this is the aim:
Things to implement:
release.prepare
release.next