Alistair
89fd3becfc
`[[HostDefined]]` Improvements ( #3460 )
...
* Refactor the `[[HostDefined]]` implementation.
Currently `[[HostDefined]]` doesn't permit you to mutably borrow two objects from the `[[HostDefined]]` field since the `FxHashMap` is wrapped under a `GcRefCell`.
This commit implements a `get_mut_many` (from `hashbrown`'s `HashMap`) method to permit accessing several `NativeObject`s using a `NativeTuple`.
Additionally, this commit takes the opportunity to provide automatic downcasting on the `insert` and `remove` methods for `[[HostDefined]]`.
* Update `[[HostDefined]]` example.
12 months ago
José Julián Espina
baa4f9893b
Simplify all extensions APIs of `Context` ( #3456 )
12 months ago
Kevin
f551af9386
Progress on Duration's round/total method updates ( #3451 )
...
* Update round and total method
* Apply review
* Cargo fmt
* validate rounding increment to u64
1 year ago
dependabot[bot]
ebb0f1d4a1
Bump futures-lite from 2.0.0 to 2.0.1 ( #3454 )
...
Bumps [futures-lite](https://github.com/smol-rs/futures-lite ) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/smol-rs/futures-lite/releases )
- [Changelog](https://github.com/smol-rs/futures-lite/blob/master/CHANGELOG.md )
- [Commits](https://github.com/smol-rs/futures-lite/compare/v2.0.0...v2.0.1 )
---
updated-dependencies:
- dependency-name: futures-lite
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
1e90f56ec3
Prevent `DefVar` opcode emit for global binding ( #3453 )
1 year ago
Kevin
34d5c519ea
Duration methods and some cleanup ( #3443 )
1 year ago
Haled Odat
857033a42e
Move parameter environment creation to opcode ( #3433 )
1 year ago
Haled Odat
329bf3b299
Move `arguments` object creation to opcode ( #3432 )
1 year ago
Haled Odat
2c12bae7b6
Unify generator and ordinary function creation ( #3441 )
...
* Unify generator and ordinary function creation
* Remove GetGenerator opcode
* Remove GetArrowFunction opcode
1 year ago
dependabot[bot]
ef53108ceb
Bump web-time from 0.2.2 to 0.2.3 ( #3445 )
...
Bumps [web-time](https://github.com/daxpedda/web-time ) from 0.2.2 to 0.2.3.
- [Release notes](https://github.com/daxpedda/web-time/releases )
- [Changelog](https://github.com/daxpedda/web-time/blob/main/CHANGELOG.md )
- [Commits](https://github.com/daxpedda/web-time/compare/v0.2.2...v0.2.3 )
---
updated-dependencies:
- dependency-name: web-time
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
04ed7bee70
Implement `Atomics` builtin ( #3394 )
...
* Implement `Atomics` builtin
* Apply review
1 year ago
Haled Odat
b4644a5b87
Move `FunctionKind` to `CodeBlock` ( #3440 )
...
* Move `FunctionKind` flag to CodeBlock
* Add `IS_ARROW` flag to codeblock
* Remove GetAsyncArrowFunction and GetFunctionAsync opcodes
* Remove GetGeneratorAsync opcode
1 year ago
Haled Odat
4b8ca7652c
Move ordinary function [[ConstructorKind]] to CodeBlock ( #3439 )
1 year ago
dependabot[bot]
8a5ae7c80f
Bump num_enum from 0.7.0 to 0.7.1 ( #3434 )
...
Bumps [num_enum](https://github.com/illicitonion/num_enum ) from 0.7.0 to 0.7.1.
- [Commits](https://github.com/illicitonion/num_enum/commits )
---
updated-dependencies:
- dependency-name: num_enum
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
dependabot[bot]
3ac1205c81
Bump portable-atomic from 1.5.0 to 1.5.1 ( #3436 )
...
Bumps [portable-atomic](https://github.com/taiki-e/portable-atomic ) from 1.5.0 to 1.5.1.
- [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.5.0...v1.5.1 )
---
updated-dependencies:
- dependency-name: portable-atomic
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
fee4048b4c
Merge `CodeBlock` constant pools ( #3413 )
...
* Merge `CodeBlock` constant pools
* Apply review
1 year ago
dependabot[bot]
7bd10b6897
Bump futures-lite from 1.13.0 to 2.0.0 ( #3422 )
...
Bumps [futures-lite](https://github.com/smol-rs/futures-lite ) from 1.13.0 to 2.0.0.
- [Release notes](https://github.com/smol-rs/futures-lite/releases )
- [Changelog](https://github.com/smol-rs/futures-lite/blob/master/CHANGELOG.md )
- [Commits](https://github.com/smol-rs/futures-lite/compare/v1.13.0...v2.0.0 )
---
updated-dependencies:
- dependency-name: futures-lite
dependency-type: direct:production
update-type: version-update:semver-major
...
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
06bb7dea80
Disallow changing type of already created objects ( #3410 )
...
* Disallow changing type of already created objects
* Fix regressions
* Fix spec steps
* Rollback restrictions and add new conversion
1 year ago
José Julián Espina
1fa7eb5f03
Implement the `array-grouping` proposal ( #3420 )
1 year ago
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