-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
v0.10.1 Release #1821
Comments
@jhamman & @shoyer - I think Xarray has a release frequency problem.
It's been more than three months now without a patch release. This is really, really frustrating as an Xarray contributor, user, and advocate - getting my work merged upstream literally isn't worth anything until it's released, my colleagues have trouble using it (and go back to Matlab or IDL!), and it's harder to ask for anything in meetings with eg @opendatacube. Moving to weekly patch releases would fix all of these problems. Maintainer availability doesn't need to be a limiting factor, either - for example, @HypothesisWorks has a deployment pipeline where the only human involvement is to click 'merge', and I'd be happy to help out if you'd like to set up a similar system. |
@Zac-HD Thanks for raising these concerns! I agree there are only upsides to a faster release cycle, and three months is way too long given the long back-log of improvements we have. Even without more automation, we should not wait more than 2-4 weeks between releases unless there are breaking changes in process (which can sometimes require more refinement to get right). I think the trouble is that it's easy to get in a bad pattern of waiting for "just one more pull request" before issuing a new release. This is self-reinforcing -- the fewer releases we have, the more important it is to wait for a pull request before issuing a release. I'd love to explore a more automated release pipeline. Take a look here for our current release instructions: https://github.com/pydata/xarray/blob/master/HOW_TO_RELEASE In my experience, the slowest step is clean-ups/fixes of the "what's new" docs page (e.g., what I just did in #1940). It's hard to do that as part of the regular PR process in part because we only see built docs after PRs are merged. That said, if we do this more regularly the work required decreases (I spent about half an hour on this today). Unfortunately, there is no automated substitute for a human looking over a document to verify that it looks right :). The actual release issuing process is quite fast once you know what you're doing, taking as little as half an hour minutes to update pypi, ReadTheDocs and conda-forge. But it would certainly be great if anyone (even non-maintainers) is capable of triggering this with a simple PR. Ideally, we should be able to issue a release anytime someone is willing to put in the effort of looking things over and ensuring the docs look right. Anyways, my plan is to issue a release later today or tomorrow, as soon as #1940 is merged. There are lots of other excellent improvements in the pipeline (rolling window improvements, distributed writes to netCDF files, etc.) but we should just issue another release when those get merged instead of holding things up! |
I just pushed the release to pypi. I'm dealing with the RTD build now, which seems to have broken without us noticing! |
@shoyer - I can do the conda-forge update. |
My messing around with tags seems to have been successful. The docs successfully build and been updated: http://xarray.pydata.org/en/stable/whats-new.html It looks like the conda-forge update is also in progress: conda-forge/xarray-feedstock#27 (thanks @jhamman and @ocefpaf !) |
@Zac-HD: I hear your frustration! Thanks for putting some much needed pressure on this community to move to a faster release cycle. I think xarray is experiencing some growing pains as adoption increases. I generally favor automating as much as possible, modulo the necessary manual checks described by @shoyer. |
First: thanks, everyone, for such a prompt and helpful response! I'm excited both to have 10.1 (:tada:), and by the prospect of faster/automated releases in future. Reading over the releasing instructions, I think there are three parts we need to work on to go fully automated. By fully automated, I mean "no maintainer action whatsoever beyond merging pulls, which are not release-specific":
In short, my advice is to be creative, and if release processes can't be automated - change them! |
We're close to a minor/bug-fix release (0.10.1). What do we need to get done before that can happen?
Help wanted / bugs that no-one is working on:
What else?
The text was updated successfully, but these errors were encountered: