deps: update temporal_rs to 0.2.3#64191
Open
Renegade334 wants to merge 2 commits into
Open
Conversation
Refs: v8/v8@7d9b7e0 Signed-off-by: Renegade334 <contact.9a5d6388@renegade334.me.uk>
Collaborator
|
Review requested:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Submitting as an alternative to #63281, since we are going straight to rustc 1.88 in the build environment, which means we can upgrade this directly.
First, a note on the update methodology. The process I've used for the manifest and cargo lockfile is somewhat different to what we were doing before, and ensures that we are mirroring the exact locked dependencies in the Chromium snapshot, in a way that should be amenable to semi-automation. The steps used were:
deps/v8/DEPSwith the targetthird_party/rustcommit hash.chromium_crates_io/{Cargo.toml,Cargo.lock}from https://chromium.googlesource.com/chromium/src/third_party/rust at the target commit.Cargo.toml:icu_*andtemporal_*dependency configs from Chromium'sCargo.toml, to ensure a feature-matched build. (Transitive dependencies which do not have config blocks in Chromium do not need listing here, but will be version-locked in the next step.)Cargo.lockwith the one in the Chromium snapshot. (It contains a lot of entries that we don't need, but those will be pruned in the next step.)cargo vendor.temporal_rsand its dependencies will be vendored according to the matching entries in the Chromium lockfile, ensuring that every package in our dependency tree matches the one used by Chromium.temporal_rs 0.2 contains a whole raft of bugfixes and spec compliance issues, which I think we are obliged to land before v26.x goes LTS, even though it doesn't match the dependency used in V8 14.6. There are no V8 changes required for this update to land, although there are one or two small Temporal compliance patches that we should probably cherry-pick independently.
Note that the ICU4X dependencies now contain vendored locale data, which is required for calendar operations in temporal_rs (boa-dev/temporal#693 (comment)). This increases the size of the vendored source by around 55KiB, but almost none of this is linked into the build, so the final binary size is unchanged. The inclusion of compiled locale data doesn't have any effect on Intl – temporal_rs doesn't do any Intl formatting operations itself.
Blocking on nodejs/build#4265.