What's Changed
- Implement valueOf for several prototypes by @linusg in #6
- codegen: implement function .name property by @linusg in #7
- Optimize !!x by @tekknolagi in #22
- Add Set.union and Set for-of by @tekknolagi in #24
- Check Set.union argument type by @tekknolagi in #25
- feat: implement console.clear by @lino-levan in #31
- Add eager quantifiers by @BobVarioa in #47
- Add bounds checking for regexes by @BobVarioa in #48
- Add array destructuring by @BobVarioa in #52
- Implement rest arguments by @BobVarioa in #54
- Add editorconfig by @BobVarioa in #57
- Add some debug flags to internal utilities by @BobVarioa in #58
- WebAssembly backend: Emit function/variable names by @tombl in #70
- Add function signatures to backtrace by @BobVarioa in #78
- Fix backtrace on named functions by @BobVarioa in #77
- Misc. console fixes by @BobVarioa in #80
- Add
thisfor functions by @BobVarioa in #105 - Update
console.dirto work with real objects by @BobVarioa in #106 - Update README.md and CONTRIBUTING.md by @BobVarioa in #111
- Log more info for backtraces by @BobVarioa in #112
- Add
--eval/-eand--print/-pflags by @BobVarioa in #113 - Remove unused type checks by @BobVarioa in #120
- Add destructuring to more places by @BobVarioa in #130
- Implement 'use strict'; by @BobVarioa in #133
- feat: Add space around tagline by @lucsoft in #134
- repl: add
--moduleflag by @littledivy in #148 - builtins/crypto: impl getRandomValues by @littledivy in #147
- builtins/string: coerce repeat count to int by @littledivy in #150
- Update README to include recent additions by @BobVarioa in #154
- Fix default destructured args in functions by @BobVarioa in #157
- test262/setup: add windows setup script by @Andoryuuta in #162
- site(commitlog): link href to commit hash on GitHub by @RickyC0626 in #163
- updated line 211 in README.md by @qxrein in #170
- Update README.md by @qxrein in #178
- Support string keys in
Porffor.dlopenby @littledivy in #189 - Add more indirect modes by @BobVarioa in #186
- codegen: optimize for-of statement by @Rob23oba in #208
- builtins/string: fix split for empty char by @dibashthapa in #224
- Ignore TS overload signatures by @rhighs in #235
- Fix
String.trim{Left,Right}aliases getting silently ignored by @bbb651 in #237 - Gitignore deno and pnpm lock files by @bbb651 in #238
- codegen: add
lengthtoargumentsobject by @bbb651 in #251 - builtins/regexp: implement
RegExp.flagscorrectly (sort flags) by @bbb651 in #249 - builtins/array: fix
Array.toReversedskipping middle element in odd-length arrays by @bbb651 in #250 - builtins/annexb_string: escape
"inString.{link,anchor,fontcolor,fontsize}by @bbb651 in #247 - Stringify key in
Symbol.forby @bbb651 in #239 - builtins/date: always evaluate
msinDate.setUTCSecondsby @bbb651 in #252 - builtins/date: fix
Date.UTCusing milliseconds as hours by @bbb651 in #253 - fix: update
node-repl-polyfillto install from npm by @styfle in #264 - ci: build "native" binaries by @lleyton in #263
- compiler: fix
for inloop not ending by @nolanlawson in #284 - builtins: add Array.prototype.length = 0 by @JakeChampion in #323
- codegen: allocate correct size for large array literals by @JakeChampion in #320
- builtins/console: log
Booleanobjects by @nolanlawson in #325 - builtins/array: early return for empty arrays, impl SameValueZero for includes by @JakeChampion in #324
- codegen: fix hoisted var lookup before declaration in loops by @JakeChampion in #321
- builtins/set,map: support thisArg in forEach by @JakeChampion in #318
- builtins/json: support Boolean objects in JSON.stringify by @JakeChampion in #316
- builtins/string: fix indexOf/lastIndexOf arg coercion and bytestring handling by @JakeChampion in #314
- builtins/string: fix padStart/padEnd padString coercion by @JakeChampion in #313
- builtins/math: fix -0 preservation and edge cases by @JakeChampion in #309
- builtins/string_f64: fix String.raw to throw TypeError on null/undefined raw by @JakeChampion in #308
- builtins/typedarray: fix at/slice/subarray index coercion with ToIntegerOrInfinity by @JakeChampion in #306
- builtins/math: fix acos formula (PI/2 - asin, not asin - PI/2) by @JakeChampion in #302
- builtins/object: impl setPrototypeOf inextensible check by @JakeChampion in #301
- builtins: add jsLength to comptime funcs, fix Math.max/min length by @JakeChampion in #300
- builtins/string: fix split separator handling for null and undefined by @JakeChampion in #296
- builtins/number: impl Infinity parsing in parseFloat by @JakeChampion in #291
- builtins/stringtonumber: fix Infinity parsing with trailing chars by @JakeChampion in #292
- builtins/object: impl setPrototypeOf inextensible check by @JakeChampion in #293
- builtins/math: fix pow odd exponent check for negative values by @JakeChampion in #288
New Contributors
- @linusg made their first contribution in #6
- @tekknolagi made their first contribution in #22
- @lino-levan made their first contribution in #31
- @tombl made their first contribution in #70
- @lucsoft made their first contribution in #134
- @littledivy made their first contribution in #148
- @Andoryuuta made their first contribution in #162
- @RickyC0626 made their first contribution in #163
- @qxrein made their first contribution in #170
- @Rob23oba made their first contribution in #208
- @dibashthapa made their first contribution in #224
- @rhighs made their first contribution in #235
- @bbb651 made their first contribution in #237
- @styfle made their first contribution in #264
- @lleyton made their first contribution in #263
- @nolanlawson made their first contribution in #284
- @JakeChampion made their first contribution in #323
Full Changelog: https://github.com/CanadaHonk/porffor/commits/pre-alpha-1