Changelog
[0.0.15] - 2026-04-24
Section titled “[0.0.15] - 2026-04-24”entrypointmanifest field that pins the in-container binary across both Docker and Apptainer. Replaces the engine-specificdocker_command/apptainer_command/singularity_commandchain and the--entrypointflag smuggled throughdocker_args. See the Entrypoints guide for migration.
- Deprecation warnings emitted from the shimlink-dispatch path now actually reach stderr. Previously
log::warn!calls fired into an uninitialized logger when bulker was invoked via a shim symlink (the normal execution path).
Deprecated
Section titled “Deprecated”docker_command,apptainer_command,singularity_command— useentrypointinstead. Bulker emits a warning on every use and will remove these fields in the next minor bump.--entrypointinsidedocker_args— use theentrypointmanifest field instead.
[0.0.14] - 2026-03-25
Section titled “[0.0.14] - 2026-03-25”Changed
Section titled “Changed”- Breaking: Replace blocklist env var forwarding with allowlist. Containers now receive only a curated set of host variables (terminal, locale, SSH, HPC scheduler, proxy, etc.) instead of everything. This fixes locale warnings and silent
LD_LIBRARY_PATHbreakage on HPC systems. - Breaking: Remove
--strict-envflag andBULKER_STRICT_ENVenv var. The allowlist behavior is now the default. - Breaking:
bulker config add envvarsandbulker config remove envvarsnow error with a redirect tobulker env add/bulker env remove. - Apptainer always uses
--cleanenvwith explicit--envflags. TheLC_ALL=Cprefix in apptainer templates has been removed. - Config
default_envvars()is now empty — config envvars are purely additive on top of compiled-in defaults.
bulker envtop-level command for managing env var forwarding:env(show),env add,env set,env remove.--host-env/-Hflag onactivateandexecto forward all host env vars (escape hatch for the old behavior).no_default_envvarsoption in both config and per-command manifest to skip compiled-in defaults.BULKER_EXTRA_ENVVARSenv var for adding patterns at runtime (comma-separated).- Glob pattern support in envvar allowlist (e.g.,
SLURM_*,AWS_*). KEY=VALUEsupport in envvar allowlist for hardcoded values (e.g.,LANG=C).
[0.0.13] - 2026-03-18
Section titled “[0.0.13] - 2026-03-18”- Fix cross-device link error (EXDEV / os error 18) when pulling apptainer SIF images. The build template now sets
APPTAINER_TMPDIRto the image folder and pulls to a.tmpfile before renaming, ensuring all file operations stay on the same filesystem.
[0.0.12] - 2026-03-17
Section titled “[0.0.12] - 2026-03-17”- Auto-pull missing apptainer SIF images at runtime. If the
.siffile doesn’t exist when a shimlink is invoked, bulker now runsapptainer pullautomatically instead of failing. - Support for deprecated Singularity config keys:
container_engine: singularity,singularity_image_folder,singularity_args, andsingularity_commandare now accepted as aliases for theirapptainerequivalents, with deprecation warnings.
container_engine: singularitynow correctly uses the apptainer code path. Previously it fell through to the Docker template, producing invalid flags like--rmthat apptainer/singularity doesn’t support.
[0.0.11] - 2026-03-10
Section titled “[0.0.11] - 2026-03-10”- Prevent double activation at both binary and shell function levels. Running
bulker activatewhen a crate is already active now errors instead of silently overwriting state (which leaked temp directories and corrupted the prompt).
[0.0.10] and earlier
Section titled “[0.0.10] and earlier”Initial development releases.