Skip to content

feat(php): wire release pipeline#3500

Open
countradooku wants to merge 4 commits into
apache:masterfrom
countradooku:feat/php-sdk-release-pipeline
Open

feat(php): wire release pipeline#3500
countradooku wants to merge 4 commits into
apache:masterfrom
countradooku:feat/php-sdk-release-pipeline

Conversation

@countradooku

@countradooku countradooku commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Summary

Closes #3304.

  • add sdk-php release metadata and PHP/Composer version sync checks
  • add a reusable PHP extension build workflow for PIE-compatible archives across PHP 8.3/8.4, Linux glibc/musl, macOS, x86_64/aarch64, plus source archive and binary license manifest
  • add PHP post-merge publishing that uploads GitHub release assets, refreshes Packagist, and verifies Packagist metadata before considering the release complete
  • include PHP in the post-merge SDK auto-publish loop

Notes

PECL is intentionally skipped. The pipeline follows the commenter guidance toward Composer/PIE and Packagist, with PACKAGIST_TOKEN expected in USERNAME:apiToken bearer credential format.

This also broadens extract-version.sh --is-pre-release from the previous edge/rc match to SemVer prerelease suffixes so PHP -dev, -edge, and -rc versions use the same post-merge auto-publish gate as the other SDKs.

Validation

  • bash -n scripts/ci/php-sdk-version-sync.sh scripts/extract-version.sh
  • YAML parse for edited workflows/actions/config via Ruby YAML.load_file
  • git diff --check
  • PATH="/tmp/iggy-ci-tools:$PATH" scripts/extract-version.sh --check
  • php -r 'json_decode(file_get_contents("foreign/php/composer.json"), true, 512, JSON_THROW_ON_ERROR);'

@countradooku countradooku marked this pull request as ready for review June 16, 2026 18:37
@github-actions github-actions Bot added the S-waiting-on-review PR is waiting on a reviewer label Jun 16, 2026
@codecov

codecov Bot commented Jun 16, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 74.23%. Comparing base (4a48008) to head (8689752).

Additional details and impacted files
@@             Coverage Diff              @@
##             master    #3500      +/-   ##
============================================
- Coverage     74.27%   74.23%   -0.04%     
  Complexity      937      937              
============================================
  Files          1259     1259              
  Lines        125969   125969              
  Branches     101644   101686      +42     
============================================
- Hits          93558    93511      -47     
+ Misses        29396    29394       -2     
- Partials       3015     3064      +49     
Components Coverage Δ
Rust Core 75.15% <ø> (-0.01%) ⬇️
Java SDK 58.57% <ø> (ø)
C# SDK 71.43% <ø> (-0.68%) ⬇️
Python SDK 88.88% <ø> (ø)
PHP SDK 84.29% <ø> (ø)
Node SDK 91.26% <ø> (+0.03%) ⬆️
Go SDK 40.36% <ø> (ø)
see 31 files with indirect coverage changes
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@atharvalade atharvalade left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

overall lgtm just some nits

Comment thread .github/workflows/_build_php_extensions.yml
Comment thread scripts/extract-version.sh
Comment thread .github/actions/php/post-merge/action.yml Outdated
@github-actions github-actions Bot added S-waiting-on-author PR is waiting on author response and removed S-waiting-on-review PR is waiting on a reviewer labels Jun 18, 2026

@hubcio hubcio left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

scripts/bump-version.sh is not updated

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

Labels

S-waiting-on-author PR is waiting on author response

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PHP SDK: wire release pipeline

4 participants