Skip to content
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.14 Release Checklist #2352

Closed
5 of 6 tasks
seanmonstar opened this issue Dec 3, 2020 · 7 comments · Fixed by #2371
Closed
5 of 6 tasks

v0.14 Release Checklist #2352

seanmonstar opened this issue Dec 3, 2020 · 7 comments · Fixed by #2371
Assignees
Milestone

Comments

@seanmonstar
Copy link
Member

seanmonstar commented Dec 3, 2020

The v0.14 milestone is complete, meaning all major features are merged. This is a checklist of some administrata to have a smooth release!

  • Release Tokio 1.0, and then upgrade hyper (Upgrade to Tokio 1.0 #2370)
  • Release h2 v0.3
  • Release http-body v0.4
  • Release http with updated bytes (can be a minor version)
  • Blog post
  • Blast off 🚀
@seanmonstar
Copy link
Member Author

Here's an update on the exact release situation. This is based on the expectation that Tokio 1.0 will be released by EOY 2020. Considering that plan, I see 3 options:

  1. Wait the 2 weeks for Tokio 1.0, and release hyper 0.14 at the same time (with Tokio 1.0 support).
  2. Release hyper v0.14 right now, and then release hyper v0.15 in a couple weeks with Tokio 1.0.
  3. Release an alpha version of hyper v0.14.0-alpha.1 right now, and then update it to work with Tokio 1.0 and release hyper v0.14.

I think both 2 and 3 have downsides of additional churn, requiring preparing 2 sets of releases for hyper in a very short period of time (which is a load on the maintainers), and forces 2 "breaking changes" releases on hyper users in as many weeks.

Seeing as Tokio 0.3 was largely meant as a "preview" of Tokio 1.0, the main point of it being to check that Tokio itself didn't need any other major API changes, I think the value gained by a hyper v0.14 release at this point is very low compared to the cost. For those that wish to try out what hyper looks like with Tokio 0.3, the git master branch supports it.

For those reasons, I so far feel that option 1 is best, which realistically means to most people: hyper v0.14 release will coincide with Tokio 1.0 in a couple weeks.

@piscisaureus
Copy link

@seanmonstar

I think your reasoning makes sense and I have no problem waiting for an extra two weeks.
I fear however that, as with every software project ever, the Tokio 1.0 release deadline will slip.
Would you consider making a release if Tokio 1.0 were not released by the end of 2020?

@carllerche
Copy link

Tokio 1.0 is shipping by EOY. We are pretty much code complete at this point. Only a couple small tweaks left.

@alex

This comment has been minimized.

@dvc94ch

This comment has been minimized.

@djc
Copy link
Contributor

djc commented Dec 19, 2020

@seanmonstar contrary to earlier objections, I think your plan makes a lot of sense.

@jplatte
Copy link
Contributor

jplatte commented Dec 21, 2020

To put in my 2c: I would much prefer to have another release of h2 / hyper / reqwest / ... now.

I am personally not upgrading anything that depends on both tokio and one of the hyperium crates to tokio 0.3 because I don't see the point of the additional work of adding the compat helper methods where necessary, and have also not seen many others using the compat helpers.

Switching to an alpha release of hyper and/or some other crate(s) seems like it would be much less work for lots of people and thus encourage more testing of tokio 0.3 (which really is the whole point of that release, right?).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants