github CanadaHonk/porffor alpha-19
alpha 19 (0c135ce 2026-10-21)

7 hours ago
  • 0c135ce2 builtins/object: empty the old underlying store when it grows
  • 7e9729d4 test262: update history and commit check
  • 5d64bc6b codegen: x.call() on comptime builtins doesn't take the comptime return type
  • dffbd689 codegen: closures are not direct-callable by name outside their function
  • 7966cbf9 codegen: wrapper objects with own properties shadow prototype methods
  • 4e8daca1 codegen: Boolean.prototype methods check their receiver
  • 74fcf2d9 builtins/reflect: deleteProperty converts the key outside its try
  • 03baee59 builtins/promise: resolve looks up then on any object
  • 49031fdd builtins/object: Object.groupBy null prototype and callback check
  • ad9bf8f9 builtins/object: descriptor fields in spec order
  • 91d1f13b builtins/object: Object.assign converts its target
  • 7cf62801 builtins/object: getOwnPropertyDescriptors and hasOwn reject nullish
  • 161f2c8a builtins/object: hasOwnProperty converts the key before this
  • 9d0f5ac5 builtins/number: toString and toExponential coerce their argument
  • 5c761b19 builtins/number: Number() of undefined is NaN
  • 0198909c builtins/math: exact Math.sumPrecise
  • 8f205fb4 builtins/map: getOrInsertComputed checks its callback, normalizes -0
  • 10d9e7da builtins/map: Map.groupBy
  • 491259cd builtins/map: Map and Set constructors use their adder method
  • 45bd53d1 builtins/json: spec JSON.parse with reviver source text
  • a48fc242 builtins/json: JSON.rawJSON and isRawJSON
  • b55bd14a builtins/json: stringify throws on cycles
  • 91d5a899 builtins/json: stringify unwraps boxed primitives
  • b619e884 builtins/date: new Date converts objects with ToPrimitive first
  • 31e49bc7 builtins/date: generic toJSON
  • 7af5427d builtins/date: negative years print their magnitude
  • 65176378 builtins/date: setters distinguish missing arguments
  • cd6e7caa builtins/date: spec ISO date string parsing
  • 2ad51ad3 builtins/array: Array.isArray sees through proxies
  • 49ce9f41 builtins/math: Math.f16round
  • 6ffd5ef9 builtins/array: Array.prototype[Symbol.unscopables]
  • f092f064 builtins: read-only @@toPrimitive methods, Symbol.prototype[Symbol.toPrimitive]
  • f7052f8c builtins/object: preventExtensions, freeze and seal throw when a proxy trap refuses
  • 1fd979aa builtins/object: proto accessor, spec setPrototypeOf
  • d7008012 codegen: switch default is matched after every case
  • ea271073 compiler: arrows see their function's new.target
  • 46f9ebe2 codegen: object rest excludes computed keys as property keys
  • 2f02d6c1 render: errors closing iterators on generator return propagate
  • 3d34ca80 builtins/function: bind only makes constructors of constructors
  • 34c6739b codegen: nullish bases throw before computed keys are converted
  • 486e5302 codegen: update expressions convert non-numbers, const updates throw
  • 498fd5fb codegen: anonymous functions assigned to identifiers take their name
  • d06d29ef semantic: block scoped bindings are hidden from unresolved names
  • be1194c0 compiler: lexical bindings are uninitialized before their declaration
  • 447092a9 semantic: parameter closures do not see body vars
  • cea7b203 codegen: member writes demand inherited setters
  • 0722d580 builtins/number: isInteger and isSafeInteger reject non-numbers and Infinity
  • 0363a564 builtins/uint8array_base64: spec base64 and hex
  • 007c63ed builtins/arraybuffer: slice uses SpeciesConstructor
  • eb1ef1f4 builtins/typedarray: indexOf and lastIndexOf clamp after coercion
  • 7f8702dd builtins/typedarray: species and from/of construct with new.target
  • 3708dff7 builtins/typedarray: %TypedArray%.prototype[Symbol.toStringTag]
  • ac25d74c builtins: typed array and DataView buffer getters return buffers
  • f8738867 codegen: update expressions on members and closures support BigInt
  • c7970671 codegen: default sloppy this once at function entry
  • 4fbc66a1 codegen: globals read off a materialized globalThis, JSON/Math/Reflect/Atomics on it
  • f68f4c48 codegen: + converts objects with ToPrimitive, template literals with ToString
  • 81b74b33 builtins/regexp: sticky replace clamps a negative lastIndex
  • df80f068 codegen: name arrows in computed class fields
  • b107bc3b codegen: empty Function() bodies, anonymous Function names
  • c9d8bc40 codegen: string index reads are bounds checked
  • 9ad135b9 codegen: X.prototype accessor reads use the prototype as receiver
  • 25064be3 builtins/function: apply rejects primitive argument lists
  • dce80df5 builtins/function: spec bound function length and name
  • 25496397 builtins/function: caller and arguments accessors
  • ad075a47 codegen: sloppy functions box a primitive this and replace null
  • 347740ab builtins/string: toString and valueOf check their receiver
  • dc9ed464 builtins/string: normalize validates its form
  • 81eaa326 builtins/string: repeat(Infinity) throws
  • 5bdf6fe8 builtins/string: String.fromCharCode wraps to 16 bits
  • 3cf699e5 builtins/string: padStart and padEnd use ToLength
  • 0a71f51b builtins/string: slice converts start and end with ToIntegerOrInfinity
  • 0054d065 builtins/string: index arguments use ToIntegerOrInfinity
  • b83deb0a codegen: spec instanceof, Function.prototype[Symbol.hasInstance]
  • 01743a36 semantic: eval vars named arguments in params stay early errors when renamed
  • 91872acf codegen: eval completion values
  • 7ea8f67b builtins/date: Date.prototype[Symbol.toPrimitive]
  • b68fbac4 builtins/promise: combinators invoke then on thenables
  • 6f7f3ab3 codegen: unresolvable references are global object properties
  • 0e3f74bb codegen: for-of and destructuring use a replaced Array.prototype[Symbol.iterator]
  • 81006196 builtins/error: Error.prototype.stack accessor
  • 602a3150 codegen: string literals demand builtin prototype members
  • b2bf4a80 codegen: compile new Function sources built from literal call arguments
  • 5dfadbc2 codegen: with statements
  • 278c8aec compiler: direct eval code keeps its class context
  • 1283baee semantic: parameters are uninitialized until their initializer runs
  • b7808c78 compiler: super home objects, private name brands, derived constructor this, new.target prototypes
  • a58029b5 codegen: anonymous functions under computed keys are named at runtime
  • 9c9fdb07 builtins/object: class elements cannot redefine non-configurable properties
  • ced08682 builtins/symbol: Symbol is a constructor that throws on new
  • 7c31d31e builtins: [[Get]] and [[Set]] with a receiver for Reflect and trapless proxies

Don't miss a new porffor release

NewReleases is sending notifications on new releases.