-
Notifications
You must be signed in to change notification settings - Fork 522
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
sources: update to tokio v1 #1479
Conversation
@@ -10,7 +10,7 @@ build = "build.rs" | |||
exclude = ["README.md"] | |||
|
|||
[dependencies] | |||
actix-web = { version = "3.2.0", default-features = false } | |||
actix-web = { version = "4.0.0-beta.5", default-features = 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.
I guess I'll start the discussion - I'm more comfortable holding off on some dependency updates than taking a beta release of one of our most important dependencies. 3.x has seen a lot of use and presumably 4.x would see a greatly increasing amount after release; we'd be taking on a lot of testing debt by going forward with an early release. It doesn't seem like there's a way to update just actix-rt (which is tokio 1+ and not in beta) without updating actix-web to 4.0 beta, for now, so I'd vote to wait on this PR.
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.
The counterargument is that that the issues open for the 4.0 milestone don't seem like blockers:
https://github.com/actix/actix-web/milestone/6
- The bug named "A Stream object in a pending state won't be dropped after the client disconnect" has been open since Jan 2020.
- The bug named "actix-multipart file fields might not be waking properly" is not relevant to us since I don't think we use actix-multipart (?)
- Two api improvements that might require code changes, but don't represent defects in 4-beta
- "review compression flow"
- "decouple web and client"
My impression is that 4.0 could be cut right now, but that the project doesn't want to burn a major version number just to get tokio v1 support out when they have some other breaking changes in mind.
On crates.io 4.0.0-beta.X versions are getting at about 1,300 downloads per day compared to 5,500 downloads of all other versions, so about 19% of actix-web users are opting for 4-beta.
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.
Update: I checked with a maintainer on the Gitter channel and they said that 4.0.0-beta is no less production ready than v3. The beta label is because there might be a couple of minor breaking changes before 4.0-proper is released.
Fix a fixme |
rebase |
rebase |
Rebase. |
Rebase. |
Rebase. |
Rebase. |
Update all libraries that have tokio dependencies to their tokio v1 versions. Note that Hyper >= 0.14.3 causes a build issue so we have pinned version 0.14.2.
Rebase. I will also re-test. Edit: got at least one |
I retested everything and it checks out. I saw this in the journal |
Update all libraries that have tokio dependencies to their tokio v1
versions. Note that Hyper >= 0.14.3 causes a build issue so we have
pinned version 0.14.2. (tracked in #1471)
Issue number:
Closes #1269
Description of changes:
Update all dependencies in the sources workspace to use tokio v1.
Testing done:
journalctl -p 3
, no errorsTerms of contribution:
By submitting this pull request, I agree that this contribution is dual-licensed under the terms of both the Apache License, version 2.0, and the MIT license.