Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Composer Downloads Plugin Laravel Package

civicrm/composer-downloads-plugin

Composer plugin for CiviCRM projects that downloads extension archives and other remote packages during install or update. It brings external CiviCRM downloads into Composer dependency management, reducing manual steps and helping keep site builds reproducible.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Dependency-modernization roadmap. v3.0.0 explicitly targets Composer 2.x. This is the signal you need to decide whether this package can stay in the stack through a Composer 2 migration, or whether it becomes a blocker that forces a replacement, a fork, or a scheduled workaround.
  • Build vs. buy. If the package's capability is adjacent to your core domain, a Composer 2-compatible release lowers the cost of "buy/adopt" versus building and maintaining the same behavior in-house — you inherit upstream maintenance instead of owning it.
  • Upgrade sequencing across the portfolio. Because the release is versioned 3.0.0, treat it as a breaking change until proven otherwise. This informs whether the package is upgraded in the same sprint as the Composer 2 cutover or staged afterward, and which downstream services are gated on it.
  • Version-pinning and reproducibility policy. Decide the composer.json constraint (^3.0 vs. a tighter pin) and whether the lockfile change ships behind the platform upgrade ticket rather than a standalone dependency PR.
  • Support-matrix and CI investment. The release implies a supported-environment change (Composer 2-era PHP runtimes). That is an input to how much CI matrix coverage — oldest supported PHP, Laravel LTS, and current — you fund before merging.
  • Use cases this unblocks: teams standardizing on Composer 2 for faster installs and better dependency resolution, reducing exposure to the end-of-life Composer 1 line, and consolidating on a dependency set that can accept security patches going forward.

Caveat for the decision record: the release note is a single line. It confirms Composer 2.x support but does not state whether Composer 1.x support was dropped, what else changed under the major-version bump, or whether there are migration steps. Treat the breaking-change assumption as unverified until the changelog and diff are reviewed.

When to Consider This Package

Adopt when:

  • Your applications are on, or committed to, Composer 2.x — which is the realistic baseline given Composer 1 is end-of-life and no longer receives security fixes.
  • You are actively maintaining a Laravel application or library where the package's capability is a real requirement rather than a nice-to-have.
  • The package has an accessible changelog, an issue tracker with recent maintainer activity, and a stated support policy for the Laravel and PHP versions you run.
  • You can absorb a major-version bump: the upgrade fits a planned dependency or platform cycle, not a hotfix window.
  • You want the capability maintained upstream rather than owned by your team.

Look elsewhere, or defer, when:

  • You still run Composer 1.x anywhere in the estate. A v3.0.0 that adds Composer 2 support is very likely to have dropped Composer 1, so those environments cannot take this release — either migrate them first or hold the package at v2.x.
  • You are on PHP runtimes older than what Composer 2 requires (Composer 2 needs PHP 7.2.5+). Confirm the package's own minimum before assuming it matches Composer's.
  • The single-line release note is the only documentation of the change. For a major version, require the full changelog and upgrade guide before committing; absence of both is itself a governance signal about the project.
  • The package is effectively unmaintained — infrequent releases, unanswered issues, no security policy. A Composer-compatibility bump without ongoing triage does not make it a safe long-term dependency.
  • The capability is trivial enough that a few dozen lines in-house removes the dependency and its upgrade tax entirely.

Due diligence before adoption: read the v3.0.0 diff, check the composer.json constraints for both composer-plugin-api/platform requirements and framework versions, and confirm the license and security-reporting channel.

How to Pitch It (Stakeholders)

For executives. This is a maintenance release that keeps a dependency current with Composer 2, the supported line of PHP's package manager. Composer 1 is end-of-life and receives no security fixes, so every package we depend on that cannot run on Composer 2 is a liability that compounds. Adopting v3.0.0 is a small, contained piece of work that reduces that liability and avoids a future forced migration under time pressure. There is no new product capability here and no user-facing change — the value is in retiring technical debt and keeping our dependency set patchable.

For engineering leads. Treat v3.0.0 as a breaking change by default: a major version that adds Composer 2 support is almost certainly a major version that removes Composer 1 support, and the release note does not say so explicitly. Before merging: review the changelog and diff, confirm the minimum PHP and Laravel versions, and check whether the package's composer.json allows the platform versions we actually run. Constrain the dependency in composer.json rather than relying on a floating range, and let the lockfile change land through a reviewed dependency-upgrade PR — ideally coupled to the Composer 2 cutover ticket so the two moves are tested together. Run the CI matrix against our oldest supported runtime as well as the current one; if any environment is still on Composer 1.x, it stays pinned to v2.x until that migration completes, and we should record that exception explicitly rather than leaving it implicit.

Bottom line for the go/no-go: adopt where we are already Composer 2-capable, gate it on a reviewed changelog and a passing CI matrix, and hold any Composer 1.x environments at the previous major until they migrate. The release is worth taking; the documentation around it is thin enough that verification, not the release itself, is the real work.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource