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

Environment Bundle Laravel Package

fervo/environment-bundle

fervo/environment-bundle simplifies environment configuration for PHP applications, helping you define and manage settings for local, staging, and production environments while keeping environment-specific values organized and easy to switch.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Environment configuration strategy — the package's core premise (separate configuration sets per environment: local, staging, production) is a real product decision area, especially for teams managing multi-stage deployments and secrets hygiene. The 0.2.0 release sharpens this into a fail-fast contract: env() now throws an InvalidArgumentException when a variable is absent, with an explicit default supplied via a second parameter. That is the right shape of behaviour — but it is behaviour Laravel and Symfony already give us natively, so it confirms the decision rather than changing it.
  • Build vs. buy — the assessment itself is the decision input: this is a buy/no-buy signal, not an enabling tool. With 1 star, 0 dependents, a pre-1.0 version line, and a release history that jumped to 0.2.0 with a breaking change and no ecosystem uptake, the answer remains "build on platform primitives" rather than adopt.
  • Ecosystem fit — despite being framed as a Laravel/PHP package, the "Bundle" naming, the reference to a PR against symfony/symfony, and the repository history point to Symfony 2/3-era conventions. 0.2.0 reinforces this: it tracks an upstream Symfony PR rather than any Laravel contract. That mismatch should itself trigger a review of how the dependency was surfaced in your intake pipeline; a package with no Laravel service provider or config/ publishing story cannot deliver Laravel's .env + config:cache workflow.
  • Roadmap risk — adopting it would add a maintenance liability (PHP 5.x/7.0-era code that will not run cleanly on PHP 8.x, no Symfony 5/6/7 or Laravel 9/10/11 support) with no upstream path to remediation. The 0.2.0 changelog is evidence of the kind of churn to expect — trait removal, signature change, new exception path — all within an unmaintained line.
  • Use cases it legitimately covers — per-environment parameter loading in a legacy Symfony application, reading environment name from the kernel, and keeping machine-specific values out of version control. All of these are now native to both frameworks, so the use case is subsumed, not unique.

When to Consider This Package

  • Only when doing archaeology: you are maintaining an existing Symfony 2.x/3.x application that already declares this bundle in AppKernel.php, and removing it is out of scope for the current sprint. Even then, treat it as frozen and plan extraction — and note that 0.2.0 removes the trait, so any code importing it will fatal on upgrade. Do not take 0.2.0 opportunistically; it is a breaking change with no supported framework behind it.
  • Never for a new build, a Laravel application, or anything on a supported PHP runtime (8.1+). There is no released version compatible with modern framework majors, no security response channel, and no dependents — meaning no community-vetted upgrade path and no signal that anyone has run it in production recently.
  • Look elsewhere when you need environment separation and secrets management. In Laravel: native .env + config/*.php + php artisan config:cache, plus a secrets store (AWS Secrets Manager, HashiCorp Vault, Doppler) for anything sensitive. In Symfony: built-in environment variables and %env()% processors (Symfony 3.2+), which superseded bundles of this type — 0.2.0 is effectively a hand-rolled, unmaintained echo of that native behaviour. Twelve-factor ENV-only configuration for containerised deployments.
  • Disqualifying criteria to encode in your intake policy: no release in 24+ months, pre-1.0 version with breaking changes and no migration notes, fewer than ~50 stars or zero dependents without an internal owner, no declared support matrix for your PHP/framework versions, and any repository/ecosystem naming mismatch.

How to Pitch It (Stakeholders)

Recommendation: do not adopt — unchanged by 0.2.0. This bundle solves a problem — per-environment configuration — that Laravel and Symfony have both solved natively and more securely for years. The new release adds a default-value parameter and a fail-fast exception for missing variables, and removes the trait outright; useful hardening in the abstract, but delivered by a single-star package with no dependents that targets a PHP and framework generation we no longer run. Adopting it would mean owning an unmaintained dependency for zero differentiated capability, with a near-certain rewrite cost the moment we upgrade PHP.

For executives: the risk is asymmetric — no upside, and a small but real tail risk around secrets handling and an unpatchable dependency in our supply chain. The 0.2.0 release does not add a maintenance commitment, a support matrix, or a security channel; it adds a breaking change.

For engineering: the effort is better spent on a short, standardised configuration pattern — .env for local, injected environment variables in CI/CD, a managed secrets store for production, and config:cache in the deploy pipeline. Both behaviours 0.2.0 introduces (defaults, failing loudly on a missing variable) fall out of that pattern for free, backed by framework support.

If it is already in the codebase: scope a removal ticket now, before the next PHP or framework upgrade forces it — and gate any attempt to move to 0.2.0, since the trait removal is a breaking change inside a dead release line.

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.
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
cgv/localized-resource