Skip to content

CI: Default ATTRIBUTES_COMPLIANCE_GATE=1 in ci-fast after #1354 lands #1904

Description

@PurHur

Problem

#1354 ✅ landed PHP 8 attributes VM v1 (#1925, #1912 ✅ PHPT pack). Regressions are still easy to miss because ci-fast.sh has no dedicated attribute compliance stage — only the general PHPT suite.

#1888 mirrors this pattern for nested return <call>() after #1885 ✅ (already default-on).

Goal

Flip the gate now that #1354 is on master:

  1. ATTRIBUTES_COMPLIANCE_GATE="${ATTRIBUTES_COMPLIANCE_GATE:-1}" in script/ci-defaults.env
  2. script/ci-fast.sh runs vendor/bin/phpunit --filter Attribute (or explicit PHPT list) via ci_run_attributes_compliance() in ci-common.sh
  3. Regenerate docs/capabilities-syntax.md row for attributes via php script/capability-syntax.php
  4. phpc doctor --gates lists the gate env var (DevEx: phpc doctor --gates lists north-star1-verify presenter steps (#1845 phase 2) #1857 pattern)
  5. Comment on Docs: wave3 umbrella #1380 close-out — 12/12 language + 13/13 stdlib on master #1939 when wave3 umbrella can close

Implementation hints

Piece Path Notes
Gate env script/ci-defaults.env Change :-0 → :-1
ci-fast script/ci-fast.sh / script/ci-common.sh Wire runner; opt-out =0 for doc-only
Tests test/compliance/cases/attribute_*.phpt From #1912
Unit test/unit/CiScriptsTest.php Assert default-on like #1814
Drift script/check-wave3-roadmap-sync.php 12/12 language closed
Lint lib/Lint/UnsupportedRegistry.php Attributes not “unsupported” for VM
# Target verification:
./script/ci-fast.sh --filter Attribute
ATTRIBUTES_COMPLIANCE_GATE=0 ./script/ci-fast.sh   # skips block
php script/check-wave3-roadmap-sync.php

Acceptance criteria

Verification (local / Docker only)

docker run --rm -v "$(pwd):/compiler" -w /compiler php-compiler:22.04-dev \
  ./script/ci-fast.sh --filter Attribute

No GitHub Actions.

Dependencies

Links

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions