Releases: TheLuaOSProject/LuaJITMT
Releases · TheLuaOSProject/LuaJITMT
Release list
b1.1.0
- Stabilize LuaRocks JIT paths for b1.1.0
- ffi: avoid ctype interning for named layout queries
- ffi: avoid ctype interning for direct alignof queries
- ffi: avoid ctype interning for direct layout queries
- gc2: harden weak table metatable traversal
- gc2: validate weak table mode after snapshot
- ffi: allow trace-owned cdata under MT
- ffi: guard shared cdata traces under MT
- ffi: trace preadv2-shaped ccall helper
- ffi: trace preadv-shaped ccall helper
- build: order generated headers before objects
b1.0.14
- build: reject disabled GC64 configuration
- ffi: trace readv-shaped ccall helper
b1.0.13
- tests: tolerate empty smr drain on gc2 full collect
- gc: expose monotonic allocation telemetry
- gc: route explicit public api through gc2
- ffi: trace timerfd ccall helper
- ffi: clarify socket option ccall helper names
- ffi: trace select ccall helper
- ffi: trace epoll ctl ccall helper
- ffi: trace getsockopt ccall helper
- ffi: trace setsockopt ccall helper
- ffi: trace accept ccall helper
- ffi: trace socket ccall helper
- ffi: trace epoll wait ccall helper
- ffi: trace send recv ccall helper
- ffi: trace fread ccall helper
- ffi: trace threadpool timer ccall helper
- ffi: trace threadpool io ccall helper
- ffi: trace try submit callback ccall helper
- ffi: trace cleanup group ccall helper
- ffi: trace threadpool wait ex ccall helper
- ffi: trace threadpool setter ccall helper
- ffi: trace threadpool creation ccall helper
- ffi: trace register wait ccall helper
- ffi: trace waitable timer ex ccall helper
- ffi: trace waitable timer ccall helper
- ffi: trace wait address ccall helper
- ffi: trace condition srw ccall helper
- ffi: trace semaphore ex ccall helper
- ffi: trace event ex ccall helper
- ffi: trace mutex creation ccall helper
- ffi: trace overlapped result ex ccall helper
- ffi: trace queued completion ex ccall helper
- ffi: trace get queued completion ccall helper
- ffi: trace post queued completion ccall helper
- ffi: trace io completion port ccall helper
- ffi: trace wait multiple ex ccall helper
- ffi: trace signal wait ccall helper
- ffi: trace wait multiple objects ccall helper
- ffi: trace wait single object ccall helper
- ffi: trace set handle info ccall helper
- ffi: trace duplicate handle ccall helper
- ffi: trace open handle ccall helper
- ffi: trace create event ccall helper
- ffi: trace create thread ccall helper
- ffi: trace create file mapping ccall helper
- ffi: trace create file ccall helper
- ffi: trace device io ccall helper
- ffi: trace overlapped result ccall helper
- ffi: trace read file ccall helper
- ffi: trace map view ex ccall helper
- ffi: trace map view ccall helper
- ffi: trace mremap shaped ccall helper
- ffi: trace mmap shaped ccall helper
- ffi: trace int pointer size offset ccall helper
- ffi: trace pointer size uint ccall helper
- ffi: trace pointer size flag pointer helpers
- ffi: trace pointer size flags ccall helper
- ffi: trace pointer int uint ccall helpers
- ffi: trace pointer size pointer ccall helpers
- ffi: trace pointer size int ccall helpers
- ffi: trace pointer int size ccall helpers
- ffi: trace unsigned-count pointer ccall helpers
- ffi: trace signed-length pointer ccall helpers
- ffi: trace cross-precision 64-bit ccall helpers
- ffi: trace cross-precision mixed ccall helpers
- ffi: trace mixed 64-bit float ccall helpers
- ffi: trace mixed 64-bit ccall helpers
- ffi: trace mixed uint32 float ccall helpers
- ffi: trace mixed uint32 ccall helpers
- ffi: trace mixed float ccall helpers
- ffi: trace float GPR ccall helpers
- jit: trace buffer concat snapshots
- buffer: accept main owner in concat snapshots
- buffer: wrap extended buffer gcrefs
- threading: wrap live root userdata refs
- tests: cover double gpr ccall helper abi
- ffi: trace double gpr ccall helper
- ffi: trace mixed int double ccall helper
- threading: wrap thread userdata backpointers
- state: wrap thread registry pointer access
- gc: route root publish through GCRef CAS helper
- gc: route root splices through GCRef CAS helper
- finreg: use GCRef CAS helper for root splice
- gc2: wrap hard-check pacing CAS
- gc2: let workers drain finalizer queue in sweep
- asm: snapshot x86 CNEW ctype metadata
- bit: use predefined ctype metadata copy
- carith: snapshot operand ctype copies
- ccall: snapshot interpreter ctype reads
- asm: snapshot CALLX ctype flags
- debug: guard trace frame pc scan
- asm: validate x86 trace target lookups
- trace: validate stop publication lookups
- trace: validate recorder helper lookups
- trace: validate flush helper lookups
- bcwrite: validate JIT bytecode trace lookups
- snap: validate restore trace fallback
- trace: guard targeted slot flushes
- trace: guard flush slot scans
- trace: guard trace utility readers
- trace: protect live ref probes with smr
- threading: validate state registry entries
- finreg: validate userdata nodes
- finreg: validate order nodes
- gc2: validate weak overflow nodes
- ctype: validate retired table headers
- str: validate retired string table headers
- trace: validate stitch probe trace pointer
- trace: protect hot side parent checks with smr
- trace: protect unwind exit lookup with smr
- ctype: validate finreg generation tables
- clib: validate retired cache entries
- test: cover hash to array forwarding
- test: cover resize assist tail boundary
- threading: validate state thread userdata
- threading: validate live root userdata
- tab: validate retired storage roots
- gc: validate trace pc proto roots
- jit: validate stale startins trace bodies
- jit: validate retired trace preserve roots
- gc2: validate trace pc proto roots
- gc2: validate weak snapshot tables
- gc2: validate rescan cleanup entries
- gc2: validate mark entry objects
- gc: validate publication barrier edges
- gc2: validate finreg and root edges
- gc2: preflight object validator memory
- gc: validate frame function tags during scans
- gc2: harden JIT concurrent roots and slots
- gc2: avoid remote worker SSB flush
- Stabilize GC2 accounting and fullgc sweep
- GC64 is required and public
collectgarbage()/lua_gc()explicit collection
paths now route through GC2. - Artifacts: Linux x86_64, macOS x86_64, and Windows x86_64 UCRT.
b1.0.12
- Fix native Windows CI smoke
- Stabilize GC/JIT MT edge cases
- cover local-cell call and secondary side exits
- cover local-cell closure side exits
- fix JIT local-cell loop snapshots
- clean up GC2 counters and idle rescan cleanup
- stabilize GC2 root rescans and aborted handoffs
- Relax VM safepoint call-unroll epoch check
- Clarify GC2 worker weak-drain fixture
- Trace active-MT local-cell loop roots
- Restore stock error locations
- Stabilize GC stack scans and JIT loop substitution
- Split traced table resize stress
- Deduplicate callback parse-token fixture
- Harden JIT trace diagnostics
- Stabilize shared MT JIT table traversal
- Fix trace GC lifetime semantics
- Stabilize concurrent GC root traversal
- Use shared sleep helper in safepoint fixture
- Deduplicate test helper scaffolding
- Drop unused harness line capture helper
- Tighten recursive trace retention coverage
- Cover bridge-active FNEW publication
- Stabilize GC2 pacing and root repair
- Centralize harness build profiles
- Avoid redundant M6 profile cleans
- Deduplicate table helper test flags
- Preserve retiring array store edges
- Route table freetop through helpers
- Tighten x64 TSETS direct-store coverage
- Centralize string intern state atomics
- Publish string table mask mirror atomically
- Share ccall parser-token wait fixture
- Share remaining FFI parser-token waits
- Clarify GC2 worker owner token
- Share FFI parser-token fixture waits
- Lock Lua test launcher before runner exec
- Deduplicate FFI enum snapshot lookup
- Forward assisted table array slots
- Acquire-load default ccall struct returns
- Acquire-load cparser expression ctypes
- Acquire-load cparser layout fields
- Publish parser CType rows through helpers
- Tighten FFI ctype rollback coverage
- Copy grown CType tables through helpers
- Share optional test artifact reader
- Route CType rollback copies through helpers
- Publish cparser layout updates from snapshots
- Add JIT table publication regressions
- Stabilize active-MT GC publication paths
- Keep table.insert owner waits non-throwing
- Share mutex native wait helper
- Share table store barrier helper
- Assist retiring array store migration
- Share threading native futex waits
- Share active TG thread resolver
- Tighten recursive trace retention coverage
- Centralize TG JIT active checks
- Share native STOPREQ fixture helpers
- Share FFI STOPREQ fixture helpers
- Deduplicate test helper counters
- Refresh FFI direct string notes
- Cover named ctype new cast waits
- Share ctype rawref wait helper
- Snapshot recorder VLA ctype sizing
- Abort recorder on named ctype waits
- Reject self stock benchmark baselines
- Rename output assertion helpers
- Tighten recursive JIT retention guard
- Share GC root next-link setup
- Cover after-main pending root cycles
- Yield on non-futex ctype parser waits
- Use shared sleep helper in table fixtures
- Share C fixture sleep helper
- Share GC2 worker owner helpers
- Share STOPREQ helpers in OS and table waits
- Share fresh STOPREQ helpers in CType and PRNG
- Share GC root slot prepend helper
- Share GC root chain prepend helper
- Share safepoint helpers in threading waits
- Share safepoint helpers in ffi callbacks
- Share safepoint helpers in channels
- Deduplicate table retire helpers
- Share safepoint helpers in io library
- Use shared safepoint helpers for native calls
- Deduplicate native STOPREQ checks
- Wrap Windows package loader in native state
- Deduplicate platform CI smoke checks
- Run Windows CI smoke through release harness
- Cover grown arena-owned TNEW sweep
- Mark arena-owned empty TNEW bodies for sweep
- Enforce warning-clean M0 matrix
- Clean no-JIT build warnings
- Mark arena-owned FNEW bodies for sweep
- Remove semantic GC root scan caps
- Expose pending-root GC telemetry
- Deduplicate closure and safepoint helpers
- Expose GC hard-check stats
- Fast-path x64 TSETS nil slots
- Invalidate test build cache on source edits
- Inline active-black traced FNEW allocation
- Isolate filtered benchmark fixtures
- Scan private table chains before shared newkey
- Recheck table resize snapshots before allocation
- Make strtab resize a single-bit claim
- Elide active-black empty table root publish
- Retire unused recursive return traces
- Stabilize recursive JIT trace count probe
- Document recursive return trace retention
- Extract table resize array copy helper
- Extract table resize hash copy helper
- Hint pending roots only on stack transitions
- Avoid empty pending-root flush exchanges
- Apply Windows checkout NTFS override in CI
- Allow Windows sparse checkout past NTFS guards
b1.0.9
- Stabilize GC2 JIT roots and FFI harness gates
- Fix GC2 weak-key stability
- Remove recursive JIT transcript guard
- Skip ownership for no-op table resizes
- Remove closed-upvalue JIT shape guard
- Guard required main thread root scans
- Let standalone active FNEW skip pending roots
- Skip marked FNEW constructor barriers
- Coalesce active table GC2 rescans
- Document rejected string intern private path
- Add private table new-key publication path
- Make pre-owner table rehash waits L-aware
- Document unsafe GC2 barrier filter
- Fix x64 FNEW fallback L argument
- Bound active GC2 automatic pacing
- Decouple idle finalizer drain owner
- Fix M7 ccall aggregate fixture env
- Fix GC gray-list self cycles
- Scrub stale arena bin heads
- Narrow fresh-key GC barriers
- Fix table FLOAD forwarding and GC-defer exits
- Fix JIT flush full-GC active stack roots
- Refill FNEW bump window from free runs
- Fix GC2 legacy publication bridge holes
- tab: batch pending-root flush for retire reclaim
- tab: use L-aware waits for resize retries
- docs: refresh x64 allocation fast path status
- gc: skip empty pending root scans
- docs: clarify table owner wait policy
- x64: let empty tnew use active bump window
b1.0.8
b1.0.7
b1.0.6
b1.0.5
b1.0.4
- tests: avoid pipe hangs in command capture
- table: honor fresh stopreq during retry waits
- ffi: share istype parser wait fallback
- tests: force ctype growth without source anchors
- threading: spin before channel park
- docs: retire source guard artifacts
- test: pin recursive jit trace stability
- docs: replace source guards with invariants
- test: cover shared pairs churn boundary
- test: retire source text guard policy
- jit: trace direct shared next under active mt
- jit: predict next traversal types via helper snapshot
- test: pin table traversal cursor helper contract
- test: stabilize recursive jit and safepoint probes
- docs: retire source-text guard language
- gc: publish spawn roots without full collection
- jit: inline immutable numeric fnew
- jit: elide pre-activation loop polls
- gc2: flush traces before worker activation
- bench: split hash table write probes
- docs: remove remaining source guard artifacts
- docs: retire historical source inventories
- jit: forward pre-mt tab meta across xpoll
- docs: remove source guard terminology
- docs: retire historical source guard wording
- jit: skip nomm clear for tables without metatables
- build: export stale trace helper for amalgam
- gc: keep bump allocation across accounting flush
- docs: retire source-text guard framing
- gc: queue closed upvalue relinks per tg
- docs: clarify no historical source checks
- gc: batch-gate x64 hard assist checks
- test: include weakfinjit resize stress in m5 aggregate
- docs: remove remaining guard-check wording
- jit: elide pre-mt href retiring guard
- docs: retire historical source guard wording
- docs: remove historical source guard artifacts
- docs: align stale guard notes with behavior policy
- test: make public-output assertions explicit
- func: bump allocate local-cell CNEW upvalues
- str: batch successful intern count accounting
- docs: ban historical source guard suites
- jit: pace local-cell CNEW as allocation
- str: reserve string ids per thread group
- test: narrow artifact assertion helpers
- func: skip idle fresh FNEW edge barriers
- func: skip primitive upvalue payload barriers
- test: remove generic source guard hooks
- jit: record no-upvalue FNEW bump
- func: bump no-upvalue FNEW closures
- tab: route exact empty tables through new0
- tab: share empty-table bump fast path
- func: link fresh upvalues after new closures
- docs: remove source guard framing
- func: batch generic one-upvalue FNEW roots
- docs: retire historical source guards
- test: remove source-shaped dump guards
- test: stress string interning during GC
- gc: claim string table during legacy sweep
- test: pin KEYLOCK readers to no-wait path
- docs: retire historical source guard wording
- test: drop generated-shape JIT guards
- docs: remove source-guard exceptions from notes
- perf: fast-path interpreter numeric FNEW
- test: remove source-shape guards
- arena: summarize free-run bins for inline allocators
- jit: inline numeric FNEW bump allocation on x64
- test: decouple FNEW tracing from C fast counter
- docs: remove remaining source-guard wording
- jit: bump-allocate numeric FNEW pairs
- docs: remove source-check guard framing
- docs: remove source guard framing
- tab: fast-path safe TSETM range stores
- docs: remove source guard framing
- jit: fast-path empty table allocation helper
- test: cover L-aware table owner waits
- docs: remove source guard remnants
- str: drain tls-only active pins before resize
- safepoint: avoid trace flush self-quiescence wait
- docs: retire source guard language
- gc: publish fnew closure pair as root chain
- threading: avoid gcscan self-wait
- test: capture child command status explicitly
- jit: preserve numeric fnew upvalue identity
- jit: trim same-trace numeric fnew calls
- threading: bound join native wait slices
- jit: preserve cget forl integer shape
- docs: reject historical source guards
- jit: direct pre-mt newref hash stores
- jit: use direct array reads before mt
- jit: elide key barrier for guarded href stores
- docs: audit source predicate policy
- notes: audit pre-mt fnew tracing policy
- str: avoid redundant intern hash
- buildvm: remove raw output mode
- jit: direct primitive table stores before mt
- docs: remove source guard wording
- test active worker root gc stress
- test heavy jit flush thread stress
- test weak finalizer resize under jit
- fix gc2 legacy bridge stability
- notes: document source-invariant test policy audit
- notes: update jit flush stress status
- jit: publish gc object table stores through gc2
- gc: mirror jit-native stack scan boundary
- gc2: avoid jit-native frame walks during root scan
- gc2: preserve string constants across traversal stress
- tables: keep next keylock reads nonblocking
- tests: rename cell-op artifact checks
- stabilize trace flush retirement
- docs: forbid source-text guard suites
- notes: record JIT flush stress residual
- Stabilize JIT flush trace retirement
- Stabilize scoped JIT flush GC paths
- notes: add recursive trace sample evidence
- notes: capture current stability sweep
- docs: replace source guard wording with invariant guidance
- jit: route shared table stores while entering
- func: snapshot legacy upvalues while entering
- table: guard insert shifts while entering
- tab: route clear through shared path while entering
- tests: restore plain file enumeration helper
- os: reject locale mutation while entering
- gc: route entering explicit gc through gc2
- tests: remove source-read harness guard
- gc: gate pending-root fast path on entering
- tests: harden source-read rejection
- str: document cleanup-safe retry waits
- tab: park no-state structural owner waits
- ffi: broadcast parser token wakeups
- docs: retire source-text guard references
- jit: keep trace-local table stores direct under mt
- docs: mark old source guards obsolete
- tests: retire source guard harness paths