Skip to content

0.3.0 - 2025-03-28

Choose a tag to compare

@ncoghlan ncoghlan released this 28 Mar 03:19
· 114 commits to main since this release
1f79ea9

Added

  • The build and lock subcommands accept a new --reset-lock
    CLI option. This multi-use option requests that any previously
    created layer lock file be removed before locking the selected
    layers (thus ignoring any previous version pins or artifact
    hashes). This option uses the same wildcard pattern matching as
    the --include option. Only layers that are locked by the given
    command will have their previous lock files removed, as excluded
    layers will be excluded from both locking and having their lock
    files reset (added in #22).
  • "win_arm64" and "linux_aarch64" are now accepted as target platforms.
    ARM64/Aarch64 refer to the same CPU architecture, but Python reports it differently
    depending on the OS, and this is reflected in their respective platform tags
    (added in #107).

Changed

  • A Python API instability FutureWarning is now emitted at runtime (added while resolving #22).
  • The previous :func:!BuildEnvironment.get_unmatched_patterns method has been replaced
    by the new :func:BuildEnvironment.filter_layers method, which returns both the
    matching layer names and the unmatched patterns (changed in #22).
  • :func:BuildEnvironment.select_layers now accepts an iterable of environment names
    rather than an iterable of filter patterns to be matched (changed in #22).

Fixed

  • --only-binary ":all:" is now passed when locking the layers in addition
    to being passed when creating the layer environments. This avoids emitting
    requirements that can't be installed (resolved in #102).
  • Remove directories from /bin when building layers (resolved in #103)