mirror of
https://github.com/astral-sh/uv.git
synced 2025-08-04 19:08:04 +00:00
switch to jiff from chrono (#6205)
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.
This commit is contained in:
parent
c8f27a3978
commit
33480d61eb
38 changed files with 285 additions and 213 deletions
|
@ -263,7 +263,8 @@ unconditionally when using overrides — it does not matter if the marker evalua
|
|||
uv supports an `--exclude-newer` option to limit resolution to distributions published before a
|
||||
specific date, allowing reproduction of installations regardless of new package releases. The date
|
||||
may be specified as an [RFC 3339](https://www.rfc-editor.org/rfc/rfc3339.html) timestamp (e.g.,
|
||||
`2006-12-02T02:07:43Z`) or UTC date in the same format (e.g., `2006-12-02`).
|
||||
`2006-12-02T02:07:43Z`) or a local date in the same format (e.g., `2006-12-02`) in your system's
|
||||
configured time zone.
|
||||
|
||||
Note the package index must support the `upload-time` field as specified in
|
||||
[`PEP 700`](https://peps.python.org/pep-0700/). If the field is not present for a given
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue