Skip to content

Complete Perl threads phases 31-34 - #950

Merged
fglock merged 1 commit into
masterfrom
feature/perl-threads-phases-31-34
Aug 13, 2026
Merged

Complete Perl threads phases 31-34#950
fglock merged 1 commit into
masterfrom
feature/perl-threads-phases-31-34

Conversation

@fglock

@fglock fglock commented Aug 13, 2026

Copy link
Copy Markdown
Owner

Summary

  • complete native callback/runtime ownership and detached-thread lifecycle work
  • validate nested shared graphs atomically and preserve runtime identity across snapshots
  • coordinate Unicode user properties without serializing unrelated runtime families
  • fix non-local labeled control flow cleanup across eval and subroutine boundaries
  • document the supported phases 31-34 tranche and keep runtime pooling deliberately disabled

Validation

  • make — 962 tests, all passing (2 skipped)
  • make check-links — 538 links checked, 0 errors
  • new Perl units on system Perl — 5 files, 17 assertions, all passing
  • dynamic map/reduce example — identical output on system Perl, JVM, interpreter, and virtual-thread mode
  • focused DBIx regression t/35exception_inaction.t — 3/3 passing
  • timeout 3600 ./jcpan --jobs 8 -t DBIx::Class — 325 files, 42,671 assertions, all passing

Notes

Runtime pooling remains disabled because closing a runtime is terminal and the documented fresh-runtime equivalence contract is not yet satisfied.

Bind native callbacks to their owning runtimes, harden detached thread
lifecycle and shared graph validation, and preserve runtime-owned identity
across thread snapshots. Complete the supported compatibility tranche with
Unicode-property coordination, non-local lexical cleanup, documentation,
and the DBIx::Class regression gate.

Keep runtime pooling disabled until the fresh-runtime reset contract can be
met, as documented in the concurrency design.

Generated with [Codex](https://openai.com/codex)

Co-Authored-By: Codex <158243242+openai-codex@users.noreply.github.com>
@fglock
fglock merged commit ad59d56 into master Aug 13, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant