Skip to content

Commit

Permalink
doc: west: add 0.11.0 docs
Browse files Browse the repository at this point in the history
This is mainly a feature release which includes a few ways to speed up
'west update', along with a couple of fixes and other changes.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
  • Loading branch information
mbolivar-nordic authored and galak committed May 4, 2021
1 parent d34a289 commit faf68fb
Show file tree
Hide file tree
Showing 6 changed files with 73 additions and 8 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/doc-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
sudo pip3 install -U setuptools wheel pip
pip3 install -r scripts/requirements-base.txt
pip3 install -r scripts/requirements-doc.txt
pip3 install west==0.10.1
pip3 install west==0.11.0
- name: west setup
run: |
Expand Down
26 changes: 20 additions & 6 deletions doc/guides/west/built-in.rst
Original file line number Diff line number Diff line change
Expand Up @@ -197,9 +197,15 @@ if you just want to disable a single group, e.g. ``--group-filter=-bar``.
If a project in the manifest has a ``submodules`` key, the submodules are
updated as follows, depending on the value of the ``submodules`` key.

If the project has ``submodules: true``, west runs one of the following in
the project repository, depending on whether you run ``west update``
with the ``--rebase`` option or without it:
If the project has ``submodules: true``, west first synchronizes the project's
submodules with:

.. code-block::
git submodule sync --recursive
West then runs one of the following in the project repository, depending on
whether you run ``west update`` with the ``--rebase`` option or without it:

.. code-block::
Expand All @@ -210,9 +216,14 @@ with the ``--rebase`` option or without it:
git submodule update --init --rebase --recursive
Otherwise, the project has ``submodules: <list-of-submodules>``. In this
case, west runs one of the following in the project repository for each
submodule path in the list, depending on whether you run ``west update``
with the ``--rebase`` option or without it:
case, west synchronizes the project's submodules with:

.. code-block::
git submodule sync --recursive -- <submodule-path>
Then it updates each submodule in the list as follows, depending on whether you
run ``west update`` with the ``--rebase`` option or without it:

.. code-block::
Expand All @@ -222,6 +233,9 @@ with the ``--rebase`` option or without it:
# with --rebase, e.g. "west update --rebase":
git submodule update --init --rebase --recursive <submodule-path>
The ``git submodule sync`` commands are skipped if the
``update.sync-submodules`` :ref:`west-config` option is false.

.. _west-built-in-misc:

Other project commands
Expand Down
12 changes: 12 additions & 0 deletions doc/guides/west/config.rst
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,18 @@ commands are documented in the pages for those commands.
from project remotes when those projects' revisions in the manifest file
are SHAs or tags which are already available locally. The ``"always"``
behavior is to unconditionally fetch from the remote.
* - ``update.name-cache``
- String. If non-empty, ``west update`` will use its value as the
``--name-cache`` option's value if not given on the command line.
* - ``update.narrow``
- Boolean. If ``true``, ``west update`` behaves as if ``--narrow`` was
given on the command line. The default is ``false``.
* - ``update.path-cache``
- String. If non-empty, ``west update`` will use its value as the
``--path-cache`` option's value if not given on the command line.
* - ``update.sync-submodules``
- Boolean. If ``true`` (the default), :ref:`west-update` will synchronize
Git submodules before updating them.
* - ``zephyr.base``
- String, default value to set for the :envvar:`ZEPHYR_BASE` environment
variable while the west command is running. By default, this is set to
Expand Down
2 changes: 1 addition & 1 deletion doc/guides/west/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ You can run ``west --help`` (or ``west -h`` for short) to get top-level help
for available west commands, and ``west <command> -h`` for detailed help on
each command.

The following pages document west's ``v0.9.x`` releases, and provide additional
The following pages document west's ``v0.11.x`` releases, and provide additional
context about the tool.

.. toctree::
Expand Down
25 changes: 25 additions & 0 deletions doc/guides/west/release-notes.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,31 @@
West Release Notes
##################

v0.11.0
*******

New features:

- ``west update`` now supports ``--narrow``, ``--name-cache``, and
``--path-cache`` options. These can be influenced by the ``update.narrow``,
``update.name-cache``, and ``update.path-cache`` :ref:`west-config` options.
These can be used to optimize the speed of the update.
- ``west update`` now supports a ``--fetch-opt`` option that will be passed to
the ``git fetch`` command used to fetch remote revisions when updating each
project.

Bug fixes:

- ``west update`` now synchronizes Git submodules in projects by default. This
avoids issues if the URL changes in the manifest file from when the submodule
was first initialized. This behavior can be disabled by setting the
``update.sync-submodules`` configuration option to ``false``.

Other changes:

- the :ref:`west-apis-manifest` module has fixed docstrings for the Project
class

v0.10.1
*******

Expand Down
14 changes: 14 additions & 0 deletions doc/guides/west/west-apis.rst
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,12 @@ WestCommand
True if reading the manifest property will succeed instead of erroring
out.

.. py:attribute:: git_version_info
A tuple of Git version information.

.. versionadded:: 0.11.0

Constructor:

.. automethod:: __init__
Expand All @@ -109,6 +115,14 @@ WestCommand

.. automethod:: add_parser

.. automethod:: check_call

.. versionchanged:: 0.11.0

.. automethod:: check_output

.. versionchanged:: 0.11.0

All subclasses must provide the following abstract methods, which are used
to implement the above:

Expand Down

0 comments on commit faf68fb

Please sign in to comment.