mirror of https://github.com/boa-dev/boa.git
Tree:
7eb2d4e408
add-vhs-ci
benchmarks
control-flow-graph
expect-lints
feature/node_span
feature/snapshot
features
gh-readonly-queue/main/pr-2877-b0ddf5eed00a53281d67fc7d846233fc0d99ce9c
gh-readonly-queue/main/pr-3144-8e48cec73fae708420b9af88813d4870243c491a
main
nan-boxing
optimization/static-shapes
real_conformance
reduce-environment-allocations
refactor/interner
refactor/register-vm
releases/0.17
releases/0.19
semver_checks
tco
utility-crate
wasm-debugger
nightly
v0.10
v0.11
v0.12
v0.13
v0.14
v0.15
v0.16
v0.17
v0.17.1
v0.17.2
v0.17.3
v0.18
v0.19
v0.19.1
v0.2.0
v0.2.1
v0.3.0
v0.4.0
v0.5.0
v0.5.1
v0.6.0
v0.7.0
v0.8.0
v0.9.0
${ noResults }
2242 Commits (7eb2d4e4082e3082ce85541f65d4947b2fd24997)
Author | SHA1 | Message | Date |
---|---|---|---|
raskad | 7eb2d4e408 |
Initialize `var` bindings in runtime environments with `undefined` (#2860)
Currently in draft, because it breaks some of the annexB [`Block-Level Function Declarations Web Legacy Compatibility Semantics`](https://tc39.es/ecma262/#sec-block-level-function-declarations-web-legacy-compatibility-semantics) tests. This Pull Request fixes #2795, fixes #2779 and fixes #2760. It changes the following: - Initialize `var` bindings in runtime environments with `undefined` - Add a missing environment at class construction time. |
2 years ago |
dependabot[bot] | d317b699a5 |
Bump icu_datagen from 1.2.4 to 1.2.5 (#2873)
Bumps [icu_datagen](https://github.com/unicode-org/icu4x) from 1.2.4 to 1.2.5. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/unicode-org/icu4x/blob/main/CHANGELOG.md">icu_datagen's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <h2>icu4x 1.2.x (Apr 17, 2023)</h2> <p>Note: A subset of crates received patch releases in the 1.2 stream.</p> <ul> <li><code>databake</code>: 0.1.5 <ul> <li>Fixed <a href="https://redirect.github.com/unicode-org/icu4x/pull/3356">#3356</a>, adding <code>allow</code> for clippy false-positives</li> </ul> </li> <li><code>icu_capi</code> 1.2.1 <ul> <li>Fixed <a href="https://redirect.github.com/unicode-org/icu4x/pull/3344">#3344</a>, <code>buffer_provider</code> feature accidentally pulling in extra crates</li> </ul> </li> <li><code>icu_datagen</code> 1.2.1 <ul> <li>Fixed <a href="https://redirect.github.com/unicode-org/icu4x/pull/3339">#3339</a>, incorrect Cargo features</li> </ul> </li> <li><code>icu_datagen</code> 1.2.3 <ul> <li>Fixed <a href="https://redirect.github.com/unicode-org/icu4x/pull/3355">#3355</a>, adding MSRV annotations to generated code</li> <li>Fixed <a href="https://redirect.github.com/unicode-org/icu4x/pull/3369">#3369</a>, making datagen call <code>rustfmt</code> directly instead of using the <code>rust-format</code> dependency</li> </ul> </li> <li><code>icu_datagen</code> 1.2.4 <ul> <li>Remove dependency on <code>clap</code>'s <code>"cargo"</code> feature to better support non-Cargo users (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3388">#3388</a>)</li> </ul> </li> <li><code>icu_datagen</code> 1.2.5 <ul> <li>Remove runtime dependency on segmenter data pulled from the cargo cache (<a href="https://redirect.github.com/unicode-org/icu4x/issues/3391">#3391</a>)</li> </ul> </li> <li><code>icu_locid_transform</code> 1.2.1 <ul> <li>Fixed <a href="https://redirect.github.com/unicode-org/icu4x/issues/3332">#3332</a>, missing <code>+?Sized</code> bound</li> </ul> </li> <li><code>icu_segmenter</code> 1.2.1 <ul> <li>Fixed <a href="https://redirect.github.com/unicode-org/icu4x/pull/3341">#3341</a>, incorrect results on some strings with mixed scripts</li> </ul> </li> <li><code>icu_provider</code> 1.2.1 <ul> <li>Do not autoenable <code>postcard/use-std</code> (<a href="https://redirect.github.com/unicode-org/icu4x/pull/3376">#3376</a>)</li> </ul> </li> <li><code>icu_datetime</code> 1.2.1 <ul> <li>Remove superfluous <code>JapaneseEraV1</code> provider bounds on <code>TypedZonedDateTimeFormatter</code> <a href="https://redirect.github.com/unicode-org/icu4x/pull/3379">#3379</a></li> </ul> </li> </ul> <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> </ul> </li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
Haled Odat | ed37448175 |
Implement `Hidden classes` (#2723)
This PR implements `Hidden Classes`, I named them as `Shapes` (like Spidermonkey does), calling them maps like v8 seems confusing because there already is a JS builtin, likewise with `Hidden classes` since there are already classes in JS. There are two types of shapes: `shared` shapes that create the transition tree, and are shared between objects, this is mainly intended for user defined objects this makes more sense because shapes can create transitions trees, doing that for the builtins seems wasteful (unless users wanted to creating an object with the same property names and the same property attributes in the same order... which seems unlikely). That's why I added `unique` shapes, only one object has it. This is similar to previous solution, but this architecture enables us to use inline caching. There will probably be a performance hit until we implement inline caching. There still a lot of work that needs to be done, on this: - [x] Move Property Attributes to shape - [x] Move Prototype to shape - [x] ~~Move extensible flag to shape~~, On further evaluation this doesn't give any benefit (at least right now), since it isn't used by inline caching also adding one more transition. - [x] Implement delete for unique shapes. - [x] If the chain is too long we should probably convert it into a `unique` shape - [x] Figure out threshold ~~(maybe more that 256 properties ?)~~ curently set to an arbitrary number (`1024`) - [x] Implement shared property table between shared shapes - [x] Add code Document - [x] Varying size storage for properties (get+set = 2, data = 1) - [x] Add shapes to more object: - [x] ordinary object - [x] Arrays - [x] Functions - [x] Other builtins - [x] Add `shapes.md` doc explaining shapes in depth with mermaid diagrams :) - [x] Add `$boa.shape` module - [x] `$boa.shape.id(o)` - [x] `$boa.shape.type(o)` - [x] `$boa.shape.same(o1, o2)` - [x] add doc to `boa_object.md` |
2 years ago |
José Julián Espina | e7c689c0d5 |
Refactor binding handling APIs (#2870)
We have currently some bugs related to binding assignments on arithmetic operations (`+=`, `++`, `?=`, etc.), but fixing those was getting a bit complex with our current bindings APIs. This PR refactors our binding handling APIs to be a bit easier to use. |
2 years ago |
Haled Odat | 1f4ff6d379 |
Direct array element access on `ByValue` instructions (#2827)
Most of the time that we have a `ByValue` ( `[ value ]` syntax ) it is for arrays and the value is usually an index. This PR adds a fast path to the instructions (without calling `.borrow()` on the object to check if its an array) For example, this code: ```js let a = [1, 2, 3] for (let i = 0 ; i < 10000000; ++i) { a[i % 3] += a[ (i + 1) % 3 ] } ``` Using `hyperfine`, it ran `1.38` times faster on this PR. ```bash Benchmark 1: ./boa_main test.js Time (mean ± σ): 16.504 s ± 0.192 s [User: 16.440 s, System: 0.020 s] Range (min … max): 16.328 s … 16.938 s 10 runs Benchmark 2: ./boa_direct_array_access test.js Time (mean ± σ): 11.982 s ± 0.038 s [User: 11.939 s, System: 0.013 s] Range (min … max): 11.914 s … 12.035 s 10 runs Summary './boa_direct_array_access test.js' ran 1.38 ± 0.02 times faster than './boa_main test.js' ``` |
2 years ago |
dependabot[bot] | 33bab64804 |
Bump icu_datagen from 1.2.3 to 1.2.4 (#2871)
Bumps [icu_datagen](https://github.com/unicode-org/icu4x) from 1.2.3 to 1.2.4. <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
Haled Odat | 41448e13f9 |
Fix incorrect `LoopContinue` instruction in while-do loops (#2866)
While working on #2857 I discovered that while generating the bytecode for `do-while` loops we were emitting an orphan `LoopContinue` that is never executed, which was preventing the error to be thrown when max loop iteration is reached. This can more easily be identified with it's flowgraph : (`do { 1; } while(0) `) Main: <details> <img src="https://user-images.githubusercontent.com/8566042/233908011-247313bc-6435-4622-8ecb-f469d9eaf850.png"> </details> With this PR: <details> <img src="https://user-images.githubusercontent.com/8566042/233908030-3552636e-f09c-4c5e-8c7c-1ecfa0024dfe.png"> </details> |
2 years ago |
dependabot[bot] | 7d2be7e9ae |
Bump prettier from 2.8.7 to 2.8.8 (#2869)
Bumps [prettier](https://github.com/prettier/prettier) from 2.8.7 to 2.8.8.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/prettier/prettier/releases">prettier's releases</a>.</em></p>
<blockquote>
<h2>2.8.8</h2>
<p>This version is a republished version of v2.8.7.
A bad version was accidentally published and <a href="https://redirect.github.com/npm/cli/issues/1686">it can't be unpublished</a>, apologies for the churn.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/prettier/prettier/blob/main/CHANGELOG.md">prettier's changelog</a>.</em></p>
<blockquote>
<h1>2.8.8</h1>
<p>This version is a republished version of v2.8.7.
A bad version was accidentally published and <a href="https://redirect.github.com/npm/cli/issues/1686">it can't be unpublished</a>, apologies for the churn.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="
|
2 years ago |
dependabot[bot] | bd55431792 |
Bump webpack-cli from 5.0.1 to 5.0.2 (#2867)
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 5.0.1 to 5.0.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/webpack/webpack-cli/releases">webpack-cli's releases</a>.</em></p> <blockquote> <h2>v5.0.2</h2> <h2><a href="https://github.com/webpack/webpack-cli/compare/webpack-cli@5.0.1...webpack-cli@5.0.2">5.0.2</a> (2023-04-21)</h2> <h3>Bug Fixes</h3> <ul> <li>error message for missing default export in configuration (<a href="https://redirect.github.com/webpack/webpack-cli/issues/3685">#3685</a>) (<a href=" |
2 years ago |
José Julián Espina | c330005912 |
Implement `is_identifier_(start/part)` using `icu_properties` (#2865)
As mentioned in https://github.com/boa-dev/boa/pull/2848#issuecomment-1518909512, this uses our new default ICU4X data to replace `char::is_start` and `char::is_continue` from the `boa_unicode` crate with the [`icu_properties`](https://crates.io/crates/icu_properties) crate. Note that this doesn't deprecate `boa_unicode` yet, since that'll require some discussion about how to proceed with a now unused sub-crate. |
2 years ago |
dependabot[bot] | cebec9da90 |
Bump bitflags from 2.1.0 to 2.2.1 (#2868)
Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.1.0 to 2.2.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/bitflags/bitflags/releases">bitflags's releases</a>.</em></p> <blockquote> <h2>2.2.1</h2> <h2>What's Changed</h2> <ul> <li>Refactor attribute filtering to apply per-flag by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/345">bitflags/bitflags#345</a></li> <li>Prepare for 2.2.1 release by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/346">bitflags/bitflags#346</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bitflags/bitflags/compare/2.2.0...2.2.1">https://github.com/bitflags/bitflags/compare/2.2.0...2.2.1</a></p> <h2>2.2.0 (yanked)</h2> <h2>What's Changed</h2> <ul> <li>Create SECURITY.md by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/338">bitflags/bitflags#338</a></li> <li>add docs to describe the behavior of multi-bit flags by <a href="https://github.com/nicholasbishop"><code>@nicholasbishop</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/340">bitflags/bitflags#340</a></li> <li>Add support for bytemuck by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/336">bitflags/bitflags#336</a></li> <li>Add a top-level macro for filtering attributes by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/341">bitflags/bitflags#341</a></li> <li>Prepare for 2.2.0 release by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/342">bitflags/bitflags#342</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/nicholasbishop"><code>@nicholasbishop</code></a> made their first contribution in <a href="https://redirect.github.com/bitflags/bitflags/pull/340">bitflags/bitflags#340</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bitflags/bitflags/compare/2.1.0...2.2.0">https://github.com/bitflags/bitflags/compare/2.1.0...2.2.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md">bitflags's changelog</a>.</em></p> <blockquote> <h1>2.2.1</h1> <h2>What's Changed</h2> <ul> <li>Refactor attribute filtering to apply per-flag by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/345">bitflags/bitflags#345</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bitflags/bitflags/compare/2.2.0...2.2.1">https://github.com/bitflags/bitflags/compare/2.2.0...2.2.1</a></p> <h1>2.2.0</h1> <h2>What's Changed</h2> <ul> <li>Create SECURITY.md by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/338">bitflags/bitflags#338</a></li> <li>add docs to describe the behavior of multi-bit flags by <a href="https://github.com/nicholasbishop"><code>@nicholasbishop</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/340">bitflags/bitflags#340</a></li> <li>Add support for bytemuck by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/336">bitflags/bitflags#336</a></li> <li>Add a top-level macro for filtering attributes by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/341">bitflags/bitflags#341</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/nicholasbishop"><code>@nicholasbishop</code></a> made their first contribution in <a href="https://redirect.github.com/bitflags/bitflags/pull/340">bitflags/bitflags#340</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bitflags/bitflags/compare/2.1.0...2.2.0">https://github.com/bitflags/bitflags/compare/2.1.0...2.2.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
Iban Eguia Moraza | 63d9d67ecb |
Added a Boa runtime (#2743)
This Pull Request fixes/closes #718. It changes the following: - Adds a new `boa_runtime` crate, that will only include `console` for now - Changes the `boa_cli` crate to use the new `boa_runtime` crate for the console, instead of the `console` feature of `boa_engine` - Removes the `console` feature in `boa_engine` - Adds a new `boa_testing` helper crate with some useful functions for testing `boa`. This part duplicates the code from `boa_engine`, but I could not make `boa_engine` work with this crate as a dependency due to circular dependencies. Maybe doing it a bit generic could work, but didn't have enough time to check it. To be checked: wether the WASM example works as expected with the console. |
2 years ago |
Haled Odat | 49e39d42ef |
Fix panic when calling toString with radix (#2863)
This Pull Request fixes/closes #2717 and related to #2479 This was caused by an incorrect to digit conversion. Here are two examples that always cause a panic. They have been added as a test in `number/test.rs` ```js (0.1600057092765239).toString(36) (0.23046743672210102).toString(36) ``` |
2 years ago |
Haled Odat | 72866e217e |
Allow `Date` object to store invalid `NativeDateTime` (#2861)
Part of ES5. This PR allows `Date` objects to store an invalid `NativeDateTime` as a `i64` and check when `getMinutes` (or other methods) call and check if it's valid, like in the spec This was failing some `Date` tests, when calling `new Date(8.64e15)` then calling `getTime()` it was returning `NaN` when it should return the passed value `8640000000000000` (as node does) |
2 years ago |
Haled Odat | 31bc679f9d |
Fix `Date.prototype[Symbol.primitive]` incorrect attributes (#2862)
Part of ES5. This was the last failing test on `Date.prototype[Symbol.primitive]` test suite :) It changes the following: - Fix `Date.prototype[Symbol.primitive]` incorrect attributes |
2 years ago |
José Julián Espina | 53e4825a19 |
Implement var initializers in for-in loops (#2842)
This Pull Request implements [Initializers in ForIn Statement Heads](https://tc39.es/ecma262/#sec-initializers-in-forin-statement-heads) from the Annex B. This also cleans up the "annex-b" feature to be able to disable it with `--no-default-features`, since I couldn't test the error messages when the feature is disabled. |
2 years ago |
Haled Odat | 9159f90725 |
Fix `PropertyKey` index parse (#2843)
Fixes incorrect parsing of index property keys, such as: - `"+0"` is converted to an integer index `0`, should be a string - `"00"` is converted to an integer index `0`, should be a string - `"01"` is converted to an integer index `1`, should be a string |
2 years ago |
José Julián Espina | 739bd5a9cb |
Optimize `String.prototype.normalize` (#2848)
We currently use `unicode_normalization` to handle the `String.prototype.normalize` method. However, the crate doesn't support UTF-16 as a first class string, so we had to do some hacks by converting the valid parts of a string to UTF-8, normalizing each one, encoding back to UTF-16 and concatenating everything with the unpaired surrogates within. All of this is obviously suboptimal for performance, which is why I leveraged the `icu_normalizer`, which does support UTF-16 input, to replace our current implementation. Additionally, this allows users to override the default normalization data if the `intl` feature is enabled by providing the required data in the `BoaProvider` data provider. |
2 years ago |
raskad | 93b52cd6ef |
Catch 'eval' and 'arguments' in setter method parameter (#2858)
This Pull Request changes the following: - Catch 'eval' and 'arguments' in setter method parameter |
2 years ago |
dependabot[bot] | 3db79f61a6 |
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 |
José Julián Espina | 338f6f8176 |
Create a unique `PromiseCapability` on each async function call (#2846)
This Pull Request changes the following: - Creates a new `PromiseCapability` after every async function call instead of sharing the same capability for all calls of the same async function. |
2 years ago |
dependabot[bot] | f97ad0dde7 |
Bump clap from 4.2.3 to 4.2.4 (#2851)
Bumps [clap](https://github.com/clap-rs/clap) from 4.2.3 to 4.2.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.2.4</h2> <h2>[4.2.4] - 2023-04-19</h2> <h3>Documentation</h3> <ul> <li>Corrected docs for <code>Command::style</code></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.2.4] - 2023-04-19</h2> <h3>Documentation</h3> <ul> <li>Corrected docs for <code>Command::style</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
dependabot[bot] | b16aff29d9 |
Bump webpack from 5.79.0 to 5.80.0 (#2850)
Bumps [webpack](https://github.com/webpack/webpack) from 5.79.0 to 5.80.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/webpack/webpack/releases">webpack's releases</a>.</em></p> <blockquote> <h2>v5.80.0</h2> <h2>New Features</h2> <ul> <li>Support destructuring assignment in <code>import.meta</code> by <a href="https://github.com/vankop"><code>@vankop</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16996">webpack/webpack#16996</a></li> <li>Support treeshaking for destructuring assignment with <code>AwaitExpression</code> by <a href="https://github.com/vankop"><code>@vankop</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16995">webpack/webpack#16995</a></li> <li>Introduce <code>errorsSpace</code>, <code>warningsSpace</code> for more readable traces in stats by <a href="https://github.com/vankop"><code>@vankop</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/15450">webpack/webpack#15450</a></li> </ul> <h2>Bug Fixes</h2> <ul> <li>[CSS] - Fix runtime generation bug for merged CSS Chunks by <a href="https://github.com/janlent1"><code>@janlent1</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16903">webpack/webpack#16903</a></li> <li>[CSS] - Properly handle <code>url()</code>/<code>src()</code>/<code>image-set()</code>/<code>image()</code> by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16978">webpack/webpack#16978</a></li> <li>ES Module webpack loaders are now supported <a href="https://github.com/stefanprobst"><code>@stefanprobst</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/15198">webpack/webpack#15198</a></li> <li>Fix spelling error for <code>statement.finalizer</code> in parser by <a href="https://github.com/xiaoboost"><code>@xiaoboost</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/17016">webpack/webpack#17016</a></li> <li>Fix non-deterministic <code>moduleId</code> assignment due to encountering <code>NaN</code> in sort function by <a href="https://github.com/scameron"><code>@scameron</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16933">webpack/webpack#16933</a></li> <li>[enhanced-resolve]: Support wildcards pattern with common suffix in package maps & imports/exports field by <a href="https://github.com/bvanjoi"><code>@bvanjoi</code></a> in <a href="https://redirect.github.com/webpack/enhanced-resolve/pull/353">webpack/enhanced-resolve#353</a></li> </ul> <h2>Tests & Contributor Experience</h2> <ul> <li>[CSS] - Added test case for <code>@supports</code> field by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/17011">webpack/webpack#17011</a></li> <li>Add test for include option in <code>BannerPlugin</code> by <a href="https://github.com/jeffin143"><code>@jeffin143</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/10736">webpack/webpack#10736</a></li> <li>Remove <code>finializer</code> from cspell.json by <a href="https://github.com/snitin315"><code>@snitin315</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/17022">webpack/webpack#17022</a></li> </ul> <h2>Developer Experience</h2> <ul> <li>Adds the twitter badge by <a href="https://github.com/yadunandanbhat"><code>@yadunandanbhat</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/15667">webpack/webpack#15667</a></li> <li>Add <code>wasm-bindgen</code> example to <code>example</code> by <a href="https://github.com/gthb"><code>@gthb</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/14313">webpack/webpack#14313</a></li> <li>Update grammar mistakes in examples by <a href="https://github.com/ersachin3112"><code>@ersachin3112</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16988">webpack/webpack#16988</a></li> </ul> <h2>Dependencies & Maintenance</h2> <ul> <li>Bump core-js from 3.30.0 to 3.30.1 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16983">webpack/webpack#16983</a></li> <li>Bump <code>@webassemblyjs</code> by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/17003">webpack/webpack#17003</a></li> <li>Bump assemblyscript from 0.25.2 to 0.27.2 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16959">webpack/webpack#16959</a></li> <li>Bump enhanced-resolve to <a href="https://github.com/webpack/enhanced-resolve/releases/tag/v5.13.0">5.13.0</a> by <a href="https://github.com/TheLarkInn"><code>@TheLarkInn</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/17024">webpack/webpack#17024</a></li> <li>Included githubactions in the dependabot config by <a href="https://github.com/neilnaveen"><code>@neilnaveen</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/15618">webpack/webpack#15618</a></li> <li>Fix prettier by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16976">webpack/webpack#16976</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/neilnaveen"><code>@neilnaveen</code></a> made their first contribution in <a href="https://redirect.github.com/webpack/webpack/pull/15618">webpack/webpack#15618</a></li> <li><a href="https://github.com/yadunandanbhat"><code>@yadunandanbhat</code></a> made their first contribution in <a href="https://redirect.github.com/webpack/webpack/pull/15667">webpack/webpack#15667</a></li> <li><a href="https://github.com/ersachin3112"><code>@ersachin3112</code></a> made their first contribution in <a href="https://redirect.github.com/webpack/webpack/pull/16988">webpack/webpack#16988</a></li> <li><a href="https://github.com/stefanprobst"><code>@stefanprobst</code></a> made their first contribution in <a href="https://redirect.github.com/webpack/webpack/pull/15198">webpack/webpack#15198</a></li> <li><a href="https://github.com/xiaoboost"><code>@xiaoboost</code></a> made their first contribution in <a href="https://redirect.github.com/webpack/webpack/pull/17016">webpack/webpack#17016</a></li> <li><a href="https://github.com/scameron"><code>@scameron</code></a> made their first contribution in <a href="https://redirect.github.com/webpack/webpack/pull/16933">webpack/webpack#16933</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/webpack/webpack/compare/v5.79.0...v5.80.0">https://github.com/webpack/webpack/compare/v5.79.0...v5.80.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
dependabot[bot] | 7821338a02 |
Bump @wasm-tool/wasm-pack-plugin from 1.6.0 to 1.7.0 (#2849)
Bumps [@wasm-tool/wasm-pack-plugin](https://github.com/wasm-tool/wasm-pack-plugin) from 1.6.0 to 1.7.0. <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/wasm-tool/wasm-pack-plugin/commits">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@wasm-tool/wasm-pack-plugin&package-manager=npm_and_yarn&previous-version=1.6.0&new-version=1.7.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 |
raskad | 54695cc620 |
Fix async generators (#2853)
This Pull Request fixes #2711 and fixes #2671. It changes the following: - Fix the logic in async generator `yield` and `yield*` expressions. |
2 years ago |
José Julián Espina | 65f910523b |
Fix setting properties inside `with` blocks (#2847)
This preserves the semantics of the abstract operation `Set` on `with` blocks; setting non-writable properties on non-strict mode just silently fails. |
2 years ago |
José Julián Espina | 1b67e5d607 |
Implement `Intl.Segmenter` (#2840)
The new ICU4X release stabilized the `icu_segmenter` component, so this PR implements `Intl.Segmenter` using that as a base. Also, I opted for importing `itertools` instead of copy-pasting the implementation of `TupleWindows` because its design is a lot more complex than `Intersperse`, which we copy-pasted previously. Though, I disabled all `std` features of `itertools` to make it a lot more lightweight, so it shouldn't make much difference in compilation times. |
2 years ago |
raskad | 8a29c5025b |
Fix sync generator yield expressions (#2838)
Depends on #2837. This Pull Request changes the following: - Fix the remaining `language/expressions/yield` tests. - Align the sync generator execution more to the spec. This breaks one async generator test. We can ignore that one as async generators are currently very broken. I will try to fix async generators next. |
2 years ago |
José Julián Espina | 40a5ae0a2f |
Fix more Annex B tests (#2841)
This Pull Request fixes some additional Annex B tests. It changes the following: - Fixes bugs related to parsing HTML closing comments (`-->`). - Implements `RegExp::compile` behind the `annex-b` feature. - Ignores the `legacy-regexp` feature flag, since it's still stage 3. |
2 years ago |
dependabot[bot] | 95a81984a0 |
Bump clap from 4.2.2 to 4.2.3 (#2844)
Bumps [clap](https://github.com/clap-rs/clap) from 4.2.2 to 4.2.3. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.2.3</h2> <h2>[4.2.3] - 2023-04-18</h2> <h3>Features</h3> <ul> <li><code>Command::styles</code> for theming help/errors (behind <code>unstable-styles</code>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.2.3] - 2023-04-18</h2> <h3>Features</h3> <ul> <li><code>Command::styles</code> for theming help/errors (behind <code>unstable-styles</code>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
dependabot[bot] | c87cf7c7f4 |
Bump bitflags from 2.1.0 to 2.2.0 (#2845)
Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.1.0 to 2.2.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/bitflags/bitflags/releases">bitflags's releases</a>.</em></p> <blockquote> <h2>2.2.0</h2> <h2>What's Changed</h2> <ul> <li>Create SECURITY.md by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/338">bitflags/bitflags#338</a></li> <li>add docs to describe the behavior of multi-bit flags by <a href="https://github.com/nicholasbishop"><code>@nicholasbishop</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/340">bitflags/bitflags#340</a></li> <li>Add support for bytemuck by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/336">bitflags/bitflags#336</a></li> <li>Add a top-level macro for filtering attributes by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/341">bitflags/bitflags#341</a></li> <li>Prepare for 2.2.0 release by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/342">bitflags/bitflags#342</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/nicholasbishop"><code>@nicholasbishop</code></a> made their first contribution in <a href="https://redirect.github.com/bitflags/bitflags/pull/340">bitflags/bitflags#340</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bitflags/bitflags/compare/2.1.0...2.2.0">https://github.com/bitflags/bitflags/compare/2.1.0...2.2.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md">bitflags's changelog</a>.</em></p> <blockquote> <h1>2.2.0</h1> <h2>What's Changed</h2> <ul> <li>Create SECURITY.md by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/338">bitflags/bitflags#338</a></li> <li>add docs to describe the behavior of multi-bit flags by <a href="https://github.com/nicholasbishop"><code>@nicholasbishop</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/340">bitflags/bitflags#340</a></li> <li>Add support for bytemuck by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/336">bitflags/bitflags#336</a></li> <li>Add a top-level macro for filtering attributes by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/341">bitflags/bitflags#341</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/nicholasbishop"><code>@nicholasbishop</code></a> made their first contribution in <a href="https://redirect.github.com/bitflags/bitflags/pull/340">bitflags/bitflags#340</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bitflags/bitflags/compare/2.1.0...2.2.0">https://github.com/bitflags/bitflags/compare/2.1.0...2.2.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
Iban Eguia Moraza | d288b63847 |
Upgraded to ICU 1.2 (#2826)
This PR upgrades ICU to 1.2. Unfortunately we still have some breaking changes, so this is being handled in https://github.com/unicode-org/icu4x/issues/3332 Co-authored-by: jedel1043 <jedel0124@gmail.com> |
2 years ago |
José Julián Espina | 20f4a82479 |
Improve strictness of `GeneratorState` (#2837)
Just some small improvements that increase the strictness of our generator state handling. Also rollbacks the implementation of `GeneratorValidate` because I forgot to remove it after I did modifications to #2821, and it doesn't make sense to have that if it isn't used by async functions. |
2 years ago |
dependabot[bot] | 4b72c06dbc |
Bump html-webpack-plugin from 5.5.0 to 5.5.1 (#2830)
Bumps [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin) from 5.5.0 to 5.5.1. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/jantimon/html-webpack-plugin/blob/main/CHANGELOG.md">html-webpack-plugin's changelog</a>.</em></p> <blockquote> <h3><a href="https://github.com/jantimon/html-webpack-plugin/compare/v5.5.0...v5.5.1">5.5.1</a> (2023-04-15)</h3> <h3>Bug Fixes</h3> <ul> <li><strong>perf:</strong> defer loading of pretty-error to improve startup time (<a href="https://redirect.github.com/jantimon/html-webpack-plugin/issues/1789">#1789</a>) (<a href=" |
2 years ago |
dependabot[bot] | 74ec5c1f96 |
Bump num_enum from 0.6.0 to 0.6.1 (#2836)
Bumps [num_enum](https://github.com/illicitonion/num_enum) from 0.6.0 to 0.6.1. <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
dependabot[bot] | 249b26214c |
Bump webpack-dev-server from 4.13.2 to 4.13.3 (#2829)
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 4.13.2 to 4.13.3. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/webpack/webpack-dev-server/releases">webpack-dev-server's releases</a>.</em></p> <blockquote> <h2>v4.13.3</h2> <h3><a href="https://github.com/webpack/webpack-dev-server/compare/v4.13.2...v4.13.3">4.13.3</a> (2023-04-15)</h3> <h3>Bug Fixes</h3> <ul> <li><strong>perf:</strong> reduced initial start time (<a href="https://redirect.github.com/webpack/webpack-dev-server/issues/4818">#4818</a>) (<a href=" |
2 years ago |
dependabot[bot] | 8e05aa56d4 |
Bump test262 from `f756ff6` to `e5a7450` (#2833)
Bumps [test262](https://github.com/tc39/test262) from `f756ff6` to `e5a7450`. <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
Iban Eguia Moraza | b1f4e0db6b |
Updated README (#2825)
This Pull Request updates the README by including the latest output of the `--help` command line argument in boa_cli. |
2 years ago |
José Julián Espina | 9dc4dd1410 |
Add hooks to get the current time and timezone (#2824)
This Pull Request changes the following: - Adds two new hooks to `HostHooks` to access the current UTC time and the current timezone offset. - Replaces usages of `Local` with the host hook. - Replaces usages of `Utc::now` and `Local::now` with the hooks. cc @lastmjs |
2 years ago |
José Julián Espina | a12f10e335 |
Implement `String.prototype.toLocaleUpper/LowerCase` (#2822)
This fixes some more ES5 tests that were failing because the functions haven't been implemented. It changes the following: - Adds `String::to_locale_case`, which uses ICU4X to convert strings to uppercase or lowercase. - Refactors `String::to_uppercase` and `String::to_lowercase` into a single `String::to_case` which uses a const generic to distinguish each case. - Adds utility functions on `JsString` to avoid code repetition. |
2 years ago |
dependabot[bot] | 4a5d59da9a |
Bump webpack from 5.78.0 to 5.79.0 (#2814)
Bumps [webpack](https://github.com/webpack/webpack) from 5.78.0 to 5.79.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/webpack/webpack/releases">webpack's releases</a>.</em></p> <blockquote> <h2>v5.79.0</h2> <h2>New Features</h2> <ul> <li>webpack will now support simple destructuring scenarios for treeshaking namespaced imports and <code>DefinePlugin</code> by <a href="https://github.com/vankop"><code>@vankop</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16941">webpack/webpack#16941</a></li> </ul> <h2>Bugfixes</h2> <ul> <li>Truncate extremely long module names in <code>DefaultStatsPrinter</code> by <a href="https://github.com/snitin315"><code>@snitin315</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16882">webpack/webpack#16882</a></li> <li>Add <code>[contenthash]</code> template support in <code>DllPlugin</code>'s <code>name</code> option by <a href="https://github.com/snitin315"><code>@snitin315</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16935">webpack/webpack#16935</a></li> <li>Fixed a bug where <code>readRecords</code> compiler hook was causing hangs in conjunction with the <code>ReadRecordsPlugin</code> by <a href="https://github.com/snitin315"><code>@snitin315</code></a> & <a href="https://github.com/zookatron"><code>@zookatron</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16944">webpack/webpack#16944</a></li> <li>webpack can now consume ESM bundles generated by webpack's esm output support by <a href="https://github.com/vankop"><code>@vankop</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/15608">webpack/webpack#15608</a></li> <li>[CSS] - webpack now respects CSS's case-insensitivity with atTags like <code>@MEDIA</code> by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16915">webpack/webpack#16915</a></li> <li>[CSS] - Fixes a bug where crossOriginLoading anonymous would not work when loading styles by <a href="https://github.com/chenjiahan"><code>@chenjiahan</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16925">webpack/webpack#16925</a></li> </ul> <h2>Developer Experience</h2> <ul> <li>Fix broken links and typos found in examples by <a href="https://github.com/snitin315"><code>@snitin315</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16937">webpack/webpack#16937</a></li> <li>Export more <code>Externals</code> Option types by <a href="https://github.com/snitin315"><code>@snitin315</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/12774">webpack/webpack#12774</a></li> </ul> <h2>Contributor Experience</h2> <ul> <li>Add new test case for ModuleFederationPlugin usage with <code>shareScope</code> option by <a href="https://github.com/snitin315"><code>@snitin315</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16943">webpack/webpack#16943</a></li> <li>Bump core-js from 3.20.3 to 3.30.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16905">webpack/webpack#16905</a></li> <li>Update all applicable local dependencies and devDependencies by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16919">webpack/webpack#16919</a>, <a href="https://redirect.github.com/webpack/webpack/pull/16924">webpack/webpack#16924</a>, <a href="https://redirect.github.com/webpack/webpack/pull/16936">webpack/webpack#16936</a>, <a href="https://redirect.github.com/webpack/webpack/pull/16968">webpack/webpack#16968</a></li> <li>Update to Jest 29 by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/16947">webpack/webpack#16947</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/chenjiahan"><code>@chenjiahan</code></a> made their first contribution in <a href="https://redirect.github.com/webpack/webpack/pull/16925">webpack/webpack#16925</a></li> <li><a href="https://github.com/karlhorky"><code>@karlhorky</code></a> made their first contribution in <a href="https://redirect.github.com/webpack/webpack/pull/16419">webpack/webpack#16419</a></li> <li><a href="https://github.com/zookatron"><code>@zookatron</code></a> made their first contribution in <a href="https://redirect.github.com/webpack/webpack/pull/16301">webpack/webpack#16301</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/webpack/webpack/compare/v5.78.0...v5.79.0">https://github.com/webpack/webpack/compare/v5.78.0...v5.79.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
José Julián Espina | 6d3550d0cb |
Implement async functions using generators (#2821)
This should hopefully fix more async/futures issues related to resuming execution in the future, since we can leverage generator logic to handle this for us. It changes the following: - Refactors `GeneratorContext` to handle context preparation. - Reuses the functionality of `GeneratorContext` in `Await`. - Removes `EarlyReturnType` in favour of a single `r#await` bool flag in `CallFrame`. |
2 years ago |
dependabot[bot] | 236012d853 |
Bump serde_json from 1.0.95 to 1.0.96 (#2815)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.95 to 1.0.96. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/json/releases">serde_json's releases</a>.</em></p> <blockquote> <h2>v1.0.96</h2> <ul> <li>Guarantee that <code>to_writer</code> only writes valid UTF-8 strings (<a href="https://redirect.github.com/serde-rs/json/issues/1011">#1011</a>, thanks <a href="https://github.com/stepancheg"><code>@stepancheg</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
dependabot[bot] | 841481803a |
Bump syn from 2.0.14 to 2.0.15 (#2820)
Bumps [syn](https://github.com/dtolnay/syn) from 2.0.14 to 2.0.15. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/syn/releases">syn's releases</a>.</em></p> <blockquote> <h2>2.0.15</h2> <ul> <li>Ensure <code>Type::Tuple</code> of length 1 prints as a tuple even if trailing comma is not provided in the Punctuated (<a href="https://redirect.github.com/dtolnay/syn/issues/1444">#1444</a>, thanks <a href="https://github.com/Fancyflame"><code>@Fancyflame</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
dependabot[bot] | 78bc105add |
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 |
José Julián Espina | 460051261a |
Implement HTML comments and gate behind the `annex-b` feature (#2817)
Small steps towards ES5 conformance. This PR changes the following: - Implements HTML comments parsing (`<!--`, `-->`). - Gates the functionality behind a new `annex-b` feature for `boa_parser`. - Renames `strict_mode` to `strict` to be consistent with `Parser::set_strict`. |
2 years ago |
dependabot[bot] | b6f929508d |
Bump clap from 4.2.1 to 4.2.2 (#2818)
Bumps [clap](https://github.com/clap-rs/clap) from 4.2.1 to 4.2.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.2.2</h2> <h2>[4.2.2] - 2023-04-13</h2> <h3>Internal</h3> <ul> <li>Update dependencies</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.2.2] - 2023-04-13</h2> <h3>Internal</h3> <ul> <li>Update dependencies</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
Haled Odat | bfa9815fe7 |
Fix `TypedArray`s minus zero key (#2808)
It changes the following: - Fix `-0` index in typed arrays |
2 years ago |
dependabot[bot] | e012d2223a |
Bump h2 from 0.3.16 to 0.3.17 (#2816)
Bumps [h2](https://github.com/hyperium/h2) from 0.3.16 to 0.3.17. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/hyperium/h2/releases">h2's releases</a>.</em></p> <blockquote> <h2>v0.3.17</h2> <h2>What's Changed</h2> <ul> <li>Add <code>Error::is_library()</code> method to check if the originated inside <code>h2</code>.</li> <li>Add <code>max_pending_accept_reset_streams(usize)</code> option to client and server builders.</li> <li>Fix theoretical memory growth when receiving too many HEADERS and then RST_STREAM frames faster than an application can accept them off the queue. (CVE-2023-26964)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/hyperium/h2/blob/master/CHANGELOG.md">h2's changelog</a>.</em></p> <blockquote> <h1>0.3.17 (April 13, 2023)</h1> <ul> <li>Add <code>Error::is_library()</code> method to check if the originated inside <code>h2</code>.</li> <li>Add <code>max_pending_accept_reset_streams(usize)</code> option to client and server builders.</li> <li>Fix theoretical memory growth when receiving too many HEADERS and then RST_STREAM frames faster than an application can accept them off the queue. (CVE-2023-26964)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
José Julián Espina | 0d6ba53ff2 |
Allow passing owned `HostHooks` and `JobQueues` to `Context` (#2811)
This allows `thread_local` contexts to have owned `HostHooks` and `JobQueues`. It changes the following: - Creates a new `MaybeShared` struct that can hold either a reference or an `Rc`. - Changes the `job_queue` and `host_hooks` parameters of `Context` to use `MaybeShared`. This PR also allows us to make `SimpleJobQueue` the default promise runner, which I think it's pretty cool :) cc @lastmjs |
2 years ago |