Branch: refs/heads/yves/pattern_match
  Home:   https://github.com/Perl/perl5
  Commit: 0cc8240c8fd35ac6c0d412154fe01b470db6b2e3
      
https://github.com/Perl/perl5/commit/0cc8240c8fd35ac6c0d412154fe01b470db6b2e3
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M .gitignore
    M MANIFEST.SKIP

  Log Message:
  -----------
  Ignore agent related content


  Commit: 0adbaf4f11c2d3f2d506518861a9797f8f3403cf
      
https://github.com/Perl/perl5/commit/0adbaf4f11c2d3f2d506518861a9797f8f3403cf
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    M cop.h
    M dump.c
    M embed.fnc
    M embed.h
    M embedvar.h
    M ext/Opcode/Opcode.pm
    M ext/XS-APItest/APItest.pm
    M ext/XS-APItest/APItest.xs
    M ext/XS-APItest/APItest_runtime_helpers.xs
    A ext/XS-APItest/t/generator-runtime.t
    M feature.h
    M gv.c
    M intrpvar.h
    M keywords.c
    M keywords.h
    M lib/B/Deparse-core.t
    M lib/B/Deparse.pm
    M lib/B/Op_private.pm
    M lib/feature.pm
    M opcode.h
    M opnames.h
    M perl.h
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pod/perl.pod
    A pod/perlasync.pod
    M pod/perldelta.pod
    M pod/perldiag.pod
    M pod/perlexperiment.pod
    M pod/perlfunc.pod
    M pp.c
    M pp_ctl.c
    M pp_proto.h
    M proto.h
    M regen/feature.pl
    M regen/keywords.pl
    M regen/opcodes
    M run.c
    M sv.c
    M t/op/coreamp.t
    M t/op/coresubs.t
    A t/op/generator.t
    M toke.c
    M win32/pod.mak

  Log Message:
  -----------
  add a generator syntax


  Commit: fd8ab5f970256b67e3c6ed26f89a7775619a814c
      
https://github.com/Perl/perl5/commit/fd8ab5f970256b67e3c6ed26f89a7775619a814c
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    A generator_plan.md

  Log Message:
  -----------
  add the plan


  Commit: e248f6ffc0c6dc6349ee1d8f0ac8a952ac4cda39
      
https://github.com/Perl/perl5/commit/e248f6ffc0c6dc6349ee1d8f0ac8a952ac4cda39
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M cop.h
    M embed.fnc
    M embed.h
    M proto.h
    M run.c

  Log Message:
  -----------
  Pass initial arguments into generators


  Commit: c554a2b7ec4254c754b2b881fc9c6011a80dba1d
      
https://github.com/Perl/perl5/commit/c554a2b7ec4254c754b2b881fc9c6011a80dba1d
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M cop.h
    M embed.fnc
    M embed.h
    M generator_plan.md
    M lib/B/Op_private.pm
    M opcode.h
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pp_ctl.c
    M proto.h
    M regen/opcodes
    M run.c

  Log Message:
  -----------
  Pass arguments and lists through generators


  Commit: 90ce410e3c4a2ed424f729406c107fcc29dcfc30
      
https://github.com/Perl/perl5/commit/90ce410e3c4a2ed424f729406c107fcc29dcfc30
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M embed.h
    M generator_plan.md
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pod/perlasync.pod
    M pp_ctl.c
    M proto.h
    M run.c
    M t/op/generator.t

  Log Message:
  -----------
  Test and document parameterized generators


  Commit: 9b6367c3f32988b79f5d5a0e9081f0e2a1ee9225
      
https://github.com/Perl/perl5/commit/9b6367c3f32988b79f5d5a0e9081f0e2a1ee9225
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M cop.h
    M embed.fnc

  Log Message:
  -----------
  Track generator return state


  Commit: 675762d1f61d1a96e98a96b8d16324a30dd2eff2
      
https://github.com/Perl/perl5/commit/675762d1f61d1a96e98a96b8d16324a30dd2eff2
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M embed.fnc

  Log Message:
  -----------
  Normalize generator API declarations


  Commit: 11e285fc48833be66e099feecc35a2587002c5ca
      
https://github.com/Perl/perl5/commit/11e285fc48833be66e099feecc35a2587002c5ca
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M pod/perlasync.pod
    M pod/perldiag.pod

  Log Message:
  -----------
  Document generator argument diagnostics


  Commit: 465581ba61fd93a8034994c6fd90f3118c89503e
      
https://github.com/Perl/perl5/commit/465581ba61fd93a8034994c6fd90f3118c89503e
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M pod/perlasync.pod
    M run.c
    M t/op/generator.t

  Log Message:
  -----------
  Return first generator value in scalar context


  Commit: a56dfb3c07606abdbd69a22cff5c7b05f8ef66a4
      
https://github.com/Perl/perl5/commit/a56dfb3c07606abdbd69a22cff5c7b05f8ef66a4
  Author: Stevan Little <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M class.c
    A class.h
    M embed.fnc
    M embed.h
    M hv.c
    M hv.h
    M lib/B/Deparse.pm
    M lib/B/Op_private.pm
    M op.c
    M opcode.h
    M opnames.h
    M pad.c
    M pad.h
    M perly.y
    M pp.c
    M pp_proto.h
    M proto.h
    M regen/keywords.pl
    M regen/opcodes
    M sv.c
    A t/role/examples/001-currency.t
    A t/role/examples/002-shard-migrator.t
    A t/role/examples/003-lambda-terms.t
    A t/role/examples/004-native-types.t
    A t/role/role.t
    A t/role/role_compose.t
    A t/role/role_conflict_resolution.t
    A t/role/role_does.t
    A t/role/role_does_method.t
    A t/role/role_does_semantics.t
    A t/role/role_field_composition.t
    A t/role/role_field_conflicts.t
    A t/role/role_fields.t
    A t/role/role_requires.t
    M toke.c
    M universal.c

  Log Message:
  -----------
  class: roles v3 -- algebraic composition with conflict detection and 'does'

This commit adds roles to the 'use feature "class"' system (originally
introduced in Perl 5.38). It supersedes the earlier roles-v1 and
roles-v2 work.

== Overview ==

A role is declared with the 'role' keyword and consumed by a class or
another role with the :does attribute:

    role Printable {
        method print { say $self->to_string }
    }

    class Document :does(Printable) {
        field $content :param;
        method to_string { $content }
    }

:does accepts a parenthesised list: :does(RoleA, RoleB).

Roles may contain fields, methods (including required method stubs),
and ADJUST blocks. Fields and methods from composed roles are installed
into the consumer's stash at seal time.

== Proto-Role Algebra ==

The core of this implementation is a proto_role_t (class.h) that every
class and role builds during parsing. It captures:

  - method_slot_t: name, origin bitset, CV pointer, and provenance
    (from_field pointer, non-NULL for :reader/:writer generated
    accessors)
  - field_slot_t: PADNAME pointer and origin bitset
  - An origin_set_t (U32 bitset) where each composing role gets one bit

Composition is a sorted merge-join (S_merge_method_slots,
S_merge_field_slots) that ORs origin bits. The algebra is:

  Required    origin_set == 0    (pure obligation)
  Defined     popcount == 1      (one provider)
  Conflicted  popcount > 1       (multiple providers)

This makes associativity and commutativity structurally guaranteed.

Resolution (S_proto_role_resolve) runs after composition and checks:

  - Conflicted slot: consumer must provide an explicit method. A
    generated accessor (:reader/:writer) does not count. An inherited
    method does not count. All unresolved conflicts are collected and
    reported in one croak.
  - Required slot: consumer explicit method OR inherited method
    satisfies it. Unresolved required slots at class seal time are
    errors; at role seal time they propagate.

Diamond composition is handled correctly: the bitset means same-origin
methods collapse without conflict.

== Nominal and Structural Role Checks ==

Three ways to test role membership:

  $obj->does('RoleName')     nominal: walks xhv_class_roles transitively
  $obj does RoleName         infix operator (like 'isa'), guards with
                             feature 'class'
  $obj->DOES('RoleName')     structural: walks the role's proto-role
                             method_slots and verifies each Defined
                             method still dispatches to the role's
                             original CvSTASH; generated accessors
                             (from_field != NULL) are skipped

->does and ->DOES can disagree when a subclass overrides a role method;
this is intentional.

== Bug Fix ==

