Version history for envless/env, published on Packagist. When a newer version is out, the package prints a one-line notice the first time it loads in a terminal. Set ENVLESS_DISABLE_UPDATE_NOTICE to silence it.
The TypeScript runtime, @goenvless/env, has its own changelog. The two load the same way, and a change to one lands in the other.
0.0.1
The first release of the PHP runtime, matching @goenvless/env as it stands in the Envless repository. A parity check replays every scenario against both packages, from token, .envless and key resolution, pagination, retries and the cache to the injected manifest, overrides and the explicit fetch, and fails on any difference in the requests, the values, the types, the errors, the process environment, the warnings or the cache files.
Env::get(),optional()andhas()read every variable coerced to its type,string(),number()andboolean()read it typed for PHPStan and Psalm, andEnv::client()reads only the client ones, withsnapshot()for templates.Env::load()fetches with anev_sk_machine key, decrypts withENVLESS_KEYorENVLESS_PASSPHRASE, caches the ciphertext for 15 minutes in the same files@goenvless/envuses, and fills$_ENV,$_SERVERandgetenv()without overwriting anything already set or writing a name that changes how a process executes code.vendor/envless/env/register.phploads from PHP'sauto_prepend_file. Insideenvless run, everything is read from the environment the CLI injected, with no credentials and no request.Env::override()layers values for tests, and the views refuse to be serialised or JSON encoded with their values.Env::fetch()loads with explicit arguments for serverless functions and multi-tenant apps, andEnv::isConfigured()lets a build without credentials skip the load.vendor/bin/envless-env typeswrites a class with one typed method per variable, from the manifest underenvless runor with a machine key, and--checkcatches a stale one in CI.Envless\Env\Symfony\EnvVarLoaderfor Symfony's%env()%, and recipes for Laravel, PHP-FPM, Apache and WordPress.- For PHP-FPM:
.envlessis found at the Composer project root, the cache falls back to the temp folder when the home folder is not writable, and the last cached values keep a site up through an API outage.