|
|
|
[package]
|
|
|
|
name = "boa_engine"
|
|
|
|
keywords = ["javascript", "js", "compiler", "lexer", "parser"]
|
|
|
|
categories = ["parser-implementations", "compilers"]
|
|
|
|
readme = "../README.md"
|
|
|
|
description.workspace = true
|
|
|
|
version.workspace = true
|
|
|
|
edition.workspace = true
|
|
|
|
authors.workspace = true
|
|
|
|
license.workspace = true
|
|
|
|
repository.workspace = true
|
|
|
|
rust-version.workspace = true
|
|
|
|
|
|
|
|
[features]
|
|
|
|
profiler = ["boa_profiler/profiler"]
|
|
|
|
deser = ["boa_interner/serde", "boa_ast/serde"]
|
|
|
|
intl = [
|
|
|
|
"boa_icu_provider/full",
|
|
|
|
"icu_normalizer/serde",
|
|
|
|
"icu_normalizer/std",
|
|
|
|
"dep:icu_locid_transform",
|
|
|
|
"dep:icu_locid",
|
|
|
|
"dep:icu_datetime",
|
|
|
|
"dep:icu_plurals",
|
|
|
|
"dep:icu_provider",
|
|
|
|
"dep:icu_calendar",
|
|
|
|
"dep:icu_collator",
|
|
|
|
"dep:icu_casemapping",
|
|
|
|
"dep:icu_list",
|
|
|
|
"dep:icu_segmenter",
|
|
|
|
"dep:writeable",
|
|
|
|
"dep:sys-locale",
|
|
|
|
"dep:yoke",
|
|
|
|
"dep:zerofrom",
|
|
|
|
]
|
|
|
|
|
|
|
|
fuzz = ["boa_ast/arbitrary", "boa_interner/arbitrary"]
|
|
|
|
|
|
|
|
# Enable Boa's VM instruction flowgraph generator.
|
|
|
|
flowgraph = []
|
|
|
|
|
|
|
|
# Enable Boa's VM instruction tracing.
|
|
|
|
trace = []
|
|
|
|
|
|
|
|
# Enable Boa's additional ECMAScript features for web browsers.
|
|
|
|
annex-b = ["boa_parser/annex-b"]
|
|
|
|
|
|
|
|
[dependencies]
|
|
|
|
boa_interner.workspace = true
|
|
|
|
boa_gc = { workspace = true, features = [ "thinvec" ] }
|
|
|
|
boa_profiler.workspace = true
|
|
|
|
boa_macros.workspace = true
|
|
|
|
boa_ast.workspace = true
|
|
|
|
boa_parser.workspace = true
|
|
|
|
boa_icu_provider.workspace = true
|
|
|
|
serde = { version = "1.0.181", features = ["derive", "rc"] }
|
|
|
|
serde_json = "1.0.104"
|
|
|
|
rand = "0.8.5"
|
|
|
|
num-traits = "0.2.16"
|
|
|
|
regress = "0.6.0"
|
|
|
|
rustc-hash = "1.1.0"
|
|
|
|
num-bigint = { version = "0.4.3", features = ["serde"] }
|
|
|
|
num-integer = "0.1.45"
|
|
|
|
bitflags = "2.3.3"
|
|
|
|
indexmap = "2.0.0"
|
|
|
|
ryu-js = "0.2.2"
|
|
|
|
chrono = { version = "0.4.26", default-features = false, features = ["clock", "std"] }
|
|
|
|
fast-float = "0.2.0"
|
|
|
|
once_cell = "1.18.0"
|
|
|
|
tap = "1.0.1"
|
|
|
|
sptr = "0.3.2"
|
|
|
|
static_assertions = "1.1.0"
|
|
|
|
thiserror = "1.0.44"
|
|
|
|
dashmap = "5.5.0"
|
|
|
|
num_enum = "0.6.1"
|
|
|
|
pollster = "0.3.0"
|
|
|
|
thin-vec = "0.2.12"
|
|
|
|
itertools = { version = "0.11.0", default-features = false }
|
|
|
|
icu_normalizer = "1.2.0"
|
|
|
|
|
|
|
|
# intl deps
|
|
|
|
icu_locid_transform = { version = "1.2.1", features = ["std", "serde"], optional = true }
|
|
|
|
icu_locid = { version = "1.2.0", features = ["serde"], optional = true }
|
|
|
|
icu_datetime = { version = "1.2.1", features = ["serde", "experimental"], optional = true }
|
|
|
|
icu_calendar = { version = "1.2.0", optional = true }
|
|
|
|
icu_collator = { version = "1.2.0", features = ["serde"], optional = true }
|
|
|
|
icu_plurals = { version = "1.2.0", features = ["serde"], optional = true }
|
|
|
|
icu_provider = { version = "1.2.0", optional = true }
|
|
|
|
icu_list = { version = "1.2.0", features = ["serde"], optional = true }
|
|
|
|
icu_casemapping = { version = "0.7.2", features = ["serde"], optional = true}
|
|
|
|
icu_segmenter = { version = "1.2.1", features = ["serde"], optional = true }
|
Bump writeable from 0.5.1 to 0.5.2 (#2819)
Bumps [writeable](https://github.com/unicode-org/icu4x) from 0.5.1 to 0.5.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">writeable's changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<h2>icu4x 1.2 (Apr 13, 2023)</h2>
<ul>
<li>General
<ul>
<li>All updated crates:
<ul>
<li>Add missing <code>Debug</code> impls (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3206">#3206</a>)</li>
<li>Update Rust edition to 2021 (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3075">#3075</a>)</li>
<li>Internal clippy fixes</li>
<li>Unless otherwise specified, all crate updates are to version 1.2.</li>
<li>Out-of-cycle releases do not get their own changelog entries, so some entries may span multiple patch or pre-1.0 minor versions.</li>
</ul>
</li>
</ul>
</li>
<li>Data model and providers
<ul>
<li><code>icu_provider</code>:
<ul>
<li>Add support for silencing expected <code>DataError</code>s (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3262">#3262</a>)</li>
<li>Removing <code>dhat</code> dependency (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3138">#3138</a>)</li>
<li>Make trait <code>DataMarker: 'static</code> (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3137">#3137</a>)</li>
</ul>
</li>
<li><code>icu_datagen</code>: (includes patch updates 1.1.1 and 1.1.2)
<ul>
<li>(lib) Add <code>Out::Baked</code> and <code>BakedOptions</code>; deprecate <code>Out::Module</code> (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3130">#3130</a>)</li>
<li>(cli) Bump clap to 4.0, move to using derive (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3149">#3149</a>)</li>
<li>Pare down datagen deps (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3160">#3160</a>)</li>
<li>Support changes from CLDR 43 (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3182">#3182</a>, <a href="https://redirect.github.com/unicode-org/icu4x/issues/3201">#3201</a>, <a href="https://redirect.github.com/unicode-org/icu4x/issues/3204">#3204</a>, <a href="https://redirect.github.com/unicode-org/icu4x/issues/3205">#3205</a>)</li>
<li>Add support for complemented range iterators (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3198">#3198</a>)</li>
<li>Using byte string literals in databake (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3040">#3040</a>)\</li>
<li>Datagen support for all new component features</li>
<li>(performance) Less <code>ZeroMap</code> mutation in datagen (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3098">#3098</a>)</li>
</ul>
</li>
<li><code>icu_provider_adapters</code>: No other changes</li>
<li><code>icu_provider_blob</code>: No other changes</li>
<li><code>icu_provider_fs</code>:
<ul>
<li>Remove sha2 dep (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3160">#3160</a>)</li>
</ul>
</li>
<li><code>icu_provider_macros</code>: No other changes</li>
</ul>
</li>
<li>Components:
<ul>
<li>Cross component: No additional cross-component changes</li>
<li><code>icu_calendar</code>
<ul>
<li>Document the bounds of <code>IsoSecond</code>, <code>Minute</code> and <code>Hour</code> (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3156">#3156</a>)</li>
</ul>
</li>
<li><code>icu_collator</code>: No other changes</li>
<li><code>icu_collections</code>:
<ul>
<li>Add <code>to_u32</code> for TrieValue (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3222">#3222</a>)</li>
<li>Add <code>CPT::try_alloc_map_value</code> (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3207">#3207</a>)</li>
<li>Add support for coalescing range iterators (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3198">#3198</a>)</li>
<li>Allow inversion lists to be built from ranges that include <code>char::MAX</code> (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3203">#3203</a>)</li>
</ul>
</li>
<li><code>icu_datetime</code>: No other changes</li>
<li><code>icu_decimal</code>
<ul>
<li>Add <code>From<GroupingStrategy></code> for <code>FixedDecimalFormatterOptions</code> (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3045">#3045</a>)</li>
</ul>
</li>
<li><code>icu_list</code>
<ul>
<li><code>ListJoinerPattern::from_parts_unchecked()</code> is now <code>from_parts()</code> and panics when necessary (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3052">#3052</a>)</li>
</ul>
</li>
<li><code>icu_locid</code>
<ul>
<li>Reduce size of internal <code>ShortVec</code> abstraction (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3200">#3200</a>)</li>
<li>Use <code>Box</code> in place of <code>Vec</code> in <code>ShortVec</code> (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3220">#3220</a>)</li>
</ul>
</li>
<li><code>icu_locid_transform</code>
<ul>
<li>The default set of likely subtags is now only the subset of languages that have a basic or greater CLDR coverage level; the full set is much larger in CLDR 43 and can be accessed via new constructors (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3148">#3148</a>, <a href="https://redirect.github.com/unicode-org/icu4x/issues/3158">#3158</a>, <a href="https://redirect.github.com/unicode-org/icu4x/issues/3197">#3197</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/commits">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=writeable&package-manager=cargo&previous-version=0.5.1&new-version=0.5.2)](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
|
|
|
writeable = { version = "0.5.2", optional = true }
|
|
|
|
yoke = { version = "0.7.1", optional = true }
|
|
|
|
zerofrom = { version = "0.1.2", optional = true }
|
|
|
|
sys-locale = { version = "0.3.0", optional = true }
|
|
|
|
|
|
|
|
[dev-dependencies]
|
|
|
|
criterion = "0.5.1"
|
|
|
|
float-cmp = "0.9.0"
|
|
|
|
indoc = "2.0.3"
|
|
|
|
textwrap = "0.16.0"
|
|
|
|
futures-lite = "1.13.0"
|
|
|
|
|
|
|
|
[target.x86_64-unknown-linux-gnu.dev-dependencies]
|
|
|
|
jemallocator = "0.5.4"
|
|
|
|
|
|
|
|
[lib]
|
|
|
|
crate-type = ["cdylib", "lib"]
|
|
|
|
name = "boa_engine"
|
|
|
|
bench = false
|
|
|
|
|
|
|
|
[[bench]]
|
|
|
|
name = "full"
|
|
|
|
harness = false
|