Releases: illegalstudio/elephc
Releases · illegalstudio/elephc
Release list
v0.26.1
What's Changed
- fix: resolve enums as types in property and promoted-param positions by @chadmandoo in #426
- fix: strtotime x86_64 weekday scan uses min(remaining, 16) instead of fixed 16 by @Guikingone in #429
- fix(core): allow compound assignment on undefined variables (warning + null) by @Guikingone in #430
- fix(core): loose equality and switch with Mixed float operand by @Guikingone in #431
- fix(core): static::X constant access, static property ++/--, intdiv overflow by @Guikingone in #433
- fix(arrays): string-key access on empty arrays, null key normalization, destructuring OOB, array spread by @Guikingone in #434
- fix(quick-wins): static closure isset($this), recursive closures, foreach snapshot, typed property Error by @Guikingone in #435
- fix: IteratorAggregate Traversable dispatch, array elem by-ref, catchable access Errors by @Guikingone in #439
- fix: allow new without constructor parentheses (see #442) by @nahime0 in #457
- fix(optimize): conservative invalidation for by-ref calls in match subject (#384) by @mirchaemanuel in #444
- fix(core): integer overflow promotion to float + checked binop macOS segfault fix by @Guikingone in #441
- fix(enums): int-backed from()/tryFrom() accept numeric strings (#349) by @mirchaemanuel in #450
- conf(ci): cancel superseded runs, build once via nextest archive, gate benchmark to main by @Guikingone in #454
- fix(enums): int-backed from()/tryFrom() accept a Mixed argument (#449) by @mirchaemanuel in #453
- feat: remove legacy backend by @nahime0 in #481
- feat: in_array() accepts the optional strict (3rd) argument by @chadmandoo in #464
- fix: resolve names inside named-argument values (missing NamedArg resolver arm) by @chadmandoo in #471
- feat: Source maps v2 by @nahime0 in #495
- Feat: Memory model aware propagation by @nahime0 in #496
- feat(core): zval pack/unpack bridge builtins + release owned call-argument temporaries by @Guikingone in #403
- fix: rewrite self/static/parent in variadic parameter types by @chadmandoo in #427
- fix(core): deprecated interpolation, var_dump variadic, print_r $return, array ref alias, Windows PE stub by @Guikingone in #445
- feat: support static interface methods (PHP 8.3+) by @chadmandoo in #458
- feat: implement mb_ereg_match() builtin (start-anchored regex) by @chadmandoo in #460
- feat: htmlspecialchars/htmlentities ENT_* flags + ENT_* constants by @chadmandoo in #461
- fix: accept object-subtype default for object-typed parameters by @chadmandoo in #462
- fix: narrow
$x === falseguard (int|false returns as int after a throw-guard) by @chadmandoo in #463 - docs: prepare 0.26.1 release documentation by @nahime0 in #530
New Contributors
- @chadmandoo made their first contribution in #426
- @mirchaemanuel made their first contribution in #444
Full Changelog: v0.26.0...v0.26.1
v0.26.0
What's Changed
- fix: support associative literal defaults on array properties (#407) by @nahime0 in #412
- fix: preserve associative shape for array method parameters (#406) by @nahime0 in #414
- fix/329 by @nahime0 in #419
- fix: expose enum case ->name property (#330) by @nahime0 in #421
- feat(core): closure $this binding, Closure::bind/bindTo, and __callStatic/__isset/__unset by @Guikingone in #366
- fix(eir): keep foreach string keys through Mixed-key array writes by @Guikingone in #393
- feat(streams|zip): Phar metadata/stub + per-file metadata persistence, serialize()/unserialize(), and full ZIP phar support by @Guikingone in #396
- fix(core): resource scope-cleanup for Mixed-boxed tag-9 resources by @Guikingone in #415
- feat(core): runtime dead stripping via per-symbol sections and linker GC by @Guikingone in #416
- feat: array builtin parity on EIR (15 builtins) by @Guikingone in #423
- fix: widen heterogeneous associative property defaults to Mixed value slot by @mvanhorn in #422
- refactor(builtins): single-source builtin registry by @nahime0 in #437
New Contributors
Full Changelog: v0.25.2...v0.26.0
v0.25.2
v0.25.1
What's Changed
- feat/dead store elimination by @nahime0 in #395
- feat: add image support — GD, Exif/IPTC, Imagick/Gmagick, Cairo by @Guikingone in #394
- feat/optimizations by @nahime0 in #401
Full Changelog: v0.25.0...v0.25.1
v0.25.0
What's Changed
- feat(datetime): Add support for DateTime, DateInterval, DatePeriod, strtotime by @Guikingone in #343
- feat/dead instruction elimination by @nahime0 in #392
Full Changelog: v0.24.3...v0.25.0
v0.24.3
v0.24.2
v0.24.1
What's Changed
Full Changelog: v0.24.0...v0.24.1
v0.24.0
What's Changed
Full Changelog: v0.23.14...v0.24.0
v0.23.14
What's Changed
- fix(eir): prevent empty-array string-grow corruption by @Guikingone in #364
Full Changelog: v0.23.13...v0.23.14