Skip to main content
BlogNewsTop News

West v0.9.0

By February 16, 2021No Comments

The Zephyr Project includes a swiss-army knife command line tool named west. West’s built-in commands provide a multiple repository management system which allows you to manage and version several git repositories in a single file. Marti Bolivar, a member of the Zephyr Technical Steering Committee and Senior Software Engineer at Nordic Semiconductor, announces the release of West 0.9.0.

New features:

  • West manifests now support Git Submodules in Projects. This allows you to clone Git submodules into a west project repository in addition to the project repository itself.
  • West manifests now support Project Groups and Active Projects. Project groups can be enabled and disabled to determine what projects are “active”, and therefore will be acted upon by the following commands: west updatewest listwest diffwest statuswest forall.
  • west update no longer updates inactive projects by default. It now supports a --group-filter option which allows for one-time modifications to the set of enabled and disabled project groups.
  • Running west listwest diffwest status, or west forall with no arguments does not print information for inactive projects by default. If the user specifies a list of projects explicitly at the command line, output for them is included regardless of whether they are active.These commands also now support --all arguments to include all projects, even inactive ones.
  • west list now supports a {groups} format string key in its --format argument.

Bug fixes:

  • The west config command and west.configuration API did not correctly store some configuration values, such as strings which contain commas. This has been fixed; see commit 36f3f91e for details.
  • A manifest file with an empty manifest: self: path: value is invalid, but west used to let it pass silently. West now rejects such manifests.
  • A bug affecting the behavior of the west init -l . command was fixed; see issue #435.

API changes:

  • added west.manifest.Manifest.is_active()
  • added west.manifest.Manifest.group_filter
  • added submodules attribute to west.manifest.Project, which has newly added type west.manifest.Submodule

Other changes:

  • The Manifest Imports feature now supports the terms allowlist and blocklist instead of whitelist and blacklist, respectively.The old terms are still supported for compatibility, but the documentation has been updated to use the new ones exclusively.

Marti presented a West overview at the Zephyr Mini-Summit last year in August. Check out the slides below.