José Julián Espina
432deeee5f
Implement `change-array-by-copy` methods ( #3412 )
...
* Implement `change-array-by-copy` methods
* Apply review
1 year ago
dependabot[bot]
211f8a7be7
Bump portable-atomic from 1.4.3 to 1.5.0 ( #3416 )
...
Bumps [portable-atomic](https://github.com/taiki-e/portable-atomic ) from 1.4.3 to 1.5.0.
- [Release notes](https://github.com/taiki-e/portable-atomic/releases )
- [Changelog](https://github.com/taiki-e/portable-atomic/blob/main/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/portable-atomic/compare/v1.4.3...v1.5.0 )
---
updated-dependencies:
- dependency-name: portable-atomic
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 year ago
Haled Odat
cec98927f3
Implement `get/set $boa.limits.stack` ( #3385 )
1 year ago
阿豪
caac9049c4
Fix Array.join when the array contains itself ( #3406 )
...
* Fix Array.join when the array contains itself
* add test
1 year ago
José Julián Espina
26d14a8463
Optimize `shift` for dense arrays ( #3405 )
...
* Optimize `Array.prototype.shift` for dense arrays
* Optimize shifts for dense arrays
1 year ago
dependabot[bot]
a2b5885855
Bump thiserror from 1.0.49 to 1.0.50 ( #3404 )
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.49 to 1.0.50.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.49...1.0.50 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 year ago
José Julián Espina
f71039d9ed
Fix compilation for targets without `AtomicU64` ( #3399 )
...
* Fix compilation for targets without `AtomicU64`
* Throw compilation error if `AtomicUsize` is not available
* Apply review pt. 1
* Apply review pt. 2
* fix comment
1 year ago
José Julián Espina
9ef368f170
Implement asynchronous evaluation of scripts ( #3044 )
...
* Implement asynchronous evaluation of scripts
* cargo fmt
* FIx fuzz build
* Reduce execution table size
---------
Co-authored-by: Haled Odat <8566042+HalidOdat@users.noreply.github.com>
1 year ago
José Julián Espina
3296f87f18
Introduce a thread safe version of `JsError` ( #3398 )
1 year ago
Haled Odat
1d66836a32
Refactor ordinary VM calling ( #3295 )
...
* Refactor ordinary VM calling
- Prevent recursing in `__call__` and `__construct__` internal methods
* Apply review
* Refactor `Context::run()`
* Fix typo
* Apply review
1 year ago
Alistair
b6ff65885e
Add `Context::create_realm`. ( #3369 )
...
Provides a function for creating Realms with the default global bindings.
1 year ago
raskad
9030417a28
Fix var declaration deleted binding locator ( #3387 )
1 year ago
José Julián Espina
dd05f53468
Implement `SharedArrayBuffer` ( #3384 )
...
* Implement `SharedArrayBuffer`
* Add small documentation
* Fix docs
* Apply review
1 year ago
José Julián Espina
3177540979
Implement synthetic modules ( #3294 )
...
* Implement synthetic modules
* Add example
* Fix example
1 year ago
arexon
afb9283ce8
Implement `[[HostDefined]]` for `Module` and `Script` ( #3381 )
...
* Implement `[[HostDefined]]` for `Module` and `Script`
* Format
1 year ago
Haled Odat
24c290aa34
Evaluate all parts of `class` in strict mode ( #3383 )
...
[11.2.2 Strict Mode Code](https://tc39.es/ecma262/#sec-strict-mode-code )
- All parts of a `ClassDeclaration` or a `ClassExpression` are strict mode code.
1 year ago
Kevin
a6e488e3b5
Update feature flags to specific feature flag ( #3376 )
1 year ago
Kevin
d281988986
First portion of the Temporal implementation ( #3277 )
...
* Started with the Temporal implementation
* Implemented some useful functions
* Updaating some spec references
* Initial work on TimeZone and Instant
* More work completed on Temporal.Duration and Temporal.Instant
* General scaffolding and heavy work on Instant and Duration complete
* ZonedDateTime and Calendar started with further work on duration abstract ops
* Further work on temporal work and clippy fixes
* Post rebase fixes/reverts
* Add BuiltinCalendar and begin IsoCalendar impl
* More work completed on calendar/date/yearmonth/monthday
* Calendar and iso impl close to completion - no datelike parsing
* Initial work on temporal ISO8601 parsing and grammar
* Post rebase fixes and updates
* More on parser/Duration and work through clippy lints
* Fix bug on peek_n and add temporal cfg
* Fix clippy lints on parser tests
* Build out calendar with icu_calendar, add some tests, and misc.
* Fix spec hyperlinks
* Parser clean up and invalid annotations
* Add Duration and Temporal Parsing
* Remove IsoYearMonthRecord
* Post rebase update
* Fix and add to ISO Parser docs
* Parser/ast cleanup and duration refactor/additions
* Review feedback, options update, and duration changes
* Review changes, general cleanup, and post rebase fixes
* Fix time zone parsing issue/test logic
* Clean up parse output nodes
* Apply review feedback and various fixes
* Review feedback and get_option changes
* Review feedback
---------
Co-authored-by: Iban Eguia Moraza <razican@protonmail.ch>
Co-authored-by: José Julián Espina <jedel0124@gmail.com>
1 year ago
Haled Odat
8470214647
Check `eval` realm before call ( #3375 )
1 year ago
Haled Odat
72d2546259
Fix `Function.prototype.toString()` ( #3374 )
...
* Fix `Function.prototype.toString()`
* Add doc
1 year ago
raskad
f654ad1784
Refactor compile time environment handling ( #3365 )
...
* Refactor compile time environment handling
* Apply review
* Apply review
1 year ago
José Julián Espina
a56ce510d3
Fix new lints for Rust 1.73 ( #3361 )
1 year ago
Haled Odat
8ae39afb53
Fix `Number.prototype.toFixed()` ( #2898 )
...
* Fix `Number.prototype.toFixed()`
* Add more tests
* Update ryu-js version
1 year ago
José Julián Espina
c56a70600b
Cleanup `get_option` and calls to the functioncar ( #3355 )
1 year ago
Haled Odat
a51581bf94
Make environments opcodes use varying operands ( #3340 )
1 year ago
José Julián Espina
acdc5f4500
Fix detection of runtime limits for accessors ( #3335 )
...
* Fix detection of runtime limits for function calls
* Fix tests
* Add additional checks and extract function
* cargo fmt
* Fix build
1 year ago
raskad
38b9f17a8b
Remove unused class environments ( #3332 )
1 year ago
raskad
55466b0fea
Fix static class element evaluation order ( #3327 )
1 year ago
Haled Odat
744536763d
Separate native and JavaScript functions ( #3322 )
1 year ago
Haled Odat
ceaaec72cb
Fix super() construction with default parameters ( #3339 )
...
- Remove unused `PushDeclarativeEnvironment` opcode
1 year ago
Haled Odat
4bdb6c6fe5
Fix regular expression construction ( #3338 )
...
* Fix regular expression construction
The previous implementation regular expression (e.g. /abc/) used the global `RegExp`,
which caused errors when the `RegExp` was overwritten.
* Apply Review
1 year ago
José Julián Espina
d8f6834d5f
Improve CI testing ( #3333 )
...
* Improve CI testing
* Bail on error
* cargo fmt
* Invert names
* Split misc action
* Rename some actions
1 year ago
Haled Odat
e54609e784
Truncate environment stack on non-caught native error ( #3331 )
...
* Truncate environment stack on non-caught native error
* Add test
1 year ago
raskad
8fd474419b
Add missing class name binding ( #3328 )
1 year ago
raskad
ca37aa2e7c
Add `NonMaxU32` as integer variant for `PropertyKey` ( #3321 )
...
* Add max array index
* Apply review
* Switch to u32
* Mark function as unsafe
1 year ago
José Julián Espina
b03aa360f8
Introduce a `Class` map ( #3315 )
...
* Improve `Class` and `ClassBuilder` ergonomics
* Fix tests
* Apply review
* Fix docs
1 year ago
Haled Odat
332fd658a8
Varying length instruction operands ( #3253 )
...
* Implement varying length operands
* Apply review
* Apply review
1 year ago
José Julián Espina
b80409d87d
Remove direct conversion from `&str` to `JsValue`/`PropertyKey`. ( #3319 )
...
* Remove direct conversion from `&str` to `JsValue`/`PropertyKey`.
* Allow unused static strings
* Introduce DHAT to benchmark data usage
* Create new release profile
* Fix docs
1 year ago
José Julián Espina
615ae4e096
Introduce experimental features ( #3318 )
...
* Introduce experimental features
* Fix tests
1 year ago
José Julián Espina
ae414797af
Format code snippets in docs ( #3317 )
1 year ago
dependabot[bot]
a23335b550
Bump thiserror from 1.0.48 to 1.0.49 ( #3316 )
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.48 to 1.0.49.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.48...1.0.49 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 year ago
Haled Odat
822634cf41
Implement `[[HostDefined]]` field on `Realm`s ( #2952 )
...
- Improve HostDefined field to allow multiple stored types
1 year ago
José Julián Espina
940e603d3b
Migrate to workspace deps ( #3313 )
...
* Migrate to workspace deps
* cargo fmt
1 year ago
José Julián Espina
57604ae0cb
Bump ICU4X to 1.3 ( #3306 )
...
* Bump ICU4X to 1.3
* Fix build on --no-default-features
* Fix wasm build
* Fix tests
* Add locale resolver hack
* Fix panics
* Pin ICU4X related deps to minor versions
1 year ago
Haled Odat
60c9583c98
Fix class inherit from `null` ( #3312 )
1 year ago
José Julián Espina
0bb51b189e
Replace #[deny] with #[warn] ( #3309 )
...
* Change deny lints to warn lints
* Deny warnings on CI
1 year ago
Matthias Seitz
a7ffa00ae9
fix: add 'static lifetime ( #3297 )
1 year ago
Haled Odat
fd2e5589ce
Fix tagged template `this` in strict mode ( #3307 )
...
In strict mode `this` should be undefined.
1 year ago
Haled Odat
1b03f8379c
Implement step 5 in RegExp constructor ( #3305 )
...
The following step was missing from our `RegExp` constructor implementation:
```
5. Else if patternIsRegExp is true, then
a. Let P be ? Get(pattern, "source").
b. If flags is undefined, then
i. Let F be ? Get(pattern, "flags").
c. Else,
i. Let F be flags.
```
1 year ago
José Julián Espina
25c120b5f5
Implement `Intl.PluralRules` ( #3298 )
...
* Implement `PluralRules`
* cargo fmt
* Move options utils to builtins module
* Fix docs
* Apply review
1 year ago