mirror of https://github.com/boa-dev/boa.git
Tree:
9dc4dd1410
add-vhs-ci
benchmarks
control-flow-graph
dependabot/cargo/rust-dependencies-fd1ddd1272
dependabot/cargo/rustls-0.23.18
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 }
12 Commits (9dc4dd14100d82725453ef2d9f7a311aa4be6662)
Author | SHA1 | Message | Date |
---|---|---|---|
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 |
Iban Eguia Moraza | 540aa2be4f |
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 |
Kevin | e9daa3dd8d |
Add boa logo to remaining hosted docs (#2740)
<!--- Thank you for contributing to Boa! Please fill out the template below, and remove or add any information as you feel necessary. ---> This pr adds the boa doc `html_logo_url` and `html_favicon_url` on the pages missing the logo for boa's hosted docs. |
2 years ago |
dependabot[bot] | f7db12a7a9 |
Bump simple_logger from 4.0.0 to 4.1.0 (#2713)
Bumps [simple_logger](https://github.com/borntyping/rust-simple_logger) from 4.0.0 to 4.1.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/borntyping/rust-simple_logger/releases">simple_logger's releases</a>.</em></p> <blockquote> <h2>v4.1.0</h2> <h2>What's Changed</h2> <ul> <li>Customizable timestamps format by <a href="https://github.com/ctaoist"><code>@ctaoist</code></a> in <a href="https://redirect.github.com/borntyping/rust-simple_logger/pull/79">borntyping/rust-simple_logger#79</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/borntyping/rust-simple_logger/compare/v4.0.0...v4.1.0">https://github.com/borntyping/rust-simple_logger/compare/v4.0.0...v4.1.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
dependabot[bot] | 4ca067a16c |
Bump once_cell from 1.17.0 to 1.17.1 (#2602)
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.17.0 to 1.17.1. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/matklad/once_cell/blob/master/CHANGELOG.md">once_cell's changelog</a>.</em></p> <blockquote> <h2>1.17.1</h2> <ul> <li>Make <code>OnceRef</code> implementation compliant with <a href="https://github-redirect.dependabot.com/rust-lang/rust/issues/95228">strict provenance</a>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
dependabot[bot] | 3c59a3ac5f |
Bump icu_datagen from 1.1.0 to 1.1.1 (#2583)
Bumps [icu_datagen](https://github.com/unicode-org/icu4x) from 1.1.0 to 1.1.1. <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=icu_datagen&package-manager=cargo&previous-version=1.1.0&new-version=1.1.1)](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 | b7782ab2c7 |
Fix failing collator tests (#2575)
This Pull Request fixes the regressed tests caused by the ICU4X version bump. |
2 years ago |
raskad | aa8e0c55dd |
Update icu dependencies (#2574)
This Pull Request changes the following: - Update icu dependencies - Regenerate icu data |
2 years ago |
José Julián Espina | 097f85e409 |
First batch of `no_std` support for some sub-crates (#2544)
<!--- Thank you for contributing to Boa! Please fill out the template below, and remove or add any information as you feel necessary. ---> This Pull Request enables support for `no_std` targets on some of our sub-crates. I intentionally left out `boa_ast` and `boa_cli` because they're the largest crates we have after `boa_engine`. `boa_gc` is a monster on its own, because we'll need to design a `no_std` multithreaded GC. Anyways, this changes the following: - Adds support for `no_std` on `boa_unicode`. - Adds support for `no_std` on `boa_profiler`. - Adds support for `no_std` on `boa_interner`. - Adds support for `no_std` on `boa_icu_provider`. |
2 years ago |
dependabot[bot] | 5aac69c27d |
Bump once_cell from 1.16.0 to 1.17.0 (#2510)
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.16.0 to 1.17.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/matklad/once_cell/blob/master/CHANGELOG.md">once_cell's changelog</a>.</em></p> <blockquote> <h2>1.17.0</h2> <ul> <li>Add <code>race::OnceRef</code> for storing a <code>&'a T</code>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
2 years ago |
José Julián Espina | 81680ff5c4 |
Pass locale data provider by ref instead of boxing (#2508)
This change is actually pretty simple, but since now we have to pass a lifetime parameter to all references of `Context`, it touches a lot of files. Relevant changes: - https://github.com/boa-dev/boa/pull/2508/files#diff-73e17259d77e5fbef83b2bdbbe4dc40a912f807472287f7f45b77e0cbf78792d - https://github.com/boa-dev/boa/pull/2508/files#diff-e7ebcd61f7a01c432b62e1742a6cfd8e28326a1f2b6afb37ba66d4964b3db521 - https://github.com/boa-dev/boa/pull/2508/files#diff-7b2a85f5aa9b5a8070e04e87a67b4f7cc700a43a520e0d6cc6e0b701711ccb7c - https://github.com/boa-dev/boa/pull/2508/files#diff-872037c107c01bf644ede412e4802b3eefeb5a70ce595c441f75651d45111b2a - https://github.com/boa-dev/boa/pull/2508/files#diff-a665b3b6f564521875fd0d725bffbc4f0cc84e5feefdc5fd875fd943e56311cd - https://github.com/boa-dev/boa/pull/2508/files#diff-3e1f19581f227120ddc3334fd0450152b767811c9b6cb4048581347fcd9fc91d - https://github.com/boa-dev/boa/pull/2508/files#diff-5fe65193a910618375d9575d918cd584430437ee2738a987c92068dea3117297 - https://github.com/boa-dev/boa/pull/2508/files#diff-4ce8770f8aaf50785ece12a9a15b781a544bfc47f080e2ff62ddfb18264a44ef All the other changes are just replacing `Context` with `Context<'_>`. |
2 years ago |
José Julián Espina | 3bf5de2929 |
Redesign Intl API and implement some services (#2478)
This Pull Request fixes/closes #1180. (I'll open a tracking issue for the progress) It changes the following: - Redesigns the internal API of Intl to (hopefully!) make it easier to implement a service. - Implements the `Intl.Locale` service. - Implements the `Intl.Collator` service. - Implements the `Intl.ListFormat` service. On the subject of the failing tests. Some of them are caused by missing locale data in the `icu_testdata` crate; we would need to regenerate that with the missing locales, or vendor a custom default data. On the other hand, there are some tests that are bugs from the ICU4X crate. The repo https://github.com/jedel1043/icu4x-test262 currently tracks the found bugs when running test262. I'll sync with the ICU4X team to try to fix those. cc @sffc |
2 years ago |