Manage composer via mise#254
Conversation
📝 WalkthroughWalkthroughComposer is added to mise-managed tools, removed from ChangesComposer release tooling
Estimated code review effort: 2 (Simple) | ~10 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@dev-bin/release.sh`:
- Around line 38-40: Update the composer.phar handling in the release script to
resolve the executable’s real path with `mise which composer.phar` after
`check_command composer.phar` and before the PHP invocation. Store and use that
resolved path so php receives the actual phar rather than the mise shim.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 27edeb8e-a9f6-4ee0-aa80-74ea1c2a1e63
⛔ Files ignored due to path filters (1)
mise.lockis excluded by!**/*.lock
📒 Files selected for processing (3)
.gitignoredev-bin/release.shmise.toml
💤 Files with no reviewable changes (1)
- .gitignore
The release script previously used a local composer.phar kept current via self-update. Install it via mise's github backend instead. The version is pinned in mise.lock, which records per-platform checksums, and mise additionally verifies GitHub artifact attestations at install time. The php -n -dextension=... wrapper is kept so composer continues to see the built ext-maxminddb as a platform package. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
dev-bin/release.sh (1)
38-40: 🩺 Stability & Availability | 🟠 Major | ⚡ Quick winResolve
composer.pharthrough mise during preflight.check_command composer.pharonly checksPATH, so it can pass against a different binary thanmise which composer.pharlater executes. Resolve once with mise, validate that path, and reuse it.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@dev-bin/release.sh` around lines 38 - 40, Update the preflight logic around check_command for composer.phar to resolve the executable once via mise, validate the resolved path, and reuse that same path for the later execution instead of separately relying on PATH lookup.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@dev-bin/release.sh`:
- Around line 38-40: Update the preflight logic around check_command for
composer.phar to resolve the executable once via mise, validate the resolved
path, and reuse that same path for the later execution instead of separately
relying on PATH lookup.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 1d33e5e0-ed58-40a7-9cde-6cec291a2851
📒 Files selected for processing (1)
dev-bin/release.sh
Summary
The release script previously used a local
composer.pharkept current via self-update. This installs it via mise'sgithub:backend instead, pinned inmise.lockwith per-platform checksums; mise additionally verifies GitHub artifact attestations at install time. Future upgrades aremise upgraderather than relying on whatever self-update fetches at release time.The
php -n -dextension=ext/modules/maxminddb.sowrapper is kept (now resolving the phar viacommand -v) so composer continues to see the builtext-maxminddbas a platform package.Same change as maxmind/GeoIP2-php#321 and maxmind/minfraud-api-php (on its
greg/stf-1074release branch), which also migrate box and phpDocumentor there.Testing
php -n "$(mise which composer.phar)" --versionruns the mise-installed phar successfully;bash -non the release script passes.🤖 Generated with Claude Code
Summary by CodeRabbit
composer.pharis no longer ignored.