Individual commit stats
AK: Adopt mimalloc v2 as main allocator
- Rust changes: 51 insertions, 0 deletions
- Non-Rust Code changes: 228 insertions, 55 deletions
- Non-code changes: 58 insertions, 1 deletions
- New Rust ratio: 29.47976878612717%
Meta: Remove ENABLE_RUST build configuration option
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 9 insertions, 25 deletions
- Non-code changes: 15 insertions, 25 deletions
- New Rust ratio: -0.0%
LibJS: Handle empty UTF-16 strings in Rust FFI
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 19 insertions, 11 deletions
- Non-code changes: 11 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Retry Unicode low-surrogate lastIndex positions
- Rust changes: 9 insertions, 0 deletions
- Non-Rust Code changes: 61 insertions, 17 deletions
- Non-code changes: 41 insertions, 0 deletions
- New Rust ratio: 20.454545454545457%
LibRegex: Preserve negated class direction in lookbehind
- Rust changes: 5 insertions, 4 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 29 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Leave suffix minima for repeated simple loops
- Rust changes: 227 insertions, 100 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 29 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Honor wrapped start anchors in search hints
- Rust changes: 51 insertions, 30 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 23 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Clamp braced quantifier bounds to 2^31 - 1
- Rust changes: 5 insertions, 6 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 41 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Compare set operands by exact string length
- Rust changes: 192 insertions, 45 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 8 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Reject mixed surrogate forms in RegExp names
- Rust changes: 5 insertions, 5 deletions
- Non-Rust Code changes: 212 insertions, 0 deletions
- Non-code changes: 108 insertions, 0 deletions
- New Rust ratio: 0.0%
Meta: Make Rust FFI headers reproducible
- Rust changes: 22 insertions, 4 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 68 insertions, 7 deletions
- New Rust ratio: 0%
LibWeb: Remove spin_until from check_if_unloading_is_canceled()
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 402 insertions, 287 deletions
- Non-code changes: 1 insertions, 1 deletions
- New Rust ratio: 0.0%
LibRegex: Reject bare ranges in /v set operations
- Rust changes: 13 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 4 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Respect V8 astral literal lastIndex behavior
- Rust changes: 23 insertions, 0 deletions
- Non-Rust Code changes: 15 insertions, 1 deletions
- Non-code changes: 14 insertions, 0 deletions
- New Rust ratio: 164.28571428571428%
LibRegex: Keep empty-match surrogate candidates
- Rust changes: 46 insertions, 4 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 15 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Fix backward greedy lookbehind backtracking
- Rust changes: 10 insertions, 2 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 8 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Fix greedy \w and \W ignore-case handling
- Rust changes: 1 insertions, 2 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 6 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Fix RegExp.prototype.test ignoring overridden prototype exec
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 9 insertions, 2 deletions
- Non-code changes: 20 insertions, 0 deletions
- New Rust ratio: 0.0%
LibRegex: Restore broad ECMA-262 test coverage
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 431 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibRegex: Fail fast when matches need a missing literal
- Rust changes: 75 insertions, 11 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 6 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Collapse simple `a|a?`-style disjunctions
- Rust changes: 35 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 6 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Fix greedy lookbehind backtracking boundaries
- Rust changes: 8 insertions, 6 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 7 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Preserve captures when loops reject empty matches
- Rust changes: 14 insertions, 19 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 13 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Remove stale GreedyLoop snapshot comment
- Rust changes: 0 insertions, 1 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Restore capture state during loop backtracking
- Rust changes: 38 insertions, 11 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 9 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Avoid widening ASCII regex input
- Rust changes: 435 insertions, 175 deletions
- Non-Rust Code changes: 65 insertions, 40 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 1040.0%
LibJS: Validate regex literals during parsing
- Rust changes: 9 insertions, 115 deletions
- Non-Rust Code changes: 0 insertions, 6 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibRegex: Remove the legacy C++ ECMA-262 engine
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 151 insertions, 13289 deletions
- Non-code changes: 12 insertions, 16 deletions
- New Rust ratio: -0.0%
LibJS+LibRegex: Switch RegExp over to the Rust engine
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 720 insertions, 762 deletions
- Non-code changes: 81 insertions, 17 deletions
- New Rust ratio: -0.0%
LibRegex: Add ECMAScriptRegex and migrate callers
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 368 insertions, 89 deletions
- Non-code changes: 15 insertions, 202 deletions
- New Rust ratio: 0.0%
LibRegex/Rust: Add the ECMA-262 regex engine
- Rust changes: 7564 insertions, 0 deletions
- Non-Rust Code changes: 870 insertions, 0 deletions
- Non-code changes: 96 insertions, 27 deletions
- New Rust ratio: 869.4252873563219%
Tests: Import V8 and WebKit regexp suites
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 18972 insertions, 0 deletions
- New Rust ratio: 0%
AK: Guard JSON parser against deep nesting
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 43 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibWeb/HTML: Make more events trusted
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 6 insertions, 3 deletions
- Non-code changes: 48 insertions, 0 deletions
- New Rust ratio: 0.0%
LibWeb/HTML: Make form submit event trusted
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 2 insertions, 2 deletions
- Non-code changes: 180 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Remove C++ pipeline compatibility hacks from Rust codegen
- Rust changes: 203 insertions, 223 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 6 insertions, 6 deletions
- New Rust ratio: 0%
LibJS: Improve bytecode executable dump format
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 142 insertions, 62 deletions
- Non-code changes: 7334 insertions, 4680 deletions
- New Rust ratio: 0.0%
LibJS: Add more early errors in Rust parser
- Rust changes: 70 insertions, 5 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Reject arguments/eval in strict mode destructuring and arrows
- Rust changes: 26 insertions, 7 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Reject new.target in arrow functions at global scope
- Rust changes: 12 insertions, 4 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Add missing early errors in Rust parser
- Rust changes: 55 insertions, 10 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
test262-runner: Remove parse-only fast path for negative tests
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 1 insertions, 5 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: -0.0%
LibJS: Replace ScopedOperand with Operand in bytecode ops
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 51 deletions
- Non-code changes: 1 insertions, 7 deletions
- New Rust ratio: 0%
LibJS: Remove remaining C++ pipeline artifacts
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 4 insertions, 43 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: -0.0%
LibJS: Remove C++ lexer, use Rust tokenizer for syntax highlighting
- Rust changes: 52 insertions, 0 deletions
- Non-Rust Code changes: 396 insertions, 1883 deletions
- Non-code changes: 1 insertions, 3 deletions
- New Rust ratio: -3.496973772696705%
LibJS: Remove C++ AST
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 106 insertions, 3919 deletions
- Non-code changes: 0 insertions, 3 deletions
- New Rust ratio: -0.0%
LibJS: Remove C++ parser
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 37 insertions, 5958 deletions
- Non-code changes: 0 insertions, 2 deletions
- New Rust ratio: -0.0%
LibJS: Remove C++ AST constructor from SharedFunctionInstanceData
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 15 insertions, 400 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: -0.0%
LibJS: Remove C++ bytecode codegen
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 7017 deletions
- Non-code changes: 0 insertions, 3 deletions
- New Rust ratio: 0%
LibJS: Remove dead C++ bytecode compilation functions
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 7 insertions, 125 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: -0.0%
LibJS+LibWeb: Port remaining callers to Rust pipeline
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 48 insertions, 108 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: -0.0%
LibJS: Remove LIBJS_CPP env var and ENABLE_RUST guards
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 27 insertions, 186 deletions
- Non-code changes: 2 insertions, 2 deletions
- New Rust ratio: -0.0%
LibJS: Remove C++ compiler pipeline fallback paths
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 80 insertions, 542 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: -0.0%
LibJS: Remove pipeline comparison infrastructure
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 26 insertions, 319 deletions
- Non-code changes: 0 insertions, 1 deletions
- New Rust ratio: -0.0%
LibJS: Use enum for retrieving well known symbols from C++ to Rust
- Rust changes: 19 insertions, 5 deletions
- Non-Rust Code changes: 3 insertions, 3 deletions
- Non-code changes: 1 insertions, 1 deletions
- New Rust ratio: 0%
LibJS: Directly use LiteralValueKind enum across FFI boundary
- Rust changes: 20 insertions, 22 deletions
- Non-Rust Code changes: 5 insertions, 6 deletions
- Non-code changes: 1 insertions, 1 deletions
- New Rust ratio: 200.0%
LibJS: Route canParseSource through Script::parse and add parser modes
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 69 insertions, 3 deletions
- Non-code changes: 3 insertions, 1 deletions
- New Rust ratio: 0.0%
LibJS: Align new-expression paren flags with C++ parser
- Rust changes: 9 insertions, 4 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Keep new call-paren optional chaining valid
- Rust changes: 7 insertions, 3 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Reject optional chaining on unparenthesized new
- Rust changes: 10 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Isolate super validity in nested function scopes
- Rust changes: 6 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Reject invalid bare private identifier usage
- Rust changes: 23 insertions, 3 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Fix async arrow and for-of async parsing
- Rust changes: 21 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Align duplicate parameter early errors
- Rust changes: 40 insertions, 27 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Enforce const initializers in declarations
- Rust changes: 4 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibUnicode: Apply workspace clippy lints to Rust code
- Rust changes: 1 insertions, 1 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 3 insertions, 0 deletions
- New Rust ratio: 0%
LibUnicode: Generate FFI bindings with cbindgen
- Rust changes: 34 insertions, 1 deletions
- Non-Rust Code changes: 8 insertions, 49 deletions
- Non-code changes: 21 insertions, 0 deletions
- New Rust ratio: -80.48780487804879%
LibJS: Generate FFI header using cbindgen instead of hand-rolling
- Rust changes: 22 insertions, 6 deletions
- Non-Rust Code changes: 68 insertions, 553 deletions
- Non-code changes: 1072 insertions, 1 deletions
- New Rust ratio: -3.2989690721649487%
CMake: Pass cargo a path for dumping generated headers from build.rs
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 9 insertions, 2 deletions
- New Rust ratio: 0%
LibJS: Wrap ParseErrorCallback typedef in Option
- Rust changes: 18 insertions, 16 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Meta: Add lints to Rust workspace lint configuration
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 19 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::explicit_iter_loop
- Rust changes: 1 insertions, 1 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::borrow_as_ptr
- Rust changes: 3 insertions, 3 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::unnested_or_patterns
- Rust changes: 6 insertions, 8 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::redundant_clone
- Rust changes: 2 insertions, 2 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::elidable_lifetime_names
- Rust changes: 4 insertions, 4 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::ref_option
- Rust changes: 23 insertions, 23 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::useless_let_if_seq
- Rust changes: 10 insertions, 9 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::unnecessary_wraps
- Rust changes: 90 insertions, 80 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::manual_let_else
- Rust changes: 5 insertions, 9 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::semicolon_if_nothing_returned
- Rust changes: 14 insertions, 14 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Apply lint clippy::uninlined_format_args
- Rust changes: 91 insertions, 120 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Documentation: Clarify Rust installation note
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 1 insertions, 2 deletions
- New Rust ratio: 0%
LibJS: Fix AssignmentTargetType for NewExpression and strict mode
- Rust changes: 42 insertions, 23 deletions
- Non-Rust Code changes: 31 insertions, 18 deletions
- Non-code changes: 57 insertions, 28 deletions
- New Rust ratio: 146.15384615384613%
Meta: Replace corrosion with custom function that tracks dependencies
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 116 insertions, 15 deletions
- New Rust ratio: 0%
LibJS: Use the 2024 Rust edition for AsmIntGen and ByteCodeDef
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 2 insertions, 2 deletions
- New Rust ratio: 0%
Meta: Remove `git diff` check from cargo linters
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 2 insertions, 2 deletions
- New Rust ratio: 0%
LibJS: Add Mov2/Mov3 instructions to reduce dispatch overhead
- Rust changes: 90 insertions, 0 deletions
- Non-Rust Code changes: 73 insertions, 0 deletions
- Non-code changes: 653 insertions, 572 deletions
- New Rust ratio: 123.28767123287672%
LibJS+LibUnicode: Use icu4x for Temporal calendar operations
- Rust changes: 611 insertions, 0 deletions
- Non-Rust Code changes: 127 insertions, 543 deletions
- Non-code changes: 688 insertions, 1 deletions
- New Rust ratio: -146.875%
LibWeb: Floor coordinates for untrusted MouseEvent and PointerEvent
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 47 insertions, 12 deletions
- Non-code changes: 46 insertions, 28 deletions
- New Rust ratio: 0.0%
LibWeb: Initialize pageX/pageY and offsetX/offsetY in event constructors
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 8 insertions, 4 deletions
- Non-code changes: 37 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Store cache pointers directly in bytecode instructions
- Rust changes: 33 insertions, 34 deletions
- Non-Rust Code changes: 35 insertions, 20 deletions
- Non-code changes: 1428 insertions, 1594 deletions
- New Rust ratio: -6.666666666666667%
LibJS: Replace GC::Weak with GC::RawPtr in inline cache entries
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 144 insertions, 85 deletions
- Non-code changes: 4 insertions, 12 deletions
- New Rust ratio: 0.0%
AsmInt: Remove redundant accessor check from GetByValue
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 2 insertions, 3 deletions
- New Rust ratio: 0%
AsmInt: Inline environment binding path for GetGlobal/SetGlobal
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 1 insertions, 0 deletions
- Non-code changes: 34 insertions, 3 deletions
- New Rust ratio: 0.0%
LibJS: Add AsmIntGen assembly interpreter code generator
- Rust changes: 3609 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 21 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Extract BytecodeDef into a shared Rust crate
- Rust changes: 263 insertions, 188 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 15 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Move Interpreter::get/set inline and expose internals
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 12 insertions, 15 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: -0.0%
LibJS: Convert Object bitfields to a flags byte
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 66 insertions, 47 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS+LibWeb: Parse modules off the main thread
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 27 insertions, 7 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS+LibWeb: Add C++ compile_parsed_module wrapper
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 125 insertions, 57 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Add rust_compile_parsed_module() for pre-parsed modules
- Rust changes: 107 insertions, 86 deletions
- Non-Rust Code changes: 7 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 300.0%
LibJS+LibWeb: Parse classic scripts off the main thread
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 127 insertions, 3 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Add C++ parse_program/compile_parsed_script wrappers
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 118 insertions, 30 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Split rust_compile_script() into parse and compile steps
- Rust changes: 284 insertions, 60 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Add tests for regex literal parse-time error reporting
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 62 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Defer regex literal compilation to post-parse step
- Rust changes: 114 insertions, 17 deletions
- Non-Rust Code changes: 57 insertions, 18 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 248.71794871794873%
LibThreading: Add ThreadPool class
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 90 insertions, 0 deletions
- Non-code changes: 1 insertions, 0 deletions
- New Rust ratio: 0.0%
LibThreading: Allow configuring thread stack size
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 15 insertions, 2 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Emit ThrowIfTDZ before simple assignment to let variables
- Rust changes: 31 insertions, 5 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 44 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Inline JS-to-JS calls in the bytecode interpreter dispatch loop
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 290 insertions, 36 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS+LibWeb: Use InterpreterStack for all execution context allocation
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 77 insertions, 57 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Add InterpreterStack bump allocator for execution contexts
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 97 insertions, 0 deletions
- Non-code changes: 1 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Consolidate Put bytecode instructions and reduce code bloat
- Rust changes: 56 insertions, 30 deletions
- Non-Rust Code changes: 73 insertions, 110 deletions
- Non-code changes: 94 insertions, 198 deletions
- New Rust ratio: -70.27027027027027%
LibJS: Add UsingDeclaration to needs_block_declaration_instantiation
- Rust changes: 9 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 31 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Fix ResolveThisBinding/ResolveSuperBase emission order
- Rust changes: 43 insertions, 29 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 42 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Keep arg_holders alive in generate_arguments_array
- Rust changes: 3 insertions, 2 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 25 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Fix register order in private logical assignment
- Rust changes: 2 insertions, 1 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 34 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Optimize constant string computed properties to MemberId
- Rust changes: 34 insertions, 13 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 27 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Clear pending_lhs_name for named class expressions
- Rust changes: 3 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 21 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Only set pending_lhs_name for non-empty class field names
- Rust changes: 5 insertions, 1 deletions
- Non-Rust Code changes: 6 insertions, 1 deletions
- Non-code changes: 1 insertions, 1 deletions
- New Rust ratio: 80.0%
LibJS: Remove redundant ThrowIfTDZ from Rust emit_set_variable
- Rust changes: 4 insertions, 31 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 29 insertions, 0 deletions
- New Rust ratio: 0%
Meta: Add a rust-toolchain toml file to pin required rust version
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 3 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Create for-of loop blocks before evaluating iterable
- Rust changes: 7 insertions, 6 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Tests/LibJS: Add bytecode test for for-of with conditional in RHS
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 60 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Skip TDZ check for self-move in emit_set_variable
- Rust changes: 12 insertions, 11 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Tests/LibJS: Add test for compound assignment after destructuring
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 24 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Don't pass preferred_dst for destructuring assignment RHS
- Rust changes: 1 insertions, 1 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Tests/LibJS: Add bytecode test for destructuring assignment in &&
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 38 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Push LeaveLexicalEnvironment boundary in for-of loops
- Rust changes: 4 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Tests/LibJS: Add bytecode test for for-of continue with block scope
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 62 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Push LeaveLexicalEnvironment boundary in switch statements
- Rust changes: 4 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Tests/LibJS: Add bytecode test for return from switch with block scope
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 36 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Handle private member update expressions
- Rust changes: 15 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Tests/LibJS: Add bytecode test for postfix increment on private member
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 34 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Call perform_needed_unwinds before Throw instructions
- Rust changes: 4 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Tests/LibJS: Add bytecode test for async await in try-catch with scope
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 37 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Use correct capacity for CreateVariableEnvironment
- Rust changes: 5 insertions, 1 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Tests/LibJS: Add bytecode test for var environment capacity
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 37 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Always allocate fresh register for postfix update result
- Rust changes: 7 insertions, 8 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Tests/LibJS: Add bytecode test for postfix update in logical AND
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 19 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Restore unwind handler when trampolining through finally
- Rust changes: 6 insertions, 1 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Tests/LibJS: Add bytecode test for nested try-finally continue
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 77 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Fix several bytecode mismatches with the C++ pipeline
- Rust changes: 12 insertions, 7 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Use GetLengthWithThis for super.length property access
- Rust changes: 68 insertions, 61 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 55 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Fix evaluation order for super in tagged templates
- Rust changes: 20 insertions, 8 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Fix evaluation order in delete super[key]
- Rust changes: 8 insertions, 4 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 46 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Don't emit dead code after Throw for invalid LHS
- Rust changes: 1 insertions, 4 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Don't emit dead code after Throw for invalid LHS expressions
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 11 insertions, 13 deletions
- Non-code changes: 57 insertions, 0 deletions
- New Rust ratio: -0.0%
LibJS: Skip AST dump for ClassFieldInitializerStatement
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 4 insertions, 3 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS/Rust: Fix has_parameter_expressions and TDZ checks for arguments
- Rust changes: 23 insertions, 10 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 52 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Compare Rust and C++ bytecode for lazily compiled functions
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 39 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS/Rust: Add aggressive optimisations for distribution
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 9 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Cache ASCII-to-UTF-16 source conversion for Rust compilation
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 27 insertions, 29 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: -0.0%
LibJS: Defer GC during Rust-pipeline module and builtin compilation
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 3 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Memoize failed arrow function attempts in Rust parser
- Rust changes: 31 insertions, 6 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 41 insertions, 0 deletions
- New Rust ratio: 0%
Meta: Add 'cargo clippy -- -D clippy::all' to lint-ci.sh
- Rust changes: 235 insertions, 207 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 7 insertions, 0 deletions
- New Rust ratio: 0%
LibJs/Rust: Migrate to edition 2024
- Rust changes: 3688 insertions, 3490 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 1 insertions, 1 deletions
- New Rust ratio: 0%
Meta: Add 'present' to check style copyright regex and skip .rs files
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 4 insertions, 2 deletions
- New Rust ratio: 0%
CI: Add 'cargo fmt --check' and setup rust toolchain to lint-ci
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 10 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Cargo fmt on all source files
- Rust changes: 3745 insertions, 1947 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS/Rust: Clean build script up
- Rust changes: 427 insertions, 213 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Include AST.h in RustIntegration.h
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 1 insertions, 1 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0%
Flatpak: Add Rust toolchain and vendored cargo dependencies
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 130 insertions, 4 deletions
- New Rust ratio: 0%
CI: Install Rust toolchain in setup action
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 4 insertions, 0 deletions
- New Rust ratio: 0%
LibJS: Add alternative source-to-bytecode pipeline in Rust
- Rust changes: 25937 insertions, 0 deletions
- Non-Rust Code changes: 2287 insertions, 221 deletions
- Non-code changes: 99 insertions, 3 deletions
- New Rust ratio: 1255.4211035818005%
LibJS: Suppress global identifier optimization for dynamic functions
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 13 insertions, 11 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Restore ancestor scope flags after failed arrow parsing
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 38 insertions, 0 deletions
- Non-code changes: 32 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Register using declarations in scope collector for for-loops
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 1 insertions, 0 deletions
- Non-code changes: 2 insertions, 2 deletions
- New Rust ratio: 0.0%
LibJS: Defer scope registration of object property identifiers
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 12 insertions, 1 deletions
- Non-code changes: 2 insertions, 2 deletions
- New Rust ratio: 0.0%
Tests/LibJS: Import various tests developed alongside Rust pipeline
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 1521 insertions, 30 deletions
- New Rust ratio: 0%
LibJS: Always consume exponent in decimal numeric literals
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 4 insertions, 2 deletions
- Non-code changes: 1 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Add dump_to_string() for AST nodes and bytecode executables
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 71 insertions, 8 deletions
- Non-code changes: 0 insertions, 0 deletions
- New Rust ratio: 0.0%
LibJS: Ensure deterministic ordering in scope analysis and codegen
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 38 insertions, 4 deletions
- Non-code changes: 214 insertions, 238 deletions
- New Rust ratio: 0.0%
Meta: Add Corrosion as a CMake dependency for Rust integration
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 10 insertions, 0 deletions
- New Rust ratio: 0%
Meta: Add Rust toolchain as a build dependency
- Rust changes: 0 insertions, 0 deletions
- Non-Rust Code changes: 0 insertions, 0 deletions
- Non-code changes: 14 insertions, 1 deletions
- New Rust ratio: 0%