зеркало из https://github.com/mozilla/gecko-dev.git
servo: Merge #15023 - Moved tidy's BLOCKED_PACKAGES to the config file (from mdevlamynck:tidy-config); r=Wafflespeanut
<!-- Please describe your changes on the following line: --> Moved tidy.py's BLOCKED_PACKAGES to servo-tidy.toml. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #15014 (github issue number if applicable). <!-- Either: --> - [X] These changes do not require tests because this is a refactor and the existing tests have been adapted. <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> Source-Repo: https://github.com/servo/servo Source-Revision: 7eb811b837545c295506c25207c891126b6db0ff
This commit is contained in:
Родитель
1d607c4b20
Коммит
37fcd17201
|
@ -31,6 +31,7 @@ config = {
|
|||
"skip-check-licenses": False,
|
||||
"check-ordered-json-keys": [],
|
||||
"lint-scripts": [],
|
||||
"blocked-packages": {},
|
||||
"ignore": {
|
||||
"files": [
|
||||
os.path.join(".", "."), # ignore hidden files
|
||||
|
@ -81,27 +82,6 @@ WEBIDL_STANDARDS = [
|
|||
" accessible to\n// web pages."
|
||||
]
|
||||
|
||||
# Packages which we avoid using in Servo.
|
||||
# For each blocked package, we can list the exceptions,
|
||||
# which are packages allowed to use the blocked package.
|
||||
BLOCKED_PACKAGES = {
|
||||
"rand": [
|
||||
"deque",
|
||||
"gaol",
|
||||
"ipc-channel",
|
||||
"num-bigint",
|
||||
"parking_lot_core",
|
||||
"phf_generator",
|
||||
"rayon",
|
||||
"servo_rand",
|
||||
"tempdir",
|
||||
"tempfile",
|
||||
"uuid",
|
||||
"websocket",
|
||||
"ws",
|
||||
],
|
||||
}
|
||||
|
||||
|
||||
def is_iter_empty(iterator):
|
||||
try:
|
||||
|
@ -366,7 +346,7 @@ def check_lock(file_name, contents):
|
|||
for dependency in package.get("dependencies", []):
|
||||
dependency = dependency.split()
|
||||
dependency_name = dependency[0]
|
||||
whitelist = BLOCKED_PACKAGES.get(dependency_name)
|
||||
whitelist = config['blocked-packages'].get(dependency_name)
|
||||
if whitelist is not None:
|
||||
if package_name not in whitelist:
|
||||
fmt = "Package {} {} depends on blocked package {}."
|
||||
|
@ -856,7 +836,7 @@ def check_config_file(config_file, print_text=True):
|
|||
# Check for invalid tables
|
||||
if re.match("\[(.*?)\]", line.strip()):
|
||||
table_name = re.findall(r"\[(.*?)\]", line)[0].strip()
|
||||
if table_name not in ("configs", "ignore", "check_ext"):
|
||||
if table_name not in ("configs", "blocked-packages", "ignore", "check_ext"):
|
||||
yield config_file, idx + 1, "invalid config table [%s]" % table_name
|
||||
current_table = table_name
|
||||
continue
|
||||
|
@ -894,6 +874,9 @@ def parse_config(content):
|
|||
for path, exts in dirs_to_check.items():
|
||||
config['check_ext'][normilize_paths([path])[0]] = exts
|
||||
|
||||
# Add list of blocked packages
|
||||
config["blocked-packages"] = config_file.get("blocked-packages", {})
|
||||
|
||||
# Override default configs
|
||||
user_configs = config_file.get("configs", [])
|
||||
for pref in user_configs:
|
||||
|
|
|
@ -5,6 +5,8 @@ skip-check-length = false
|
|||
skip-check-licenses = false
|
||||
wrong-key = false
|
||||
|
||||
[blocked-packages]
|
||||
|
||||
[wrong]
|
||||
wrong-key = true
|
||||
|
||||
|
|
|
@ -8,6 +8,26 @@ lint-scripts = [
|
|||
"./python/servo/lints/wpt_lint.py",
|
||||
]
|
||||
|
||||
# Packages which we avoid using in Servo.
|
||||
# For each blocked package, we can list the exceptions,
|
||||
# which are packages allowed to use the blocked package.
|
||||
[blocked-packages]
|
||||
rand = [
|
||||
"deque",
|
||||
"gaol",
|
||||
"ipc-channel",
|
||||
"num-bigint",
|
||||
"parking_lot_core",
|
||||
"phf_generator",
|
||||
"rayon",
|
||||
"servo_rand",
|
||||
"tempdir",
|
||||
"tempfile",
|
||||
"uuid",
|
||||
"websocket",
|
||||
"ws",
|
||||
]
|
||||
|
||||
[ignore]
|
||||
# Ignored packages with duplicated versions
|
||||
packages = ["bitflags", "byteorder", "lazy_static", "semver", "libloading"]
|
||||
|
|
Загрузка…
Ссылка в новой задаче