-
Notifications
You must be signed in to change notification settings - Fork 79
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
how shall we plan 4.0? #1016
Comments
That was the plan for 2 -> 3, but ended up not being necessarily because we moved quickly. I prefer this one to the other alternatives.
Somewhat related to this: some current PRs involved a lot of work and may be better to merge them before 4.x (and breaking changes), to avoid large rewrites/rebase/merging changes. #925 comes to mind.
I like using labels and milestones for tracking. Not that many of them are marked, maybe do another check on opened issues and label them?
From those, see which ones are actually breaking, and which ones are big chances/refactors that are not necessarily breaking. Some that come to mind:
Maybe create a label "breaking" and mark them? And mark the non-breaking ones as "enhancement"? |
If 4.0 comes and #925 is not ready, that's okay. I haven't had time to finish it lately but I can take a crack at it this weekend. Will try to get it in before #680! |
per #1034, we'll go with |
with #1144, we now have https://github.com/dib-lab/sourmash/releases/tag/v4.0.0a0 and
huzzah! |
From #1128 (comment)
Should we start just adding the |
On Wed, Aug 05, 2020 at 10:31:55AM -0700, Luiz Irber wrote:
>From #1128 (comment)
> In any case, we might need a PR derived from this one for the `DeprecationWarning`s and merge it in stable? (and then release it as 3.5.1 and continue updating latest? =])
Should we start just adding the `DeprecationWarning`s to `stable` and release patch versions (`3.5.1`, `3.5.2`...) to indicate what is going to break in `4.x`?
yes, all sounds good.
|
ok, so the #1128 merge was not done well... I merged into
|
Yeah, |
On Wed, Aug 05, 2020 at 06:01:47PM -0700, Luiz Irber wrote:
Yeah, `latest` first and then `stable`. I assumed it was against `latest`, but later noticed it was against `stable` :disappointed:
I, err, changed it to stable <cringe>
|
OK so I'm slowly starting to figure this out, sigh. I'll release 3.5.0 sometime soon. |
Note https://github.com/dib-lab/sourmash/releases/tag/v3.5.0a0 (based on |
Let's try to avoid too many |
I think it is OK for |
On Thu, Aug 06, 2020 at 09:50:26AM -0700, Luiz Irber wrote:
I think it is OK for `4.0.0a0`, but let's try to release `3.5.0` soon =]
yes, I did it so that I could get the deprecations working in pytest!
|
From #1150 (comment):
|
any comments on the header, @luizirber ? #1162 -- This is the first of several minor releases (v3.5.x) from the new |
This comment has been minimized.
This comment has been minimized.
reupping question:
|
ok, I finally grappled with read the docs & stable conversation and I think I understood it! here's what I think we should do, mechanistically:
that way |
I agree, some additional comments:
I think we can release
Probably debug the migration docs from #1283 and recommend specifying sourmash versions using ranges ( I think we should announce the availability of the migration docs and
And probably remove the |
done! 🎉
sure!
👍 - I take it that's a suggestion for #1283? 😉
👍
I'd like to keep a v3.5 maint branch around Just In Case? Although we could just start with the v3.5.1 tag if we needed to release a v3.5.2. So 👍 for removal. |
OK - I think the next step is merging #1283 and then I can release 4.0.0rc1! |
next steps:
|
c'est fini! |
it seems like we're nearing some kind of critical mass on CLI (and maybe API) breaking changes that would need to be in a new major release.
@luizirber really likes the notion of just doing lots of releases, which I'm on board with? but it seems like maybe doing 4.0, 5.0, and 6.0 in rapid succession would just be confusing :).
but we also don't want to wait forever for a 4.0 because I have the attention span of a gnat, etc. etc. and often don't follow through on medium term plans.
so how can we best collate these features and be poised to release a 4.0 that includes a bunch of new stuff, without blocking on too many features?
my naivest thought is to put a pre-4.0 branch in place that has the same branch protections as master - basically, merges must be reviewed, pass all tests, etc. Have a standing PR for this into master.
alternatively, we can switch 3.x over to a maintenance branch and make master the 4.0. I kinda like this more, actually.
a much worse idea seems to be to have a bunch of hanging PRs that wait to be merged until we're ready to release 4.0. let's not do this.
The text was updated successfully, but these errors were encountered: