Changelog

Here are listed all the meaningfull changes done on buildenv.

Note

Only interface and important behavior changes are listed here.

The fully detailed changelog is also available on Github

Release 2.0

Environment creation refactoring

buildenv now relies on environment backends.

New features

Breaking changes from buildenv 1.X

Here are the updates which may break something since buildenv 1.X releases

Removed buildenv init ‘–new’ option

The –new option has been removed from the buildenv init command. The project/environment setup has been moved to a new buildenv install command.

No more python loading script

The buildenv-loader.py script is now deprecated and can be safely removed from any project upgraded to buildenv 2.0 or higher.

The loading logic is now simply delegated to environment backend through the shell script(s).

No more buildenv.cfg file

Related to previous change, buildenv doesn’t read its configuration from buildenv.cfg file anymore. Since it now relies on environment backend, it naturally and simply uses each backend-related configuration system instead of providing its own one.

Any buildenv.cfg file can be safely removed from any project upgraded to buildenv 2.0 or higher.

Extensions API redesign

The extension API has be redesigned from zero. Any existing buildenv 1.X extension will be ignored by buildenv 2.0 or higher, and should be rewritten to plug on the new API (see buildenv.extension.BuildEnvExtension) and buildenv_extension entrypoint (instead of buildenv_init legacy one).

No more shared venv with pip backend

The parent venv searching logic was part of the buildenv-loader.py script. Since the new design delegates this part to the used backend, the availability of this feature depends on the backend itself (supported by uv backend, but not by pip one).