Skip to content

Release tooling for the PIE + PECL dual channel#2

Closed
sj-i wants to merge 2 commits into
mainfrom
claude/release-tooling-pie-pecl
Closed

Release tooling for the PIE + PECL dual channel#2
sj-i wants to merge 2 commits into
mainfrom
claude/release-tooling-pie-pecl

Conversation

@sj-i

@sj-i sj-i commented May 29, 2026

Copy link
Copy Markdown
Member

Sets up publishing to both channels so old and new PHP are both covered:
PIE/Packagist for modern setups (the pie tool needs PHP 8.1+, though the
extension builds on 7.0+) and PECL (pecl install rdump) for the older
runtimes PIE itself can't run on.

Added

  • .github/workflows/release.yml — on a v* tag (or manual dispatch):
    • verify the version is in sync across php_rdump.h, package.xml, and the
      tag (fails on drift);
    • pecl package-validate;
    • build the extension and run the .phpt suite;
    • pecl package to produce rdump-X.Y.Z.tgz (the exact artifact uploaded to
      pecl.php.net), smoke-install it, and attach it to the GitHub Release.
  • CHANGELOG.md — 0.1.0 notes.
  • RELEASING.md — the cut-a-release steps plus one-time Packagist
    submission and the PECL proposal/karma onboarding.
  • .gitattributesexport-ignore dev-only paths from the dist archive.
  • README — clarify PIE (needs 8.1+) vs pecl install (handy on older PHP).

Not automated (needs maintainer account)

  • Submitting the repo to Packagist (one-time) and enabling the hook.
  • Registering on pecl.php.net and proposing the package on pecl-dev for karma
    (one-time); thereafter uploading the tarball the workflow produces.

These are documented in RELEASING.md.

https://claude.ai/code/session_017skw8BsHkF8wur7Pf4G9W5


Generated by Claude Code

claude added 2 commits May 29, 2026 14:57
- .github/workflows/release.yml: on a v* tag, verify the version is in sync
  across php_rdump.h / package.xml / tag, validate package.xml, build + run the
  phpt suite, build the PECL tarball, smoke-install it, and attach it to the
  GitHub Release.
- CHANGELOG.md: 0.1.0 notes.
- RELEASING.md: the cut-a-release steps plus the one-time Packagist and PECL
  onboarding.
- .gitattributes: export-ignore dev-only paths from the dist archive.
- README: clarify PIE (needs 8.1+) vs pecl install (handy on older PHP).

https://claude.ai/code/session_017skw8BsHkF8wur7Pf4G9W5
Follow-up to the release-tooling commit, which referenced this README change
but didn't include it.

https://claude.ai/code/session_017skw8BsHkF8wur7Pf4G9W5
@sj-i sj-i closed this May 29, 2026
@sj-i
sj-i deleted the claude/release-tooling-pie-pecl branch May 30, 2026 13:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants