1[configs]
2skip-check-length = false
3skip-check-licenses = false
4check-alphabetical-order = true
5check-ordered-json-keys = [
6  "./resources/prefs.json",
7]
8lint-scripts = [
9  "./python/servo/lints/wpt_lint.py",
10]
11
12# Packages which we avoid using in Servo.
13# For each blocked package, we can list the exceptions,
14# which are packages allowed to use the blocked package.
15[blocked-packages]
16rand = [
17  "deque",
18  "gaol",
19  "hashglobe", # only uses in tests
20  "ipc-channel",
21  "num-bigint",
22  "parking_lot_core",
23  "phf_generator",
24  "rayon",
25  "rayon-core",
26  "servo_rand",
27  "servo-websocket",
28  "tempdir",
29  "tempfile",
30  "uuid",
31  "ws",
32]
33num = [
34  "chrono",
35]
36
37[ignore]
38# Ignored packages with duplicated versions
39packages = [
40  "bitflags",
41  "lazy_static",
42  "winapi",
43  "syn",
44  "quote",
45  "unicode-xid",
46  "log",
47]
48# Files that are ignored for all tidy and lint checks.
49files = [
50  "./components/net/tests/parsable_mime/text",
51  # Mako does not lend itself easily to splitting long lines
52  "./components/style/properties/helpers/animated_properties.mako.rs",
53  # Helper macro where actually a pseudo-element per line makes sense.
54  "./components/style/gecko/non_ts_pseudo_class_list.rs",
55  # Generated and upstream code combined with our own. Could use cleanup
56  "./components/style/gecko/generated/bindings.rs",
57  "./components/style/gecko/generated/pseudo_element_definition.rs",
58  "./components/style/gecko/generated/structs.rs",
59  "./components/style/gecko/generated/atom_macro.rs",
60  "./resources/hsts_preload.json",
61  "./tests/wpt/metadata/MANIFEST.json",
62  "./support/android/openssl.sh",
63  # Upstream code from Khronos/WebGL uses tabs for indentation
64  "./tests/wpt/mozilla/tests/webgl",
65  # Ignore those files since the issues reported are on purpose
66  "./tests/html/bad-line-ends.html",
67  "./tests/wpt/mozilla/tests/css/fonts",
68  "./tests/wpt/mozilla/tests/css/pre_with_tab.html",
69  "./tests/wpt/mozilla/tests/mozilla/textarea_placeholder.html",
70]
71# Directories that are ignored for the non-WPT tidy check.
72directories = [
73  # Upstream
74  "./support/android/apk",
75  "./tests/wpt/harness",
76  "./tests/wpt/update",
77  "./tests/wpt/web-platform-tests",
78  "./tests/wpt/mozilla/tests/mozilla/referrer-policy",
79  "./tests/wpt/mozilla/tests/webgl",
80  "./tests/wpt/sync",
81  "./python/tidy/servo_tidy_tests",
82  "./components/script/dom/bindings/codegen/parser",
83  "./components/script/dom/bindings/codegen/ply",
84  "./python/_virtualenv",
85  "./components/hashglobe/src",
86  # Generated and upstream code combined with our own. Could use cleanup
87  "./target",
88]
89
90# Directories that are checked for correct file extension
91[check_ext]
92# directory, list of expected file extensions
93"./components/script/dom/webidls" = [".webidl"]
94