This is an automated email from the ASF dual-hosted git repository.
sbp pushed a commit to branch sbp
in repository https://gitbox.apache.org/repos/asf/tooling-trusted-releases.git
The following commit(s) were added to refs/heads/sbp by this push:
new e1ad640 Document check ignores
e1ad640 is described below
commit e1ad640630a4bc19552f9ae407ca59b0c1456d64
Author: Sean B. Palmer <[email protected]>
AuthorDate: Thu Jan 29 16:09:41 2026 +0000
Document check ignores
---
atr/docs/check-ignores.md | 77 ++++++++++++++++++++++++++++++++++++++++++
atr/docs/index.md | 1 +
atr/docs/license-checks.md | 2 +-
atr/docs/running-the-server.md | 2 +-
atr/docs/user-guide.md | 1 +
5 files changed, 81 insertions(+), 2 deletions(-)
diff --git a/atr/docs/check-ignores.md b/atr/docs/check-ignores.md
new file mode 100644
index 0000000..5cebbb4
--- /dev/null
+++ b/atr/docs/check-ignores.md
@@ -0,0 +1,77 @@
+# 2.4. Check ignores
+
+**Up**: `2.` [User guide](user-guide)
+
+**Prev**: `2.3.` [License checks](license-checks)
+
+**Next**: `3.1.` [Running the server](running-the-server)
+
+**Sections**:
+
+* [Overview](#overview)
+* [Syntax](#syntax)
+* [Examples](#examples)
+
+## Overview
+
+Check ignores let committee members hide specific check results in the UI.
Ignored checks are removed from the warning and error counts shown on the
checks pages and are shown separately in _Ignored checks_ sections.
+
+### Where to manage ignores
+
+You can manage ignores from the release checks page by selecting _Manage check
ignores_. The ignores page shows the existing rules and lets you add, update,
or delete them, and the per-file report page shows ignored checks for that
specific file.
+
+### Permissions and visibility
+
+Any committer can view the ignores page for a committee, but only committee
members can add, update, or delete ignores. Ignores are stored per committee
and apply only to that committee's releases. (We intend to update this so that
ignores are stored per project instead.)
+
+Please note that on the release checks page, the _Ignored checks_ list
includes primary check results only; archive member checks are not shown there.
On the per-file report page, the _Ignored checks_ list can include member
checks for that file.
+
+## Syntax
+
+### Fields and what they match
+
+Each ignore rule can match on any combination of fields, and any field you
leave blank does not restrict matching. The release pattern matches the release
name in the `project-version` format; the revision number is a literal string
match (for example `00005`) and cannot use patterns; the checker pattern
matches the full checker key; the primary rel path pattern matches the artifact
filename; the member rel path pattern matches a path inside the archive; the
status matches `Exception`, ` [...]
+
+### Matching rules
+
+Success is never ignored, so only `Exception`, `Failure`, and `Warning`
results can match. When a rule includes multiple fields, all filled fields must
match for the ignore to apply, and if any ignore rule matches a check result
then the check result is ignored.
+
+### Pattern syntax
+
+Patterns use one of two modes.
+
+A pattern is treated as a glob-like string when it does not start with `^` and
does not end with `$`. In this mode, `*` matches any number of characters, all
other characters are treated literally, and matching is a substring match
rather than a full string match.
+
+A pattern is treated as a regular expression when it starts with `^` or ends
with `$`, and the regex is applied as a search. To keep rules portable across
engines, use the common subset of RE2 and Hyperscan:
+
+* Anchor with `^` and `$` (mandatory to enable the regex mode)
+* Match any chracter with `.`
+* Escape metacharacters with `\`
+* Use character ranges using classes like `[A-Za-z0-9_.-]`
+* Group with `(...)`
+* Alternate with `|`
+* Quantify with `*`, `+`, `?`
+
+Patterns longer than 128 characters are rejected, and cannot be used.
+
+Negation and missing values are handled with a leading exclamation mark.
Prefix a pattern of either mode with `!` to negate it, and use the special
pattern `!` by itself to match a missing value such as a missing member path.
Negated patterns do not match missing values unless you use the standalone `!`.
Use `!` before the opening anchor `^` in regular expression mode.
+
+## Examples
+
+To ignore all RAT warnings for your committee, set the checker pattern to
`atr.tasks.checks.rat.check` and the status to `Warning`.
+
+To ignore license header failures for a specific release series, set the
release pattern to `apache-example-1.2.*`, the checker pattern to
`atr.tasks.checks.license.headers`, and the status to `Failure`.
+
+To ignore only a specific revision, set the release pattern to
`apache-example-2.0.0`, set the revision number to the literal value `00005`,
and set the status to `Warning`.
+
+To ignore a single artifact file, set the primary rel path pattern to
`apache-example-2.0.0-source.tar.gz`, the checker pattern to
`atr.tasks.checks.signature.check`, and the status to `Failure`.
+
+To ignore warnings for one file inside the archive, set the member rel path
pattern to `apache-example-2.0.0/src/main/java/Foo.java`, set the checker
pattern to `atr.tasks.checks.license.headers`, and set the status to `Warning`.
+
+To match only primary results with no member path, set the member rel path
pattern to `!`, set the checker pattern to `atr.tasks.checks.paths.check`, and
set the status to `Warning`.
+
+To use regex for an exact release name, set the release pattern to
`^apache-example-[0-9]+\.[0-9]+\.[0-9]+$` and set the status to `Failure`.
+
+To ignore all warnings except the ATR license header checks, set the checker
pattern to `!atr.tasks.checks.license.headers` and set the status to `Warning`.
+
+Try setting multiple ignores to understand how matching works. Separate
ignores are ORed together, so e.g. one rule that ignores RAT warnings and
another separate rule that ignores signature failures will result in any checks
that match either rule being ignored.
diff --git a/atr/docs/index.md b/atr/docs/index.md
index 700c6fb..a84e83c 100644
--- a/atr/docs/index.md
+++ b/atr/docs/index.md
@@ -11,6 +11,7 @@ NOTE: This documentation is a work in progress.
* `2.1.` [Components](components)
* `2.2.` [Signing artifacts](signing-artifacts)
* `2.3.` [License checks](license-checks)
+ * `2.4.` [Check ignores](check-ignores)
* `3.` [Developer guide](developer-guide)
* `3.1.` [Running the server](running-the-server)
* `3.2.` [Overview of the code](overview-of-the-code)
diff --git a/atr/docs/license-checks.md b/atr/docs/license-checks.md
index 2275c83..77df4bf 100644
--- a/atr/docs/license-checks.md
+++ b/atr/docs/license-checks.md
@@ -4,7 +4,7 @@
**Prev**: `2.2.` [Signing artifacts](signing-artifacts)
-**Next**: `3.1.` [Running the server](running-the-server)
+**Next**: `2.4.` [Check ignores](check-ignores)
**Sections**:
diff --git a/atr/docs/running-the-server.md b/atr/docs/running-the-server.md
index 211f4d3..73d15aa 100644
--- a/atr/docs/running-the-server.md
+++ b/atr/docs/running-the-server.md
@@ -2,7 +2,7 @@
**Up**: `3.` [Developer guide](developer-guide)
-**Prev**: `2.3.` [License checks](license-checks)
+**Prev**: `2.4.` [Check ignores](check-ignores)
**Next**: `3.2.` [Overview of the code](overview-of-the-code)
diff --git a/atr/docs/user-guide.md b/atr/docs/user-guide.md
index 5670125..00f3a38 100644
--- a/atr/docs/user-guide.md
+++ b/atr/docs/user-guide.md
@@ -11,6 +11,7 @@
* `2.1.` [Components](components)
* `2.2.` [Signing artifacts](signing-artifacts)
* `2.3.` [License checks](license-checks)
+* `2.4.` [Check ignores](check-ignores)
**Sections**:
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]