33480d61eb
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.
59 lines
1.8 KiB
TOML
59 lines
1.8 KiB
TOML
[package]
|
|
name = "uv-client"
|
|
version = "0.0.1"
|
|
edition = "2021"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
cache-key = { workspace = true }
|
|
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-auth = { workspace = true }
|
|
uv-cache = { workspace = true }
|
|
uv-configuration = { workspace = true }
|
|
uv-fs = { workspace = true, features = ["tokio"] }
|
|
uv-normalize = { workspace = true }
|
|
uv-version = { workspace = true }
|
|
uv-warnings = { workspace = true }
|
|
|
|
anyhow = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
async_http_range_reader = { workspace = true }
|
|
async_zip = { workspace = true, features = ["tokio"] }
|
|
fs-err = { workspace = true, features = ["tokio"] }
|
|
futures = { workspace = true }
|
|
html-escape = { workspace = true }
|
|
http = { workspace = true }
|
|
itertools = { workspace = true }
|
|
jiff = { workspace = true }
|
|
reqwest = { workspace = true }
|
|
reqwest-middleware = { workspace = true }
|
|
reqwest-retry = { workspace = true }
|
|
rkyv = { workspace = true }
|
|
rmp-serde = { workspace = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
sys-info = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
tl = { workspace = true }
|
|
tokio = { workspace = true }
|
|
tokio-util = { workspace = true }
|
|
tracing = { workspace = true }
|
|
url = { workspace = true }
|
|
urlencoding = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
anyhow = { workspace = true }
|
|
http-body-util = { version = "0.1.0" }
|
|
hyper = { version = "1.2.0", features = ["server", "http1"] }
|
|
hyper-util = { version = "0.1.3", features = ["tokio"] }
|
|
insta = { version = "1.36.1", features = ["filters", "json", "redactions"] }
|
|
tokio = { workspace = true }
|