-
Notifications
You must be signed in to change notification settings - Fork 974
Upgrade tonic dependencies to 0.13.0 version (try 2) #7839
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
arrow-flight/Cargo.toml
Outdated
@@ -64,7 +64,7 @@ default = [] | |||
flight-sql = ["dep:arrow-arith", "dep:arrow-data", "dep:arrow-ord", "dep:arrow-row", "dep:arrow-select", "dep:arrow-string", "dep:once_cell", "dep:paste"] | |||
# TODO: Remove in the next release | |||
flight-sql-experimental = ["flight-sql"] | |||
tls = ["tonic/tls"] | |||
tls = ["tonic/tls-ring"] |
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.
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 think if you add this, then users won't be able to choose "tonic/tls-aws-lc" because they're mutually exclusive nevermind, this is off by default. This would just be inconsistent and possibly confusing to only have a feature that turns on tonic/tls-ring
but not tonic/tls-aws-lc
, and someone using tonic/tls-aws-lc
might go to turn on arrow-flight/tls
and have a bad time.
So either arrow-flight should add:
tls-ring = ["tonic/tls-ring"]
tls-aws-lc = ["tonic/tls-aws-lc"]
or it should add nothing and assume feature unification from the user of arrow-flight
also using tonic
and configuring the feature with their use of tonic
will take care of it.
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 think adding nothing makes the most sense to me -- and let the user choose with their own feature. I will remove it
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.
Actually, I see there are examples and binaries that want tls
warning: invalid feature
tls
in required-features of targetflight_sql_client
:tls
is not present in [features] section
I will then follow the pattern and rename the tls flags to match tonic
@Xuanwo or @sundy-li or @carols10cents or @rmn-boiko or @MichaelScofield -- can someone let me know if this PR looks ok to you / would work in your use cases? |
@@ -814,7 +814,7 @@ mod tests { | |||
async fn bind_tcp() -> (TcpIncoming, SocketAddr) { | |||
let listener = TcpListener::bind("0.0.0.0:0").await.unwrap(); | |||
let addr = listener.local_addr().unwrap(); | |||
let incoming = TcpIncoming::from_listener(listener, true, None).unwrap(); | |||
let incoming = TcpIncoming::from(listener); |
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.
Previously the TcpIncoming
in tonic 0.12 the nodelay
was explicitly set to true; however, here the default is None
. Maybe it's better to align the behavior.
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.
Thank you -- I fixed in f81914a
Let's just get this one in Thanks again @mbrobbel and @MichaelScofield |
Which issue does this PR close?
56.0.0
(July 2025) #7395Rationale for this change
Let's update tonic to the latest
Given the open and unresolved questions on @rmn-boiko's PR #7377 from @Xuanwo and @sundy-li, I thought a new PR would result in a faster resolution.
What changes are included in this PR?
This PR is based on #7495 from @MichaelScofield -- I resolved some merge conflicts and updated Cargo.toml in the integration tests
Are these changes tested?
Yes, by CI
Are there any user-facing changes?
New dependency version