mirror of
https://github.com/astral-sh/uv
synced 2026-01-22 14:00:11 -05:00
This PR migrates uv's use of `chrono` to `jiff`. I did most of this work a while back as one of my tests to ensure Jiff could actually be used in a real world project. I decided to revive this because I noticed that `reqwest-retry` dropped its Chrono dependency, which is I believe the only other thing requiring Chrono in uv. (Although, we use a fork of `reqwest-middleware` at present, and that hasn't been updated to latest upstream yet. I wasn't quite sure of the process we have for that.) In course of doing this, I actually made two changes to uv: First is that the lock file now writes an RFC 3339 timestamp for `exclude-newer`. Previously, we were using Chrono's `Display` implementation for this which is a non-standard but "human readable" format. I think the right thing to do here is an RFC 3339 timestamp. Second is that, in addition to an RFC 3339 timestamp, `--exclude-newer` used to accept a "UTC date." But this PR changes it to a "local date." That is, a date in the user's system configured time zone. I think this makes more sense than a UTC date, but one alternative is to drop support for a date and just rely on an RFC 3339 timestamp. The main motivation here is that automatically assuming UTC is often somewhat confusing, since just writing an unqualified date like `2024-08-19` is often assumed to be interpreted relative to the writer's "local" time.
56 lines
1.4 KiB
TOML
56 lines
1.4 KiB
TOML
[package]
|
|
name = "bench"
|
|
version = "0.0.0"
|
|
description = "uv Micro-benchmarks"
|
|
publish = false
|
|
authors = { workspace = true }
|
|
edition = { workspace = true }
|
|
rust-version = { workspace = true }
|
|
homepage = { workspace = true }
|
|
documentation = { workspace = true }
|
|
repository = { workspace = true }
|
|
license = { workspace = true }
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[lib]
|
|
bench = false
|
|
|
|
[[bench]]
|
|
name = "distribution-filename"
|
|
path = "benches/distribution_filename.rs"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "uv"
|
|
path = "benches/uv.rs"
|
|
harness = false
|
|
|
|
[dependencies]
|
|
distribution-filename = { workspace = true }
|
|
distribution-types = { workspace = true }
|
|
install-wheel-rs = { workspace = true }
|
|
pep440_rs = { workspace = true }
|
|
pep508_rs = { workspace = true }
|
|
platform-tags = { workspace = true }
|
|
pypi-types = { workspace = true }
|
|
uv-cache = { workspace = true }
|
|
uv-client = { workspace = true }
|
|
uv-configuration = { workspace = true }
|
|
uv-dispatch = { workspace = true }
|
|
uv-distribution = { workspace = true }
|
|
uv-git = { workspace = true }
|
|
uv-python = { workspace = true }
|
|
uv-resolver = { workspace = true }
|
|
uv-types = { workspace = true }
|
|
|
|
anyhow = { workspace = true }
|
|
codspeed-criterion-compat = { version = "2.6.0", default-features = false, optional = true }
|
|
criterion = { version = "0.5.1", default-features = false, features = ["async_tokio"] }
|
|
jiff = { workspace = true }
|
|
tokio = { workspace = true }
|
|
|
|
[features]
|
|
codspeed = ["codspeed-criterion-compat"]
|