about summary refs log tree commit diff
path: root/compiler/rustc_llvm/llvm-wrapper/CoverageMappingWrapper.cpp
diff options
context:
space:
mode:
authorPietro Albini <pietro.albini@ferrous-systems.com>2021-12-15 12:51:26 +0100
committerPietro Albini <pietro.albini@ferrous-systems.com>2022-01-21 09:33:43 +0100
commitb3ad40532db231cd3ca55bc37047aa50fb1a1a71 (patch)
tree747b1919c4b8ea4444ec4d58bbf761732c0138d2 /compiler/rustc_llvm/llvm-wrapper/CoverageMappingWrapper.cpp
parentb27d59d083a97e7253bcc8a040bc606ae0725fc4 (diff)
downloadrust-b3ad40532db231cd3ca55bc37047aa50fb1a1a71.tar.gz
rust-b3ad40532db231cd3ca55bc37047aa50fb1a1a71.zip
allow excluding paths only from a single module
x.py has support for excluding some steps from the invocation, but
unfortunately that's not granular enough: some steps have the same name
in different modules, and that prevents excluding only *some* of them.

As a practical example, let's say you need to run everything in `./x.py
test` except for the standard library tests, as those tests require IPv6
and need to be executed on a separate machine. Before this commit, if
you were to just run this:

    ./x.py test --exclude library/std

...the execution would fail, as that would not only exclude running the
tests for the standard library, it would also exclude generating its
documentation (breaking linkchecker).

This commit adds support for an optional module annotation in --exclude
paths, allowing the user to choose which module to exclude from:

    ./x.py test --exclude test::library/std

This maintains backward compatibility, but also allows for more ganular
exclusion. More examples on how this works:

| `--exclude`         | Docs    | Tests   |
| ------------------- | ------- | ------- |
| `library/std`       | Skipped | Skipped |
| `doc::library/std`  | Skipped | Run     |
| `test::library/std` | Run     | Skipped |

Note that the new behavior only works in the `--exclude` flag, and not
in other x.py arguments or flags yet.
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/CoverageMappingWrapper.cpp')
0 files changed, 0 insertions, 0 deletions