Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
sccache
Sccache is a ccache-like tool. It is used as a compiler wrapper and avoids compilation when possible. Sccache has the capability to utilize caching in remote storage environments, including various cloud storage options, or alternatively, in local storage.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
I found this https://github.com/rust-lang/rust/issues/37748 "Overflow for trait implemented recursively on references" Might be related
Criterion - a popular tool for benchmarking rust libraries. It can export html with pretty graphs, one of which is the one I posted.
Thank you for answering. I did think it was strange that reading a file from the archive requires a mutable borrow, I did some digging on the crate's GitHub and it appears like the author has plans to fix this eventually. (https://github.com/zip-rs/zip/issues/147)
/u/aliasxneo There is a brief description of the hazard at https://doc.rust-lang.org/cargo/reference/resolver.html#dev-dependency-cycles, and indeed your likely best option is to split the common code into a separate crate. Cargo itself used to use a dev-depedency cycle. We never ran into this particular issue, but it hurt compile times a lot, so we split all the code shared between cargo and its tests into a util crate.
Cargo currently doesn't have anything built-in to quite meet your needs. There are some tools like sccache which can help with shared caching (you can tell it where to store it), and cargo-sweep for cleaning up unused files and cargo-cache also does some pruning of other cache files.