zendframework/zend-config-aggregator-parameters
A Zend Config Aggregator post-processor that resolves %parameter% placeholders in configuration, letting you centralize reusable values and keep aggregated config DRY across environments and modules.
ConfigAggregator resolve placeholder parameters (e.g. %database.host%) at config-build time, so a PM can support a single artifact promoted across dev/staging/prod with environment-specific values injected — reducing per-environment build pipelines and the config drift that causes "works in staging" incidents.zendframework/zend-config-aggregator (or its Laminas successor).symfony/dependency-injection ^5.0. This is a dependency-floor decision, not a feature: it unblocks teams standardizing on Symfony 5 DI components, and it signals the package can be retained during a broader PHP/framework modernization rather than forked.zendframework/* namespace, which was archived in favor of laminas/*. A PM should treat this as a maintenance-status question before it lands in a long-lived product surface — it informs whether config parameterization is a strategic dependency or a stopgap.Adopt when:
zendframework/zend-config-aggregator (or laminas/laminas-config-aggregator) and need parameter/placeholder resolution without hand-rolling an aggregator decorator.Look elsewhere when:
config(), .env via Dotenv, and env()-based overrides; a Zend config-aggregator package does not integrate with Laravel's configuration repository. For Laravel, prefer native config + environment files, or a Laravel-native settings package — this dependency would be architectural dead weight.zendframework/* namespace. The namespace is legacy; evaluate the laminas/* equivalent first, and verify the release cadence and support policy of whichever fork you pick.symfony/dependency-injection ^5.0; there is no stated coverage for newer DI majors. Treat that as an open maintenance question, not a guarantee.Diligence before adoption: confirm which repository is the maintained upstream, confirm a support/security policy and release cadence, and verify the version-constraint graph against your other DI dependencies — the ^5.0 floor can conflict with projects pinned to Symfony 4 components.
To executives (one paragraph): This is a small, narrowly scoped configuration utility, not a platform investment. Its value is operational: it lets one build artifact carry environment-specific settings, which cuts per-environment pipeline work and a class of deployment misconfiguration. Release 1.2.0 is a maintenance release — it adds Symfony 5 dependency-injection compatibility and contains no new features, no breaking changes, and no deprecations. That is a positive signal for stability (upgrades are low-risk) but a neutral one for momentum. The one flag worth executive attention is provenance: the package is published under the archived zendframework namespace, so before it becomes load-bearing we should confirm the maintained lineage (Laminas) and its support policy.
To engineering leads: Upgrade risk from 1.1.x to 1.2.0 is effectively zero — the changelog is a single added version constraint for symfony/dependency-injection ^5.0, with nothing changed, deprecated, removed, or fixed. Do not read this as a feature release. Two asks: (1) pin and verify the dependency graph, since the ^5.0 floor is an explicit constraint that can collide with a Symfony 4 pin elsewhere in the tree; (2) confirm with the architecture group whether we standardize on this package's namespace or its Laminas successor, and record that decision in the ADR so we are not quietly adopting an archived namespace. If the target stack is Laravel rather than Laminas/Zend, this package is not the right tool — recommend native Laravel configuration instead and close the evaluation.
Recommendation: Adopt for sustainment of aggregator-based Zend/Laminas config, on the condition that upstream maintenance status is verified and the laminas/* equivalent is assessed in parallel. Do not adopt for Laravel or greenfield builds.
How can I help you explore Laravel packages today?