-
Notifications
You must be signed in to change notification settings - Fork 86
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
Bump crates to the latest versions #2638
Conversation
rand = "0.8.5" | ||
regex = "1.10.4" | ||
reqwest = "0.11.27" | ||
secp256k1 = "0.27.0" |
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.
We cannot update to 0.29.0
until web3
crate is not updated to the aforementioned version.
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 PR for the crate ethceontract-rs
: cowprotocol/ethcontract-rs#969
async-trait = "0.1" | ||
anyhow = "1.0.82" | ||
async-trait = "0.1.80" | ||
axum = "0.6" |
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.
Updating axum
is a rabbit hole, but we need to do it sooner or later. The reason is that in order to update axum
we need to update altogether:
hyper
- every
http
crate reqwest
warp
(we are using our own forked version 3 years old...)
I'd recommend to fully delete warp
dependency (latest versions of axum
basically do everything which warp
does anyway). And then update axum
+ hyper
which both have decent breaking changes.
What do you guys think? should I create a task for it since it will be tricky to do?
I need to do this sooner or later, because we cannot update any of those crates.
async-trait = "0.1" | ||
anyhow = "1.0.82" | ||
async-trait = "0.1.80" | ||
axum = "0.6" | ||
bigdecimal = "0.3" |
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.
We cannot update bigdecimal
so easily, they removed the sqlx
immediate support, very likely it is solved by just converting it into a primitive, but it needs more research to really check this, otherwise we can make break our database. What's more, this crate update is really not that needed at the moment.
d465227
to
d2a0ce2
Compare
@@ -1248,7 +1248,7 @@ mod tests { | |||
assert_eq!(time, order.cancellation_timestamp.unwrap()); | |||
|
|||
// Cancel again and verify that cancellation timestamp was not changed. | |||
let irrelevant_time = Utc.timestamp_opt(1234567890, 1_000_000_000).unwrap(); | |||
let irrelevant_time = Utc.timestamp_opt(1234564319, 1_000_000_000).unwrap(); |
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.
From chrono
:
The nanosecond part can exceed 1,000,000,000 in order to represent a leap second, but only when secs % 60 == 59. (The true "UNIX timestamp" cannot represent a leap second unambiguously.)
So I needed to change the main timestamp to have as the second part % 60 = 59
d2a0ce2
to
c9cafef
Compare
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.
Nice initiative.
Looks good overall just a bit concerned with updating the AWS dependencies. Could you please do a test run for those. I think none of that is covered by any integration tests.
c9cafef
to
493af00
Compare
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.
Since testing the AWS change it pretty elaborate without merging this PR we agreed in DMs that testing in staging (by settling a test trade) and reverting if it doesn't work is fine.
Description
Bump crates to the latest versions
Changes
workspace
all the crates which are used in at least twiceHow to test