You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
depot_tools/metadata
Jiewei Qian d76c4d6045 metadata: add "structured" field parsing
This CL adds a "structured" concept to the parser. In a structured
field, the parser will proactively look for field-like patterns to
start a new field (even if they aren't known fields).

This mitigates the issue when an unknown field immediately
follows a multi-line text field, such as:

URL: https://example.com
UnknownField: abc

And URL field value parses to
"https://example.com<newline>UnknownField:abc".

Bug: b/324149233
Change-Id: I54807bd7b242fc14c679483453ade83f8fd20225
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5379679
Reviewed-by: Anne Redulla <aredulla@google.com>
Commit-Queue: Jiewei Qian <qjw@chromium.org>
1 year ago
..
fields metadata: add "structured" field parsing 1 year ago
tests metadata: add "structured" field parsing 1 year ago
OWNERS
PRESUBMIT.py
README.md
__init__.py
dependency_metadata.py [ssci] Support alias for Shipped field 2 years ago
discover.py metadata: sort discovered files and validation messages 1 year ago
parse.py metadata: add "structured" field parsing 1 year ago
scan.py [ssci] Recognize other date formats for third party metadata 2 years ago
validate.py metadata: sort discovered files and validation messages 1 year ago
validation_result.py metadata: sort discovered files and validation messages 1 year ago

README.md

Validation for Chromium's Third Party Metadata Files

This directory contains the code to validate Chromium third party metadata files, i.e. README.chromium files.

Prerequisites

  1. Have the Chromium source code checked out on disk
  2. Ensure you've run gclient runhooks on your source checkout

Run

metadata/scan.py can be used to search for and validate all Chromium third party metadata files within a repository. For example, if your chromium/src checkout is at ~/my/path/to/chromium/src, run the following command from the root directory of depot_tools:

vpython3 --vpython-spec=.vpython3 metadata/scan.py ~/my/path/to/chromium/src