DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (b31ea256e617)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
[configs]
skip-check-length = false
skip-check-licenses = false
check-alphabetical-order = true
check-ordered-json-keys = [
  "./resources/prefs.json",
]
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",
  "hashglobe", # only uses in tests
  "ipc-channel",
  "num-bigint",
  "parking_lot_core",
  "phf_generator",
  "rayon",
  "rayon-core",
  "servo_rand",
  "servo-websocket",
  "tempdir",
  "tempfile",
  "uuid",
  "ws",
]
num = [
  "chrono",
]

[ignore]
# Ignored packages with duplicated versions
packages = [
  "bitflags",
  "lazy_static",
  "winapi",
  "syn",
  "quote",
  "unicode-xid",
  "log",
]
# Files that are ignored for all tidy and lint checks.
files = [
  "./components/net/tests/parsable_mime/text",
  # Mako does not lend itself easily to splitting long lines
  "./components/style/properties/helpers/animated_properties.mako.rs",
  # Helper macro where actually a pseudo-element per line makes sense.
  "./components/style/gecko/non_ts_pseudo_class_list.rs",
  # Generated and upstream code combined with our own. Could use cleanup
  "./components/style/gecko/generated/bindings.rs",
  "./components/style/gecko/generated/pseudo_element_definition.rs",
  "./components/style/gecko/generated/structs.rs",
  "./components/style/gecko/generated/atom_macro.rs",
  "./resources/hsts_preload.json",
  "./tests/wpt/metadata/MANIFEST.json",
  "./support/android/openssl.sh",
  # Upstream code from Khronos/WebGL uses tabs for indentation
  "./tests/wpt/mozilla/tests/webgl",
  # Ignore those files since the issues reported are on purpose
  "./tests/html/bad-line-ends.html",
  "./tests/wpt/mozilla/tests/css/fonts",
  "./tests/wpt/mozilla/tests/css/pre_with_tab.html",
  "./tests/wpt/mozilla/tests/mozilla/textarea_placeholder.html",
]
# Directories that are ignored for the non-WPT tidy check.
directories = [
  # Upstream
  "./support/android/apk",
  "./tests/wpt/harness",
  "./tests/wpt/update",
  "./tests/wpt/web-platform-tests",
  "./tests/wpt/mozilla/tests/mozilla/referrer-policy",
  "./tests/wpt/mozilla/tests/webgl",
  "./tests/wpt/sync",
  "./python/tidy/servo_tidy_tests",
  "./components/script/dom/bindings/codegen/parser",
  "./components/script/dom/bindings/codegen/ply",
  "./python/_virtualenv",
  "./components/hashglobe/src",
  # Generated and upstream code combined with our own. Could use cleanup
  "./target",
]

# Directories that are checked for correct file extension
[check_ext]
# directory, list of expected file extensions
"./components/script/dom/webidls" = [".webidl"]