1---
2clippy:
3    description: Lint rust
4    include:
5        - build/workspace-hack/
6        - dom/midi/midir_impl/
7        - dom/media/gtest/
8        - dom/webauthn/libudev-sys/
9        - gfx/webrender_bindings/
10        - gfx/wr/peek-poke/
11        - gfx/wr/peek-poke/peek-poke-derive/
12        - gfx/wr/webrender_build/
13        - gfx/wr/wr_malloc_size_of/
14        - js/src/frontend/smoosh/
15        - js/src/rust/shared/
16        - js/src/wasm/cranelift/
17        - modules/libpref/init/static_prefs/
18        - mozglue/static/rust/
19        - netwerk/base/mozurl/
20        - servo/components/derive_common/
21        - servo/components/selectors/
22        - servo/components/servo_arc/
23        - servo/components/size_of_test/
24        - servo/components/style/
25        - servo/components/style_derive/
26        - servo/components/style_traits/
27        - servo/components/to_shmem/
28        - servo/components/to_shmem_derive/
29        - servo/tests/unit/style/
30        - testing/geckodriver/
31        - testing/mozbase/rust/mozdevice/
32        - testing/mozbase/rust/mozprofile/
33        - testing/mozbase/rust/mozrunner/
34        - testing/mozbase/rust/mozversion/
35        - testing/webdriver/
36        - third_party/rust/mp4parse/
37        - third_party/rust/mp4parse_capi/
38        - toolkit/components/kvstore/
39        - toolkit/components/glean/
40        - toolkit/components/xulstore/tests/gtest/
41        - toolkit/library/rust/
42        - tools/fuzzing/rust/
43        - tools/profiler/rust-api/
44        - xpcom/rust/gtest/bench-collections/
45        - xpcom/rust/xpcom/xpcom_macros/
46    exclude:
47        # Many are failing for the same reasons:
48        # https://bugzilla.mozilla.org/show_bug.cgi?id=1606073
49        # https://bugzilla.mozilla.org/show_bug.cgi?id=1606077
50        - Cargo.toml
51        # nsstring
52        # derive_hash_xor_eq
53        - gfx/wr/
54        - gfx/wr/webrender/
55        - gfx/wr/examples/
56        # windows-only
57        - gfx/wr/example-compositor/compositor-windows/
58        - gfx/wr/webrender_api/
59        - gfx/wr/wrench/
60        - gfx/wgpu_bindings/
61        # not_unsafe_ptr_arg_deref
62        - modules/libpref/parser/
63        - tools/profiler/rust-helper/
64        - toolkit/library/rust/shared/
65        - toolkit/library/gtest/rust/
66        # not_unsafe_ptr_arg_deref
67        - remote/
68        - dom/media/webrtc/sdp/rsdparsa_capi/
69        - intl/encoding_glue/
70        # not_unsafe_ptr_arg_deref
71        - storage/rust/
72        - storage/variant/
73        # nsstring
74        - toolkit/components/xulstore/
75        - servo/ports/geckolib/tests/
76        - xpcom/rust/xpcom/
77        - xpcom/rust/nsstring/
78        - xpcom/rust/gtest/xpcom/
79        - xpcom/rust/gtest/nsstring/
80        - security/manager/ssl/cert_storage/
81        - intl/locale/rust/fluent-langneg-ffi/
82        - intl/locale/rust/unic-langid-ffi/
83        - toolkit/components/places/bookmark_sync/
84        - xpcom/rust/nserror/
85        - xpcom/rust/moz_task/
86        - xpcom/rust/gkrust_utils/
87        - netwerk/socket/neqo_glue/
88        - dom/media/webrtc/transport/mdns_service/
89        - tools/lint/test/files/clippy/
90        - servo/ports/geckolib/
91        - servo/ports/geckolib/tests/
92        - servo/tests/unit/malloc_size_of/
93        - servo/components/malloc_size_of/
94        - dom/media/webrtc/sdp/rsdparsa_capi/
95        - testing/geckodriver/marionette/
96        - toolkit/components/bitsdownload/bits_client/
97        - gfx/wr/example-compositor/compositor/
98        - toolkit/components/bitsdownload/bits_client/bits/
99        # mac and windows only
100        - security/manager/ssl/osclientcerts/
101    extensions:
102        - rs
103    support-files:
104        - 'tools/lint/clippy/**'
105    # the version of cargo-clippy is:
106    # clippy 0.1.51 (2fd73fa 2021-03-23)
107    # we use the date instead to facilitate the check
108    # replacing - by . because Python StrictVersion expects this
109    min_clippy_version: 2021.03.23
110    type: external
111    payload: clippy:lint
112