|
|
|
# This file is automatically @generated by Cargo.
|
|
|
|
# It is not intended for manual editing.
|
|
|
|
version = 3
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "addr2line"
|
|
|
|
version = "0.21.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
|
|
|
|
dependencies = [
|
|
|
|
"gimli",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "adler"
|
|
|
|
version = "1.0.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ahash"
|
|
|
|
version = "0.8.11"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"once_cell",
|
|
|
|
"version_check",
|
|
|
|
"zerocopy",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "aho-corasick"
|
|
|
|
version = "1.1.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
|
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "allocator-api2"
|
|
|
|
version = "0.2.18"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "anes"
|
|
|
|
version = "0.1.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "anstream"
|
|
|
|
version = "0.6.14"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b"
|
|
|
|
dependencies = [
|
|
|
|
"anstyle",
|
|
|
|
"anstyle-parse",
|
|
|
|
"anstyle-query",
|
|
|
|
"anstyle-wincon",
|
|
|
|
"colorchoice",
|
|
|
|
"is_terminal_polyfill",
|
|
|
|
"utf8parse",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "anstyle"
|
|
|
|
version = "1.0.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "anstyle-parse"
|
|
|
|
version = "0.2.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4"
|
|
|
|
dependencies = [
|
|
|
|
"utf8parse",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "anstyle-query"
|
|
|
|
version = "1.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ad186efb764318d35165f1758e7dcef3b10628e26d41a44bc5550652e6804391"
|
|
|
|
dependencies = [
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "anstyle-wincon"
|
|
|
|
version = "3.0.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19"
|
|
|
|
dependencies = [
|
|
|
|
"anstyle",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "arbitrary"
|
|
|
|
version = "1.3.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110"
|
|
|
|
dependencies = [
|
|
|
|
"derive_arbitrary",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "arrayvec"
|
|
|
|
version = "0.7.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "async-channel"
|
|
|
|
version = "1.9.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35"
|
|
|
|
dependencies = [
|
|
|
|
"concurrent-queue",
|
|
|
|
"event-listener 2.5.3",
|
|
|
|
"futures-core",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "async-channel"
|
|
|
|
version = "2.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a"
|
|
|
|
dependencies = [
|
|
|
|
"concurrent-queue",
|
|
|
|
"event-listener-strategy",
|
|
|
|
"futures-core",
|
|
|
|
"pin-project-lite",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "async-executor"
|
|
|
|
version = "1.12.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c8828ec6e544c02b0d6691d21ed9f9218d0384a82542855073c2a3f58304aaf0"
|
|
|
|
dependencies = [
|
|
|
|
"async-task",
|
|
|
|
"concurrent-queue",
|
|
|
|
"fastrand 2.1.0",
|
|
|
|
"futures-lite 2.3.0",
|
|
|
|
"slab",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "async-fs"
|
|
|
|
version = "2.1.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ebcd09b382f40fcd159c2d695175b2ae620ffa5f3bd6f664131efff4e8b9e04a"
|
|
|
|
dependencies = [
|
|
|
|
"async-lock",
|
|
|
|
"blocking",
|
|
|
|
"futures-lite 2.3.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "async-io"
|
|
|
|
version = "2.3.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0d6baa8f0178795da0e71bc42c9e5d13261aac7ee549853162e66a241ba17964"
|
|
|
|
dependencies = [
|
|
|
|
"async-lock",
|
|
|
|
"cfg-if",
|
|
|
|
"concurrent-queue",
|
|
|
|
"futures-io",
|
|
|
|
"futures-lite 2.3.0",
|
|
|
|
"parking",
|
|
|
|
"polling 3.7.2",
|
|
|
|
"rustix",
|
|
|
|
"slab",
|
|
|
|
"tracing",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "async-lock"
|
|
|
|
version = "3.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18"
|
|
|
|
dependencies = [
|
|
|
|
"event-listener 5.3.1",
|
|
|
|
"event-listener-strategy",
|
|
|
|
"pin-project-lite",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "async-net"
|
|
|
|
version = "2.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b948000fad4873c1c9339d60f2623323a0cfd3816e5181033c6a5cb68b2accf7"
|
|
|
|
dependencies = [
|
|
|
|
"async-io",
|
|
|
|
"blocking",
|
|
|
|
"futures-lite 2.3.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "async-process"
|
|
|
|
version = "2.2.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f7eda79bbd84e29c2b308d1dc099d7de8dcc7035e48f4bf5dc4a531a44ff5e2a"
|
|
|
|
dependencies = [
|
|
|
|
"async-channel 2.3.1",
|
|
|
|
"async-io",
|
|
|
|
"async-lock",
|
|
|
|
"async-signal",
|
|
|
|
"async-task",
|
|
|
|
"blocking",
|
|
|
|
"cfg-if",
|
|
|
|
"event-listener 5.3.1",
|
|
|
|
"futures-lite 2.3.0",
|
|
|
|
"rustix",
|
|
|
|
"tracing",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "async-signal"
|
|
|
|
version = "0.2.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "794f185324c2f00e771cd9f1ae8b5ac68be2ca7abb129a87afd6e86d228bc54d"
|
|
|
|
dependencies = [
|
|
|
|
"async-io",
|
|
|
|
"async-lock",
|
|
|
|
"atomic-waker",
|
|
|
|
"cfg-if",
|
|
|
|
"futures-core",
|
|
|
|
"futures-io",
|
|
|
|
"rustix",
|
|
|
|
"signal-hook-registry",
|
|
|
|
"slab",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "async-task"
|
|
|
|
version = "4.7.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "atomic-waker"
|
|
|
|
version = "1.1.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "autocfg"
|
|
|
|
version = "1.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "backtrace"
|
|
|
|
version = "0.3.71"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
|
|
|
|
dependencies = [
|
|
|
|
"addr2line",
|
|
|
|
"cc",
|
|
|
|
"cfg-if",
|
|
|
|
"libc",
|
|
|
|
"miniz_oxide",
|
|
|
|
"object",
|
|
|
|
"rustc-demangle",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "base64"
|
|
|
|
version = "0.22.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "bitflags"
|
|
|
|
version = "1.3.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "bitflags"
|
|
|
|
version = "2.6.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "blocking"
|
|
|
|
version = "1.6.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "703f41c54fc768e63e091340b424302bb1c29ef4aa0c7f10fe849dfb114d29ea"
|
|
|
|
dependencies = [
|
|
|
|
"async-channel 2.3.1",
|
|
|
|
"async-task",
|
|
|
|
"futures-io",
|
|
|
|
"futures-lite 2.3.0",
|
|
|
|
"piper",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_ast"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"arbitrary",
|
|
|
|
"bitflags 2.6.0",
|
|
|
|
"boa_interner",
|
|
|
|
"boa_macros",
|
|
|
|
"indexmap",
|
|
|
|
"num-bigint",
|
|
|
|
"rustc-hash 2.0.0",
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_cli"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"boa_engine",
|
Implement debug object for CLI (#2772)
Currently some debugging stuff in JavaScript land is difficult to impossible, like triggering a GC collect, this is not impossible to do in JavaScript the way I triggered it was by creating a huge amount of object `for (let i = 0; i < 100000; ++i) { ({}) }` but this is cumbersome and not guaranteed to trigger a gc.
This PR implements `--debug-object` flag that injects the `$boa` debug object in the context, the object is separated into modules currently `gc`, `function`, `object`.
We can now do `$boa.gc.collect()`, which force triggers a GC collect.
Or sometimes I wanted a trace (the current solution is great, you can trace stuff like `>>> 1 + 1` but that is also it's limitation), it traces everything, I sometimes have a scenario and just want to trace a single function in that scenario, that's why I added the `$boa.function.trace(func, this, ...args)` It only traces the function.
```js
>> $boa.function.trace((a, b) => a + b, undefined, 1, 2)
-------------------------Compiled Output: ''--------------------------
Location Count Opcode Operands
000000 0000 DefInitArg 0000: 'a'
000005 0001 DefInitArg 0001: 'b'
000010 0002 RestParameterPop
000011 0003 GetName 0000: 'a'
000016 0004 GetName 0001: 'b'
000021 0005 Add
000022 0006 Return
000023 0007 PushUndefined
000024 0008 Return
... (cut for brevity) ...
```
It also implements `$boa.function.flowgraph(func, options)`:
```js
$boa.function.flowgraph(func, 'graphviz')
$boa.function.flowgraph(func, { format: 'mermaid', direction: 'TopBottom' })
```
Printing the object pointer:
```js
$boa.object.id({}) // '0x566464F33'
```
It currently implements some functionality which we can grow it with our debugging needs since we are not restricted by a spec we can add whatever we want :)
I was originally going to implement this in #2723 (but the PR is too big), for shapes having functions like:
```js
$boa.shape.type({}) // Shared shape
$boa.shape.id({}) // 0x8578FG355 (objects, shape pointer)
$boa.shape.flowgraph({}) // printing the shape transition chain, like $boa.function.flowgraph
```
Shapes chains are very hard to debug once they are big... so having this type of debugging capability would make it much easier.
2 years ago
|
|
|
"boa_gc",
|
|
|
|
"boa_parser",
|
|
|
|
"boa_runtime",
|
|
|
|
"clap",
|
|
|
|
"colored",
|
|
|
|
"dhat",
|
|
|
|
"jemallocator",
|
|
|
|
"phf",
|
|
|
|
"pollster",
|
|
|
|
"regex",
|
|
|
|
"rustyline",
|
|
|
|
"serde_json",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_engine"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"arrayvec",
|
|
|
|
"bitflags 2.6.0",
|
|
|
|
"boa_ast",
|
|
|
|
"boa_gc",
|
|
|
|
"boa_icu_provider",
|
|
|
|
"boa_interner",
|
|
|
|
"boa_macros",
|
|
|
|
"boa_parser",
|
|
|
|
"boa_profiler",
|
|
|
|
"boa_string",
|
|
|
|
"bytemuck",
|
|
|
|
"cfg-if",
|
|
|
|
"criterion",
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
"dashmap",
|
|
|
|
"either",
|
|
|
|
"fast-float",
|
|
|
|
"fixed_decimal",
|
|
|
|
"float-cmp",
|
|
|
|
"futures-lite 2.3.0",
|
|
|
|
"hashbrown",
|
|
|
|
"icu_calendar",
|
|
|
|
"icu_casemap",
|
|
|
|
"icu_collator",
|
|
|
|
"icu_datetime",
|
|
|
|
"icu_decimal",
|
|
|
|
"icu_list",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_locid_transform",
|
|
|
|
"icu_normalizer",
|
|
|
|
"icu_plurals",
|
|
|
|
"icu_provider",
|
|
|
|
"icu_segmenter",
|
|
|
|
"indexmap",
|
|
|
|
"indoc",
|
|
|
|
"intrusive-collections",
|
|
|
|
"itertools 0.13.0",
|
|
|
|
"jemallocator",
|
|
|
|
"num-bigint",
|
|
|
|
"num-integer",
|
|
|
|
"num-traits",
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
"num_enum",
|
|
|
|
"once_cell",
|
|
|
|
"pollster",
|
|
|
|
"portable-atomic",
|
|
|
|
"rand",
|
|
|
|
"regress",
|
|
|
|
"rustc-hash 2.0.0",
|
|
|
|
"ryu-js",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"sptr",
|
|
|
|
"static_assertions",
|
|
|
|
"sys-locale",
|
|
|
|
"tap",
|
|
|
|
"temporal_rs",
|
|
|
|
"test-case",
|
|
|
|
"textwrap",
|
|
|
|
"thin-vec",
|
Create new lazy Error type (#2283)
This is an experiment that tries to migrate the codebase from eager `Error` objects to lazy ones.
In short words, this redefines `JsResult = Result<JsValue, JsError>`, where `JsError` is a brand new type that stores only the essential part of an error type, and only transforms those errors to `JsObject`s on demand (when having to pass them as arguments to functions or store them inside async/generators).
This change is pretty big, because it unblocks a LOT of code from having to take a `&mut Context` on each call. It also paves the road for possibly making `JsError` a proper variant of `JsValue`, which can be a pretty big optimization for try/catch.
A downside of this is that it exposes some brand new error types to our public API. However, we can now implement `Error` on `JsError`, making our `JsResult` type a bit more inline with Rust's best practices.
~Will mark this as draft, since it's missing some documentation and a lot of examples, but~ it's pretty much feature complete. As always, any comments about the design are very much appreciated!
Note: Since there are a lot of changes which are essentially just rewriting `context.throw` to `JsNativeError::%type%`, I'll leave an "index" of the most important changes here:
- [boa_engine/src/error.rs](https://github.com/boa-dev/boa/pull/2283/files#diff-f15f2715655440626eefda5c46193d29856f4949ad37380c129a8debc6b82f26)
- [boa_engine/src/builtins/error/mod.rs](https://github.com/boa-dev/boa/pull/2283/files#diff-3eb1e4b4b5c7210eb98192a5277f5a239148423c6b970c4ae05d1b267f8f1084)
- [boa_tester/src/exec/mod.rs](https://github.com/boa-dev/boa/pull/2283/files#diff-fc3d7ad7b5e64574258c9febbe56171f3309b74e0c8da35238a76002f3ee34d9)
2 years ago
|
|
|
"thiserror",
|
|
|
|
"time",
|
|
|
|
"tinystr",
|
|
|
|
"web-time",
|
|
|
|
"writeable",
|
|
|
|
"yoke",
|
|
|
|
"zerofrom",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_examples"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"boa_ast",
|
|
|
|
"boa_engine",
|
|
|
|
"boa_gc",
|
|
|
|
"boa_interner",
|
|
|
|
"boa_parser",
|
|
|
|
"boa_runtime",
|
|
|
|
"futures-util",
|
|
|
|
"isahc",
|
|
|
|
"smol",
|
|
|
|
"time",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_gc"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"boa_macros",
|
|
|
|
"boa_profiler",
|
|
|
|
"boa_string",
|
|
|
|
"hashbrown",
|
|
|
|
"icu_locid",
|
|
|
|
"thin-vec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_icu_provider"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"icu_provider",
|
|
|
|
"icu_provider_adapters",
|
|
|
|
"icu_provider_blob",
|
|
|
|
"once_cell",
|
|
|
|
]
|
|
|
|
|
Lexer string interning (#1758)
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?
3 years ago
|
|
|
[[package]]
|
|
|
|
name = "boa_interner"
|
|
|
|
version = "0.19.0"
|
Lexer string interning (#1758)
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?
3 years ago
|
|
|
dependencies = [
|
|
|
|
"arbitrary",
|
|
|
|
"boa_gc",
|
|
|
|
"boa_macros",
|
|
|
|
"hashbrown",
|
|
|
|
"indexmap",
|
|
|
|
"once_cell",
|
|
|
|
"phf",
|
|
|
|
"rustc-hash 2.0.0",
|
Lexer string interning (#1758)
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?
3 years ago
|
|
|
"serde",
|
|
|
|
"static_assertions",
|
Lexer string interning (#1758)
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?
3 years ago
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_interop"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"boa_engine",
|
|
|
|
"boa_gc",
|
|
|
|
"boa_macros",
|
|
|
|
"rustc-hash 2.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_macros"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
"synstructure",
|
|
|
|
]
|
|
|
|
|
Initial version of a JS -> Rust conversion trait. (#2276)
This Pull Request closes #1975. It's still a work in progress, but tries to go in that direction.
It changes the following:
- Adds a new `TryFromJs` trait, that can be derived using a new `boa_derive` crate.
- Adds a new `try_js_into()` function that, similarly to the standard library `TryInto` trait
Things to think about:
- Should the `boa_derive` crate be re-exported in `boa_engine` using a `derive` feature, similar to how it's done in `serde`?
- The current implementation only converts perfectly valid values. So, if we try to convert a big integer into an `i8`, or any floating point number to an `f32`. So, you cannot derive `TryFromJs` for structures that contain an `f32` for example (you can still manually implement the trait, though, and decide in favour of a loss of precision). Should we also provide some traits for transparent loss of precision?
- Currently, you cannot convert between types, so if the JS struct has an integer, you cannot cast it to a boolean, for example. Should we provide a `TryConvertJs` trait, for example to force conversions?
- Currently we only have basic types and object conversions. Should add `Array` to `Vec` conversion, for example, right? Should we also add `TypedArray` conversions? What about `Map` and `Set`? Does this step over the fine grained APIs that we were creating?
Note that this still requires a bunch of documentation, tests, and validation from the dev team and from the users that requested this feature. I'm particularly interested in @lastmjs's thoughts on this API.
I already added an usage example in `boa_examples/src/bin/derive.rs`.
Co-authored-by: jedel1043 <jedel0124@gmail.com>
2 years ago
|
|
|
[[package]]
|
|
|
|
name = "boa_macros_tests"
|
|
|
|
version = "0.19.0"
|
Initial version of a JS -> Rust conversion trait. (#2276)
This Pull Request closes #1975. It's still a work in progress, but tries to go in that direction.
It changes the following:
- Adds a new `TryFromJs` trait, that can be derived using a new `boa_derive` crate.
- Adds a new `try_js_into()` function that, similarly to the standard library `TryInto` trait
Things to think about:
- Should the `boa_derive` crate be re-exported in `boa_engine` using a `derive` feature, similar to how it's done in `serde`?
- The current implementation only converts perfectly valid values. So, if we try to convert a big integer into an `i8`, or any floating point number to an `f32`. So, you cannot derive `TryFromJs` for structures that contain an `f32` for example (you can still manually implement the trait, though, and decide in favour of a loss of precision). Should we also provide some traits for transparent loss of precision?
- Currently, you cannot convert between types, so if the JS struct has an integer, you cannot cast it to a boolean, for example. Should we provide a `TryConvertJs` trait, for example to force conversions?
- Currently we only have basic types and object conversions. Should add `Array` to `Vec` conversion, for example, right? Should we also add `TypedArray` conversions? What about `Map` and `Set`? Does this step over the fine grained APIs that we were creating?
Note that this still requires a bunch of documentation, tests, and validation from the dev team and from the users that requested this feature. I'm particularly interested in @lastmjs's thoughts on this API.
I already added an usage example in `boa_examples/src/bin/derive.rs`.
Co-authored-by: jedel1043 <jedel0124@gmail.com>
2 years ago
|
|
|
dependencies = [
|
|
|
|
"boa_engine",
|
|
|
|
"trybuild",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_parser"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 2.6.0",
|
|
|
|
"boa_ast",
|
|
|
|
"boa_interner",
|
|
|
|
"boa_macros",
|
|
|
|
"boa_profiler",
|
|
|
|
"fast-float",
|
|
|
|
"icu_properties",
|
|
|
|
"num-bigint",
|
|
|
|
"num-traits",
|
|
|
|
"regress",
|
|
|
|
"rustc-hash 2.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_profiler"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"measureme",
|
|
|
|
"once_cell",
|
|
|
|
"rustc-hash 2.0.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_runtime"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"boa_engine",
|
|
|
|
"boa_gc",
|
|
|
|
"indoc",
|
|
|
|
"rustc-hash 2.0.0",
|
|
|
|
"textwrap",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_string"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"fast-float",
|
|
|
|
"paste",
|
|
|
|
"rustc-hash 2.0.0",
|
|
|
|
"sptr",
|
|
|
|
"static_assertions",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_tester"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 2.6.0",
|
|
|
|
"boa_engine",
|
Execution stack & promises (#2107)
This PR overrides #1923. It also removes the `queues` dependency added there, and rebases it to the latest `main` branch state.
It adds the following:
- A job queue (in `Context`)
- The constructor [`Promise`](https://tc39.es/ecma262/#sec-promise-executor)
- [`Promise.race`](https://tc39.es/ecma262/#sec-promise.race)
- [`Promise.reject`](https://tc39.es/ecma262/#sec-promise.reject)
- [`Promise.resolve`](https://tc39.es/ecma262/#sec-promise.resolve)
- [`get Promise [ @@species ]`](https://tc39.es/ecma262/#sec-get-promise-@@species)
- [`Promise.prototype [ @@toStringTag ]`](https://tc39.es/ecma262/#sec-promise.prototype-@@tostringtag)
- [`Promise.prototype.then`](https://tc39.es/ecma262/#sec-promise.prototype.then)
- [`Promise.prototype.finally`](https://tc39.es/ecma262/#sec-promise.prototype.finally)
- [`Promise.prototype.catch`](https://tc39.es/ecma262/#sec-promise.prototype.catch)
- The additional needed infrastructure
- [`PerformPromiseThen ( promise, onFulfilled, onRejected [ , resultCapability ] )`](https://tc39.es/ecma262/#sec-performpromisethen)
- [`TriggerPromiseReactions ( reactions, argument )`](https://tc39.es/ecma262/#sec-triggerpromisereactions)
- [`PerformPromiseRace ( iteratorRecord, constructor, resultCapability, promiseResolve )`](https://tc39.es/ecma262/#sec-performpromiserace)
- [`RejectPromise ( promise, reason )`](https://tc39.es/ecma262/#sec-rejectpromise)
- [`FulfillPromise ( promise, value )`](https://tc39.es/ecma262/#sec-fulfillpromise)
- [`IfAbruptRejectPromise ( value, capability )`](https://tc39.es/ecma262/#sec-ifabruptrejectpromise)
- [`CreateResolvingFunctions ( promise )`](https://tc39.es/ecma262/#sec-createresolvingfunctions)
- [`NewPromiseCapability ( C )`](https://tc39.es/ecma262/#sec-newpromisecapability)
- [`NewPromiseReactionJob ( reaction, argument )`](https://tc39.es/ecma262/#sec-newpromisereactionjob)
- [`NewPromiseResolveThenableJob ( promiseToResolve, thenable, then )`](https://tc39.es/ecma262/#sec-newpromiseresolvethenablejob)
- [`PromiseResolve ( C, x )`](https://tc39.es/ecma262/#sec-promise-resolve)
- A test case showcasing the run-to-completion semantics.
An example program that shows the control flow with this addition is:
```javascript
new Promise((res, rej) => {
console.log("A");
res(undefined);
}).then((_) => console.log("B"));
console.log("C");
```
Which would output:
```
A
C
B
```
2 years ago
|
|
|
"boa_gc",
|
|
|
|
"boa_runtime",
|
|
|
|
"bus",
|
|
|
|
"clap",
|
|
|
|
"color-eyre",
|
|
|
|
"colored",
|
|
|
|
"comfy-table",
|
|
|
|
"phf",
|
|
|
|
"rayon",
|
|
|
|
"rustc-hash 2.0.0",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"serde_repr",
|
|
|
|
"serde_yaml",
|
|
|
|
"time",
|
|
|
|
"toml 0.8.15",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "boa_wasm"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"boa_engine",
|
|
|
|
"console_error_panic_hook",
|
|
|
|
"getrandom",
|
|
|
|
"wasm-bindgen",
|
|
|
|
"wasm-bindgen-test",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "bumpalo"
|
|
|
|
version = "3.16.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "bus"
|
|
|
|
version = "2.4.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4b7118d0221d84fada881b657c2ddb7cd55108db79c8764c9ee212c0c259b783"
|
|
|
|
dependencies = [
|
|
|
|
"crossbeam-channel",
|
|
|
|
"num_cpus",
|
|
|
|
"parking_lot_core",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "bytemuck"
|
|
|
|
version = "1.16.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b236fc92302c97ed75b38da1f4917b5cdda4984745740f153a5d3059e48d725e"
|
|
|
|
dependencies = [
|
|
|
|
"bytemuck_derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "bytemuck_derive"
|
|
|
|
version = "1.7.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1ee891b04274a59bd38b412188e24b849617b2e45a0fd8d057deb63e7403761b"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "byteorder"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "bytes"
|
|
|
|
version = "1.6.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "calendrical_calculations"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "cec493b209a1b81fa32312d7ceca1b547d341c7b5f16a3edbf32b1d8b455bbdf"
|
|
|
|
dependencies = [
|
|
|
|
"core_maths",
|
|
|
|
"displaydoc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "camino"
|
|
|
|
version = "1.1.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "cargo-platform"
|
|
|
|
version = "0.1.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "cargo_metadata"
|
|
|
|
version = "0.18.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037"
|
|
|
|
dependencies = [
|
|
|
|
"camino",
|
|
|
|
"cargo-platform",
|
|
|
|
"semver",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"thiserror",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "cast"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "castaway"
|
|
|
|
version = "0.1.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a2698f953def977c68f935bb0dfa959375ad4638570e969e2f1e9f433cbf1af6"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "cc"
|
|
|
|
version = "1.0.100"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c891175c3fb232128f48de6590095e59198bbeb8620c310be349bfc3afd12c7b"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "cfg-if"
|
|
|
|
version = "1.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "cfg_aliases"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ciborium"
|
|
|
|
version = "0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e"
|
|
|
|
dependencies = [
|
|
|
|
"ciborium-io",
|
|
|
|
"ciborium-ll",
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ciborium-io"
|
|
|
|
version = "0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ciborium-ll"
|
|
|
|
version = "0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9"
|
|
|
|
dependencies = [
|
|
|
|
"ciborium-io",
|
|
|
|
"half",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "clap"
|
|
|
|
version = "4.5.9"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "64acc1846d54c1fe936a78dc189c34e28d3f5afc348403f28ecf53660b9b8462"
|
|
|
|
dependencies = [
|
|
|
|
"clap_builder",
|
|
|
|
"clap_derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "clap_builder"
|
|
|
|
version = "4.5.9"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6fb8393d67ba2e7bfaf28a23458e4e2b543cc73a99595511eb207fdb8aede942"
|
|
|
|
dependencies = [
|
|
|
|
"anstream",
|
|
|
|
"anstyle",
|
|
|
|
"clap_lex",
|
|
|
|
"strsim",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "clap_derive"
|
|
|
|
version = "4.5.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2bac35c6dafb060fd4d275d9a4ffae97917c13a6327903a8be2153cd964f7085"
|
|
|
|
dependencies = [
|
|
|
|
"heck",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "clap_lex"
|
|
|
|
version = "0.7.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4b82cf0babdbd58558212896d1a4272303a57bdb245c2bf1147185fb45640e70"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "clipboard-win"
|
|
|
|
version = "5.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "79f4473f5144e20d9aceaf2972478f06ddf687831eafeeb434fbaf0acc4144ad"
|
|
|
|
dependencies = [
|
|
|
|
"error-code",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "cobs"
|
|
|
|
version = "0.2.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "color-eyre"
|
|
|
|
version = "0.6.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "55146f5e46f237f7423d74111267d4597b59b0dad0ffaf7303bce9945d843ad5"
|
|
|
|
dependencies = [
|
|
|
|
"backtrace",
|
|
|
|
"color-spantrace",
|
|
|
|
"eyre",
|
|
|
|
"indenter",
|
|
|
|
"once_cell",
|
|
|
|
"owo-colors",
|
|
|
|
"tracing-error",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "color-spantrace"
|
|
|
|
version = "0.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "cd6be1b2a7e382e2b98b43b2adcca6bb0e465af0bdd38123873ae61eb17a72c2"
|
|
|
|
dependencies = [
|
|
|
|
"once_cell",
|
|
|
|
"owo-colors",
|
|
|
|
"tracing-core",
|
|
|
|
"tracing-error",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "colorchoice"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "colored"
|
|
|
|
version = "2.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8"
|
|
|
|
dependencies = [
|
|
|
|
"lazy_static",
|
|
|
|
"windows-sys 0.48.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "comfy-table"
|
|
|
|
version = "7.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b34115915337defe99b2aff5c2ce6771e5fbc4079f4b506301f5cf394c8452f7"
|
|
|
|
dependencies = [
|
|
|
|
"crossterm",
|
|
|
|
"strum",
|
|
|
|
"strum_macros",
|
|
|
|
"unicode-width",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "concurrent-queue"
|
|
|
|
version = "2.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
|
|
|
|
dependencies = [
|
|
|
|
"crossbeam-utils",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "console_error_panic_hook"
|
|
|
|
version = "0.1.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"wasm-bindgen",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "core_maths"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e3b02505ccb8c50b0aa21ace0fc08c3e53adebd4e58caa18a36152803c7709a3"
|
|
|
|
dependencies = [
|
|
|
|
"libm",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crc32fast"
|
|
|
|
version = "1.4.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "criterion"
|
|
|
|
version = "0.5.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f"
|
|
|
|
dependencies = [
|
|
|
|
"anes",
|
|
|
|
"cast",
|
|
|
|
"ciborium",
|
|
|
|
"clap",
|
|
|
|
"criterion-plot",
|
|
|
|
"is-terminal",
|
|
|
|
"itertools 0.10.5",
|
|
|
|
"num-traits",
|
|
|
|
"once_cell",
|
|
|
|
"oorandom",
|
|
|
|
"plotters",
|
|
|
|
"rayon",
|
|
|
|
"regex",
|
|
|
|
"serde",
|
|
|
|
"serde_derive",
|
|
|
|
"serde_json",
|
|
|
|
"tinytemplate",
|
|
|
|
"walkdir",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "criterion-plot"
|
|
|
|
version = "0.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
|
|
|
|
dependencies = [
|
|
|
|
"cast",
|
|
|
|
"itertools 0.10.5",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "critical-section"
|
|
|
|
version = "1.1.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7059fff8937831a9ae6f0fe4d658ffabf58f2ca96aa9dec1c889f936f705f216"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-channel"
|
|
|
|
version = "0.5.13"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2"
|
|
|
|
dependencies = [
|
|
|
|
"crossbeam-utils",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-deque"
|
|
|
|
version = "0.8.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
|
|
|
|
dependencies = [
|
|
|
|
"crossbeam-epoch",
|
|
|
|
"crossbeam-utils",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-epoch"
|
|
|
|
version = "0.9.18"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
|
|
|
|
dependencies = [
|
|
|
|
"crossbeam-utils",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crossbeam-utils"
|
|
|
|
version = "0.8.20"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crossterm"
|
|
|
|
version = "0.27.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 2.6.0",
|
|
|
|
"crossterm_winapi",
|
|
|
|
"libc",
|
|
|
|
"parking_lot",
|
|
|
|
"winapi",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crossterm_winapi"
|
|
|
|
version = "0.9.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b"
|
|
|
|
dependencies = [
|
|
|
|
"winapi",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "crunchy"
|
|
|
|
version = "0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "curl"
|
|
|
|
version = "0.4.46"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1e2161dd6eba090ff1594084e95fd67aeccf04382ffea77999ea94ed42ec67b6"
|
|
|
|
dependencies = [
|
|
|
|
"curl-sys",
|
|
|
|
"libc",
|
|
|
|
"openssl-probe",
|
|
|
|
"openssl-sys",
|
|
|
|
"schannel",
|
|
|
|
"socket2",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "curl-sys"
|
|
|
|
version = "0.4.72+curl-8.6.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "29cbdc8314c447d11e8fd156dcdd031d9e02a7a976163e396b548c03153bc9ea"
|
|
|
|
dependencies = [
|
|
|
|
"cc",
|
|
|
|
"libc",
|
|
|
|
"libnghttp2-sys",
|
|
|
|
"libz-sys",
|
|
|
|
"openssl-sys",
|
|
|
|
"pkg-config",
|
|
|
|
"vcpkg",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
[[package]]
|
|
|
|
name = "dashmap"
|
|
|
|
version = "5.5.3"
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"hashbrown",
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
"lock_api",
|
|
|
|
"once_cell",
|
|
|
|
"parking_lot_core",
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "databake"
|
|
|
|
version = "0.1.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6a04fbfbecca8f0679c8c06fef907594adcc3e2052e11163a6d30535a1a5604d"
|
|
|
|
dependencies = [
|
|
|
|
"databake-derive",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "databake-derive"
|
|
|
|
version = "0.1.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4078275de501a61ceb9e759d37bdd3d7210e654dbc167ac1a3678ef4435ed57b"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
"synstructure",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "deduplicating_array"
|
|
|
|
version = "0.1.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1d579f0dbb23612a78e2d3a483dd1bff5edafa84592d15ba5eb5e3fd689b7d98"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "deranged"
|
|
|
|
version = "0.3.11"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
|
|
|
|
dependencies = [
|
|
|
|
"powerfmt",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "derive_arbitrary"
|
|
|
|
version = "1.3.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "dhat"
|
|
|
|
version = "0.3.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "98cd11d84628e233de0ce467de10b8633f4ddaecafadefc86e13b84b8739b827"
|
|
|
|
dependencies = [
|
|
|
|
"backtrace",
|
|
|
|
"lazy_static",
|
|
|
|
"mintex",
|
|
|
|
"parking_lot",
|
|
|
|
"rustc-hash 1.1.0",
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
"thousands",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "displaydoc"
|
|
|
|
version = "0.2.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "downcast-rs"
|
|
|
|
version = "1.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "either"
|
|
|
|
version = "1.13.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "elsa"
|
|
|
|
version = "1.10.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d98e71ae4df57d214182a2e5cb90230c0192c6ddfcaa05c36453d46a54713e10"
|
|
|
|
dependencies = [
|
|
|
|
"stable_deref_trait",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "embedded-io"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "encoding_rs"
|
|
|
|
version = "0.8.34"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "equivalent"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "erased-serde"
|
|
|
|
version = "0.3.31"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6c138974f9d5e7fe373eb04df7cae98833802ae4b11c24ac7039a21d5af4b26c"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "errno"
|
|
|
|
version = "0.3.9"
|
Lexer string interning (#1758)
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?
3 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
|
Lexer string interning (#1758)
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?
3 years ago
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
"windows-sys 0.52.0",
|
Lexer string interning (#1758)
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?
3 years ago
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "error-code"
|
|
|
|
version = "3.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a0474425d51df81997e2f90a21591180b38eccf27292d755f3e30750225c175b"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "event-listener"
|
|
|
|
version = "2.5.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "event-listener"
|
|
|
|
version = "5.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba"
|
|
|
|
dependencies = [
|
|
|
|
"concurrent-queue",
|
|
|
|
"parking",
|
|
|
|
"pin-project-lite",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "event-listener-strategy"
|
|
|
|
version = "0.5.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
|
|
|
|
dependencies = [
|
|
|
|
"event-listener 5.3.1",
|
|
|
|
"pin-project-lite",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "eyre"
|
|
|
|
version = "0.6.12"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec"
|
|
|
|
dependencies = [
|
|
|
|
"indenter",
|
|
|
|
"once_cell",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "fast-float"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "95765f67b4b18863968b4a1bd5bb576f732b29a4a28c7cd84c09fa3e2875f33c"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "fastrand"
|
|
|
|
version = "1.9.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
|
|
|
|
dependencies = [
|
|
|
|
"instant",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "fastrand"
|
|
|
|
version = "2.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "fd-lock"
|
|
|
|
version = "4.0.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7e5768da2206272c81ef0b5e951a41862938a6070da63bcea197899942d3b947"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"rustix",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "fixed_decimal"
|
|
|
|
version = "0.5.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0febbeb1118a9ecdee6e4520ead6b54882e843dd0592ad233247dbee84c53db8"
|
|
|
|
dependencies = [
|
|
|
|
"displaydoc",
|
|
|
|
"ryu",
|
|
|
|
"smallvec",
|
|
|
|
"writeable",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "flate2"
|
|
|
|
version = "1.0.30"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae"
|
|
|
|
dependencies = [
|
|
|
|
"crc32fast",
|
|
|
|
"miniz_oxide",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "float-cmp"
|
|
|
|
version = "0.9.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4"
|
|
|
|
dependencies = [
|
|
|
|
"num-traits",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "fnv"
|
|
|
|
version = "1.0.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "form_urlencoded"
|
|
|
|
version = "1.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
|
|
|
|
dependencies = [
|
|
|
|
"percent-encoding",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-core"
|
|
|
|
version = "0.3.30"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-io"
|
|
|
|
version = "0.3.30"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-lite"
|
|
|
|
version = "1.13.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
|
|
|
|
dependencies = [
|
|
|
|
"fastrand 1.9.0",
|
|
|
|
"futures-core",
|
|
|
|
"futures-io",
|
|
|
|
"memchr",
|
|
|
|
"parking",
|
|
|
|
"pin-project-lite",
|
|
|
|
"waker-fn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-lite"
|
|
|
|
version = "2.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
|
|
|
|
dependencies = [
|
|
|
|
"fastrand 2.1.0",
|
|
|
|
"futures-core",
|
|
|
|
"futures-io",
|
|
|
|
"parking",
|
|
|
|
"pin-project-lite",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-macro"
|
|
|
|
version = "0.3.30"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-task"
|
|
|
|
version = "0.3.30"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "futures-util"
|
|
|
|
version = "0.3.30"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
|
|
|
|
dependencies = [
|
|
|
|
"futures-core",
|
|
|
|
"futures-macro",
|
|
|
|
"futures-task",
|
|
|
|
"pin-project-lite",
|
|
|
|
"pin-utils",
|
|
|
|
"slab",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "gen-icu4x-data"
|
|
|
|
version = "0.19.0"
|
|
|
|
dependencies = [
|
|
|
|
"icu_casemap",
|
|
|
|
"icu_collator",
|
|
|
|
"icu_datagen",
|
|
|
|
"icu_datetime",
|
|
|
|
"icu_decimal",
|
|
|
|
"icu_list",
|
|
|
|
"icu_locid_transform",
|
|
|
|
"icu_normalizer",
|
|
|
|
"icu_plurals",
|
|
|
|
"icu_provider",
|
|
|
|
"icu_segmenter",
|
|
|
|
"log",
|
|
|
|
"simple_logger",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "getrandom"
|
|
|
|
version = "0.2.15"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"js-sys",
|
|
|
|
"libc",
|
|
|
|
"wasi",
|
|
|
|
"wasm-bindgen",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "gimli"
|
|
|
|
version = "0.28.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "glob"
|
|
|
|
version = "0.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "half"
|
|
|
|
version = "2.4.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"crunchy",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "hashbrown"
|
|
|
|
version = "0.14.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
|
|
|
|
dependencies = [
|
|
|
|
"ahash",
|
|
|
|
"allocator-api2",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "heck"
|
|
|
|
version = "0.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "hermit-abi"
|
|
|
|
version = "0.3.9"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "hermit-abi"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "http"
|
|
|
|
version = "0.2.12"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
|
|
|
|
dependencies = [
|
|
|
|
"bytes",
|
|
|
|
"fnv",
|
|
|
|
"itoa",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "dff5e3018d703f168b00dcefa540a65f1bbc50754ae32f3f5f0e43fe5ee51502"
|
|
|
|
dependencies = [
|
|
|
|
"icu_calendar",
|
|
|
|
"icu_casemap",
|
|
|
|
"icu_collator",
|
|
|
|
"icu_collections",
|
|
|
|
"icu_datetime",
|
|
|
|
"icu_decimal",
|
|
|
|
"icu_experimental",
|
|
|
|
"icu_list",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_locid_transform",
|
|
|
|
"icu_normalizer",
|
|
|
|
"icu_plurals",
|
|
|
|
"icu_properties",
|
|
|
|
"icu_provider",
|
|
|
|
"icu_segmenter",
|
|
|
|
"icu_timezone",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_calendar"
|
|
|
|
version = "1.5.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7265b2137f9a36f7634a308d91f984574bbdba8cfd95ceffe1c345552275a8ff"
|
|
|
|
dependencies = [
|
|
|
|
"calendrical_calculations",
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"icu_calendar_data",
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
"icu_locid",
|
|
|
|
"icu_locid_transform",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"tinystr",
|
|
|
|
"writeable",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_calendar_data"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8e009b7f0151ee6fb28c40b1283594397e0b7183820793e9ace3dcd13db126d0"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_casemap"
|
|
|
|
version = "1.5.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9ff0c8ae9f8d31b12e27fc385ff9ab1f3cd9b17417c665c49e4ec958c37da75f"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"icu_collections",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_properties",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"writeable",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_codepointtrie_builder"
|
|
|
|
version = "0.3.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c41aa8d27817174c88860a3227fa5cc50cf2d915367f626d56f5711dd8a2e22a"
|
|
|
|
dependencies = [
|
|
|
|
"icu_collections",
|
|
|
|
"toml 0.5.11",
|
|
|
|
"wasmi",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_collator"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d370371887d31d56f361c3eaa15743e54f13bc677059c9191c77e099ed6966b2"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"icu_collections",
|
|
|
|
"icu_normalizer",
|
|
|
|
"icu_properties",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"smallvec",
|
|
|
|
"utf16_iter",
|
|
|
|
"utf8_iter",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_collections"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"serde",
|
|
|
|
"yoke",
|
|
|
|
"zerofrom",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_datagen"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d1e80c1b833419752592da4d8a37239f6f11dd04dc3c0048f90acc000b17f4a9"
|
|
|
|
dependencies = [
|
|
|
|
"calendrical_calculations",
|
|
|
|
"displaydoc",
|
|
|
|
"either",
|
|
|
|
"elsa",
|
|
|
|
"icu",
|
|
|
|
"icu_calendar",
|
|
|
|
"icu_casemap",
|
|
|
|
"icu_codepointtrie_builder",
|
|
|
|
"icu_collator",
|
|
|
|
"icu_collections",
|
|
|
|
"icu_datetime",
|
|
|
|
"icu_decimal",
|
|
|
|
"icu_experimental",
|
|
|
|
"icu_list",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_locid_transform",
|
|
|
|
"icu_normalizer",
|
|
|
|
"icu_pattern",
|
|
|
|
"icu_plurals",
|
|
|
|
"icu_properties",
|
|
|
|
"icu_provider",
|
|
|
|
"icu_provider_adapters",
|
|
|
|
"icu_provider_blob",
|
|
|
|
"icu_segmenter",
|
|
|
|
"icu_timezone",
|
|
|
|
"itertools 0.10.5",
|
|
|
|
"litemap",
|
|
|
|
"log",
|
|
|
|
"memchr",
|
|
|
|
"ndarray",
|
|
|
|
"num-bigint",
|
|
|
|
"num-rational",
|
|
|
|
"num-traits",
|
|
|
|
"once_cell",
|
|
|
|
"rayon",
|
|
|
|
"serde",
|
|
|
|
"serde-aux",
|
|
|
|
"serde_json",
|
|
|
|
"tinystr",
|
|
|
|
"toml 0.5.11",
|
|
|
|
"twox-hash",
|
|
|
|
"ureq",
|
|
|
|
"writeable",
|
|
|
|
"zerotrie",
|
|
|
|
"zerovec",
|
|
|
|
"zip",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_datetime"
|
|
|
|
version = "1.5.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d115efb85e08df3fd77e77f52e7e087545a783fffba8be80bfa2102f306b1780"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"either",
|
|
|
|
"fixed_decimal",
|
|
|
|
"icu_calendar",
|
|
|
|
"icu_decimal",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_plurals",
|
|
|
|
"icu_provider",
|
|
|
|
"icu_timezone",
|
|
|
|
"litemap",
|
|
|
|
"serde",
|
|
|
|
"smallvec",
|
|
|
|
"tinystr",
|
|
|
|
"writeable",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_decimal"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fb8fd98f86ec0448d85e1edf8884e4e318bb2e121bd733ec929a05c0a5e8b0eb"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"fixed_decimal",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"writeable",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_experimental"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "844ad7b682a165c758065d694bc4d74ac67f176da1c499a04d85d492c0f193b7"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"fixed_decimal",
|
|
|
|
"icu_collections",
|
|
|
|
"icu_decimal",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_locid_transform",
|
|
|
|
"icu_normalizer",
|
|
|
|
"icu_pattern",
|
|
|
|
"icu_plurals",
|
|
|
|
"icu_properties",
|
|
|
|
"icu_provider",
|
|
|
|
"litemap",
|
|
|
|
"log",
|
|
|
|
"num-bigint",
|
|
|
|
"num-rational",
|
|
|
|
"num-traits",
|
|
|
|
"serde",
|
|
|
|
"smallvec",
|
|
|
|
"tinystr",
|
|
|
|
"writeable",
|
|
|
|
"zerofrom",
|
|
|
|
"zerotrie",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_list"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bbfeda1d7775b6548edd4e8b7562304a559a91ed56ab56e18961a053f367c365"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"deduplicating_array",
|
|
|
|
"displaydoc",
|
|
|
|
"icu_provider",
|
|
|
|
"regex-automata 0.2.0",
|
|
|
|
"serde",
|
|
|
|
"writeable",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_locid"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"litemap",
|
|
|
|
"serde",
|
|
|
|
"tinystr",
|
|
|
|
"writeable",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_locid_transform"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_locid_transform_data",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"tinystr",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_locid_transform_data"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_normalizer"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"icu_collections",
|
|
|
|
"icu_normalizer_data",
|
|
|
|
"icu_properties",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"smallvec",
|
|
|
|
"utf16_iter",
|
|
|
|
"utf8_iter",
|
|
|
|
"write16",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_normalizer_data"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_pattern"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "cb7f36aafd098d6717de34e668a8120822275c1fba22b936e757b7de8a2fd7e4"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"either",
|
|
|
|
"serde",
|
|
|
|
"writeable",
|
|
|
|
"yoke",
|
|
|
|
"zerofrom",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_plurals"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ba5a70e7c025dbd5c501b0a5c188cd11666a424f0dadcd4f0a95b7dafde3b114"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"fixed_decimal",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_properties"
|
|
|
|
version = "1.5.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"icu_collections",
|
|
|
|
"icu_locid_transform",
|
|
|
|
"icu_properties_data",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"tinystr",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_properties_data"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_provider"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"erased-serde",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_provider_macros",
|
|
|
|
"log",
|
|
|
|
"postcard",
|
|
|
|
"serde",
|
|
|
|
"stable_deref_trait",
|
|
|
|
"tinystr",
|
|
|
|
"writeable",
|
|
|
|
"yoke",
|
|
|
|
"zerofrom",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_provider_adapters"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d6324dfd08348a8e0374a447ebd334044d766b1839bb8d5ccf2482a99a77c0bc"
|
|
|
|
dependencies = [
|
|
|
|
"icu_locid",
|
|
|
|
"icu_locid_transform",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"tinystr",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_provider_blob"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c24b98d1365f55d78186c205817631a4acf08d7a45bdf5dc9dcf9c5d54dccf51"
|
|
|
|
dependencies = [
|
|
|
|
"icu_provider",
|
|
|
|
"log",
|
|
|
|
"postcard",
|
|
|
|
"serde",
|
|
|
|
"writeable",
|
|
|
|
"zerotrie",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_provider_macros"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_segmenter"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a717725612346ffc2d7b42c94b820db6908048f39434504cb130e8b46256b0de"
|
|
|
|
dependencies = [
|
|
|
|
"core_maths",
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"icu_collections",
|
|
|
|
"icu_locid",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"utf8_iter",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "icu_timezone"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "aa91ba6a585939a020c787235daa8aee856d9bceebd6355e283c0c310bc6de96"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"icu_calendar",
|
|
|
|
"icu_provider",
|
|
|
|
"serde",
|
|
|
|
"tinystr",
|
|
|
|
"zerotrie",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "idna"
|
|
|
|
version = "0.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
|
|
|
|
dependencies = [
|
|
|
|
"unicode-bidi",
|
|
|
|
"unicode-normalization",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "indenter"
|
|
|
|
version = "0.3.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "indexmap"
|
|
|
|
version = "2.2.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
|
|
|
|
dependencies = [
|
|
|
|
"equivalent",
|
|
|
|
"hashbrown",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "indexmap-nostd"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8e04e2fd2b8188ea827b32ef11de88377086d690286ab35747ef7f9bf3ccb590"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "indoc"
|
|
|
|
version = "2.0.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "instant"
|
|
|
|
version = "0.1.13"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "intrusive-collections"
|
|
|
|
version = "0.9.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b694dc9f70c3bda874626d2aed13b780f137aab435f4e9814121955cf706122e"
|
|
|
|
dependencies = [
|
|
|
|
"memoffset",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "is-terminal"
|
|
|
|
version = "0.4.12"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b"
|
|
|
|
dependencies = [
|
|
|
|
"hermit-abi 0.3.9",
|
|
|
|
"libc",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "is_terminal_polyfill"
|
|
|
|
version = "1.70.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "isahc"
|
|
|
|
version = "1.7.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "334e04b4d781f436dc315cb1e7515bd96826426345d498149e4bde36b67f8ee9"
|
|
|
|
dependencies = [
|
|
|
|
"async-channel 1.9.0",
|
|
|
|
"castaway",
|
|
|
|
"crossbeam-utils",
|
|
|
|
"curl",
|
|
|
|
"curl-sys",
|
|
|
|
"encoding_rs",
|
|
|
|
"event-listener 2.5.3",
|
|
|
|
"futures-lite 1.13.0",
|
|
|
|
"http",
|
|
|
|
"log",
|
|
|
|
"mime",
|
|
|
|
"once_cell",
|
|
|
|
"polling 2.8.0",
|
|
|
|
"slab",
|
|
|
|
"sluice",
|
|
|
|
"tracing",
|
|
|
|
"tracing-futures",
|
|
|
|
"url",
|
|
|
|
"waker-fn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "itertools"
|
|
|
|
version = "0.10.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
|
|
|
|
dependencies = [
|
|
|
|
"either",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "itertools"
|
|
|
|
version = "0.13.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186"
|
|
|
|
dependencies = [
|
|
|
|
"either",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "itoa"
|
|
|
|
version = "1.0.11"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ixdtf"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2123305f927452a9502fc05c33800280d90127c95c50eb45ec6b3c50346afbf3"
|
|
|
|
dependencies = [
|
|
|
|
"displaydoc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "jemalloc-sys"
|
|
|
|
version = "0.5.4+5.3.0-patched"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ac6c1946e1cea1788cbfde01c993b52a10e2da07f4bac608228d1bed20bfebf2"
|
|
|
|
dependencies = [
|
|
|
|
"cc",
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "jemallocator"
|
|
|
|
version = "0.5.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a0de374a9f8e63150e6f5e8a60cc14c668226d7a347d8aee1a45766e3c4dd3bc"
|
|
|
|
dependencies = [
|
|
|
|
"jemalloc-sys",
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "js-sys"
|
|
|
|
version = "0.3.69"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
|
|
|
|
dependencies = [
|
|
|
|
"wasm-bindgen",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "lazy_static"
|
|
|
|
version = "1.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "libc"
|
|
|
|
version = "0.2.155"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "libm"
|
|
|
|
version = "0.2.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "libnghttp2-sys"
|
|
|
|
version = "0.1.10+1.61.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "959c25552127d2e1fa72f0e52548ec04fc386e827ba71a7bd01db46a447dc135"
|
|
|
|
dependencies = [
|
|
|
|
"cc",
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "libz-sys"
|
|
|
|
version = "1.1.18"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c15da26e5af7e25c90b37a2d75cdbf940cf4a55316de9d84c679c9b8bfabf82e"
|
|
|
|
dependencies = [
|
|
|
|
"cc",
|
|
|
|
"libc",
|
|
|
|
"pkg-config",
|
|
|
|
"vcpkg",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "linux-raw-sys"
|
|
|
|
version = "0.4.14"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "litemap"
|
|
|
|
version = "0.7.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "lock_api"
|
|
|
|
version = "0.4.12"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
|
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
"scopeguard",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "log"
|
|
|
|
version = "0.4.22"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "matrixmultiply"
|
|
|
|
version = "0.3.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7574c1cf36da4798ab73da5b215bbf444f50718207754cb522201d78d1cd0ff2"
|
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
"rawpointer",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "measureme"
|
|
|
|
version = "11.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "dfa4a40f09af7aa6faef38285402a78847d0d72bf8827006cd2a332e1e6e4a8d"
|
|
|
|
dependencies = [
|
|
|
|
"log",
|
|
|
|
"memmap2",
|
|
|
|
"parking_lot",
|
|
|
|
"perf-event-open-sys",
|
|
|
|
"rustc-hash 1.1.0",
|
|
|
|
"smallvec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "memchr"
|
|
|
|
version = "2.7.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "memmap2"
|
|
|
|
version = "0.2.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "723e3ebdcdc5c023db1df315364573789f8857c11b631a2fdfad7c00f5c046b4"
|
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "memoffset"
|
|
|
|
version = "0.9.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
|
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "mime"
|
|
|
|
version = "0.3.17"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "miniz_oxide"
|
|
|
|
version = "0.7.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08"
|
|
|
|
dependencies = [
|
|
|
|
"adler",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "mintex"
|
|
|
|
version = "0.1.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9bec4598fddb13cc7b528819e697852653252b760f1228b7642679bf2ff2cd07"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ndarray"
|
|
|
|
version = "0.15.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32"
|
|
|
|
dependencies = [
|
|
|
|
"matrixmultiply",
|
|
|
|
"num-complex",
|
|
|
|
"num-integer",
|
|
|
|
"num-traits",
|
|
|
|
"rawpointer",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "nix"
|
|
|
|
version = "0.28.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 2.6.0",
|
|
|
|
"cfg-if",
|
|
|
|
"cfg_aliases",
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "num-bigint"
|
|
|
|
version = "0.4.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9"
|
|
|
|
dependencies = [
|
|
|
|
"arbitrary",
|
|
|
|
"num-integer",
|
|
|
|
"num-traits",
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "num-complex"
|
|
|
|
version = "0.4.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
|
|
|
|
dependencies = [
|
|
|
|
"num-traits",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "num-conv"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "num-integer"
|
|
|
|
version = "0.1.46"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
|
|
|
|
dependencies = [
|
|
|
|
"num-traits",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "num-rational"
|
|
|
|
version = "0.4.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824"
|
|
|
|
dependencies = [
|
|
|
|
"num-bigint",
|
|
|
|
"num-integer",
|
|
|
|
"num-traits",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "num-traits"
|
|
|
|
version = "0.2.19"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
|
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "num_cpus"
|
|
|
|
version = "1.16.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
|
|
|
|
dependencies = [
|
|
|
|
"hermit-abi 0.3.9",
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
[[package]]
|
|
|
|
name = "num_enum"
|
|
|
|
version = "0.7.2"
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845"
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
dependencies = [
|
|
|
|
"num_enum_derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "num_enum_derive"
|
|
|
|
version = "0.7.2"
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b"
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
dependencies = [
|
|
|
|
"proc-macro-crate",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "num_threads"
|
|
|
|
version = "0.1.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9"
|
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "object"
|
|
|
|
version = "0.32.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
|
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "once_cell"
|
|
|
|
version = "1.19.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
|
|
|
|
dependencies = [
|
|
|
|
"critical-section",
|
|
|
|
"portable-atomic",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "oorandom"
|
|
|
|
version = "11.1.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "openssl-probe"
|
|
|
|
version = "0.1.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "openssl-sys"
|
|
|
|
version = "0.9.102"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
|
|
|
|
dependencies = [
|
|
|
|
"cc",
|
|
|
|
"libc",
|
|
|
|
"pkg-config",
|
|
|
|
"vcpkg",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "owo-colors"
|
|
|
|
version = "3.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "parking"
|
|
|
|
version = "2.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "parking_lot"
|
|
|
|
version = "0.12.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27"
|
|
|
|
dependencies = [
|
|
|
|
"lock_api",
|
|
|
|
"parking_lot_core",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "parking_lot_core"
|
|
|
|
version = "0.9.10"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"libc",
|
|
|
|
"redox_syscall",
|
|
|
|
"smallvec",
|
|
|
|
"windows-targets 0.52.5",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "paste"
|
|
|
|
version = "1.0.15"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "percent-encoding"
|
|
|
|
version = "2.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "perf-event-open-sys"
|
|
|
|
version = "3.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b29be2ba35c12c6939f6bc73187f728bba82c3c062ecdc5fa90ea739282a1f58"
|
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "phf"
|
|
|
|
version = "0.11.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc"
|
|
|
|
dependencies = [
|
|
|
|
"phf_macros",
|
|
|
|
"phf_shared",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "phf_generator"
|
|
|
|
version = "0.11.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0"
|
|
|
|
dependencies = [
|
|
|
|
"phf_shared",
|
|
|
|
"rand",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "phf_macros"
|
|
|
|
version = "0.11.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b"
|
|
|
|
dependencies = [
|
|
|
|
"phf_generator",
|
|
|
|
"phf_shared",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "phf_shared"
|
|
|
|
version = "0.11.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b"
|
|
|
|
dependencies = [
|
|
|
|
"siphasher",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pin-project"
|
|
|
|
version = "1.1.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
|
|
|
|
dependencies = [
|
|
|
|
"pin-project-internal",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pin-project-internal"
|
|
|
|
version = "1.1.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pin-project-lite"
|
|
|
|
version = "0.2.14"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pin-utils"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "piper"
|
|
|
|
version = "0.2.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ae1d5c74c9876f070d3e8fd503d748c7d974c3e48da8f41350fa5222ef9b4391"
|
|
|
|
dependencies = [
|
|
|
|
"atomic-waker",
|
|
|
|
"fastrand 2.1.0",
|
|
|
|
"futures-io",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pkg-config"
|
|
|
|
version = "0.3.30"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "plotters"
|
|
|
|
version = "0.3.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a15b6eccb8484002195a3e44fe65a4ce8e93a625797a063735536fd59cb01cf3"
|
|
|
|
dependencies = [
|
|
|
|
"num-traits",
|
|
|
|
"plotters-backend",
|
|
|
|
"plotters-svg",
|
|
|
|
"wasm-bindgen",
|
|
|
|
"web-sys",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "plotters-backend"
|
|
|
|
version = "0.3.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "414cec62c6634ae900ea1c56128dfe87cf63e7caece0852ec76aba307cebadb7"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "plotters-svg"
|
|
|
|
version = "0.3.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "81b30686a7d9c3e010b84284bdd26a29f2138574f52f5eb6f794fc0ad924e705"
|
|
|
|
dependencies = [
|
|
|
|
"plotters-backend",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "polling"
|
|
|
|
version = "2.8.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce"
|
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
"bitflags 1.3.2",
|
|
|
|
"cfg-if",
|
|
|
|
"concurrent-queue",
|
|
|
|
"libc",
|
|
|
|
"log",
|
|
|
|
"pin-project-lite",
|
|
|
|
"windows-sys 0.48.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "polling"
|
|
|
|
version = "3.7.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a3ed00ed3fbf728b5816498ecd316d1716eecaced9c0c8d2c5a6740ca214985b"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"concurrent-queue",
|
|
|
|
"hermit-abi 0.4.0",
|
|
|
|
"pin-project-lite",
|
|
|
|
"rustix",
|
|
|
|
"tracing",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "pollster"
|
|
|
|
version = "0.3.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "22686f4785f02a4fcc856d3b3bb19bf6c8160d103f7a99cc258bddd0251dc7f2"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "portable-atomic"
|
|
|
|
version = "1.7.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "postcard"
|
|
|
|
version = "1.0.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a55c51ee6c0db07e68448e336cf8ea4131a620edefebf9893e759b2d793420f8"
|
|
|
|
dependencies = [
|
|
|
|
"cobs",
|
|
|
|
"embedded-io",
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "powerfmt"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ppv-lite86"
|
|
|
|
version = "0.2.17"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
|
|
|
|
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
[[package]]
|
|
|
|
name = "proc-macro-crate"
|
|
|
|
version = "3.1.0"
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284"
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
dependencies = [
|
|
|
|
"toml_edit 0.21.1",
|
Make `JsSymbol` thread-safe (#2539)
The section about `Symbol` on the [specification](https://tc39.es/ecma262/#sec-ecmascript-language-types-symbol-type) says:
> The Symbol type is the set of all non-String values that may be used as the key of an Object property ([6.1.7](https://tc39.es/ecma262/#sec-object-type)).
Each possible Symbol value is unique and immutable.
Our previous implementation of `JsSymbol` used `Rc` and a thread local `Cell<usize>`. However, this meant that two different symbols in two different threads could share the same hash, making symbols not unique.
Also, the [GlobalSymbolRegistry](https://tc39.es/ecma262/#table-globalsymbolregistry-record-fields) is meant to be shared by all realms, including realms that are not in the same thread as the main one; this forces us to replace our current thread local global symbol registry with a thread-safe one that uses `DashMap` for concurrent access. However, the global symbol registry uses `JsString`s as keys and values, which forces us to either use `Vec<u16>` instead (wasteful and needs to allocate to convert to `JsString` on each access) or make `JsString` thread-safe with an atomic counter. For this reason, I implemented the second option.
This PR changes the following:
- Makes `JsSymbol` thread-safe by using Arc instead of Rc, and making `SYMBOL_HASH_COUNT` an `AtomicU64`.
- ~~Makes `JsString` thread-safe by using `AtomicUsize` instead of `Cell<usize>` for its ref count.~~ EDIT: Talked with @jasonwilliams and we decided to use `Box<[u16]>` for the global registry instead, because this won't penalize common usage of `JsString`, which is used a LOT more than `JsSymbol`.
- Makes the `GLOBAL_SYMBOL_REGISTRY` truly global, using `DashMap` as our global map that is shared by all threads.
- Replaces some thread locals with thread-safe alternatives, such as static arrays and static indices.
- Various improvements to all related code for this.
2 years ago
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "proc-macro2"
|
|
|
|
version = "1.0.86"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"
|
|
|
|
dependencies = [
|
|
|
|
"unicode-ident",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "quote"
|
|
|
|
version = "1.0.36"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand"
|
|
|
|
version = "0.8.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
|
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
"rand_chacha",
|
|
|
|
"rand_core",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand_chacha"
|
|
|
|
version = "0.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
|
|
|
|
dependencies = [
|
|
|
|
"ppv-lite86",
|
|
|
|
"rand_core",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rand_core"
|
|
|
|
version = "0.6.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
|
|
|
dependencies = [
|
|
|
|
"getrandom",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rawpointer"
|
|
|
|
version = "0.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rayon"
|
|
|
|
version = "1.10.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
|
|
|
|
dependencies = [
|
|
|
|
"either",
|
|
|
|
"rayon-core",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rayon-core"
|
|
|
|
version = "1.12.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
|
|
|
|
dependencies = [
|
|
|
|
"crossbeam-deque",
|
|
|
|
"crossbeam-utils",
|
|
|
|
]
|
|
|
|
|
Initial version of a JS -> Rust conversion trait. (#2276)
This Pull Request closes #1975. It's still a work in progress, but tries to go in that direction.
It changes the following:
- Adds a new `TryFromJs` trait, that can be derived using a new `boa_derive` crate.
- Adds a new `try_js_into()` function that, similarly to the standard library `TryInto` trait
Things to think about:
- Should the `boa_derive` crate be re-exported in `boa_engine` using a `derive` feature, similar to how it's done in `serde`?
- The current implementation only converts perfectly valid values. So, if we try to convert a big integer into an `i8`, or any floating point number to an `f32`. So, you cannot derive `TryFromJs` for structures that contain an `f32` for example (you can still manually implement the trait, though, and decide in favour of a loss of precision). Should we also provide some traits for transparent loss of precision?
- Currently, you cannot convert between types, so if the JS struct has an integer, you cannot cast it to a boolean, for example. Should we provide a `TryConvertJs` trait, for example to force conversions?
- Currently we only have basic types and object conversions. Should add `Array` to `Vec` conversion, for example, right? Should we also add `TypedArray` conversions? What about `Map` and `Set`? Does this step over the fine grained APIs that we were creating?
Note that this still requires a bunch of documentation, tests, and validation from the dev team and from the users that requested this feature. I'm particularly interested in @lastmjs's thoughts on this API.
I already added an usage example in `boa_examples/src/bin/derive.rs`.
Co-authored-by: jedel1043 <jedel0124@gmail.com>
2 years ago
|
|
|
[[package]]
|
|
|
|
name = "redox_syscall"
|
|
|
|
version = "0.5.2"
|
Initial version of a JS -> Rust conversion trait. (#2276)
This Pull Request closes #1975. It's still a work in progress, but tries to go in that direction.
It changes the following:
- Adds a new `TryFromJs` trait, that can be derived using a new `boa_derive` crate.
- Adds a new `try_js_into()` function that, similarly to the standard library `TryInto` trait
Things to think about:
- Should the `boa_derive` crate be re-exported in `boa_engine` using a `derive` feature, similar to how it's done in `serde`?
- The current implementation only converts perfectly valid values. So, if we try to convert a big integer into an `i8`, or any floating point number to an `f32`. So, you cannot derive `TryFromJs` for structures that contain an `f32` for example (you can still manually implement the trait, though, and decide in favour of a loss of precision). Should we also provide some traits for transparent loss of precision?
- Currently, you cannot convert between types, so if the JS struct has an integer, you cannot cast it to a boolean, for example. Should we provide a `TryConvertJs` trait, for example to force conversions?
- Currently we only have basic types and object conversions. Should add `Array` to `Vec` conversion, for example, right? Should we also add `TypedArray` conversions? What about `Map` and `Set`? Does this step over the fine grained APIs that we were creating?
Note that this still requires a bunch of documentation, tests, and validation from the dev team and from the users that requested this feature. I'm particularly interested in @lastmjs's thoughts on this API.
I already added an usage example in `boa_examples/src/bin/derive.rs`.
Co-authored-by: jedel1043 <jedel0124@gmail.com>
2 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c82cf8cff14456045f55ec4241383baeff27af886adb72ffb2162f99911de0fd"
|
Initial version of a JS -> Rust conversion trait. (#2276)
This Pull Request closes #1975. It's still a work in progress, but tries to go in that direction.
It changes the following:
- Adds a new `TryFromJs` trait, that can be derived using a new `boa_derive` crate.
- Adds a new `try_js_into()` function that, similarly to the standard library `TryInto` trait
Things to think about:
- Should the `boa_derive` crate be re-exported in `boa_engine` using a `derive` feature, similar to how it's done in `serde`?
- The current implementation only converts perfectly valid values. So, if we try to convert a big integer into an `i8`, or any floating point number to an `f32`. So, you cannot derive `TryFromJs` for structures that contain an `f32` for example (you can still manually implement the trait, though, and decide in favour of a loss of precision). Should we also provide some traits for transparent loss of precision?
- Currently, you cannot convert between types, so if the JS struct has an integer, you cannot cast it to a boolean, for example. Should we provide a `TryConvertJs` trait, for example to force conversions?
- Currently we only have basic types and object conversions. Should add `Array` to `Vec` conversion, for example, right? Should we also add `TypedArray` conversions? What about `Map` and `Set`? Does this step over the fine grained APIs that we were creating?
Note that this still requires a bunch of documentation, tests, and validation from the dev team and from the users that requested this feature. I'm particularly interested in @lastmjs's thoughts on this API.
I already added an usage example in `boa_examples/src/bin/derive.rs`.
Co-authored-by: jedel1043 <jedel0124@gmail.com>
2 years ago
|
|
|
dependencies = [
|
|
|
|
"bitflags 2.6.0",
|
Initial version of a JS -> Rust conversion trait. (#2276)
This Pull Request closes #1975. It's still a work in progress, but tries to go in that direction.
It changes the following:
- Adds a new `TryFromJs` trait, that can be derived using a new `boa_derive` crate.
- Adds a new `try_js_into()` function that, similarly to the standard library `TryInto` trait
Things to think about:
- Should the `boa_derive` crate be re-exported in `boa_engine` using a `derive` feature, similar to how it's done in `serde`?
- The current implementation only converts perfectly valid values. So, if we try to convert a big integer into an `i8`, or any floating point number to an `f32`. So, you cannot derive `TryFromJs` for structures that contain an `f32` for example (you can still manually implement the trait, though, and decide in favour of a loss of precision). Should we also provide some traits for transparent loss of precision?
- Currently, you cannot convert between types, so if the JS struct has an integer, you cannot cast it to a boolean, for example. Should we provide a `TryConvertJs` trait, for example to force conversions?
- Currently we only have basic types and object conversions. Should add `Array` to `Vec` conversion, for example, right? Should we also add `TypedArray` conversions? What about `Map` and `Set`? Does this step over the fine grained APIs that we were creating?
Note that this still requires a bunch of documentation, tests, and validation from the dev team and from the users that requested this feature. I'm particularly interested in @lastmjs's thoughts on this API.
I already added an usage example in `boa_examples/src/bin/derive.rs`.
Co-authored-by: jedel1043 <jedel0124@gmail.com>
2 years ago
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "regex"
|
|
|
|
version = "1.10.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f"
|
|
|
|
dependencies = [
|
|
|
|
"aho-corasick",
|
|
|
|
"memchr",
|
|
|
|
"regex-automata 0.4.7",
|
|
|
|
"regex-syntax 0.8.4",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "regex-automata"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e9368763f5a9b804326f3af749e16f9abf378d227bcdee7634b13d8f17793782"
|
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
Bump regex from 1.7.3 to 1.8.0 (#2855)
Bumps [regex](https://github.com/rust-lang/regex) from 1.7.3 to 1.8.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/rust-lang/regex/blob/master/CHANGELOG.md">regex's changelog</a>.</em></p>
<blockquote>
<h1>1.8.0 (2023-04-20)</h1>
<p>This is a sizeable release that will be soon followed by another sizeable
release. Both of them will combined close over 40 existing issues and PRs.</p>
<p>This first release, despite its size, essentially represent preparatory work
for the second release, which will be even bigger. Namely, this release:</p>
<ul>
<li>Increases the MSRV to Rust 1.60.0, which was released about 1 year ago.</li>
<li>Upgrades its dependency on <code>aho-corasick</code> to the recently release 1.0
version.</li>
<li>Upgrades its dependency on <code>regex-syntax</code> to the simultaneously released
<code>0.7</code> version. The changes to <code>regex-syntax</code> principally revolve around a
rewrite of its literal extraction code and a number of simplifications and
optimizations to its high-level intermediate representation (HIR).</li>
</ul>
<p>The second release, which will follow ~shortly after the release above, will
contain a soup-to-nuts rewrite of every regex engine. This will be done by
bringing <a href="https://github.com/BurntSushi/regex-automata"><code>regex-automata</code></a> into
this repository, and then changing the <code>regex</code> crate to be nothing but an API
shim layer on top of <code>regex-automata</code>'s API.</p>
<p>These tandem releases are the culmination of about 3
years of on-and-off work that <a href="https://redirect.github.com/rust-lang/regex/issues/656">began in earnest in March
2020</a>.</p>
<p>Because of the scale of changes involved in these releases, I would love to
hear about your experience. Especially if you notice undocumented changes in
behavior or performance changes (positive <em>or</em> negative).</p>
<p>Most changes in the first release are listed below. For more details, please
see the commit log, which reflects a linear and decently documented history
of all changes.</p>
<p>New features:</p>
<ul>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/501">#501</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/501">rust-lang/regex#501</a>):
Permit many more characters to be escaped, even if they have no significance.
More specifically, any ASCII character except for <code>[0-9A-Za-z<>]</code> can now be
escaped. Also, a new routine, <code>is_escapeable_character</code>, has been added to
<code>regex-syntax</code> to query whether a character is escapeable or not.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/547">#547</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/547">rust-lang/regex#547</a>):
Add <code>Regex::captures_at</code>. This filles a hole in the API, but doesn't otherwise
introduce any new expressive power.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/595">#595</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/595">rust-lang/regex#595</a>):
Capture group names are now Unicode-aware. They can now begin with either a <code>_</code>
or any "alphabetic" codepoint. After the first codepoint, subsequent codepoints
can be any sequence of alpha-numeric codepoints, along with <code>_</code>, <code>.</code>, <code>[</code> and
<code>]</code>. Note that replacement syntax has not changed.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/810">#810</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/810">rust-lang/regex#810</a>):</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/rust-lang/regex/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=regex&package-manager=cargo&previous-version=1.7.3&new-version=1.8.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
2 years ago
|
|
|
"regex-syntax 0.6.29",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "regex-automata"
|
|
|
|
version = "0.4.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df"
|
|
|
|
dependencies = [
|
|
|
|
"aho-corasick",
|
|
|
|
"memchr",
|
|
|
|
"regex-syntax 0.8.4",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "regex-syntax"
|
|
|
|
version = "0.6.29"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
|
|
|
|
|
Bump regex from 1.7.3 to 1.8.0 (#2855)
Bumps [regex](https://github.com/rust-lang/regex) from 1.7.3 to 1.8.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/rust-lang/regex/blob/master/CHANGELOG.md">regex's changelog</a>.</em></p>
<blockquote>
<h1>1.8.0 (2023-04-20)</h1>
<p>This is a sizeable release that will be soon followed by another sizeable
release. Both of them will combined close over 40 existing issues and PRs.</p>
<p>This first release, despite its size, essentially represent preparatory work
for the second release, which will be even bigger. Namely, this release:</p>
<ul>
<li>Increases the MSRV to Rust 1.60.0, which was released about 1 year ago.</li>
<li>Upgrades its dependency on <code>aho-corasick</code> to the recently release 1.0
version.</li>
<li>Upgrades its dependency on <code>regex-syntax</code> to the simultaneously released
<code>0.7</code> version. The changes to <code>regex-syntax</code> principally revolve around a
rewrite of its literal extraction code and a number of simplifications and
optimizations to its high-level intermediate representation (HIR).</li>
</ul>
<p>The second release, which will follow ~shortly after the release above, will
contain a soup-to-nuts rewrite of every regex engine. This will be done by
bringing <a href="https://github.com/BurntSushi/regex-automata"><code>regex-automata</code></a> into
this repository, and then changing the <code>regex</code> crate to be nothing but an API
shim layer on top of <code>regex-automata</code>'s API.</p>
<p>These tandem releases are the culmination of about 3
years of on-and-off work that <a href="https://redirect.github.com/rust-lang/regex/issues/656">began in earnest in March
2020</a>.</p>
<p>Because of the scale of changes involved in these releases, I would love to
hear about your experience. Especially if you notice undocumented changes in
behavior or performance changes (positive <em>or</em> negative).</p>
<p>Most changes in the first release are listed below. For more details, please
see the commit log, which reflects a linear and decently documented history
of all changes.</p>
<p>New features:</p>
<ul>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/501">#501</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/501">rust-lang/regex#501</a>):
Permit many more characters to be escaped, even if they have no significance.
More specifically, any ASCII character except for <code>[0-9A-Za-z<>]</code> can now be
escaped. Also, a new routine, <code>is_escapeable_character</code>, has been added to
<code>regex-syntax</code> to query whether a character is escapeable or not.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/547">#547</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/547">rust-lang/regex#547</a>):
Add <code>Regex::captures_at</code>. This filles a hole in the API, but doesn't otherwise
introduce any new expressive power.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/595">#595</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/595">rust-lang/regex#595</a>):
Capture group names are now Unicode-aware. They can now begin with either a <code>_</code>
or any "alphabetic" codepoint. After the first codepoint, subsequent codepoints
can be any sequence of alpha-numeric codepoints, along with <code>_</code>, <code>.</code>, <code>[</code> and
<code>]</code>. Note that replacement syntax has not changed.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/810">#810</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/810">rust-lang/regex#810</a>):</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/rust-lang/regex/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=regex&package-manager=cargo&previous-version=1.7.3&new-version=1.8.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
2 years ago
|
|
|
[[package]]
|
|
|
|
name = "regex-syntax"
|
|
|
|
version = "0.8.4"
|
Bump regex from 1.7.3 to 1.8.0 (#2855)
Bumps [regex](https://github.com/rust-lang/regex) from 1.7.3 to 1.8.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/rust-lang/regex/blob/master/CHANGELOG.md">regex's changelog</a>.</em></p>
<blockquote>
<h1>1.8.0 (2023-04-20)</h1>
<p>This is a sizeable release that will be soon followed by another sizeable
release. Both of them will combined close over 40 existing issues and PRs.</p>
<p>This first release, despite its size, essentially represent preparatory work
for the second release, which will be even bigger. Namely, this release:</p>
<ul>
<li>Increases the MSRV to Rust 1.60.0, which was released about 1 year ago.</li>
<li>Upgrades its dependency on <code>aho-corasick</code> to the recently release 1.0
version.</li>
<li>Upgrades its dependency on <code>regex-syntax</code> to the simultaneously released
<code>0.7</code> version. The changes to <code>regex-syntax</code> principally revolve around a
rewrite of its literal extraction code and a number of simplifications and
optimizations to its high-level intermediate representation (HIR).</li>
</ul>
<p>The second release, which will follow ~shortly after the release above, will
contain a soup-to-nuts rewrite of every regex engine. This will be done by
bringing <a href="https://github.com/BurntSushi/regex-automata"><code>regex-automata</code></a> into
this repository, and then changing the <code>regex</code> crate to be nothing but an API
shim layer on top of <code>regex-automata</code>'s API.</p>
<p>These tandem releases are the culmination of about 3
years of on-and-off work that <a href="https://redirect.github.com/rust-lang/regex/issues/656">began in earnest in March
2020</a>.</p>
<p>Because of the scale of changes involved in these releases, I would love to
hear about your experience. Especially if you notice undocumented changes in
behavior or performance changes (positive <em>or</em> negative).</p>
<p>Most changes in the first release are listed below. For more details, please
see the commit log, which reflects a linear and decently documented history
of all changes.</p>
<p>New features:</p>
<ul>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/501">#501</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/501">rust-lang/regex#501</a>):
Permit many more characters to be escaped, even if they have no significance.
More specifically, any ASCII character except for <code>[0-9A-Za-z<>]</code> can now be
escaped. Also, a new routine, <code>is_escapeable_character</code>, has been added to
<code>regex-syntax</code> to query whether a character is escapeable or not.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/547">#547</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/547">rust-lang/regex#547</a>):
Add <code>Regex::captures_at</code>. This filles a hole in the API, but doesn't otherwise
introduce any new expressive power.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/595">#595</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/595">rust-lang/regex#595</a>):
Capture group names are now Unicode-aware. They can now begin with either a <code>_</code>
or any "alphabetic" codepoint. After the first codepoint, subsequent codepoints
can be any sequence of alpha-numeric codepoints, along with <code>_</code>, <code>.</code>, <code>[</code> and
<code>]</code>. Note that replacement syntax has not changed.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/810">#810</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/810">rust-lang/regex#810</a>):</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/rust-lang/regex/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=regex&package-manager=cargo&previous-version=1.7.3&new-version=1.8.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
2 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b"
|
Bump regex from 1.7.3 to 1.8.0 (#2855)
Bumps [regex](https://github.com/rust-lang/regex) from 1.7.3 to 1.8.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/rust-lang/regex/blob/master/CHANGELOG.md">regex's changelog</a>.</em></p>
<blockquote>
<h1>1.8.0 (2023-04-20)</h1>
<p>This is a sizeable release that will be soon followed by another sizeable
release. Both of them will combined close over 40 existing issues and PRs.</p>
<p>This first release, despite its size, essentially represent preparatory work
for the second release, which will be even bigger. Namely, this release:</p>
<ul>
<li>Increases the MSRV to Rust 1.60.0, which was released about 1 year ago.</li>
<li>Upgrades its dependency on <code>aho-corasick</code> to the recently release 1.0
version.</li>
<li>Upgrades its dependency on <code>regex-syntax</code> to the simultaneously released
<code>0.7</code> version. The changes to <code>regex-syntax</code> principally revolve around a
rewrite of its literal extraction code and a number of simplifications and
optimizations to its high-level intermediate representation (HIR).</li>
</ul>
<p>The second release, which will follow ~shortly after the release above, will
contain a soup-to-nuts rewrite of every regex engine. This will be done by
bringing <a href="https://github.com/BurntSushi/regex-automata"><code>regex-automata</code></a> into
this repository, and then changing the <code>regex</code> crate to be nothing but an API
shim layer on top of <code>regex-automata</code>'s API.</p>
<p>These tandem releases are the culmination of about 3
years of on-and-off work that <a href="https://redirect.github.com/rust-lang/regex/issues/656">began in earnest in March
2020</a>.</p>
<p>Because of the scale of changes involved in these releases, I would love to
hear about your experience. Especially if you notice undocumented changes in
behavior or performance changes (positive <em>or</em> negative).</p>
<p>Most changes in the first release are listed below. For more details, please
see the commit log, which reflects a linear and decently documented history
of all changes.</p>
<p>New features:</p>
<ul>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/501">#501</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/501">rust-lang/regex#501</a>):
Permit many more characters to be escaped, even if they have no significance.
More specifically, any ASCII character except for <code>[0-9A-Za-z<>]</code> can now be
escaped. Also, a new routine, <code>is_escapeable_character</code>, has been added to
<code>regex-syntax</code> to query whether a character is escapeable or not.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/547">#547</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/547">rust-lang/regex#547</a>):
Add <code>Regex::captures_at</code>. This filles a hole in the API, but doesn't otherwise
introduce any new expressive power.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/595">#595</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/595">rust-lang/regex#595</a>):
Capture group names are now Unicode-aware. They can now begin with either a <code>_</code>
or any "alphabetic" codepoint. After the first codepoint, subsequent codepoints
can be any sequence of alpha-numeric codepoints, along with <code>_</code>, <code>.</code>, <code>[</code> and
<code>]</code>. Note that replacement syntax has not changed.</li>
<li>[FEATURE <a href="https://redirect.github.com/rust-lang/regex/issues/810">#810</a>](<a href="https://redirect.github.com/rust-lang/regex/issues/810">rust-lang/regex#810</a>):</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/rust-lang/regex/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=regex&package-manager=cargo&previous-version=1.7.3&new-version=1.8.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
2 years ago
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "regress"
|
|
|
|
version = "0.10.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "16fe0a24af5daaae947294213d2fd2646fbf5e1fbacc1d4ba3e84b2393854842"
|
|
|
|
dependencies = [
|
|
|
|
"hashbrown",
|
|
|
|
"memchr",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ring"
|
|
|
|
version = "0.17.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
|
|
|
|
dependencies = [
|
|
|
|
"cc",
|
|
|
|
"cfg-if",
|
|
|
|
"getrandom",
|
|
|
|
"libc",
|
|
|
|
"spin",
|
|
|
|
"untrusted",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc-demangle"
|
|
|
|
version = "0.1.24"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc-hash"
|
|
|
|
version = "1.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustc-hash"
|
|
|
|
version = "2.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustix"
|
|
|
|
version = "0.38.34"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 2.6.0",
|
|
|
|
"errno",
|
|
|
|
"libc",
|
|
|
|
"linux-raw-sys",
|
|
|
|
"windows-sys 0.52.0",
|
Lexer string interning (#1758)
This Pull Request is part of #279.
It adds a string interner to Boa, which allows many types to not contain heap-allocated strings, and just contain a `NonZeroUsize` instead. This can move types to the stack (hopefully I'll be able to move `Token`, for example, maybe some `Node` types too.
Note that the internet is for now only available in the lexer. Next steps (in this PR or future ones) would include also using interning in the parser, and finally in execution. The idea is that strings should be represented with a `Sym` until they are displayed.
Talking about display. I have changed the `ParseError` type in order to not contain anything that could contain a `Sym` (basically tokens), which might be a bit faster, but what is important is that we don't depend on the interner when displaying errors.
The issue I have now is in order to display tokens. This requires the interner if we want to know identifiers, for example. The issue here is that Rust doesn't allow using a `fmt::Formatter` (only in nightly), which is making my head hurt. Maybe someone of you can find a better way of doing this.
Then, about `cursor.expect()`, this is the only place where we don't have the expected token type as a static string, so it's failing to compile. We have the option of changing the type definition of `ParseError` to contain an owned string, but maybe we can avoid this by having a `&'static str` come from a `TokenKind` with the default values, such as "identifier" for an identifier. I wanted for you to think about it and maybe we can just add that and avoid allocations there.
Oh, and this depends on the VM-only branch, so that has to be merged before :)
Another thing to check: should the interner be in its own module?
3 years ago
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustls"
|
|
|
|
version = "0.22.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
|
|
|
|
dependencies = [
|
|
|
|
"log",
|
|
|
|
"ring",
|
|
|
|
"rustls-pki-types",
|
|
|
|
"rustls-webpki",
|
|
|
|
"subtle",
|
|
|
|
"zeroize",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustls-pki-types"
|
|
|
|
version = "1.7.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustls-webpki"
|
|
|
|
version = "0.102.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ff448f7e92e913c4b7d4c6d8e4540a1724b319b4152b8aef6d4cf8339712b33e"
|
|
|
|
dependencies = [
|
|
|
|
"ring",
|
|
|
|
"rustls-pki-types",
|
|
|
|
"untrusted",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustversion"
|
|
|
|
version = "1.0.17"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustyline"
|
|
|
|
version = "14.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7803e8936da37efd9b6d4478277f4b2b9bb5cdb37a113e8d63222e58da647e63"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 2.6.0",
|
|
|
|
"cfg-if",
|
|
|
|
"clipboard-win",
|
|
|
|
"fd-lock",
|
|
|
|
"libc",
|
|
|
|
"log",
|
|
|
|
"memchr",
|
|
|
|
"nix",
|
|
|
|
"rustyline-derive",
|
|
|
|
"unicode-segmentation",
|
|
|
|
"unicode-width",
|
|
|
|
"utf8parse",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "rustyline-derive"
|
|
|
|
version = "0.10.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e5af959c8bf6af1aff6d2b463a57f71aae53d1332da58419e30ad8dc7011d951"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ryu"
|
|
|
|
version = "1.0.18"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ryu-js"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ad97d4ce1560a5e27cec89519dc8300d1aa6035b099821261c651486a19e44d5"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "same-file"
|
|
|
|
version = "1.0.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
|
|
|
|
dependencies = [
|
|
|
|
"winapi-util",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "schannel"
|
|
|
|
version = "0.1.23"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
|
|
|
|
dependencies = [
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "scoped-tls"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "scopeguard"
|
|
|
|
version = "1.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "scripts"
|
|
|
|
version = "0.0.0"
|
|
|
|
dependencies = [
|
|
|
|
"cargo_metadata",
|
|
|
|
"log",
|
|
|
|
"simple_logger",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "semver"
|
|
|
|
version = "1.0.23"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde"
|
|
|
|
version = "1.0.204"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12"
|
|
|
|
dependencies = [
|
|
|
|
"serde_derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde-aux"
|
|
|
|
version = "4.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0d2e8bfba469d06512e11e3311d4d051a4a387a5b42d010404fecf3200321c95"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_derive"
|
|
|
|
version = "1.0.204"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_json"
|
|
|
|
version = "1.0.120"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4e0d21c9a8cae1235ad58a00c11cb40d4b1e5c784f1ef2c537876ed6ffd8b7c5"
|
|
|
|
dependencies = [
|
|
|
|
"itoa",
|
|
|
|
"ryu",
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_repr"
|
|
|
|
version = "0.1.19"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_spanned"
|
|
|
|
version = "0.6.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "serde_yaml"
|
|
|
|
version = "0.9.34+deprecated"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47"
|
|
|
|
dependencies = [
|
|
|
|
"indexmap",
|
|
|
|
"itoa",
|
|
|
|
"ryu",
|
|
|
|
"serde",
|
Bump serde_yaml from 0.8.26 to 0.9.0 (#2207)
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.8.26 to 0.9.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/serde-yaml/releases">serde_yaml's releases</a>.</em></p>
<blockquote>
<h2>0.9.0</h2>
<p><em>API documentation: <a href="https://docs.rs/serde_yaml/0.9">https://docs.rs/serde_yaml/0.9</a></em></p>
<h3>Highlights</h3>
<ul>
<li>
<p>The <code>serde_yaml::Value</code> enum gains a <code>Tagged</code> variant which represents the deserialization of YAML's <code>!Tag</code> syntax. Tagged scalars, sequences, and mappings are all supported.</p>
</li>
<li>
<p>An empty YAML input (or document containing only comments) will deserialize successfully to an empty map, empty sequence, or Serde struct as long as the struct has only optional fields. Previously this would error.</p>
</li>
<li>
<p>A new <code>.apply_merge()</code> method on <code>Value</code> implements YAML's <code><<</code> merge key convention.</p>
</li>
<li>
<p>The <code>Debug</code> representation of <code>serde_yaml::Value</code> has gotten vastly better (<a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/pull/287">dtolnay/serde-yaml#287</a>).</p>
</li>
<li>
<p>Deserialization of borrowed strings now works.</p>
<pre lang="rust"><code>#[derive(Deserialize, Debug)]
struct Struct<'a> {
borrowed: &'a str,
}
<p>let yaml = "borrowed: 'kölcsönzött'\n";
let value: Struct = serde_yaml::from_str(yaml)?;
println!("{:#?}", value);
</code></pre></p>
</li>
<li>
<p><code>Value</code>'s and <code>Mapping</code>'s methods <code>get</code> and <code>get_mut</code> have been generalized to support a &str argument, as opposed to requiring you to allocate and construct a <code>Value::String</code> for indexing into another existing <code>Value</code>.</p>
</li>
<li>
<p><code>Mapping</code> exposes more APIs that have become conventional on map data structures, such as <code>.keys()</code>, <code>.values()</code>, <code>.into_keys()</code>, <code>.into_values()</code>, <code>.values_mut()</code>, and <code>.retain(|k, v| …)</code>.</p>
</li>
</ul>
<h3>Breaking changes</h3>
<ul>
<li>
<p>Serialization no longer produces leading <code>---\n</code> on the serialized output. You can prepend this yourself if your use case demands it.</p>
</li>
<li>
<p>Serialization of enum variants is now based on YAML's <code>!Tag</code> syntax, rather than JSON-style singleton maps.</p>
<pre lang="rust"><code>#[derive(Serialize, Deserialize)]
enum Enum {
Newtype(usize),
Tuple(usize, usize, usize),
Struct { x: f64, y: f64 },
}
</code></pre>
<pre lang="yaml"><code>- !Newtype 1
- !Tuple [0, 0, 0]
- !Struct {x: 1.0, y: 2.0}
</code></pre>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/dtolnay/serde-yaml/commit/4167a958bb3c3f0c96028a72889e144d483cec3c"><code>4167a95</code></a> Release 0.9.0</li>
<li><a href="https://github.com/dtolnay/serde-yaml/commit/f2ef1422d738436a0ae5e0b5d97da416e576fb00"><code>f2ef142</code></a> Update readme to cover enums</li>
<li><a href="https://github.com/dtolnay/serde-yaml/commit/040f0a0d7006a67aa9c30a0fde6d91b35c62af86"><code>040f0a0</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/291">#291</a> from dtolnay/tovec</li>
<li><a href="https://github.com/dtolnay/serde-yaml/commit/2c0c5f2f2122b50cc712b74d4696bcf0e5d86d44"><code>2c0c5f2</code></a> Remove serde_yaml::to_vec</li>
<li><a href="https://github.com/dtolnay/serde-yaml/commit/d9f74428d5720d0cf5b72ad1ca490e3e135982fb"><code>d9f7442</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/dtolnay/serde-yaml/issues/290">#290</a> from dtolnay/seed</li>
<li><a href="https://github.com/dtolnay/serde-yaml/commit/ec88cd79655901b9c8510969fa38acb36069ad86"><code>ec88cd7</code></a> Remove seed module and functions</li>
<li><a href="https://github.com/dtolnay/serde-yaml/commit/33caf060eac7d71cfaa0bae70efa44228c05d6e8"><code>33caf06</code></a> Document Value::Tagged</li>
<li><a href="https://github.com/dtolnay/serde-yaml/commit/895ddf9ac99f2b1333582e0dd1396ca79d874a8a"><code>895ddf9</code></a> Document enum representations</li>
<li><a href="https://github.com/dtolnay/serde-yaml/commit/728df48d8229c7eeeaa3b39c0faad65ccf027315"><code>728df48</code></a> Improve more Debug representations</li>
<li><a href="https://github.com/dtolnay/serde-yaml/commit/92a9bdb56348a7cbd137721f6035c10418d8cf90"><code>92a9bdb</code></a> Support unit variant nested inside another enum</li>
<li>Additional commits viewable in <a href="https://github.com/dtolnay/serde-yaml/compare/0.8.26...0.9.0">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde_yaml&package-manager=cargo&previous-version=0.8.26&new-version=0.9.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
2 years ago
|
|
|
"unsafe-libyaml",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "sharded-slab"
|
|
|
|
version = "0.1.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
|
|
|
|
dependencies = [
|
|
|
|
"lazy_static",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "signal-hook-registry"
|
|
|
|
version = "1.4.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
|
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "simple_logger"
|
|
|
|
version = "5.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e8c5dfa5e08767553704aa0ffd9d9794d527103c736aba9854773851fd7497eb"
|
|
|
|
dependencies = [
|
|
|
|
"colored",
|
|
|
|
"log",
|
|
|
|
"time",
|
|
|
|
"windows-sys 0.48.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "siphasher"
|
|
|
|
version = "0.3.11"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "slab"
|
|
|
|
version = "0.4.9"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
|
|
|
|
dependencies = [
|
|
|
|
"autocfg",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "sluice"
|
|
|
|
version = "0.5.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6d7400c0eff44aa2fcb5e31a5f24ba9716ed90138769e4977a2ba6014ae63eb5"
|
|
|
|
dependencies = [
|
|
|
|
"async-channel 1.9.0",
|
|
|
|
"futures-core",
|
|
|
|
"futures-io",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "smallvec"
|
|
|
|
version = "1.13.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "smawk"
|
|
|
|
version = "0.3.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "smol"
|
|
|
|
version = "2.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e635339259e51ef85ac7aa29a1cd991b957047507288697a690e80ab97d07cad"
|
|
|
|
dependencies = [
|
|
|
|
"async-channel 2.3.1",
|
|
|
|
"async-executor",
|
|
|
|
"async-fs",
|
|
|
|
"async-io",
|
|
|
|
"async-lock",
|
|
|
|
"async-net",
|
|
|
|
"async-process",
|
|
|
|
"blocking",
|
|
|
|
"futures-lite 2.3.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "socket2"
|
|
|
|
version = "0.5.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
|
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "spin"
|
|
|
|
version = "0.9.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "sptr"
|
|
|
|
version = "0.3.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3b9b39299b249ad65f3b7e96443bad61c02ca5cd3589f46cb6d610a0fd6c0d6a"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "stable_deref_trait"
|
|
|
|
version = "1.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "static_assertions"
|
|
|
|
version = "1.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "strsim"
|
|
|
|
version = "0.11.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "strum"
|
|
|
|
version = "0.26.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "strum_macros"
|
|
|
|
version = "0.26.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be"
|
|
|
|
dependencies = [
|
|
|
|
"heck",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"rustversion",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "subtle"
|
|
|
|
version = "2.6.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "syn"
|
|
|
|
version = "2.0.72"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"unicode-ident",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "synstructure"
|
|
|
|
version = "0.13.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "sys-locale"
|
|
|
|
version = "0.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e801cf239ecd6ccd71f03d270d67dd53d13e90aab208bf4b8fe4ad957ea949b0"
|
|
|
|
dependencies = [
|
|
|
|
"libc",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tap"
|
|
|
|
version = "1.0.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "temporal_rs"
|
|
|
|
version = "0.0.3"
|
|
|
|
source = "git+https://github.com/boa-dev/temporal.git?rev=8ef18fedc401761875b815a692443bf54ce9bd96#8ef18fedc401761875b815a692443bf54ce9bd96"
|
|
|
|
dependencies = [
|
|
|
|
"bitflags 2.6.0",
|
|
|
|
"icu_calendar",
|
|
|
|
"ixdtf",
|
|
|
|
"num-bigint",
|
|
|
|
"num-traits",
|
|
|
|
"rustc-hash 2.0.0",
|
|
|
|
"tinystr",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "termcolor"
|
|
|
|
version = "1.4.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
|
|
|
|
dependencies = [
|
|
|
|
"winapi-util",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "test-case"
|
|
|
|
version = "3.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "eb2550dd13afcd286853192af8601920d959b14c401fcece38071d53bf0768a8"
|
|
|
|
dependencies = [
|
|
|
|
"test-case-macros",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "test-case-core"
|
|
|
|
version = "3.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "adcb7fd841cd518e279be3d5a3eb0636409487998a4aff22f3de87b81e88384f"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "test-case-macros"
|
|
|
|
version = "3.3.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5c89e72a01ed4c579669add59014b9a524d609c0c88c6a585ce37485879f6ffb"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
"test-case-core",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "textwrap"
|
|
|
|
version = "0.16.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9"
|
|
|
|
dependencies = [
|
|
|
|
"smawk",
|
|
|
|
"unicode-linebreak",
|
|
|
|
"unicode-width",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "thin-vec"
|
|
|
|
version = "0.2.13"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a38c90d48152c236a3ab59271da4f4ae63d678c5d7ad6b7714d7cb9760be5e4b"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "thiserror"
|
|
|
|
version = "1.0.63"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724"
|
|
|
|
dependencies = [
|
|
|
|
"thiserror-impl",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "thiserror-impl"
|
|
|
|
version = "1.0.63"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "thousands"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3bf63baf9f5039dadc247375c29eb13706706cfde997d0330d05aa63a77d8820"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "thread_local"
|
|
|
|
version = "1.1.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"once_cell",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "time"
|
|
|
|
version = "0.3.36"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
|
|
|
|
dependencies = [
|
|
|
|
"deranged",
|
|
|
|
"itoa",
|
|
|
|
"js-sys",
|
|
|
|
"libc",
|
|
|
|
"num-conv",
|
|
|
|
"num_threads",
|
|
|
|
"powerfmt",
|
|
|
|
"serde",
|
|
|
|
"time-core",
|
|
|
|
"time-macros",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "time-core"
|
|
|
|
version = "0.1.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "time-macros"
|
|
|
|
version = "0.2.18"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
|
|
|
|
dependencies = [
|
|
|
|
"num-conv",
|
|
|
|
"time-core",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tinystr"
|
|
|
|
version = "0.7.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
"displaydoc",
|
|
|
|
"serde",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tinytemplate"
|
|
|
|
version = "1.2.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
"serde_json",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tinyvec"
|
|
|
|
version = "1.6.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c55115c6fbe2d2bef26eb09ad74bde02d8255476fc0c7b515ef09fbb35742d82"
|
|
|
|
dependencies = [
|
|
|
|
"tinyvec_macros",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tinyvec_macros"
|
|
|
|
version = "0.1.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "toml"
|
|
|
|
version = "0.5.11"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "toml"
|
|
|
|
version = "0.8.15"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ac2caab0bf757388c6c0ae23b3293fdb463fee59434529014f85e3263b995c28"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
"serde_spanned",
|
|
|
|
"toml_datetime",
|
|
|
|
"toml_edit 0.22.16",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "toml_datetime"
|
|
|
|
version = "0.6.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "toml_edit"
|
|
|
|
version = "0.21.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
|
|
|
|
dependencies = [
|
|
|
|
"indexmap",
|
|
|
|
"toml_datetime",
|
|
|
|
"winnow 0.5.40",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "toml_edit"
|
|
|
|
version = "0.22.16"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "278f3d518e152219c994ce877758516bca5e118eaed6996192a774fb9fbf0788"
|
|
|
|
dependencies = [
|
|
|
|
"indexmap",
|
|
|
|
"serde",
|
|
|
|
"serde_spanned",
|
|
|
|
"toml_datetime",
|
|
|
|
"winnow 0.6.13",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tracing"
|
|
|
|
version = "0.1.40"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
|
|
|
|
dependencies = [
|
|
|
|
"log",
|
|
|
|
"pin-project-lite",
|
|
|
|
"tracing-attributes",
|
|
|
|
"tracing-core",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tracing-attributes"
|
|
|
|
version = "0.1.27"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tracing-core"
|
|
|
|
version = "0.1.32"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
|
|
|
|
dependencies = [
|
|
|
|
"once_cell",
|
|
|
|
"valuable",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tracing-error"
|
|
|
|
version = "0.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d686ec1c0f384b1277f097b2f279a2ecc11afe8c133c1aabf036a27cb4cd206e"
|
|
|
|
dependencies = [
|
|
|
|
"tracing",
|
|
|
|
"tracing-subscriber",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tracing-futures"
|
|
|
|
version = "0.2.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"
|
|
|
|
dependencies = [
|
|
|
|
"pin-project",
|
|
|
|
"tracing",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "tracing-subscriber"
|
|
|
|
version = "0.3.18"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
|
|
|
|
dependencies = [
|
|
|
|
"sharded-slab",
|
|
|
|
"thread_local",
|
|
|
|
"tracing-core",
|
|
|
|
]
|
|
|
|
|
Initial version of a JS -> Rust conversion trait. (#2276)
This Pull Request closes #1975. It's still a work in progress, but tries to go in that direction.
It changes the following:
- Adds a new `TryFromJs` trait, that can be derived using a new `boa_derive` crate.
- Adds a new `try_js_into()` function that, similarly to the standard library `TryInto` trait
Things to think about:
- Should the `boa_derive` crate be re-exported in `boa_engine` using a `derive` feature, similar to how it's done in `serde`?
- The current implementation only converts perfectly valid values. So, if we try to convert a big integer into an `i8`, or any floating point number to an `f32`. So, you cannot derive `TryFromJs` for structures that contain an `f32` for example (you can still manually implement the trait, though, and decide in favour of a loss of precision). Should we also provide some traits for transparent loss of precision?
- Currently, you cannot convert between types, so if the JS struct has an integer, you cannot cast it to a boolean, for example. Should we provide a `TryConvertJs` trait, for example to force conversions?
- Currently we only have basic types and object conversions. Should add `Array` to `Vec` conversion, for example, right? Should we also add `TypedArray` conversions? What about `Map` and `Set`? Does this step over the fine grained APIs that we were creating?
Note that this still requires a bunch of documentation, tests, and validation from the dev team and from the users that requested this feature. I'm particularly interested in @lastmjs's thoughts on this API.
I already added an usage example in `boa_examples/src/bin/derive.rs`.
Co-authored-by: jedel1043 <jedel0124@gmail.com>
2 years ago
|
|
|
[[package]]
|
|
|
|
name = "trybuild"
|
|
|
|
version = "1.0.97"
|
Initial version of a JS -> Rust conversion trait. (#2276)
This Pull Request closes #1975. It's still a work in progress, but tries to go in that direction.
It changes the following:
- Adds a new `TryFromJs` trait, that can be derived using a new `boa_derive` crate.
- Adds a new `try_js_into()` function that, similarly to the standard library `TryInto` trait
Things to think about:
- Should the `boa_derive` crate be re-exported in `boa_engine` using a `derive` feature, similar to how it's done in `serde`?
- The current implementation only converts perfectly valid values. So, if we try to convert a big integer into an `i8`, or any floating point number to an `f32`. So, you cannot derive `TryFromJs` for structures that contain an `f32` for example (you can still manually implement the trait, though, and decide in favour of a loss of precision). Should we also provide some traits for transparent loss of precision?
- Currently, you cannot convert between types, so if the JS struct has an integer, you cannot cast it to a boolean, for example. Should we provide a `TryConvertJs` trait, for example to force conversions?
- Currently we only have basic types and object conversions. Should add `Array` to `Vec` conversion, for example, right? Should we also add `TypedArray` conversions? What about `Map` and `Set`? Does this step over the fine grained APIs that we were creating?
Note that this still requires a bunch of documentation, tests, and validation from the dev team and from the users that requested this feature. I'm particularly interested in @lastmjs's thoughts on this API.
I already added an usage example in `boa_examples/src/bin/derive.rs`.
Co-authored-by: jedel1043 <jedel0124@gmail.com>
2 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5b1e5645f2ee8025c2f1d75e1138f2dd034d74e6ba54620f3c569ba2a2a1ea06"
|
Initial version of a JS -> Rust conversion trait. (#2276)
This Pull Request closes #1975. It's still a work in progress, but tries to go in that direction.
It changes the following:
- Adds a new `TryFromJs` trait, that can be derived using a new `boa_derive` crate.
- Adds a new `try_js_into()` function that, similarly to the standard library `TryInto` trait
Things to think about:
- Should the `boa_derive` crate be re-exported in `boa_engine` using a `derive` feature, similar to how it's done in `serde`?
- The current implementation only converts perfectly valid values. So, if we try to convert a big integer into an `i8`, or any floating point number to an `f32`. So, you cannot derive `TryFromJs` for structures that contain an `f32` for example (you can still manually implement the trait, though, and decide in favour of a loss of precision). Should we also provide some traits for transparent loss of precision?
- Currently, you cannot convert between types, so if the JS struct has an integer, you cannot cast it to a boolean, for example. Should we provide a `TryConvertJs` trait, for example to force conversions?
- Currently we only have basic types and object conversions. Should add `Array` to `Vec` conversion, for example, right? Should we also add `TypedArray` conversions? What about `Map` and `Set`? Does this step over the fine grained APIs that we were creating?
Note that this still requires a bunch of documentation, tests, and validation from the dev team and from the users that requested this feature. I'm particularly interested in @lastmjs's thoughts on this API.
I already added an usage example in `boa_examples/src/bin/derive.rs`.
Co-authored-by: jedel1043 <jedel0124@gmail.com>
2 years ago
|
|
|
dependencies = [
|
|
|
|
"glob",
|
|
|
|
"serde",
|
|
|
|
"serde_derive",
|
|
|
|
"serde_json",
|
|
|
|
"termcolor",
|
|
|
|
"toml 0.8.15",
|
Initial version of a JS -> Rust conversion trait. (#2276)
This Pull Request closes #1975. It's still a work in progress, but tries to go in that direction.
It changes the following:
- Adds a new `TryFromJs` trait, that can be derived using a new `boa_derive` crate.
- Adds a new `try_js_into()` function that, similarly to the standard library `TryInto` trait
Things to think about:
- Should the `boa_derive` crate be re-exported in `boa_engine` using a `derive` feature, similar to how it's done in `serde`?
- The current implementation only converts perfectly valid values. So, if we try to convert a big integer into an `i8`, or any floating point number to an `f32`. So, you cannot derive `TryFromJs` for structures that contain an `f32` for example (you can still manually implement the trait, though, and decide in favour of a loss of precision). Should we also provide some traits for transparent loss of precision?
- Currently, you cannot convert between types, so if the JS struct has an integer, you cannot cast it to a boolean, for example. Should we provide a `TryConvertJs` trait, for example to force conversions?
- Currently we only have basic types and object conversions. Should add `Array` to `Vec` conversion, for example, right? Should we also add `TypedArray` conversions? What about `Map` and `Set`? Does this step over the fine grained APIs that we were creating?
Note that this still requires a bunch of documentation, tests, and validation from the dev team and from the users that requested this feature. I'm particularly interested in @lastmjs's thoughts on this API.
I already added an usage example in `boa_examples/src/bin/derive.rs`.
Co-authored-by: jedel1043 <jedel0124@gmail.com>
2 years ago
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "twox-hash"
|
|
|
|
version = "1.6.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"rand",
|
|
|
|
"static_assertions",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "unicode-bidi"
|
|
|
|
version = "0.3.15"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "unicode-ident"
|
|
|
|
version = "1.0.12"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "unicode-linebreak"
|
|
|
|
version = "0.1.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "unicode-normalization"
|
|
|
|
version = "0.1.23"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
|
|
|
|
dependencies = [
|
|
|
|
"tinyvec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "unicode-segmentation"
|
|
|
|
version = "1.11.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "unicode-width"
|
|
|
|
version = "0.1.13"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "unsafe-libyaml"
|
|
|
|
version = "0.2.11"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "untrusted"
|
|
|
|
version = "0.9.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "ureq"
|
|
|
|
version = "2.9.7"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d11a831e3c0b56e438a28308e7c810799e3c118417f342d30ecec080105395cd"
|
|
|
|
dependencies = [
|
|
|
|
"base64",
|
|
|
|
"flate2",
|
|
|
|
"log",
|
|
|
|
"once_cell",
|
|
|
|
"rustls",
|
|
|
|
"rustls-pki-types",
|
|
|
|
"rustls-webpki",
|
|
|
|
"url",
|
|
|
|
"webpki-roots",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "url"
|
|
|
|
version = "2.5.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c"
|
|
|
|
dependencies = [
|
|
|
|
"form_urlencoded",
|
|
|
|
"idna",
|
|
|
|
"percent-encoding",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "utf16_iter"
|
|
|
|
version = "1.0.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "utf8_iter"
|
|
|
|
version = "1.0.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "utf8parse"
|
|
|
|
version = "0.2.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "valuable"
|
|
|
|
version = "0.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "vcpkg"
|
|
|
|
version = "0.2.15"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "version_check"
|
|
|
|
version = "0.9.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "waker-fn"
|
|
|
|
version = "1.2.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "walkdir"
|
|
|
|
version = "2.5.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
|
|
|
|
dependencies = [
|
|
|
|
"same-file",
|
|
|
|
"winapi-util",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasi"
|
|
|
|
version = "0.11.0+wasi-snapshot-preview1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen"
|
|
|
|
version = "0.2.92"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"wasm-bindgen-macro",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-backend"
|
|
|
|
version = "0.2.92"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
|
|
|
|
dependencies = [
|
|
|
|
"bumpalo",
|
|
|
|
"log",
|
|
|
|
"once_cell",
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
"wasm-bindgen-shared",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-futures"
|
|
|
|
version = "0.4.42"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
|
|
|
|
dependencies = [
|
|
|
|
"cfg-if",
|
|
|
|
"js-sys",
|
|
|
|
"wasm-bindgen",
|
|
|
|
"web-sys",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-macro"
|
|
|
|
version = "0.2.92"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
|
|
|
|
dependencies = [
|
|
|
|
"quote",
|
|
|
|
"wasm-bindgen-macro-support",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-macro-support"
|
|
|
|
version = "0.2.92"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
"wasm-bindgen-backend",
|
|
|
|
"wasm-bindgen-shared",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-shared"
|
|
|
|
version = "0.2.92"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-test"
|
|
|
|
version = "0.3.42"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d9bf62a58e0780af3e852044583deee40983e5886da43a271dd772379987667b"
|
|
|
|
dependencies = [
|
|
|
|
"console_error_panic_hook",
|
|
|
|
"js-sys",
|
|
|
|
"scoped-tls",
|
|
|
|
"wasm-bindgen",
|
|
|
|
"wasm-bindgen-futures",
|
|
|
|
"wasm-bindgen-test-macro",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasm-bindgen-test-macro"
|
|
|
|
version = "0.3.42"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "b7f89739351a2e03cb94beb799d47fb2cac01759b40ec441f7de39b00cbf7ef0"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasmi"
|
|
|
|
version = "0.31.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "77a8281d1d660cdf54c76a3efa9ddd0c270cada1383a995db3ccb43d166456c7"
|
|
|
|
dependencies = [
|
|
|
|
"smallvec",
|
|
|
|
"spin",
|
|
|
|
"wasmi_arena",
|
|
|
|
"wasmi_core",
|
|
|
|
"wasmparser-nostd",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasmi_arena"
|
|
|
|
version = "0.4.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "104a7f73be44570cac297b3035d76b169d6599637631cf37a1703326a0727073"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasmi_core"
|
|
|
|
version = "0.13.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "dcf1a7db34bff95b85c261002720c00c3a6168256dcb93041d3fa2054d19856a"
|
|
|
|
dependencies = [
|
|
|
|
"downcast-rs",
|
|
|
|
"libm",
|
|
|
|
"num-traits",
|
|
|
|
"paste",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "wasmparser-nostd"
|
|
|
|
version = "0.100.2"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d5a015fe95f3504a94bb1462c717aae75253e39b9dd6c3fb1062c934535c64aa"
|
|
|
|
dependencies = [
|
|
|
|
"indexmap-nostd",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "web-sys"
|
|
|
|
version = "0.3.69"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
|
|
|
|
dependencies = [
|
|
|
|
"js-sys",
|
|
|
|
"wasm-bindgen",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "web-time"
|
|
|
|
version = "1.1.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb"
|
|
|
|
dependencies = [
|
|
|
|
"js-sys",
|
|
|
|
"wasm-bindgen",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "webpki-roots"
|
|
|
|
version = "0.26.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bd7c23921eeb1713a4e851530e9b9756e4fb0e89978582942612524cf09f01cd"
|
|
|
|
dependencies = [
|
|
|
|
"rustls-pki-types",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "winapi"
|
|
|
|
version = "0.3.9"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
|
|
|
|
dependencies = [
|
|
|
|
"winapi-i686-pc-windows-gnu",
|
|
|
|
"winapi-x86_64-pc-windows-gnu",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "winapi-i686-pc-windows-gnu"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "winapi-util"
|
|
|
|
version = "0.1.8"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b"
|
|
|
|
dependencies = [
|
|
|
|
"windows-sys 0.52.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "winapi-x86_64-pc-windows-gnu"
|
|
|
|
version = "0.4.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows-sys"
|
|
|
|
version = "0.48.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
|
|
|
|
dependencies = [
|
|
|
|
"windows-targets 0.48.5",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows-sys"
|
|
|
|
version = "0.52.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
|
|
|
|
dependencies = [
|
|
|
|
"windows-targets 0.52.5",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows-targets"
|
|
|
|
version = "0.48.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
|
|
|
|
dependencies = [
|
|
|
|
"windows_aarch64_gnullvm 0.48.5",
|
|
|
|
"windows_aarch64_msvc 0.48.5",
|
|
|
|
"windows_i686_gnu 0.48.5",
|
|
|
|
"windows_i686_msvc 0.48.5",
|
|
|
|
"windows_x86_64_gnu 0.48.5",
|
|
|
|
"windows_x86_64_gnullvm 0.48.5",
|
|
|
|
"windows_x86_64_msvc 0.48.5",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows-targets"
|
|
|
|
version = "0.52.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
|
|
|
|
dependencies = [
|
|
|
|
"windows_aarch64_gnullvm 0.52.5",
|
|
|
|
"windows_aarch64_msvc 0.52.5",
|
|
|
|
"windows_i686_gnu 0.52.5",
|
|
|
|
"windows_i686_gnullvm",
|
|
|
|
"windows_i686_msvc 0.52.5",
|
|
|
|
"windows_x86_64_gnu 0.52.5",
|
|
|
|
"windows_x86_64_gnullvm 0.52.5",
|
|
|
|
"windows_x86_64_msvc 0.52.5",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_aarch64_gnullvm"
|
|
|
|
version = "0.48.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_aarch64_gnullvm"
|
|
|
|
version = "0.52.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_aarch64_msvc"
|
|
|
|
version = "0.48.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_aarch64_msvc"
|
|
|
|
version = "0.52.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_i686_gnu"
|
|
|
|
version = "0.48.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_i686_gnu"
|
|
|
|
version = "0.52.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_i686_gnullvm"
|
|
|
|
version = "0.52.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_i686_msvc"
|
|
|
|
version = "0.48.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_i686_msvc"
|
|
|
|
version = "0.52.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_x86_64_gnu"
|
|
|
|
version = "0.48.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_x86_64_gnu"
|
|
|
|
version = "0.52.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_x86_64_gnullvm"
|
|
|
|
version = "0.48.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_x86_64_gnullvm"
|
|
|
|
version = "0.52.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_x86_64_msvc"
|
|
|
|
version = "0.48.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "windows_x86_64_msvc"
|
|
|
|
version = "0.52.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "winnow"
|
|
|
|
version = "0.5.40"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
|
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "winnow"
|
|
|
|
version = "0.6.13"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "59b5e5f6c299a3c7890b876a2a587f3115162487e704907d9b6cd29473052ba1"
|
|
|
|
dependencies = [
|
|
|
|
"memchr",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "write16"
|
|
|
|
version = "1.0.0"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "writeable"
|
|
|
|
version = "0.5.5"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51"
|
|
|
|
dependencies = [
|
|
|
|
"either",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "yoke"
|
|
|
|
version = "0.7.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5"
|
|
|
|
dependencies = [
|
|
|
|
"serde",
|
|
|
|
"stable_deref_trait",
|
|
|
|
"yoke-derive",
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
"zerofrom",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "yoke-derive"
|
|
|
|
version = "0.7.4"
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95"
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
"synstructure",
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zerocopy"
|
|
|
|
version = "0.7.34"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087"
|
|
|
|
dependencies = [
|
|
|
|
"zerocopy-derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zerocopy-derive"
|
|
|
|
version = "0.7.34"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
[[package]]
|
|
|
|
name = "zerofrom"
|
|
|
|
version = "0.1.4"
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55"
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
dependencies = [
|
|
|
|
"zerofrom-derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zerofrom-derive"
|
|
|
|
version = "0.1.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5"
|
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
"synstructure",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zeroize"
|
|
|
|
version = "1.8.1"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde"
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zerotrie"
|
|
|
|
version = "0.1.3"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "fb594dd55d87335c5f60177cee24f19457a5ec10a065e0a3014722ad252d0a1f"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"displaydoc",
|
|
|
|
"litemap",
|
|
|
|
"serde",
|
|
|
|
"yoke",
|
|
|
|
"zerofrom",
|
|
|
|
"zerovec",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zerovec"
|
|
|
|
version = "0.10.4"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079"
|
|
|
|
dependencies = [
|
|
|
|
"databake",
|
|
|
|
"serde",
|
|
|
|
"yoke",
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
"zerofrom",
|
|
|
|
"zerovec-derive",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zerovec-derive"
|
|
|
|
version = "0.10.3"
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6"
|
Update icu requirement from 0.5.0 to 0.6.0 in /boa_engine (#2078)
Updates the requirements on [icu](https://github.com/unicode-org/icu4x) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/releases">icu's releases</a>.</em></p>
<blockquote>
<h2>ICU4X 0.5.0 (January 31, 2022)</h2>
<p>ICU4X 0.5.0 is our major winter release. Key changes:</p>
<ol>
<li>Major improvements to the <code>datetime</code> component, including support for non-gregorian calendars, week-of-year, and eras</li>
<li>Lots of improvements to the <code>properties</code> component, including support for <code>Canonical_Combining_Class</code>, <code>Script_Extensions</code>, <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, <code>Sentence_Break</code>.</li>
<li>Improvements to our data infrastructure crates <code>yoke</code> and <code>zerovec</code></li>
</ol>
<p>There are also bug fixes and feature improvements in other components including <code>LocaleCanonicalizer</code>. For more details, see the <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md#icu4x-050-jan-31-2022">changelog</a>.</p>
<p>We hope to continue bringing early adopters onboard as we eye a stable 1.0 release in the first half of 2022.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu's changelog</a>.</em></p>
<blockquote>
<h2>icu4x 0.5.0 (Jan 31, 2022)</h2>
<ul>
<li>General data model
<ul>
<li><code>DataPayload</code> no longer needs a lifetime (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1297">#1297</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1279">#1279</a>)</li>
<li>Re-write ResourceKey (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1511">#1511</a>)</li>
<li>Rewrite ErasedDataProvider as AnyProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1495">#1495</a>)</li>
<li>Add EitherProvider and rename IterableDataProviderCore to IterableProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1455">#1455</a>)</li>
<li>Change DataRequest to be borrowed in BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1416">#1416</a>)</li>
<li>Replace SerdeDeDataProvider with BufferProvider (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1369">#1369</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1384">#1384</a>)</li>
</ul>
</li>
<li>Components
<ul>
<li><code>calendar</code>:
<ul>
<li>Julian, Japanese, and Buddhist calendars (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1351">#1351</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1394">#1394</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1305">#1305</a>)</li>
<li><code>DateTimeFormat</code> integration (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1339">#1339</a>)</li>
<li>Bugfix around arithmetic (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1352">#1352</a>)</li>
</ul>
</li>
<li><code>datetime</code>:
<ul>
<li>Week-of-year support (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1206">#1206</a>)</li>
<li><code>DateTimeFormat::resolve_components()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1362">#1362</a>)</li>
<li>Era formatting (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1346">#1346</a>)</li>
<li><code>TimeZoneFormatConfig</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1256">#1256</a>)</li>
<li>New data model for organizing calendar data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1300">#1300</a>)</li>
<li>Bugfix around missing localized strings in time zone data (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1405">#1405</a>)</li>
</ul>
</li>
<li><code>decimal</code>: No updates</li>
<li><code>locale_canonicalizer</code>:
<ul>
<li>Bugfix in maximization (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1171">#1171</a>)</li>
<li>Update data model to use <code>LiteMap</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1275">#1275</a>)</li>
</ul>
</li>
<li><code>locid</code>: No updates</li>
<li><code>plurals</code>:
<ul>
<li>Update data model to use <code>ZeroVec</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1240">#1240</a>)</li>
</ul>
</li>
<li><code>properties</code>:
<ul>
<li>Rename resource key category for properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1406">#1406</a>)</li>
<li>Rename enums for <code>General_Category</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1355">#1355</a>)</li>
<li>Implement the <code>Canonical_Combining_Class</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1347">#1347</a>)</li>
<li>Implement <code>Script_Extensions</code> property (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1353">#1353</a>)</li>
<li>Add <code>General_Category</code> predicate functions (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1310">#1310</a>)</li>
<li>Implement <code>Grapheme_Cluster_Break</code>, <code>Word_Break</code>, and <code>Sentence_Break</code> Unicode properties (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1233">#1233</a>)</li>
</ul>
</li>
</ul>
</li>
<li>Utilities
<ul>
<li><code>codepointtrie</code>: No changes</li>
<li><code>deduplicating_array</code>: New utility for efficient serialized representation of data with duplicates</li>
<li><code>fixed_decimal</code>:
<ul>
<li>Padding and truncation APIs (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1482">#1482</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1507">#1507</a>, <a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1195">#1195</a>)</li>
<li>Add double-to-decimal via ryū (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1217">#1217</a>)</li>
<li>Handle exponents in <code>FixedDecimal::from_str()</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1265">#1265</a>)</li>
</ul>
</li>
<li><code>litemap</code>:
<ul>
<li>Add <code>LiteMap::get_indexed()</code> and <code>LiteMap::find_index()</code></li>
<li>Handle serialization of tuples (etc) in litemaps (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1306">#1306</a>)</li>
</ul>
</li>
<li><code>pattern</code>: No updates</li>
<li><code>uniset</code>: No updates</li>
<li><code>writeable</code>:
<ul>
<li>Adding parts functionality to <code>Writeable</code> (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1438">#1438</a>)</li>
<li>Change <code>Writeable::writeable_to_string</code> to return a Cow (<a href="https://github-redirect.dependabot.com/unicode-org/icu4x/issues/1452">#1452</a>)</li>
</ul>
</li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-org/icu4x/compare/icu@0.5.0...icu@0.5.0">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Co-authored-by: jedel1043 <jedel0124@gmail.com>
3 years ago
|
|
|
dependencies = [
|
|
|
|
"proc-macro2",
|
|
|
|
"quote",
|
|
|
|
"syn",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[package]]
|
|
|
|
name = "zip"
|
|
|
|
version = "0.6.6"
|
|
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
|
checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261"
|
|
|
|
dependencies = [
|
|
|
|
"byteorder",
|
|
|
|
"crc32fast",
|
|
|
|
"crossbeam-utils",
|
|
|
|
"flate2",
|
|
|
|
]
|