jorgecarleitao / arrow2

Transmute-free Rust library to work with the Arrow format
Apache License 2.0
1.06k stars 222 forks source link

arrow2 0.18.0 release broke against minimal dependencies in the Cargo.toml #1569

Closed jcreekmore closed 11 months ago

jcreekmore commented 1 year ago

Even though #1568 is not merged in, apparently version 0.18.0 has already been released to crates.io. In that release, you are putting a dependency on an API introduced in chrono 0.4.31, but in your Cargo.toml, you only have a dependency on 0.4. In my application, since I am using a Cargo.lock file, the upgrade to arrow2 0.18.0 caused a failure since I have an older version of chrono than 0.4.31. Bumping the actual dependency to 0.4.31 in your Cargo.toml would require a new enough version of chrono to not break builds.

xosxos commented 11 months ago

Same here. I could fix it by upgrading my chrono version, but it was a bit of a nuisance to debug. I had chrono and polars as dependencies, and not arrow2 directly.

In case someone is googling around, the error was:

error[E0599]: no method named `timestamp_nanos_opt` found for struct `DateTime` in the current scope
sundy-li commented 11 months ago

maybe we should republish this v18.0 version after https://github.com/jorgecarleitao/arrow2/pull/1584 merged, but I don't have permission to release it .

I suggest to use arrow2 = { git = "https://github.com/jorgecarleitao/arrow2", rev = "e078242" } to make temporary fix.

vladfi1 commented 8 months ago

I am still facing this issue. Maybe it could be reopened until cargo.io is properly updated?