Also fixes a segfault when a class with a unit-style declaration
(class Foo; ...) inherits from another class. The unit-class path was
not initialising xhv_class_suspended_initfields_compcv before the
superclass ADJUST blocks ran. (GH #20890)

== Memory ==

proto_role_t is retained after sealing so that ->DOES can do structural
checks at runtime. hv_undef_flags() now calls proto_role_free() in the
class/role cleanup block so the struct and its ref-counted contents are
freed when the stash is eventually destroyed.

== Tests ==

New test files under t/role/:
  role.t                    basic role machinery
  role_compose.t            method and field composition
  role_does.t               :does attribute validation
  role_does_semantics.t     ->does / 'does' / isa semantics
  role_does_method.t        ->does, infix 'does', ->DOES
  role_field_composition.t  field inheritance through roles
  role_field_conflicts.t    field conflict detection
  role_fields.t             role field behaviour
  role_requires.t           required method stubs
  role_conflict_resolution.t  conflict detection and resolution rules
  examples/                 four worked examples

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>


  Commit: 09df6e444c575bef1fa7099485740d1ed18604af
      
https://github.com/Perl/perl5/commit/09df6e444c575bef1fa7099485740d1ed18604af
  Author: Stevan Little <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    M class.c
    M t/op/universal.t

  Log Message:
  -----------
  fix CI failures: MANIFEST, perldiag, Opcode tag, universal.t, compiler warning

MANIFEST: add class.h and all t/role/*.t test files.

pod/perldiag.pod: add entries for all new diagnostics introduced by
the roles implementation:
  - Cannot '%s' outside of a 'class' or 'role'
  - Cannot create role %s as it already has a non-empty @ISA
  - Cannot define role "%s" as it is already a class
  - Cannot reopen existing role "%s"
  - Field %s conflicts between "%s" and "%s"
  - Method %s conflicts between "%s" and "%s"
  - Method %s is required by role %s but not provided by "%s"
  - role is experimental
  - Roles cannot use :isa
  - Too many roles in a single composition (max %d)
  - Unexpected characters while parsing :does attribute: %s
  - :does attribute requires a role but "%s" is not one
  - proto_role_compose_and_install: role has no proto-role (S debugging)

ext/Opcode/Opcode.pm: add 'does' to the tagged opname list alongside
'isa'.

t/op/universal.t: update expected UNIVERSAL:: method list to include
'does', which is now installed alongside 'isa', 'can', etc.

class.c: remove unused 'stash' parameter from S_apply_one_role() to
fix the compiler warning.  Change the DEBUGGING fallback warn to use
Perl_ck_warner_d(packWARN(WARN_DEBUGGING)) so diag.t can verify its
severity and category.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>


  Commit: 7af47065a935085b71885db74722a78c8a83bc1b
      
https://github.com/Perl/perl5/commit/7af47065a935085b71885db74722a78c8a83bc1b
  Author: Stevan Little <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M gv.c
    M t/op/coreamp.t
    M t/op/coresubs.t

  Log Message:
  -----------
  fix -Dusethreads CI failures: does/role in CORE:: and version bump

- gv.c: add KEY_does and KEY_role to S_maybe_add_coresub's return-NULL
  switch, so CORE::does and CORE::role are not registered as callable
  CORE:: subs (same treatment as KEY_isa, KEY_class, etc.)
- t/op/coresubs.t: add 'does' and 'role' to %unsupported
- t/op/coreamp.t: add 'does' and 'role' to %nottest_words
- lib/B/Deparse.pm: bump version 1.89 -> 1.90 for porting/cmp_version.t

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>


  Commit: b2241fc35c240cd48057e35862922f4120dd5928
      
https://github.com/Perl/perl5/commit/b2241fc35c240cd48057e35862922f4120dd5928
  Author: Stevan Little <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M class.c
    M t/role/role.t
    M t/role/role_compose.t
    M t/role/role_does.t
    M t/role/role_requires.t

  Log Message:
  -----------
  class: fix transitive required-method propagation through role chains

After composing role B :does(A), B's stored proto-role was only the pre-
composition snapshot (B's own methods), so required methods from A were
lost when a class later composed B. This caused no error when a class
failed to satisfy a transitively-required method.

Fix: after role composition, append any Required slots from the composed
proto that are not already in the stored proto-role. Defined slots are
intentionally NOT propagated - only the role's own method implementations
are stored, since the structural DOES check verifies CvSTASH == rolestash.

Also fix the eval "use VERSION" issue in role tests: replace inner "use v5.36"
with "use strict" since "use VERSION" is forbidden in nested evals once a
v5.39+ version is in scope. Update test regexes to match the actual error
message format our implementation produces.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>


  Commit: c5295f6f47b242e2bf06c0e4b30fe3149ca8f200
      
https://github.com/Perl/perl5/commit/c5295f6f47b242e2bf06c0e4b30fe3149ca8f200
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    M class.c
    M class.h
    M embed.fnc
    M embed.h
    M hv.h
    M keywords.c
    M keywords.h
    M lib/B/Deparse.pm
    M lib/B/Op_private.pm
    M lib/UNIVERSAL.pm
    M op.c
    M opcode.h
    M opnames.h
    M pad.c
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pod/perlclass.pod
    M pod/perldiag.pod
    M pp.c
    M pp_proto.h
    M proto.h
    M regen/keywords.pl
    M regen/opcodes
    M t/TEST
    M t/harness
    M t/role/examples/001-currency.t
    M t/role/examples/002-shard-migrator.t
    M t/role/examples/003-lambda-terms.t
    M t/role/examples/004-native-types.t
    M t/role/role_compose.t
    M t/role/role_conflict_resolution.t
    R t/role/role_does.t
    R t/role/role_does_method.t
    R t/role/role_does_semantics.t
    M t/role/role_field_composition.t
    M t/role/role_field_conflicts.t
    M t/role/role_fields.t
    A t/role/role_implements.t
    A t/role/role_implements_method.t
    A t/role/role_implements_semantics.t
    M t/role/role_requires.t
    M toke.c
    M universal.c

  Log Message:
  -----------
  role: delegate DOES through implements


  Commit: b84434576141fa87eeddcc0af63500d11666ded8
      
https://github.com/Perl/perl5/commit/b84434576141fa87eeddcc0af63500d11666ded8
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M builtin.c
    M class.c
    M embed.fnc
    M embed.h
    M lib/builtin.pm
    M proto.h

  Log Message:
  -----------
  class: add package_implements builtin


  Commit: ad6d126ca55906c43e0d7f616ada706127ca304b
      
https://github.com/Perl/perl5/commit/ad6d126ca55906c43e0d7f616ada706127ca304b
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M builtin.c
    M class.c
    M dist/Data-Dumper/Dumper.pm
    M dist/Data-Dumper/Dumper.xs
    M embed.fnc
    M embed.h
    M lib/builtin.pm
    M proto.h
    A t/class/object_hash.t

  Log Message:
  -----------
  class: expose shallow object hash conversion


  Commit: 38f0e3a25eec25fc9c390ab7053c4e080bf84e9e
      
https://github.com/Perl/perl5/commit/38f0e3a25eec25fc9c390ab7053c4e080bf84e9e
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/Data-Dumper/Changes
    M dist/Data-Dumper/Dumper.pm
    M dist/Data-Dumper/Dumper.xs

  Log Message:
  -----------
  Data-Dumper: document class object support


  Commit: ec1577be1421a53bfd34cf31e6ef5253f6cac2f2
      
https://github.com/Perl/perl5/commit/ec1577be1421a53bfd34cf31e6ef5253f6cac2f2
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/Data-Dumper/Dumper.xs

  Log Message:
  -----------
  Data-Dumper: guard class API by generated macro


  Commit: ade6cd739258aaa0912507ebe7dfe46036bef38e
      
https://github.com/Perl/perl5/commit/ade6cd739258aaa0912507ebe7dfe46036bef38e
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M pod/perldelta.pod

  Log Message:
  -----------
  Data-Dumper: document class object support in perldelta


  Commit: f11f25e68f843ebe0c6c91e3f1aaa88857568d86
      
https://github.com/Perl/perl5/commit/f11f25e68f843ebe0c6c91e3f1aaa88857568d86
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M builtin.c
    M class.c

  Log Message:
  -----------
  class: document object conversion APIs


  Commit: 93ecc6800ff044d0c8bd6e83728b68619638694c
      
https://github.com/Perl/perl5/commit/93ecc6800ff044d0c8bd6e83728b68619638694c
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST

  Log Message:
  -----------
  class: add object hash conversion test to manifest


  Commit: cb672e5d98d8524fa9c1475b8f2001239524d8ff
      
https://github.com/Perl/perl5/commit/cb672e5d98d8524fa9c1475b8f2001239524d8ff
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    R t/role/examples/001-currency.t
    R t/role/examples/002-shard-migrator.t
    R t/role/examples/003-lambda-terms.t
    R t/role/examples/004-native-types.t
    M t/role/role.t
    M t/role/role_compose.t
    M t/role/role_conflict_resolution.t
    M t/role/role_field_composition.t
    M t/role/role_field_conflicts.t
    M t/role/role_fields.t
    M t/role/role_implements.t
    M t/role/role_implements_method.t
    M t/role/role_implements_semantics.t
    M t/role/role_requires.t
    M universal.c

  Log Message:
  -----------
  role: align tests with core harness and DOES fallback


  Commit: db9071f16070a8e3bb666f38200656b2f9b97dd6
      
https://github.com/Perl/perl5/commit/db9071f16070a8e3bb666f38200656b2f9b97dd6
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    M builtin.c
    M class.c
    M class.h
    M ext/Opcode/Opcode.pm
    M lib/B/Deparse-core.t
    M lib/UNIVERSAL.pm
    M lib/builtin.pm
    M opcode.h
    M pod/perldiag.pod
    M regen/opcodes
    M run.c
    M sv.c
    M t/op/universal.t

  Log Message:
  -----------
  class: clone role metadata with threaded stashes


  Commit: 97c863f2263ffe134b300bdbaa01a995daf806fc
      
https://github.com/Perl/perl5/commit/97c863f2263ffe134b300bdbaa01a995daf806fc
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M class.c

  Log Message:
  -----------
  class: preserve field index sentinel type


  Commit: 9aa938e5b7aabf312f2910235088b44a8052293b
      
https://github.com/Perl/perl5/commit/9aa938e5b7aabf312f2910235088b44a8052293b
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M class.c

  Log Message:
  -----------
  class: keep field map bounds signed


  Commit: 76f11db08601bb38281a8af61c1abd27abd9d883
      
https://github.com/Perl/perl5/commit/76f11db08601bb38281a8af61c1abd27abd9d883
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M t/op/coreamp.t

  Log Message:
  -----------
  tests: silence experimental comparison warnings in coreamp


  Commit: de58cab71d666301f4778c2b9cbbd5d9fac02aaf
      
https://github.com/Perl/perl5/commit/de58cab71d666301f4778c2b9cbbd5d9fac02aaf
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M class.c
    M embed.h
    M ext/Opcode/Opcode.pm
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pod/perldiag.pod

  Log Message:
  -----------
  class: restore safe method parse cleanup


  Commit: 8c64fa6819a29f278cda332aa4a7761636b7afb9
      
https://github.com/Perl/perl5/commit/8c64fa6819a29f278cda332aa4a7761636b7afb9
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    A dist/p5-matrix-utils/Changes
    A dist/p5-matrix-utils/XS_DESIGN.md
    A dist/p5-matrix-utils/lib/MNIST.pm
    A dist/p5-matrix-utils/lib/Matrix.pm
    A dist/p5-matrix-utils/lib/Scalar.pm
    A dist/p5-matrix-utils/lib/Tensor.pm
    A dist/p5-matrix-utils/lib/Vector.pm
    A dist/p5-matrix-utils/t/matrix-utils.t

  Log Message:
  -----------
  dist: add p5-matrix-utils prototype


  Commit: 47bcfcbca270291a86822c3a0cd93274c73bb0d4
      
https://github.com/Perl/perl5/commit/47bcfcbca270291a86822c3a0cd93274c73bb0d4
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    A dist/p5-matrix-utils/NEURAL_NETWORK_FEATURES.md
    A dist/p5-matrix-utils/NOTES.md
    A dist/p5-matrix-utils/OPTIMIZATION_OPPORTUNITIES.md
    A dist/p5-matrix-utils/OPTIMIZATION_SUCCESS.md
    A dist/p5-matrix-utils/OPTIMIZATION_V2_RESULTS.md
    A dist/p5-matrix-utils/TRAINING_SUCCESS.md
    A dist/p5-matrix-utils/examples/README.md
    A dist/p5-matrix-utils/examples/benchmark.pl
    A dist/p5-matrix-utils/examples/idx_format_info.md
    A dist/p5-matrix-utils/examples/matrix_bench.pl
    A dist/p5-matrix-utils/examples/mnist_network.pl
    A dist/p5-matrix-utils/examples/mnist_training.pl
    A dist/p5-matrix-utils/examples/xor_training.pl
    A dist/p5-matrix-utils/t/000-tensor/010-access.t
    A dist/p5-matrix-utils/t/000-tensor/020-constructors.t
    A dist/p5-matrix-utils/t/000-tensor/030-math.t
    A dist/p5-matrix-utils/t/000-tensor/040-comparisons.t
    A dist/p5-matrix-utils/t/000-tensor/050-logical-math.t
    A dist/p5-matrix-utils/t/000-tensor/060-numerical.t
    A dist/p5-matrix-utils/t/000-tensor/070-reductions.t
    A dist/p5-matrix-utils/t/010-core/001-scalar.t
    A dist/p5-matrix-utils/t/010-core/010-reduce_data_array.t
    A dist/p5-matrix-utils/t/010-core/020-ops.t
    A dist/p5-matrix-utils/t/010-core/120-ops.t
    A dist/p5-matrix-utils/t/100-vector/110-access.t
    A dist/p5-matrix-utils/t/100-vector/120-scalar.t
    A dist/p5-matrix-utils/t/100-vector/130-matrix.t
    A dist/p5-matrix-utils/t/100-vector/150-math.t
    A dist/p5-matrix-utils/t/100-vector/160-concat.t
    A dist/p5-matrix-utils/t/100-vector/170-reductions.t
    A dist/p5-matrix-utils/t/100-vector/180-comparisons.t
    A dist/p5-matrix-utils/t/100-vector/190-logical-math.t
    A dist/p5-matrix-utils/t/200-matrix/210-access.t
    A dist/p5-matrix-utils/t/200-matrix/220-constructors.t
    A dist/p5-matrix-utils/t/200-matrix/230-operations.t
    A dist/p5-matrix-utils/t/200-matrix/250-math.t
    A dist/p5-matrix-utils/t/200-matrix/260-concat-stack.t
    A dist/p5-matrix-utils/t/200-matrix/270-accessors.t
    A dist/p5-matrix-utils/t/200-matrix/280-reductions.t
    A dist/p5-matrix-utils/t/200-matrix/290-comparisons.t
    A dist/p5-matrix-utils/t/200-matrix/300-logical-math.t

  Log Message:
  -----------
  dist: import complete p5-matrix-utils tree


  Commit: 32630fa2dd64ac9416cfdd99a07a5868d5e5f155
      
https://github.com/Perl/perl5/commit/32630fa2dd64ac9416cfdd99a07a5868d5e5f155
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    A dist/p5-matrix-utils/XS.xs
    A dist/p5-matrix-utils/lib/Tensor/XS.pm
    A dist/p5-matrix-utils/t/xs-native.t

  Log Message:
  -----------
  dist: add native Tensor XS storage prototype


  Commit: 765eafb0899385d5e765226577b8e074298dd88a
      
https://github.com/Perl/perl5/commit/765eafb0899385d5e765226577b8e074298dd88a
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    A dist/p5-matrix-utils/Makefile.PL

  Log Message:
  -----------
  dist: retain Tensor::XS build metadata


  Commit: 8c1a40b6ab0780f12aae5f8a0735105969f76db2
      
https://github.com/Perl/perl5/commit/8c1a40b6ab0780f12aae5f8a0735105969f76db2
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS_DESIGN.md

  Log Message:
  -----------
  dist: record Tensor XS migration status


  Commit: ff5e7284a406ebd440238150641e082d69f761ef
      
https://github.com/Perl/perl5/commit/ff5e7284a406ebd440238150641e082d69f761ef
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS.xs
    M dist/p5-matrix-utils/t/xs-native.t

  Log Message:
  -----------
  dist: make native tensor access coordinate based


  Commit: 7df2e1ea02ba4c8c15e33b7db14e900c64b0bbf2
      
https://github.com/Perl/perl5/commit/7df2e1ea02ba4c8c15e33b7db14e900c64b0bbf2
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS_DESIGN.md

  Log Message:
  -----------
  dist: update Tensor XS design status


  Commit: 2638bc8e1f472422bb62eef2c43a098109baf950
      
https://github.com/Perl/perl5/commit/2638bc8e1f472422bb62eef2c43a098109baf950
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS.xs
    M dist/p5-matrix-utils/t/xs-native.t

  Log Message:
  -----------
  dist: accept nested native tensor data


  Commit: d02ad700b38aa0a0d432017ab237868d58836130
      
https://github.com/Perl/perl5/commit/d02ad700b38aa0a0d432017ab237868d58836130
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS.xs
    M dist/p5-matrix-utils/XS_DESIGN.md
    M dist/p5-matrix-utils/t/xs-native.t

  Log Message:
  -----------
  dist: use conventional tensor strides


  Commit: 7a9917b1a04e8a2708d644c988ade805e59c8c91
      
https://github.com/Perl/perl5/commit/7a9917b1a04e8a2708d644c988ade805e59c8c91
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS.xs
    M dist/p5-matrix-utils/t/xs-native.t

  Log Message:
  -----------
  dist: make native tensor bulk loads atomic


  Commit: d90df8953ad4b5921fa7b55498db6f01f964e6a0
      
https://github.com/Perl/perl5/commit/d90df8953ad4b5921fa7b55498db6f01f964e6a0
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS.xs
    M dist/p5-matrix-utils/t/xs-native.t

  Log Message:
  -----------
  dist: add native tensor flat indexing


  Commit: c4f7ec99278b7150458ce9751e5aa9fbe78f522c
      
https://github.com/Perl/perl5/commit/c4f7ec99278b7150458ce9751e5aa9fbe78f522c
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS_DESIGN.md

  Log Message:
  -----------
  dist: document native tensor indexing


  Commit: b9ae762e49b6d60cd688d31660fb2b50abee6e25
      
https://github.com/Perl/perl5/commit/b9ae762e49b6d60cd688d31660fb2b50abee6e25
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS.xs
    M dist/p5-matrix-utils/XS_DESIGN.md
    M dist/p5-matrix-utils/t/xs-native.t

  Log Message:
  -----------
  dist: harden native tensor blob layout


  Commit: 21a281b6609943f062586464b3540f435b8b46ad
      
https://github.com/Perl/perl5/commit/21a281b6609943f062586464b3540f435b8b46ad
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS.xs

  Log Message:
  -----------
  dist: validate native tensor blob boundaries


  Commit: 2f6d9c92971e39d0a0f1dbc9eb700424cd6b8804
      
https://github.com/Perl/perl5/commit/2f6d9c92971e39d0a0f1dbc9eb700424cd6b8804
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS_DESIGN.md

  Log Message:
  -----------
  dist: define extensible tensor dtype model


  Commit: 7a90e433a2a698b7fe80d12df13ec7173a34a8f2
      
https://github.com/Perl/perl5/commit/7a90e433a2a698b7fe80d12df13ec7173a34a8f2
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS.xs
    M dist/p5-matrix-utils/XS_DESIGN.md
    M dist/p5-matrix-utils/lib/Tensor/XS.pm
    M dist/p5-matrix-utils/t/xs-native.t

  Log Message:
  -----------
  dist: add descriptor-driven tensor dtypes


  Commit: 41ab7d39481dda397dbda57484ef3a02f7a20984
      
https://github.com/Perl/perl5/commit/41ab7d39481dda397dbda57484ef3a02f7a20984
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS.xs
    M dist/p5-matrix-utils/XS_DESIGN.md
    M dist/p5-matrix-utils/lib/Tensor.pm

  Log Message:
  -----------
  dist: back Tensor with native XS storage


  Commit: 9889c10b7c29549a473e49d9524741ede2db6ce4
      
https://github.com/Perl/perl5/commit/9889c10b7c29549a473e49d9524741ede2db6ce4
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS.xs
    M dist/p5-matrix-utils/lib/Tensor.pm

  Log Message:
  -----------
  dist: finish native Tensor storage bridge


  Commit: e45a1b7a0ff063502bc79680e6f4e2a0846cafb1
      
https://github.com/Perl/perl5/commit/e45a1b7a0ff063502bc79680e6f4e2a0846cafb1
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/XS_DESIGN.md
    M dist/p5-matrix-utils/t/000-tensor/010-access.t
    M dist/p5-matrix-utils/t/000-tensor/020-constructors.t
    M dist/p5-matrix-utils/t/000-tensor/030-math.t
    M dist/p5-matrix-utils/t/000-tensor/040-comparisons.t
    M dist/p5-matrix-utils/t/000-tensor/050-logical-math.t
    M dist/p5-matrix-utils/t/000-tensor/060-numerical.t
    M dist/p5-matrix-utils/t/000-tensor/070-reductions.t
    M dist/p5-matrix-utils/t/010-core/001-scalar.t
    M dist/p5-matrix-utils/t/010-core/010-reduce_data_array.t
    M dist/p5-matrix-utils/t/010-core/120-ops.t
    M dist/p5-matrix-utils/t/100-vector/110-access.t
    M dist/p5-matrix-utils/t/100-vector/170-reductions.t
    M dist/p5-matrix-utils/t/100-vector/180-comparisons.t
    M dist/p5-matrix-utils/t/100-vector/190-logical-math.t
    M dist/p5-matrix-utils/t/200-matrix/210-access.t
    M dist/p5-matrix-utils/t/200-matrix/260-concat-stack.t
    M dist/p5-matrix-utils/t/200-matrix/270-accessors.t
    M dist/p5-matrix-utils/t/200-matrix/280-reductions.t
    M dist/p5-matrix-utils/t/200-matrix/290-comparisons.t
    M dist/p5-matrix-utils/t/200-matrix/300-logical-math.t

  Log Message:
  -----------
  dist: remove Test::Exception from tensor tests


  Commit: 1934cb174b5880b03eec87f06a043a1c933aa531
      
https://github.com/Perl/perl5/commit/1934cb174b5880b03eec87f06a043a1c933aa531
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M dist/p5-matrix-utils/Changes
    M dist/p5-matrix-utils/Makefile.PL

  Log Message:
  -----------
  dist: package native tensor classes and tests


  Commit: 5fd9f341259da10b1c792c507df118daf0b6389d
      
https://github.com/Perl/perl5/commit/5fd9f341259da10b1c792c507df118daf0b6389d
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M generator_plan.md

  Log Message:
  -----------
  generator: plan swappable execution context


  Commit: 0522811f70341eef7c575c3ce1da6b1567f48f3b
      
https://github.com/Perl/perl5/commit/0522811f70341eef7c575c3ce1da6b1567f48f3b
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M generator_plan.md

  Log Message:
  -----------
  generator: document context ownership lifecycle


  Commit: bd9206c41d1ba3cc9426ea6f3b7718fd21ce06a5
      
https://github.com/Perl/perl5/commit/bd9206c41d1ba3cc9426ea6f3b7718fd21ce06a5
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M Configure
    M MANIFEST
    M Makefile.SH
    M cop.h
    A dist/Tensor-XS/Changes
    A dist/Tensor-XS/Makefile.PL
    A dist/Tensor-XS/NEURAL_NETWORK_FEATURES.md
    A dist/Tensor-XS/NOTES.md
    A dist/Tensor-XS/OPTIMIZATION_OPPORTUNITIES.md
    A dist/Tensor-XS/OPTIMIZATION_SUCCESS.md
    A dist/Tensor-XS/OPTIMIZATION_V2_RESULTS.md
    A dist/Tensor-XS/TRAINING_SUCCESS.md
    A dist/Tensor-XS/XS.xs
    A dist/Tensor-XS/XS_DESIGN.md
    A dist/Tensor-XS/examples/README.md
    A dist/Tensor-XS/examples/benchmark.pl
    A dist/Tensor-XS/examples/idx_format_info.md
    A dist/Tensor-XS/examples/matrix_bench.pl
    A dist/Tensor-XS/examples/mnist_network.pl
    A dist/Tensor-XS/examples/mnist_training.pl
    A dist/Tensor-XS/examples/xor_training.pl
    A dist/Tensor-XS/lib/MNIST.pm
    A dist/Tensor-XS/lib/Matrix.pm
    A dist/Tensor-XS/lib/Scalar.pm
    A dist/Tensor-XS/lib/Tensor.pm
    A dist/Tensor-XS/lib/Tensor/XS.pm
    A dist/Tensor-XS/lib/Vector.pm
    A dist/Tensor-XS/t/000-tensor/010-access.t
    A dist/Tensor-XS/t/000-tensor/020-constructors.t
    A dist/Tensor-XS/t/000-tensor/030-math.t
    A dist/Tensor-XS/t/000-tensor/040-comparisons.t
    A dist/Tensor-XS/t/000-tensor/050-logical-math.t
    A dist/Tensor-XS/t/000-tensor/060-numerical.t
    A dist/Tensor-XS/t/000-tensor/070-reductions.t
    A dist/Tensor-XS/t/010-core/001-scalar.t
    A dist/Tensor-XS/t/010-core/010-reduce_data_array.t
    A dist/Tensor-XS/t/010-core/020-ops.t
    A dist/Tensor-XS/t/010-core/120-ops.t
    A dist/Tensor-XS/t/100-vector/110-access.t
    A dist/Tensor-XS/t/100-vector/120-scalar.t
    A dist/Tensor-XS/t/100-vector/130-matrix.t
    A dist/Tensor-XS/t/100-vector/150-math.t
    A dist/Tensor-XS/t/100-vector/160-concat.t
    A dist/Tensor-XS/t/100-vector/170-reductions.t
    A dist/Tensor-XS/t/100-vector/180-comparisons.t
    A dist/Tensor-XS/t/100-vector/190-logical-math.t
    A dist/Tensor-XS/t/200-matrix/210-access.t
    A dist/Tensor-XS/t/200-matrix/220-constructors.t
    A dist/Tensor-XS/t/200-matrix/230-operations.t
    A dist/Tensor-XS/t/200-matrix/250-math.t
    A dist/Tensor-XS/t/200-matrix/260-concat-stack.t
    A dist/Tensor-XS/t/200-matrix/270-accessors.t
    A dist/Tensor-XS/t/200-matrix/280-reductions.t
    A dist/Tensor-XS/t/200-matrix/290-comparisons.t
    A dist/Tensor-XS/t/200-matrix/300-logical-math.t
    A dist/Tensor-XS/t/matrix-utils.t
    A dist/Tensor-XS/t/xs-native.t
    R dist/p5-matrix-utils/Changes
    R dist/p5-matrix-utils/Makefile.PL
    R dist/p5-matrix-utils/NEURAL_NETWORK_FEATURES.md
    R dist/p5-matrix-utils/NOTES.md
    R dist/p5-matrix-utils/OPTIMIZATION_OPPORTUNITIES.md
    R dist/p5-matrix-utils/OPTIMIZATION_SUCCESS.md
    R dist/p5-matrix-utils/OPTIMIZATION_V2_RESULTS.md
    R dist/p5-matrix-utils/TRAINING_SUCCESS.md
    R dist/p5-matrix-utils/XS.xs
    R dist/p5-matrix-utils/XS_DESIGN.md
    R dist/p5-matrix-utils/examples/README.md
    R dist/p5-matrix-utils/examples/benchmark.pl
    R dist/p5-matrix-utils/examples/idx_format_info.md
    R dist/p5-matrix-utils/examples/matrix_bench.pl
    R dist/p5-matrix-utils/examples/mnist_network.pl
    R dist/p5-matrix-utils/examples/mnist_training.pl
    R dist/p5-matrix-utils/examples/xor_training.pl
    R dist/p5-matrix-utils/lib/MNIST.pm
    R dist/p5-matrix-utils/lib/Matrix.pm
    R dist/p5-matrix-utils/lib/Scalar.pm
    R dist/p5-matrix-utils/lib/Tensor.pm
    R dist/p5-matrix-utils/lib/Tensor/XS.pm
    R dist/p5-matrix-utils/lib/Vector.pm
    R dist/p5-matrix-utils/t/000-tensor/010-access.t
    R dist/p5-matrix-utils/t/000-tensor/020-constructors.t
    R dist/p5-matrix-utils/t/000-tensor/030-math.t
    R dist/p5-matrix-utils/t/000-tensor/040-comparisons.t
    R dist/p5-matrix-utils/t/000-tensor/050-logical-math.t
    R dist/p5-matrix-utils/t/000-tensor/060-numerical.t
    R dist/p5-matrix-utils/t/000-tensor/070-reductions.t
    R dist/p5-matrix-utils/t/010-core/001-scalar.t
    R dist/p5-matrix-utils/t/010-core/010-reduce_data_array.t
    R dist/p5-matrix-utils/t/010-core/020-ops.t
    R dist/p5-matrix-utils/t/010-core/120-ops.t
    R dist/p5-matrix-utils/t/100-vector/110-access.t
    R dist/p5-matrix-utils/t/100-vector/120-scalar.t
    R dist/p5-matrix-utils/t/100-vector/130-matrix.t
    R dist/p5-matrix-utils/t/100-vector/150-math.t
    R dist/p5-matrix-utils/t/100-vector/160-concat.t
    R dist/p5-matrix-utils/t/100-vector/170-reductions.t
    R dist/p5-matrix-utils/t/100-vector/180-comparisons.t
    R dist/p5-matrix-utils/t/100-vector/190-logical-math.t
    R dist/p5-matrix-utils/t/200-matrix/210-access.t
    R dist/p5-matrix-utils/t/200-matrix/220-constructors.t
    R dist/p5-matrix-utils/t/200-matrix/230-operations.t
    R dist/p5-matrix-utils/t/200-matrix/250-math.t
    R dist/p5-matrix-utils/t/200-matrix/260-concat-stack.t
    R dist/p5-matrix-utils/t/200-matrix/270-accessors.t
    R dist/p5-matrix-utils/t/200-matrix/280-reductions.t
    R dist/p5-matrix-utils/t/200-matrix/290-comparisons.t
    R dist/p5-matrix-utils/t/200-matrix/300-logical-math.t
    R dist/p5-matrix-utils/t/matrix-utils.t
    R dist/p5-matrix-utils/t/xs-native.t
    M dist/threads/lib/threads.pm
    M dist/threads/threads.xs
    M embedvar.h
    M ext/B/B.pm
    M ext/B/B.xs
    M ext/XS-APItest/APItest_runtime_helpers.xs
    M intrpvar.h
    M lib/.gitignore
    M makedef.pl
    M pad.h
    M perl.c
    M perl.h
    M regen/embed.pl
    M sv.c
    M win32/FindExt.pm
    M win32/GNUmakefile
    M win32/Makefile

  Log Message:
  -----------
  core: make execution context swappable and configure Tensor::XS


  Commit: 2c8a791368d792cfad64912e6a20e8da8a083ed5
      
https://github.com/Perl/perl5/commit/2c8a791368d792cfad64912e6a20e8da8a083ed5
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M cop.h
    M embed.fnc
    M embed.h
    M ext/XS-APItest/APItest_runtime_helpers.xs
    M proto.h
    M run.c

  Log Message:
  -----------
  generator: switch process state by context pointer


  Commit: fd692af8baea491a676300f46ac443a20bf02d68
      
https://github.com/Perl/perl5/commit/fd692af8baea491a676300f46ac443a20bf02d68
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M perl.c

  Log Message:
  -----------
  interpreter: initialize unthreaded execution context


  Commit: 006ed71f6ca067e40c2ac9f9a8105e5f45d40fa8
      
https://github.com/Perl/perl5/commit/006ed71f6ca067e40c2ac9f9a8105e5f45d40fa8
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M generator_plan.md

  Log Message:
  -----------
  generator: record execution-context validation


  Commit: 84515ea56c935b1586bdad43f73d0f31aeb22e25
      
https://github.com/Perl/perl5/commit/84515ea56c935b1586bdad43f73d0f31aeb22e25
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M lib/overload.pm

  Log Message:
  -----------
  overload: suppress intentional redefinition warnings


  Commit: c9eaf8a5bda9dd1d43d01d57e809124221163faa
      
https://github.com/Perl/perl5/commit/c9eaf8a5bda9dd1d43d01d57e809124221163faa
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M makedef.pl

  Log Message:
  -----------
  makedef: omit execution-context members from exports


  Commit: 7324d2cb9add4f617665bc092c07ee1cb456656f
      
https://github.com/Perl/perl5/commit/7324d2cb9add4f617665bc092c07ee1cb456656f
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M Porting/Maintainers.pl

  Log Message:
  -----------
  maintainers: register Cpanel::JSON::XS


  Commit: ae3a36a5148225df63bc0cbfce6cbf6efb4f3871
      
https://github.com/Perl/perl5/commit/ae3a36a5148225df63bc0cbfce6cbf6efb4f3871
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M t/class/gh22169.t

  Log Message:
  -----------
  class: silence intentional replacement warning in gh22169 test


  Commit: 4b15557ef57c3f849ed8bed884b97934db04b391
      
https://github.com/Perl/perl5/commit/4b15557ef57c3f849ed8bed884b97934db04b391
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    M Makefile.SH
    M Porting/Maintainers.pl
    M Porting/sync-with-cpan
    A cpan/Cpanel-JSON-XS/.appveyor.yml
    A cpan/Cpanel-JSON-XS/.github/FUNDING.yml
    A cpan/Cpanel-JSON-XS/.github/workflows/testsuite.yml
    A cpan/Cpanel-JSON-XS/.whitesource
    A cpan/Cpanel-JSON-XS/XS.pm
    A cpan/Cpanel-JSON-XS/XS.xs
    A cpan/Cpanel-JSON-XS/XS/Boolean.pm
    A cpan/Cpanel-JSON-XS/XS/Type.pm
    A cpan/Cpanel-JSON-XS/bin/cpanel_json_xs
    A cpan/Cpanel-JSON-XS/eg/bench
    A cpan/Cpanel-JSON-XS/t/00_load.t
    A cpan/Cpanel-JSON-XS/t/01_utf8.t
    A cpan/Cpanel-JSON-XS/t/02_error.t
    A cpan/Cpanel-JSON-XS/t/03_types.t
    A cpan/Cpanel-JSON-XS/t/04_dwiw_encode.t
    A cpan/Cpanel-JSON-XS/t/05_dwiw_decode.t
    A cpan/Cpanel-JSON-XS/t/06_pc_pretty.t
    A cpan/Cpanel-JSON-XS/t/07_pc_esc.t
    A cpan/Cpanel-JSON-XS/t/08_pc_base.t
    A cpan/Cpanel-JSON-XS/t/08_pc_base_nv.t
    A cpan/Cpanel-JSON-XS/t/09_pc_extra_number.t
    A cpan/Cpanel-JSON-XS/t/104_sortby.t
    A cpan/Cpanel-JSON-XS/t/105_esc_slash.t
    A cpan/Cpanel-JSON-XS/t/106_allow_barekey.t
    A cpan/Cpanel-JSON-XS/t/107_allow_singlequote.t
    A cpan/Cpanel-JSON-XS/t/108_decode.t
    A cpan/Cpanel-JSON-XS/t/109_encode.t
    A cpan/Cpanel-JSON-XS/t/10_pc_keysort.t
    A cpan/Cpanel-JSON-XS/t/110_bignum.t
    A cpan/Cpanel-JSON-XS/t/112_upgrade.t
    A cpan/Cpanel-JSON-XS/t/113_overloaded_eq.t
    A cpan/Cpanel-JSON-XS/t/114_decode_prefix.t
    A cpan/Cpanel-JSON-XS/t/115_tie_ixhash.t
    A cpan/Cpanel-JSON-XS/t/116_incr_parse_fixed.t
    A cpan/Cpanel-JSON-XS/t/117_numbers.t
    A cpan/Cpanel-JSON-XS/t/118_type.t
    A cpan/Cpanel-JSON-XS/t/119_type_decode.t
    A cpan/Cpanel-JSON-XS/t/11_pc_expo.t
    A cpan/Cpanel-JSON-XS/t/120_type_all_string.t
    A cpan/Cpanel-JSON-XS/t/121_memleak.t
    A cpan/Cpanel-JSON-XS/t/122_type_encode.t
    A cpan/Cpanel-JSON-XS/t/125_shared_boolean.t
    A cpan/Cpanel-JSON-XS/t/12_blessed.t
    A cpan/Cpanel-JSON-XS/t/13_limit.t
    A cpan/Cpanel-JSON-XS/t/14_latin1.t
    A cpan/Cpanel-JSON-XS/t/15_prefix.t
    A cpan/Cpanel-JSON-XS/t/16_tied.t
    A cpan/Cpanel-JSON-XS/t/17_relaxed.t
    A cpan/Cpanel-JSON-XS/t/18_json_checker.t
    A cpan/Cpanel-JSON-XS/t/19_incr.t
    A cpan/Cpanel-JSON-XS/t/20_faihu.t
    A cpan/Cpanel-JSON-XS/t/20_unknown.t
    A cpan/Cpanel-JSON-XS/t/21_evans.t
    A cpan/Cpanel-JSON-XS/t/22_comment_at_eof.t
    A cpan/Cpanel-JSON-XS/t/23_array_ctx.t
    A cpan/Cpanel-JSON-XS/t/24_freeze_recursion.t
    A cpan/Cpanel-JSON-XS/t/25_boolean.t
    A cpan/Cpanel-JSON-XS/t/26_duplicate.t
    A cpan/Cpanel-JSON-XS/t/30_jsonspec.t
    A cpan/Cpanel-JSON-XS/t/31_bom.t
    A cpan/Cpanel-JSON-XS/t/52_object.t
    A cpan/Cpanel-JSON-XS/t/53_readonly.t
    A cpan/Cpanel-JSON-XS/t/54_stringify.t
    A cpan/Cpanel-JSON-XS/t/55_modifiable.t
    A cpan/Cpanel-JSON-XS/t/96_interop.t
    A cpan/Cpanel-JSON-XS/t/96_interop_pp.t
    A cpan/Cpanel-JSON-XS/t/96_mojo.t
    A cpan/Cpanel-JSON-XS/t/97_unshare_hek.t
    A cpan/Cpanel-JSON-XS/t/98_56only.t
    A cpan/Cpanel-JSON-XS/t/99_binary.t
    A cpan/Cpanel-JSON-XS/t/_unicode_handling.pm
    A cpan/Cpanel-JSON-XS/t/appveyor-test.bat
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_number_neg_int_huge_exp.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_number_pos_double_huge_exp.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_object_key_lone_2nd_surrogate.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/i_string_1st_surrogate_but_2nd_missing.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/i_string_1st_valid_surrogate_2nd_invalid.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/i_string_UTF-16_invalid_lonely_surrogate.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_string_UTF-16_invalid_surrogate.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_string_UTF-8_invalid_sequence.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/i_string_incomplete_surrogate_and_escape_valid.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_string_incomplete_surrogate_pair.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/i_string_incomplete_surrogates_escape_valid.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/i_string_inverted_surrogates_U+1D11E.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_string_lone_second_surrogate.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_string_not_in_unicode_range.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_string_truncated-utf-8.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_string_unicode_U+10FFFE_nonchar.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_string_unicode_U+1FFFE_nonchar.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_string_unicode_U+FDD0_nonchar.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_string_unicode_U+FFFE_nonchar.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_structure_500_nested_arrays.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/i_structure_UTF-8_BOM_empty_object.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_1_true_without_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_a_invalid_utf8.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_colon_instead_of_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_comma_after_close.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_comma_and_number.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_double_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_double_extra_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_extra_close.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_extra_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_incomplete.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_incomplete_invalid_value.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_inner_array_no_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_invalid_utf8.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_array_items_separated_by_semicolon.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_just_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_just_minus.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_missing_value.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_newlines_unclosed.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_number_and_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_number_and_several_commas.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_array_spaces_vertical_tab_formfeed.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_star_inside.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_unclosed.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_unclosed_trailing_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_array_unclosed_with_new_lines.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_array_unclosed_with_object_inside.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_incomplete_false.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_incomplete_null.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_incomplete_true.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_++.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_+1.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_+Inf.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_-01.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_-1.0..json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_-2..json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_-NaN.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_.-1.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_.2e-3.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_0.1.2.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_0.3e+.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_0.3e.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_0.e1.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_0_capital_E+.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_0_capital_E.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_0e+.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_0e.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_1.0e+.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_1.0e-.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_1.0e.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_1_000.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_1eE2.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_2.e+3.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_2.e-3.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_2.e3.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_9.e+.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_Inf.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_NaN.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_number_U+FF11_fullwidth_digit_one.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_expression.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_hex_1_digit.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_hex_2_digits.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_infinity.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_invalid+-.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_invalid-negative-real.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_number_invalid-utf-8-in-bigger-int.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_invalid-utf-8-in-exponent.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_invalid-utf-8-in-int.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_minus_infinity.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_number_minus_sign_with_trailing_garbage.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_minus_space_1.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_number_neg_int_starting_with_zero.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_neg_real_without_int_part.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_neg_with_garbage_at_end.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_real_garbage_after_e.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_number_real_with_invalid_utf8_after_e.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_number_real_without_fractional_part.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_starting_with_dot.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_then_00.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_with_alpha.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_with_alpha_char.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_number_with_leading_zero.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_bad_value.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_bracket_key.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_comma_instead_of_colon.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_double_colon.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_emoji.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_garbage_at_end.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_key_with_single_quotes.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_missing_colon.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_missing_key.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_missing_semicolon.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_missing_value.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_no-colon.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_non_string_key.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_object_non_string_key_but_huge_number_instead.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_object_pi_in_key_and_trailing_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_repeated_null_null.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_several_trailing_commas.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_single_quote.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_trailing_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_trailing_comment.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_trailing_comment_open.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_object_trailing_comment_slash_open.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_object_trailing_comment_slash_open_incomplete.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_two_commas_in_a_row.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_unquoted_key.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_unterminated-value.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_with_single_string.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_object_with_trailing_garbage.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_single_space.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_1_surrogate_then_escape.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_1_surrogate_then_escape_u.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_string_1_surrogate_then_escape_u1.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_string_1_surrogate_then_escape_u1x.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_string_UTF-16_incomplete_surrogate.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_UTF8_surrogate_U+D800.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_string_accentuated_char_no_quotes.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_backslash_00.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_escape_x.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_escaped_backslash_bad.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_escaped_ctrl_char_tab.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_escaped_emoji.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_incomplete_escape.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_string_incomplete_escaped_character.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_string_incomplete_surrogate_escape_invalid.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_invalid-utf-8-in-escape.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_invalid_backslash_esc.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_invalid_unicode_escape.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_invalid_utf-8.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_invalid_utf8_after_escape.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_iso_latin_1.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_string_leading_uescaped_thinspace.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_string_lone_utf8_continuation_byte.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_no_quotes_with_bad_escape.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_overlong_sequence_2_bytes.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_overlong_sequence_6_bytes.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_string_overlong_sequence_6_bytes_null.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_single_doublequote.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_single_quote.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_string_single_string_no_double_quotes.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_start_escape_unclosed.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_unescaped_crtl_char.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_unescaped_newline.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_unescaped_tab.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_unicode_CapitalU.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_string_with_trailing_garbage.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_100000_opening_arrays.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_U+2060_word_joined.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_UTF8_BOM_no_data.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_array_trailing_garbage.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_array_with_extra_array_close.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_array_with_unclosed_string.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_ascii-unicode-identifier.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_capitalized_True.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_close_unopened_array.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_comma_instead_of_closing_brace.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_double_array.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_end_array.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_incomplete_UTF8_BOM.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_lone-invalid-utf-8.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_lone-open-bracket.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_lt.gt.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_ltnullgt.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_no_data.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_null-byte-outside-string.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_number_with_trailing_garbage.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_object_followed_by_closing_object.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_object_unclosed_no_value.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_object_with_comment.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_object_with_trailing_garbage.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_array_apostrophe.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_array_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_array_object.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_array_open_object.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_array_open_string.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_array_string.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_object.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_object_close_array.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_object_comma.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_object_open_array.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_object_open_string.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_object_string_with_apostrophes.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_open_open.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_single_point.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_single_star.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_trailing_#.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_uescaped_LF_before_string.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_unclosed_array.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_unclosed_array_partial_null.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_unclosed_array_unfinished_false.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_unclosed_array_unfinished_true.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_unclosed_object.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_unicode-identifier.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_whitespace_U+2060_word_joiner.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/n_structure_whitespace_formfeed.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_arraysWithSpaces.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_empty-string.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_empty.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_ending_with_newline.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_false.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_heterogeneous.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_null.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_with_1_and_newline.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_with_leading_space.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_with_several_null.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_array_with_trailing_space.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_0e+1.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_0e1.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_after_space.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_double_close_to_zero.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_double_huge_neg_exp.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_huge_exp.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_int_with_exp.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_minus_zero.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_negative_int.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_negative_one.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_negative_zero.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_real_capital_e.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_real_capital_e_neg_exp.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_real_capital_e_pos_exp.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_real_exponent.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_real_fraction_exponent.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_real_neg_exp.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_real_neg_overflow.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_real_pos_exponent.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_real_pos_overflow.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_real_underflow.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_simple_int.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_simple_real.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_too_big_neg_int.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_too_big_pos_int.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_number_very_big_negative_int.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_basic.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_duplicated_key.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_duplicated_key_and_value.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_empty.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_empty_key.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_escaped_null_in_key.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_extreme_numbers.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_long_strings.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_simple.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_string_unicode.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_object_with_newlines.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/y_string_1_2_3_bytes_UTF-8_sequences.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/y_string_UTF-16_Surrogates_U+1D11E_MUSICAL_SYMBOL_G_CLEF.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_accepted_surrogate_pair.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_accepted_surrogate_pairs.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_allowed_escapes.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/y_string_backslash_and_u_escaped_zero.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_backslash_doublequotes.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_comments.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_double_escape_a.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_double_escape_n.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_escaped_control_character.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_escaped_noncharacter.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_in_array.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/y_string_in_array_with_leading_space.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_last_surrogates_1_and_2.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_newline_uescaped.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/y_string_nonCharacterInUTF-8_U+10FFFF.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/y_string_nonCharacterInUTF-8_U+1FFFF.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/y_string_nonCharacterInUTF-8_U+FFFF.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_null_escape.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_one-byte-utf-8.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_pi.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_simple_ascii.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_space.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_three-byte-utf-8.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_two-byte-utf-8.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_u+2028_line_sep.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_u+2029_par_sep.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_uEscape.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_unescaped_char_delete.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_unicode.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_unicodeEscapedBackslash.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_unicode_2.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/y_string_unicode_U+200B_ZERO_WIDTH_SPACE.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/y_string_unicode_U+2064_invisible_plus.json
    A 
cpan/Cpanel-JSON-XS/t/test_parsing/y_string_unicode_escaped_double_quote.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_utf16.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_utf16be.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_utf32.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_utf32be.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_utf8.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_string_with_del_character.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_structure_lonely_false.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_structure_lonely_int.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_structure_lonely_negative_real.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_structure_lonely_null.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_structure_lonely_string.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_structure_lonely_true.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_structure_string_empty.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_structure_trailing_newline.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_structure_true_in_array.json
    A cpan/Cpanel-JSON-XS/t/test_parsing/y_structure_whitespace_array.json
    A cpan/Cpanel-JSON-XS/t/test_transform/number_1.0.json
    A cpan/Cpanel-JSON-XS/t/test_transform/number_1.000000000000000005.json
    A cpan/Cpanel-JSON-XS/t/test_transform/number_1000000000000000.json
    A cpan/Cpanel-JSON-XS/t/test_transform/number_10000000000000000999.json
    A cpan/Cpanel-JSON-XS/t/test_transform/number_1e-999.json
    A cpan/Cpanel-JSON-XS/t/test_transform/number_1e6.json
    A cpan/Cpanel-JSON-XS/t/test_transform/object_key_nfc_nfd.json
    A cpan/Cpanel-JSON-XS/t/test_transform/object_key_nfd_nfc.json
    A cpan/Cpanel-JSON-XS/t/test_transform/object_same_key_different_values.json
    A cpan/Cpanel-JSON-XS/t/test_transform/object_same_key_same_value.json
    A cpan/Cpanel-JSON-XS/t/test_transform/object_same_key_unclear_values.json
    A 
cpan/Cpanel-JSON-XS/t/test_transform/string_1_escaped_invalid_codepoint.json
    A cpan/Cpanel-JSON-XS/t/test_transform/string_1_invalid_codepoint.json
    A 
cpan/Cpanel-JSON-XS/t/test_transform/string_2_escaped_invalid_codepoints.json
    A cpan/Cpanel-JSON-XS/t/test_transform/string_2_invalid_codepoints.json
    A 
cpan/Cpanel-JSON-XS/t/test_transform/string_3_escaped_invalid_codepoints.json
    A cpan/Cpanel-JSON-XS/t/test_transform/string_3_invalid_codepoints.json
    A cpan/Cpanel-JSON-XS/t/test_transform/string_with_escaped_NULL.json
    A cpan/Cpanel-JSON-XS/t/zero-mojibake.t
    A cpan/Cpanel-JSON-XS/typemap
    A cpan/Cpanel-JSON-XS/xt/changes.t
    A cpan/Cpanel-JSON-XS/xt/checkchanges.t
    A cpan/Cpanel-JSON-XS/xt/gh70-asan.t
    A cpan/Cpanel-JSON-XS/xt/kwalitee.t
    A cpan/Cpanel-JSON-XS/xt/leaktrace.t
    A cpan/Cpanel-JSON-XS/xt/manifest.t
    A cpan/Cpanel-JSON-XS/xt/meta.t
    A cpan/Cpanel-JSON-XS/xt/perl_minimum_version.t
    A cpan/Cpanel-JSON-XS/xt/pod-coverage.t
    A cpan/Cpanel-JSON-XS/xt/pod-spell-mistakes.t
    A cpan/Cpanel-JSON-XS/xt/pod-spelling.t
    A cpan/Cpanel-JSON-XS/xt/pod.t
    M lib/.gitignore
    M win32/GNUmakefile
    M win32/Makefile

  Log Message:
  -----------
  core: add Cpanel::JSON::XS


  Commit: 4e1ac8a350c892ffd815aa371627cd000f70962d
      
https://github.com/Perl/perl5/commit/4e1ac8a350c892ffd815aa371627cd000f70962d
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M t/harness

  Log Message:
  -----------
  harness: prioritize tests without saved timings


  Commit: cab3529fb498a19cb08bd2b4ee69ac4a1b374c52
      
https://github.com/Perl/perl5/commit/cab3529fb498a19cb08bd2b4ee69ac4a1b374c52
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    R cpan/Cpanel-JSON-XS/.appveyor.yml
    R cpan/Cpanel-JSON-XS/.github/FUNDING.yml
    R cpan/Cpanel-JSON-XS/.github/workflows/testsuite.yml
    R cpan/Cpanel-JSON-XS/.whitesource
    M cpan/Cpanel-JSON-XS/XS.xs
    M cpan/Cpanel-JSON-XS/bin/cpanel_json_xs
    M cpan/Cpanel-JSON-XS/eg/bench
    M cpan/Cpanel-JSON-XS/t/20_unknown.t
    M t/porting/filenames.t
    A utils/cpanel_json_xs.PL

  Log Message:
  -----------
  core: finish Cpanel JSON XS integration cleanup


  Commit: eba7bf4751feb463d6df84f4ce515a2499742e3a
      
https://github.com/Perl/perl5/commit/eba7bf4751feb463d6df84f4ce515a2499742e3a
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    A .agent/skills/perl-configure-build-system/SKILL.md
    A 
.agent/skills/perl-configure-build-system/references/configure-build-system.md
    A .agent/skills/perl-core-archaeology/SKILL.md
    A .agent/skills/perl-core-archaeology/references/core-archaeology.md
    A .agent/skills/perl-core-build-test-debug/SKILL.md
    A .agent/skills/perl-core-build-test-debug/references/testing-debugging.md
    A .agent/skills/perl-core-docs-release/SKILL.md
    A .agent/skills/perl-core-docs-release/references/docs-release.md
    A .agent/skills/perl-core-hacking/SKILL.md
    A .agent/skills/perl-core-hacking/references/core-change-workflow.md
    A .agent/skills/perl-core-orientation/SKILL.md
    A .agent/skills/perl-core-orientation/references/source-map.md
    A .agent/skills/perl-core-portability/SKILL.md
    A .agent/skills/perl-core-portability/references/core-portability.md
    A .agent/skills/perl-embed-fnc/SKILL.md
    A .agent/skills/perl-embed-fnc/references/embed-fnc-guide.md
    A .agent/skills/perl-generated-files/SKILL.md
    A .agent/skills/perl-generated-files/references/generated-files.md
    A .agent/skills/perl-language-library/SKILL.md
    A .agent/skills/perl-language-library/references/language-library.md
    A .agent/skills/perl-parser-optree-ops/SKILL.md
    A .agent/skills/perl-parser-optree-ops/references/parser-optree-ops.md
    A .agent/skills/perl-regex-engine/SKILL.md
    A .agent/skills/perl-regex-engine/references/regex-engine-map.md
    A .agent/skills/perl-sv-magic-memory/SKILL.md
    A .agent/skills/perl-sv-magic-memory/references/sv-magic-memory.md
    A .agent/skills/perl-xs-embedding/SKILL.md
    A .agent/skills/perl-xs-embedding/references/xs-embedding.md
    M .gitignore
    A AGENTS.md
    R AI_POLICY.md
    A CLAUDE.md

  Log Message:
  -----------
  add skills


  Commit: a40233ee48da1de4044773f4123074c376f2111e
      
https://github.com/Perl/perl5/commit/a40233ee48da1de4044773f4123074c376f2111e
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    M MANIFEST.SKIP

  Log Message:
  -----------
  porting: exclude agent files from the distribution manifest


  Commit: e70c578f0565ec9a4e9579b459dd79c785564bb6
      
https://github.com/Perl/perl5/commit/e70c578f0565ec9a4e9579b459dd79c785564bb6
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    M embed.fnc
    M embed.h
    M feature.h
    M keywords.c
    M keywords.h
    M lib/feature.pm
    M op.c
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pod/perl.pod
    M pod/perldelta.pod
    A pod/perlnamespace.pod
    M pod/perlsyn.pod
    M proto.h
    M regen/feature.pl
    M regen/keywords.pl
    A t/comp/namespaces.t
    M toke.c

  Log Message:
  -----------
  core: add lexical namespace foundation


  Commit: 82121baef955ffa6f266556970daafc1fa40a2b1
      
https://github.com/Perl/perl5/commit/82121baef955ffa6f266556970daafc1fa40a2b1
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M lib/feature.pm
    M lib/warnings.pm
    M pod/perlfunc.pod
    M regen/feature.pl
    M regen/warnings.pl
    M t/comp/namespaces.t
    M toke.c
    M warnings.h

  Log Message:
  -----------
  core: mark namespaces as experimental


  Commit: e1541b259dbbcd16525d0652cdf1d96cb5253372
      
https://github.com/Perl/perl5/commit/e1541b259dbbcd16525d0652cdf1d96cb5253372
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M toke.c

  Log Message:
  -----------
  core: resolve namespace-qualified symbols


  Commit: aeb62f0367994bd8fc39c60f0169dee7e02eddb2
      
https://github.com/Perl/perl5/commit/aeb62f0367994bd8fc39c60f0169dee7e02eddb2
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    M op.c
    M pod/perldiag.pod
    M pod/perlfunc.pod
    M win32/pod.mak

  Log Message:
  -----------
  core: document namespace APIs and diagnostics


  Commit: 67eac546cdd2c7301a6ed24c29087b1cf649d681
      
https://github.com/Perl/perl5/commit/67eac546cdd2c7301a6ed24c29087b1cf649d681
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M t/comp/namespaces.t
    M t/op/coreamp.t
    M t/op/coresubs.t

  Log Message:
  -----------
  tests: cover namespace test setup and keyword warnings


  Commit: 2d52c2c61ec53c88419d465ec27363b388de7e1d
      
https://github.com/Perl/perl5/commit/2d52c2c61ec53c88419d465ec27363b388de7e1d
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M gv.c

  Log Message:
  -----------
  core: exclude namespace keywords from CORE subs


  Commit: cfe512aee707c0dd1566fe17e226d98a6167ace8
      
https://github.com/Perl/perl5/commit/cfe512aee707c0dd1566fe17e226d98a6167ace8
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M t/comp/namespaces.t
    M toke.c

  Log Message:
  -----------
  namespaces: support explicit CORE boundaries


  Commit: 88055a1a0149d6da29e45197575f7c44815a1d3e
      
https://github.com/Perl/perl5/commit/88055a1a0149d6da29e45197575f7c44815a1d3e
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M ext/Pod-Functions/t/Functions.t
    M t/comp/namespaces.t
    M t/porting/test_bootstrap.t
    M toke.c

  Log Message:
  -----------
  tests: restore feature-off namespace compatibility


  Commit: 7f561a55327c9ade79e6e6463908a08a8ad31e24
      
https://github.com/Perl/perl5/commit/7f561a55327c9ade79e6e6463908a08a8ad31e24
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M lib/B/Deparse-core.t

  Log Message:
  -----------
  tests: account for namespace keywords in deparse sanity check


  Commit: a29e1924c4fb11fa675f0126cecc9c9185de751d
      
https://github.com/Perl/perl5/commit/a29e1924c4fb11fa675f0126cecc9c9185de751d
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M lib/B/Deparse-core.t

  Log Message:
  -----------
  tests: silence experimental comparison warnings


  Commit: 67f7e27a0444f37b49e54543a3a159ed4eac7372
      
https://github.com/Perl/perl5/commit/67f7e27a0444f37b49e54543a3a159ed4eac7372
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    M MANIFEST.SKIP
    R generator_plan.md
    A planning/fork-substrate.md
    A planning/generator_plan.md

  Log Message:
  -----------
  docs: keep development plans under planning


  Commit: 5c39f3962ee940b13a9232c084f271284ce36da1
      
https://github.com/Perl/perl5/commit/5c39f3962ee940b13a9232c084f271284ce36da1
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    A AI-PERL-MISSION.md
    A BLEAD-DELTA.md
    M MANIFEST

  Log Message:
  -----------
  docs: add AI Perl mission statement


  Commit: af9cdc92a671dd3a31f0bebb6a5859db7e335eba
      
https://github.com/Perl/perl5/commit/af9cdc92a671dd3a31f0bebb6a5859db7e335eba
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    A planning/mainline-policy-inventory.md

  Log Message:
  -----------
  docs: preserve mainline policy inventory


  Commit: ff8ddb41c05b0b222c4a684717148dc495ffa6b3
      
https://github.com/Perl/perl5/commit/ff8ddb41c05b0b222c4a684717148dc495ffa6b3
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M AI-PERL-MISSION.md
    M BLEAD-DELTA.md
    M pod/perlasync.pod

  Log Message:
  -----------
  docs: clarify prerelease status and generator concurrency


  Commit: 6ffd61bb64c664608ca779d54b73903d3bea72c3
      
https://github.com/Perl/perl5/commit/6ffd61bb64c664608ca779d54b73903d3bea72c3
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M README

  Log Message:
  -----------
  update README to mention this is AI-PERl.


  Commit: f7bbe343ffac00d0095c76e742bb0e0e12f54ab9
      
https://github.com/Perl/perl5/commit/f7bbe343ffac00d0095c76e742bb0e0e12f54ab9
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    A .github/AI-PERL-MISSION.md
    A .github/BLEAD-DELTA.md

  Log Message:
  -----------
  docs: add GitHub README link targets


  Commit: fb8507cf9c583e5080a8388976f26b7c10651113
      
https://github.com/Perl/perl5/commit/fb8507cf9c583e5080a8388976f26b7c10651113
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    R .github/AI-PERL-MISSION.md
    R .github/BLEAD-DELTA.md
    M README

  Log Message:
  -----------
  docs: use stable links in shared README


  Commit: f4d5e1ff0fd51a6a30b356e3c13b71ecc58ccfa9
      
https://github.com/Perl/perl5/commit/f4d5e1ff0fd51a6a30b356e3c13b71ecc58ccfa9
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M BLEAD-DELTA.md

  Log Message:
  -----------
  docs: link delta file references


  Commit: 011be0b8cd3a82b382be8154e83c97ae7e96ec79
      
https://github.com/Perl/perl5/commit/011be0b8cd3a82b382be8154e83c97ae7e96ec79
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M README

  Log Message:
  -----------
  docs: keep README copyright paragraph first


  Commit: c9880ed9d2a07919838fa68f068f8611dbf93b67
      
https://github.com/Perl/perl5/commit/c9880ed9d2a07919838fa68f068f8611dbf93b67
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M pod/perlasync.pod
    M pod/perldelta.pod
    M pod/perlfunc.pod

  Log Message:
  -----------
  docs: explain interleaved generators


  Commit: c0adb4f1db81329d429dbcf662df75ffafa29038
      
https://github.com/Perl/perl5/commit/c0adb4f1db81329d429dbcf662df75ffafa29038
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M BLEAD-DELTA.md
    M MANIFEST
    M pod/perl.pod
    R pod/perlasync.pod
    M pod/perldelta.pod
    M pod/perlexperiment.pod
    A pod/perlgenerator.pod
    M win32/pod.mak

  Log Message:
  -----------
  docs: rename perlasync to perlgenerator


  Commit: fdb3a1f487e2d3681edf4d70725dbb335d2f6bdd
      
https://github.com/Perl/perl5/commit/fdb3a1f487e2d3681edf4d70725dbb335d2f6bdd
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M pod/perlfunc.pod

  Log Message:
  -----------
  docs: document generator_yield


  Commit: cff9a3982dc498866080367d918a5ea588491c5c
      
https://github.com/Perl/perl5/commit/cff9a3982dc498866080367d918a5ea588491c5c
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M pod/perlgenerator.pod

  Log Message:
  -----------
  docs: organize generator keyword reference


  Commit: 5874a861f9969b6736cfc8216647c751081aafbb
      
https://github.com/Perl/perl5/commit/5874a861f9969b6736cfc8216647c751081aafbb
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M pod/perlgenerator.pod

  Log Message:
  -----------
  docs: rewrite generator guide for beginners


  Commit: a5fb8313980918bec7029031b3c620a680d188b4
      
https://github.com/Perl/perl5/commit/a5fb8313980918bec7029031b3c620a680d188b4
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M pod/perlfunc.pod
    M pod/perlgenerator.pod
    M t/op/generator.t

  Log Message:
  -----------
  test: document generator wantarray behavior


  Commit: 448a7e602764915544554de959577d33b34777d2
      
https://github.com/Perl/perl5/commit/448a7e602764915544554de959577d33b34777d2
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M BLEAD-DELTA.md
    M MANIFEST
    M builtin.c
    M embed.fnc
    M embed.h
    M ext/Opcode/Opcode.pm
    M gv.c
    M keywords.c
    M keywords.h
    M lib/B/Deparse-core.t
    M lib/B/Deparse.pm
    M lib/B/Op_private.pm
    M lib/builtin.pm
    A lib/generator.pm
    M opcode.h
    M opnames.h
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M planning/generator_plan.md
    M pod/perldelta.pod
    M pod/perlexperiment.pod
    M pod/perlfunc.pod
    M pod/perlgenerator.pod
    M pp_ctl.c
    M pp_proto.h
    M proto.h
    M regen/keywords.pl
    M regen/opcodes
    M run.c
    M t/op/coreamp.t
    M t/op/coresubs.t
    M t/op/generator.t
    M toke.c

  Log Message:
  -----------
  Make generator predicates ordinary builtins


  Commit: cc7dc4a84f7f968d1fb9cd229071d580920c7c4c
      
https://github.com/Perl/perl5/commit/cc7dc4a84f7f968d1fb9cd229071d580920c7c4c
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M pod/perlfunc.pod
    M pod/perlgenerator.pod
    M run.c
    M t/op/generator.t

  Log Message:
  -----------
  Return empty lists after generator completion


  Commit: c701df65e829dbf484f0dea5659dfd5c2f58ea6e
      
https://github.com/Perl/perl5/commit/c701df65e829dbf484f0dea5659dfd5c2f58ea6e
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M embed.h

  Log Message:
  -----------
  update embed.h


  Commit: 6c151a1e8039fda57d573360307b7c8d1d1fe6cf
      
https://github.com/Perl/perl5/commit/6c151a1e8039fda57d573360307b7c8d1d1fe6cf
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y

  Log Message:
  -----------
  Remove generator grammar conflicts


  Commit: ff14d6da8631678e3468db388ed2fcf871bb1c11
      
https://github.com/Perl/perl5/commit/ff14d6da8631678e3468db388ed2fcf871bb1c11
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M MANIFEST
    M Porting/Maintainers.pl
    M pod/perldiag.pod
    M pod/perlfunc.pod
    M utils/Makefile.PL
    M win32/pod.mak

  Log Message:
  -----------
  Fix generator porting metadata


  Commit: 535631b7a0b47c8aa7804c625a8ed7cb94c8cbf6
      
https://github.com/Perl/perl5/commit/535631b7a0b47c8aa7804c625a8ed7cb94c8cbf6
  Author: Yves Orton <[email protected]>
  Date:   2026-08-30 (Sun, 30 Aug 2026)

  Changed paths:
    M lib/builtin.pm

  Log Message:
  -----------
  Fix builtin POD line length


  Commit: 247c59e5117440cc2fb3ab542e5d26600b005221
      
https://github.com/Perl/perl5/commit/247c59e5117440cc2fb3ab542e5d26600b005221
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M t/op/generator.t

  Log Message:
  -----------
  Fix unparenthesized generator yields


  Commit: f42ed7a676ace8ddf1bab7fdba3aabb27c0fc8b6
      
https://github.com/Perl/perl5/commit/f42ed7a676ace8ddf1bab7fdba3aabb27c0fc8b6
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M cop.h
    M run.c
    M t/op/generator.t

  Log Message:
  -----------
  Isolate generator default scalar and arguments


  Commit: 2c7af742fd80adc8657c15e325a6bff30b1ef3dd
      
https://github.com/Perl/perl5/commit/2c7af742fd80adc8657c15e325a6bff30b1ef3dd
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    A planning/generator-coro-context-audit.md

  Log Message:
  -----------
  Add generator and Coro context audit


  Commit: 2cab154dd8119c9b1a8092ec2e7a4304adefcdc3
      
https://github.com/Perl/perl5/commit/2cab154dd8119c9b1a8092ec2e7a4304adefcdc3
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    A planning/perl-pattern-matching.md

  Log Message:
  -----------
  planning/ - add an analysis of how to add pattern matching to perl


  Commit: f7c453ba4c0a323c85a591ee5cf1edb96d7eb2dc
      
https://github.com/Perl/perl5/commit/f7c453ba4c0a323c85a591ee5cf1edb96d7eb2dc
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Document regex pattern matching


  Commit: d8f7aa489f4e045c93a1f789cc800fb3cac84931
      
https://github.com/Perl/perl5/commit/d8f7aa489f4e045c93a1f789cc800fb3cac84931
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Clarify wildcard and tuple patterns


  Commit: 00a0e63d16f45fd88744b44a425e99643994bcae
      
https://github.com/Perl/perl5/commit/00a0e63d16f45fd88744b44a425e99643994bcae
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Document open array and hash patterns


  Commit: b0d9b03b641c8a84306a158a90a90fc1a30d1b68
      
https://github.com/Perl/perl5/commit/b0d9b03b641c8a84306a158a90a90fc1a30d1b68
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Finalize initial pattern matching design


  Commit: 8c8693b04268da920a180f92c2fd41aaf8a40a66
      
https://github.com/Perl/perl5/commit/8c8693b04268da920a180f92c2fd41aaf8a40a66
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M feature.h
    M keywords.c
    M keywords.h
    M lib/feature.pm
    M regen/feature.pl
    M regen/keywords.pl

  Log Message:
  -----------
  Add case_match feature plumbing


  Commit: 72460876f4e8796cb2d26982e304d04f9d797edf
      
https://github.com/Perl/perl5/commit/72460876f4e8796cb2d26982e304d04f9d797edf
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M toke.c

  Log Message:
  -----------
  Add case_match parser scaffolding


  Commit: e15d9d9182c3e87fbf1a8487f409a9dd1bbb1c95
      
https://github.com/Perl/perl5/commit/e15d9d9182c3e87fbf1a8487f409a9dd1bbb1c95
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M MANIFEST
    A t/comp/case_match.t

  Log Message:
  -----------
  Add case_match parser tests


  Commit: 2c982c0e65fdd0f50510ff044925f85f5aba349f
      
https://github.com/Perl/perl5/commit/2c982c0e65fdd0f50510ff044925f85f5aba349f
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Record pattern matching implementation status


  Commit: efea22440a3f2bba30055a04eafdd9edb20bdc0b
      
https://github.com/Perl/perl5/commit/efea22440a3f2bba30055a04eafdd9edb20bdc0b
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M embed.h
    M lib/B/Op_private.pm
    M op.c
    M opcode.h
    M opnames.h
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pp_ctl.c
    M pp_proto.h
    M regen/opcodes
    M t/comp/case_match.t

  Log Message:
  -----------
  Add dedicated scalar case matcher


  Commit: 40b54e7fa03992e7beae84e0fe6138017037bfd1
      
https://github.com/Perl/perl5/commit/40b54e7fa03992e7beae84e0fe6138017037bfd1
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Preserve scalar pattern literal type


  Commit: dd89ffa4206d3cd004c2ab44e5088a1d7e67f292
      
https://github.com/Perl/perl5/commit/dd89ffa4206d3cd004c2ab44e5088a1d7e67f292
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Add wildcard case pattern


  Commit: 4c5ea95720cfe1eab30e84648ab9c9a093311c23
      
https://github.com/Perl/perl5/commit/4c5ea95720cfe1eab30e84648ab9c9a093311c23
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Track scalar pattern matcher progress


  Commit: 551cd008f0765a145d40b94bebfeda38e0100dcf
      
https://github.com/Perl/perl5/commit/551cd008f0765a145d40b94bebfeda38e0100dcf
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Match nested arrays and hashes


  Commit: 45527f24769effd52e68f26e41c96aa6c95579e0
      
https://github.com/Perl/perl5/commit/45527f24769effd52e68f26e41c96aa6c95579e0
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M parser.h
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M planning/perl-pattern-matching.md
    M pp_ctl.c
    M t/comp/case_match.t
    M toke.c

  Log Message:
  -----------
  Add nested and open case patterns


  Commit: 5f45602004f7951932715c574f2eb8781d7bd96e
      
https://github.com/Perl/perl5/commit/5f45602004f7951932715c574f2eb8781d7bd96e
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M planning/perl-pattern-matching.md
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Support open prefix and subsequence patterns


  Commit: 392beab8842f0774323195039f7ab3010f3da4e3
      
https://github.com/Perl/perl5/commit/392beab8842f0774323195039f7ab3010f3da4e3
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M t/comp/case_match.t

  Log Message:
  -----------
  Test nested open case patterns


  Commit: 2079d1cb0e0e182b8610724d3b188bf69ade4d0a
      
https://github.com/Perl/perl5/commit/2079d1cb0e0e182b8610724d3b188bf69ade4d0a
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M ext/Opcode/Opcode.pm
    M t/comp/case_match.t

  Log Message:
  -----------
  Register case matcher with Opcode


  Commit: cf64e6b91e816325288a8ae443624d1e33064059
      
https://github.com/Perl/perl5/commit/cf64e6b91e816325288a8ae443624d1e33064059
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M t/comp/case_match.t
    M t/porting/test_bootstrap.t

  Log Message:
  -----------
  Allow case matcher feature in compiler test


  Commit: 2819691d68fd49ebcfb7991f8293376ea7ed7a02
      
https://github.com/Perl/perl5/commit/2819691d68fd49ebcfb7991f8293376ea7ed7a02
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Support regex case patterns


  Commit: 909361ebf6f8c8f4723e57ee157a2722bcc46eb5
      
https://github.com/Perl/perl5/commit/909361ebf6f8c8f4723e57ee157a2722bcc46eb5
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Track regex pattern progress


  Commit: 64a6054fdf9edd68927a514d46051e4971a742d6
      
https://github.com/Perl/perl5/commit/64a6054fdf9edd68927a514d46051e4971a742d6
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Specify case dispatch optimization freedom


  Commit: d4d8fb93bd9254df1cf5eda55197dab9f6bd102b
      
https://github.com/Perl/perl5/commit/d4d8fb93bd9254df1cf5eda55197dab9f6bd102b
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M planning/perl-pattern-matching.md
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Snapshot case subjects before matching


  Commit: 18fbeb198886ebddb7b08a6794c635597da40607
      
https://github.com/Perl/perl5/commit/18fbeb198886ebddb7b08a6794c635597da40607
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M opcode.h
    M regen/opcodes

  Log Message:
  -----------
  Declare case matcher as unary opcode


  Commit: 798fbc296d27950c4ff411db60761d58ed61a0eb
      
https://github.com/Perl/perl5/commit/798fbc296d27950c4ff411db60761d58ed61a0eb
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Match dynamic nested pattern leaves


  Commit: 20350bd567b025a8e5ea358616d9a7e23d50eec7
      
https://github.com/Perl/perl5/commit/20350bd567b025a8e5ea358616d9a7e23d50eec7
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Record dynamic pattern leaf support


  Commit: 0ae85e70528b870434e20fc76071f73f5dde05e2
      
https://github.com/Perl/perl5/commit/0ae85e70528b870434e20fc76071f73f5dde05e2
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    A planning/IDEAS.md

  Log Message:
  -----------
  Add split-eval planning idea


  Commit: d5ceddd9a260b02d703680a7fa04332be7213200
      
https://github.com/Perl/perl5/commit/d5ceddd9a260b02d703680a7fa04332be7213200
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M t/op/coreamp.t
    M t/op/coresubs.t

  Log Message:
  -----------
  Exclude case syntax from core sub tests


  Commit: 219414c9392ac618e731da49ebcc2ef481b77661
      
https://github.com/Perl/perl5/commit/219414c9392ac618e731da49ebcc2ef481b77661
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M gv.c
    M t/op/coresubs.t

  Log Message:
  -----------
  Keep case syntax out of core sub dispatch


  Commit: ca2b46fa9677b1196eb318afb0cfcef7387e8f10
      
https://github.com/Perl/perl5/commit/ca2b46fa9677b1196eb318afb0cfcef7387e8f10
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M lib/B/Deparse-core.t

  Log Message:
  -----------
  Account for case keywords in Deparse coverage


  Commit: 4b673b3dce605886f8f24ee9f2f103d0e541cced
      
https://github.com/Perl/perl5/commit/4b673b3dce605886f8f24ee9f2f103d0e541cced
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Specify case result and arm semantics


  Commit: 0432d9769d539da8b18212fd6efbb2474c14f41f
      
https://github.com/Perl/perl5/commit/0432d9769d539da8b18212fd6efbb2474c14f41f
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Allow ordinary Perl expressions as guards


  Commit: 7d2c516a62e8bf6fe5a37d32d8a1a72b5b4456e3
      
https://github.com/Perl/perl5/commit/7d2c516a62e8bf6fe5a37d32d8a1a72b5b4456e3
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Specify unrestricted pattern guards


  Commit: 942eb7c272d7122b6256b9d9f873e605312b28d2
      
https://github.com/Perl/perl5/commit/942eb7c272d7122b6256b9d9f873e605312b28d2
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M t/comp/case_match.t

  Log Message:
  -----------
  Test case result and default-arm semantics


  Commit: 5a664d6f0eeac8f8b7645ce72bb61aef3a09fa25
      
https://github.com/Perl/perl5/commit/5a664d6f0eeac8f8b7645ce72bb61aef3a09fa25
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M t/comp/case_match.t

  Log Message:
  -----------
  Add named case subject binding


  Commit: aa73d2459f489f72c9a2b180cc31e14244879e9f
      
https://github.com/Perl/perl5/commit/aa73d2459f489f72c9a2b180cc31e14244879e9f
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Record named case subject support


  Commit: eb53660a2d117089639e817ecfff902375b1de3d
      
https://github.com/Perl/perl5/commit/eb53660a2d117089639e817ecfff902375b1de3d
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M cop.h
    M inline.h
    M pp_ctl.c
    M sv.c

  Log Message:
  -----------
  Defer case capture commit until arm entry


  Commit: 1f3772a895f9ac9b4ff71b17f5d0eeb8f1a72151
      
https://github.com/Perl/perl5/commit/1f3772a895f9ac9b4ff71b17f5d0eeb8f1a72151
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M cop.h
    M pp_ctl.c

  Log Message:
  -----------
  Prepare case bindings for guard rollback


  Commit: 271ad2572e7a03a523af36684a576bc837aa0d68
      
https://github.com/Perl/perl5/commit/271ad2572e7a03a523af36684a576bc837aa0d68
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Specify typed case subject coercion


  Commit: c6316f7490296ef4e5dbe1e107e9eedac5f9bae8
      
https://github.com/Perl/perl5/commit/c6316f7490296ef4e5dbe1e107e9eedac5f9bae8
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Keep case literal types distinct


  Commit: d32bd052e15f2edfcdb1c92befc7f08922205332
      
https://github.com/Perl/perl5/commit/d32bd052e15f2edfcdb1c92befc7f08922205332
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Record strict case literal matching


  Commit: bdc7bce36f45b761a5a299be3b72fe8f6aec64a9
      
https://github.com/Perl/perl5/commit/bdc7bce36f45b761a5a299be3b72fe8f6aec64a9
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Add conflict-free case guards


  Commit: f410003b3f772c1268de167ba28d0f1ffd785afd
      
https://github.com/Perl/perl5/commit/f410003b3f772c1268de167ba28d0f1ffd785afd
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M inline.h
    M t/comp/case_match.t

  Log Message:
  -----------
  Restore captures after guard exceptions


  Commit: 24f054d3d0482e7616106fa1b808d344cf60883a
      
https://github.com/Perl/perl5/commit/24f054d3d0482e7616106fa1b808d344cf60883a
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M cop.h
    M embed.h
    M inline.h
    M keywords.c
    M keywords.h
    M opcode.h
    M opnames.h
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M planning/perl-pattern-matching.md
    M pp_ctl.c
    M pp_proto.h
    M regen/keywords.pl
    M regen/opcodes
    M sv.c
    M t/comp/case_match.t
    M toke.c

  Log Message:
  -----------
  Add initial case with pinning


  Commit: e3a606c3b922bc3e3169cdacccf6e2821c444e96
      
https://github.com/Perl/perl5/commit/e3a606c3b922bc3e3169cdacccf6e2821c444e96
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M pod/perlsyn.pod

  Log Message:
  -----------
  Document experimental pattern matching


  Commit: 56a14f836afa2a296ee5c611ddd20a1262a83d73
      
https://github.com/Perl/perl5/commit/56a14f836afa2a296ee5c611ddd20a1262a83d73
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Refresh pattern matching implementation status


  Commit: 4e2143d0ee4947323ffde7563394f235f8203473
      
https://github.com/Perl/perl5/commit/4e2143d0ee4947323ffde7563394f235f8203473
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M pp_ctl.c

  Log Message:
  -----------
  Apply read magic when pinning case values


  Commit: 5cfc2f2becfce652a959bedd27eba3491c8d8bc4
      
https://github.com/Perl/perl5/commit/5cfc2f2becfce652a959bedd27eba3491c8d8bc4
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Record remaining case grammar limitation


  Commit: c0de1114071532e712d92695c7c28f4d728fcb1e
      
https://github.com/Perl/perl5/commit/c0de1114071532e712d92695c7c28f4d728fcb1e
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M t/op/coresubs.t

  Log Message:
  -----------
  Keep case with out of CORE sub tests


  Commit: 00cdf3aa9508f85ff7340307a3aa7bcc08a05522
      
https://github.com/Perl/perl5/commit/00cdf3aa9508f85ff7340307a3aa7bcc08a05522
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M t/op/coresubs.t

  Log Message:
  -----------
  Skip case keywords in core sub tests


  Commit: 000624f82c47b40e4ba2a9100523478200b0358a
      
https://github.com/Perl/perl5/commit/000624f82c47b40e4ba2a9100523478200b0358a
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M t/op/coreamp.t

  Log Message:
  -----------
  Keep case with out of CORE amp tests


  Commit: b309c868843b51a7771d2bd5bae169526af24796
      
https://github.com/Perl/perl5/commit/b309c868843b51a7771d2bd5bae169526af24796
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M lib/B/Deparse-core.t

  Log Message:
  -----------
  Account for case matching with keyword in deparser tests


  Commit: 9f60e5735f662430e492fc8a7c545207398cf4ef
      
https://github.com/Perl/perl5/commit/9f60e5735f662430e492fc8a7c545207398cf4ef
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M ext/Opcode/Opcode.pm
    M pod/perldiag.pod
    M t/porting/test_bootstrap.t

  Log Message:
  -----------
  Complete porting metadata for case matching


  Commit: 8e4d6d05994b54be1f8c7fd2ef7aaa1cf03138f9
      
https://github.com/Perl/perl5/commit/8e4d6d05994b54be1f8c7fd2ef7aaa1cf03138f9
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M planning/perl-pattern-matching.md
    M t/comp/case_match.t

  Log Message:
  -----------
  Restrict case bodies to match arms


  Commit: 2a5e78fce2cb880d7622ea3d85561cf156bcd826
      
https://github.com/Perl/perl5/commit/2a5e78fce2cb880d7622ea3d85561cf156bcd826
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M t/comp/case_match.t

  Log Message:
  -----------
  Test nested case arm boundaries


  Commit: 4d0055eb6136d5ba6508f9fc20c8406a809c9f1a
      
https://github.com/Perl/perl5/commit/4d0055eb6136d5ba6508f9fc20c8406a809c9f1a
  Author: Yves Orton <[email protected]>
  Date:   2026-08-31 (Mon, 31 Aug 2026)

  Changed paths:
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Match undef as a scalar pattern


  Commit: cc800931f574b0308e2620c531dea460b1c87dca
      
https://github.com/Perl/perl5/commit/cc800931f574b0308e2620c531dea460b1c87dca
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M keywords.c
    M keywords.h
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M regen/keywords.pl
    M t/comp/case_match.t
    M toke.c

  Log Message:
  -----------
  Add typed case subjects


  Commit: c21747b777d65a1e44304e65348f5f4da1b3666a
      
https://github.com/Perl/perl5/commit/c21747b777d65a1e44304e65348f5f4da1b3666a
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M lib/B/Op_private.pm
    M opcode.h
    M opnames.h
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M planning/perl-pattern-matching.md
    M pod/perlsyn.pod
    M pp_ctl.c
    M pp_proto.h
    M regen/opcodes
    M t/comp/case_match.t

  Log Message:
  -----------
  Preserve values in typed case subjects


  Commit: 5062e343c99d9df627a4c1c449d5cd08a74d3785
      
https://github.com/Perl/perl5/commit/5062e343c99d9df627a4c1c449d5cd08a74d3785
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M t/comp/case_match.t

  Log Message:
  -----------
  Test typed case subject expressions


  Commit: 77b0a2f92fb05d3f19ad7c7b551fdd1c93f5e023
      
https://github.com/Perl/perl5/commit/77b0a2f92fb05d3f19ad7c7b551fdd1c93f5e023
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M lib/B/Deparse-core.t

  Log Message:
  -----------
  Account for typed case keywords in deparse tests


  Commit: 4fbc7acad4fbcf6d74bfeb18be4d5074b9198f80
      
https://github.com/Perl/perl5/commit/4fbc7acad4fbcf6d74bfeb18be4d5074b9198f80
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M pod/perldiag.pod

  Log Message:
  -----------
  Document case matching diagnostics


  Commit: 82bd52e1c01559fc22e6c0e79e1cbffeac33fad5
      
https://github.com/Perl/perl5/commit/82bd52e1c01559fc22e6c0e79e1cbffeac33fad5
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M AGENTS.md
    M CLAUDE.md
    M pod/perlnamespace.pod

  Log Message:
  -----------
  Rewrite lexical namespace documentation


  Commit: dcf5977902ea3eb4c376cd90f2ea81e2d0583627
      
https://github.com/Perl/perl5/commit/dcf5977902ea3eb4c376cd90f2ea81e2d0583627
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M embed.h
    M ext/Opcode/Opcode.pm

  Log Message:
  -----------
  Register case coercion with opcode filters


  Commit: 78c9d83b3c61da62c8345bf6596d292c4c7517c6
      
https://github.com/Perl/perl5/commit/78c9d83b3c61da62c8345bf6596d292c4c7517c6
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    R .agent/skills/perl-configure-build-system/SKILL.md
    R 
.agent/skills/perl-configure-build-system/references/configure-build-system.md
    R .agent/skills/perl-core-archaeology/SKILL.md
    R .agent/skills/perl-core-archaeology/references/core-archaeology.md
    R .agent/skills/perl-core-build-test-debug/SKILL.md
    R .agent/skills/perl-core-build-test-debug/references/testing-debugging.md
    R .agent/skills/perl-core-docs-release/SKILL.md
    R .agent/skills/perl-core-docs-release/references/docs-release.md
    R .agent/skills/perl-core-hacking/SKILL.md
    R .agent/skills/perl-core-hacking/references/core-change-workflow.md
    R .agent/skills/perl-core-orientation/SKILL.md
    R .agent/skills/perl-core-orientation/references/source-map.md
    R .agent/skills/perl-core-portability/SKILL.md
    R .agent/skills/perl-core-portability/references/core-portability.md
    R .agent/skills/perl-embed-fnc/SKILL.md
    R .agent/skills/perl-embed-fnc/references/embed-fnc-guide.md
    R .agent/skills/perl-generated-files/SKILL.md
    R .agent/skills/perl-generated-files/references/generated-files.md
    R .agent/skills/perl-language-library/SKILL.md
    R .agent/skills/perl-language-library/references/language-library.md
    R .agent/skills/perl-parser-optree-ops/SKILL.md
    R .agent/skills/perl-parser-optree-ops/references/parser-optree-ops.md
    R .agent/skills/perl-regex-engine/SKILL.md
    R .agent/skills/perl-regex-engine/references/regex-engine-map.md
    R .agent/skills/perl-sv-magic-memory/SKILL.md
    R .agent/skills/perl-sv-magic-memory/references/sv-magic-memory.md
    R .agent/skills/perl-xs-embedding/SKILL.md
    R .agent/skills/perl-xs-embedding/references/xs-embedding.md
    A .agents/skills/perl-configure-build-system/SKILL.md
    A 
.agents/skills/perl-configure-build-system/references/configure-build-system.md
    A .agents/skills/perl-core-archaeology/SKILL.md
    A .agents/skills/perl-core-archaeology/references/core-archaeology.md
    A .agents/skills/perl-core-build-test-debug/SKILL.md
    A .agents/skills/perl-core-build-test-debug/references/testing-debugging.md
    A .agents/skills/perl-core-docs-release/SKILL.md
    A .agents/skills/perl-core-docs-release/references/docs-release.md
    A .agents/skills/perl-core-hacking/SKILL.md
    A .agents/skills/perl-core-hacking/references/core-change-workflow.md
    A .agents/skills/perl-core-orientation/SKILL.md
    A .agents/skills/perl-core-orientation/references/source-map.md
    A .agents/skills/perl-core-portability/SKILL.md
    A .agents/skills/perl-core-portability/references/core-portability.md
    A .agents/skills/perl-embed-fnc/SKILL.md
    A .agents/skills/perl-embed-fnc/references/embed-fnc-guide.md
    A .agents/skills/perl-generated-files/SKILL.md
    A .agents/skills/perl-generated-files/references/generated-files.md
    A .agents/skills/perl-language-library/SKILL.md
    A .agents/skills/perl-language-library/references/language-library.md
    A .agents/skills/perl-parser-optree-ops/SKILL.md
    A .agents/skills/perl-parser-optree-ops/references/parser-optree-ops.md
    A .agents/skills/perl-regex-engine/SKILL.md
    A .agents/skills/perl-regex-engine/references/regex-engine-map.md
    A .agents/skills/perl-sv-magic-memory/SKILL.md
    A .agents/skills/perl-sv-magic-memory/references/sv-magic-memory.md
    A .agents/skills/perl-xs-embedding/SKILL.md
    A .agents/skills/perl-xs-embedding/references/xs-embedding.md
    M pod/perldelta.pod

  Log Message:
  -----------
  Document experimental pattern matching


  Commit: 9c25f1d8960c91bfc4723e20c9ff1373c87cca0a
      
https://github.com/Perl/perl5/commit/9c25f1d8960c91bfc4723e20c9ff1373c87cca0a
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M planning/IDEAS.md

  Log Message:
  -----------
  Plan block-scoped namespace declarations


  Commit: 0fbe23d2fe84f2b62411e23d41e0e85ec86be8b0
      
https://github.com/Perl/perl5/commit/0fbe23d2fe84f2b62411e23d41e0e85ec86be8b0
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M pod/perlnamespace.pod

  Log Message:
  -----------
  Document pending block namespace syntax


  Commit: b785afcaf01c3286bb3bb7ab68da51b7edff5c4a
      
https://github.com/Perl/perl5/commit/b785afcaf01c3286bb3bb7ab68da51b7edff5c4a
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M t/op/coreamp.t
    M t/op/coresubs.t

  Log Message:
  -----------
  Skip parser-only tokens in CORE sub tests


  Commit: 1c543a197ff7f2e6f8153e7327d654bf56e0b9ed
      
https://github.com/Perl/perl5/commit/1c543a197ff7f2e6f8153e7327d654bf56e0b9ed
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M planning/perl-pattern-matching.md
    M pod/perlsyn.pod
    M pp_ctl.c
    M t/comp/case_match.t

  Log Message:
  -----------
  Add expression pins to case matching


  Commit: 16347ae2206693317d3e75fec44ed2e29e8cadc2
      
https://github.com/Perl/perl5/commit/16347ae2206693317d3e75fec44ed2e29e8cadc2
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M embed.fnc
    M embed.h
    M op.c
    M op.h
    M opcode.h
    M perly.act
    M perly.h
    M perly.tab
    M perly.y
    M pp_ctl.c
    M proto.h
    M regen/opcodes

  Log Message:
  -----------
  Add compiled representation for case patterns


  Commit: 65af9ba3bb2420a9a3c90ece3c82e66c95666d97
      
https://github.com/Perl/perl5/commit/65af9ba3bb2420a9a3c90ece3c82e66c95666d97
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M pp_ctl.c

  Log Message:
  -----------
  Dispatch case matching through compiled pattern roots


  Commit: d99e2fbb26f3ceb4b597b9a90191f49f4912f403
      
https://github.com/Perl/perl5/commit/d99e2fbb26f3ceb4b597b9a90191f49f4912f403
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M embed.fnc
    M pp_ctl.c

  Log Message:
  -----------
  Match composite case patterns through compiled nodes


  Commit: 3cee3dfbf70da62bfc821fb93dd67a8ecf1378ff
      
https://github.com/Perl/perl5/commit/3cee3dfbf70da62bfc821fb93dd67a8ecf1378ff
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M pp_ctl.c

  Log Message:
  -----------
  Validate case pattern ellipsis placement


  Commit: 88689142a87cf74fefb2e4389228add17f8a324b
      
https://github.com/Perl/perl5/commit/88689142a87cf74fefb2e4389228add17f8a324b
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M pod/perldiag.pod

  Log Message:
  -----------
  Diagnose invalid case pattern ellipses


  Commit: 890a45fb1a19fa30f2b8d4d377b34d02d25acb87
      
https://github.com/Perl/perl5/commit/890a45fb1a19fa30f2b8d4d377b34d02d25acb87
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Document case pattern representation diagnostics


  Commit: 5d993ec650d32e8dd5561465be1e7b42d67dc9e8
      
https://github.com/Perl/perl5/commit/5d993ec650d32e8dd5561465be1e7b42d67dc9e8
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Record the initial case pattern scope


  Commit: 91c408788188a50b5682af2b79c1e5ec4fb0ca0b
      
https://github.com/Perl/perl5/commit/91c408788188a50b5682af2b79c1e5ec4fb0ca0b
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M planning/perl-pattern-matching.md

  Log Message:
  -----------
  Clarify deferred pattern diagnostics


  Commit: 367494c09aba0c8e1d382b6320ba3997b60e4a9f
      
https://github.com/Perl/perl5/commit/367494c09aba0c8e1d382b6320ba3997b60e4a9f
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M MANIFEST
    M pod/perl.pod
    A pod/perlcasewhen.pod

  Log Message:
  -----------
  Document experimental case matching


  Commit: 902ce0e69518d24f6541bbb17bf217975a38514a
      
https://github.com/Perl/perl5/commit/902ce0e69518d24f6541bbb17bf217975a38514a
  Author: Yves Orton <[email protected]>
  Date:   2026-09-01 (Tue, 01 Sep 2026)

  Changed paths:
    M BLEAD-DELTA.md

  Log Message:
  -----------
  Refresh AI Perl blead delta


Compare: https://github.com/Perl/perl5/compare/0cc8240c8fd3%5E...902ce0e69518

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications

Reply via email to