@@ -14,57 +14,192 @@ strict_equality = True
1414warn_return_any = True
1515
1616files =
17- # fetch and parse vulnerability data from upstream sources
18- vulnerabilities/importers/debian_oval.py,
19- vulnerabilities/importers/epss.py,
20- vulnerabilities/importers/project_kb_msr2019.py,
21- vulnerabilities/importers/redhat.py,
22- vulnerabilities/importers/suse_scores.py,
23- vulnerabilities/importers/ubuntu_usn.py,
24- vulnerabilities/importers/xen.py,
25-
26- # shared logic that transforms advisory data after import
27- vulnerabilities/pipes/apache_kafka.py,
28- vulnerabilities/pipes/export.py,
29- vulnerabilities/pipes/extractcode_utils.py,
30- vulnerabilities/pipes/federatedcode.py,
31-
32- # CLI entry points for imports, improvers, and scheduling
33- vulnerabilities/management/commands/create_api_user.py,
34- vulnerabilities/management/commands/import.py,
35- vulnerabilities/management/commands/improve.py,
36- vulnerabilities/management/commands/run_scheduler.py,
37-
38- # how vulnerabilities are scored, related, and scheduled
39- vulnerabilities/risk.py,
40- vulnerabilities/references.py,
41- vulnerabilities/schedules.py,
42- vulnerabilities/pipelines/v2_importers/collect_fix_commits.py,
43-
44- # API pagination and rate limiting
45- vulnerabilities/pagination.py,
46- vulnerabilities/throttling.py,
47-
48- # supporting utilities
49- vulnerabilities/rpm_utils.py,
50- vulnerabilities/weight_config.py,
51-
52- # fully clean directories: request middleware and template tags
53- vulnerabilities/middleware,
54- vulnerabilities/templatetags,
55-
56- # Django project configuration
57- vulnerablecode/__init__.py,
58- vulnerablecode/context_processors.py,
59- vulnerablecode/urls.py,
60- vulnerablecode/wsgi.py,
61-
62- # shared library for deterministic advisory IDs
17+ vulnerabilities,
18+ vulnerablecode,
6319 aboutcode,
20+ vulntotal,
6421
65- # bundled CLI tool for cross-checking vulnerability sources
66- vulntotal/__init__.py,
67- vulntotal/vulntotal_utils.py,
68- vulntotal/ecosystem,
69- vulntotal/datasources/safetydb.py,
70- vulntotal/tests,
22+ exclude = (?x)(
23+ # permanently excluded, migrations are auto-generated
24+ ^vulnerabilities/migrations/
25+
26+ # everything below is excluded only until it is typed
27+
28+ # directories with no files typed
29+ | ^vulnerabilities/pipelines/v2_improvers/
30+ | ^vulnerabilities/tests/pipelines/exporters/
31+
32+ # top level files in pipelines/ not typed, subdirectories are listed below
33+ | ^vulnerabilities/pipelines/[^/]+\.py$
34+
35+ # core app modules not yet typed
36+ | ^vulnerabilities/api\.py$
37+ | ^vulnerabilities/api_extension\.py$
38+ | ^vulnerabilities/api_v3\.py$
39+ | ^vulnerabilities/import_runner\.py$
40+ | ^vulnerabilities/importer\.py$
41+ | ^vulnerabilities/improve_runner\.py$
42+ | ^vulnerabilities/improver\.py$
43+ | ^vulnerabilities/lib_oval\.py$
44+ | ^vulnerabilities/models\.py$
45+ | ^vulnerabilities/oval_parser\.py$
46+ | ^vulnerabilities/severity_systems\.py$
47+ | ^vulnerabilities/tasks\.py$
48+ | ^vulnerabilities/utils\.py$
49+ | ^vulnerabilities/views\.py$
50+
51+ # importer implementations not yet typed
52+ | ^vulnerabilities/importers/apache_httpd\.py$
53+ | ^vulnerabilities/importers/apache_kafka\.py$
54+ | ^vulnerabilities/importers/apache_tomcat\.py$
55+ | ^vulnerabilities/importers/archlinux\.py$
56+ | ^vulnerabilities/importers/curl\.py$
57+ | ^vulnerabilities/importers/debian\.py$
58+ | ^vulnerabilities/importers/elixir_security\.py$
59+ | ^vulnerabilities/importers/fireeye\.py$
60+ | ^vulnerabilities/importers/gentoo\.py$
61+ | ^vulnerabilities/importers/github_osv\.py$
62+ | ^vulnerabilities/importers/gsd\.py$
63+ | ^vulnerabilities/importers/istio\.py$
64+ | ^vulnerabilities/importers/kaybee\.py$
65+ | ^vulnerabilities/importers/mattermost\.py$
66+ | ^vulnerabilities/importers/mozilla\.py$
67+ | ^vulnerabilities/importers/openssl\.py$
68+ | ^vulnerabilities/importers/oss_fuzz\.py$
69+ | ^vulnerabilities/importers/osv\.py$
70+ | ^vulnerabilities/importers/postgresql\.py$
71+ | ^vulnerabilities/importers/retiredotnet\.py$
72+ | ^vulnerabilities/importers/ruby\.py$
73+ | ^vulnerabilities/importers/rust\.py$
74+ | ^vulnerabilities/importers/suse_backports\.py$
75+ | ^vulnerabilities/importers/suse_oval\.py$
76+ | ^vulnerabilities/importers/vulnrichment\.py$
77+
78+ # pipeline modules not yet typed (v2 importers/exporters)
79+ | ^vulnerabilities/pipelines/exporters/federate_vulnerabilities\.py$
80+ | ^vulnerabilities/pipelines/v2_importers/alpine_linux_importer\.py$
81+ | ^vulnerabilities/pipelines/v2_importers/aosp_importer\.py$
82+ | ^vulnerabilities/pipelines/v2_importers/apache_httpd_importer\.py$
83+ | ^vulnerabilities/pipelines/v2_importers/apache_kafka_importer\.py$
84+ | ^vulnerabilities/pipelines/v2_importers/apache_tomcat_importer\.py$
85+ | ^vulnerabilities/pipelines/v2_importers/archlinux_importer\.py$
86+ | ^vulnerabilities/pipelines/v2_importers/curl_importer\.py$
87+ | ^vulnerabilities/pipelines/v2_importers/debian_importer\.py$
88+ | ^vulnerabilities/pipelines/v2_importers/elixir_security_importer\.py$
89+ | ^vulnerabilities/pipelines/v2_importers/epss_importer_v2\.py$
90+ | ^vulnerabilities/pipelines/v2_importers/fireeye_importer_v2\.py$
91+ | ^vulnerabilities/pipelines/v2_importers/gentoo_importer\.py$
92+ | ^vulnerabilities/pipelines/v2_importers/github_osv_importer\.py$
93+ | ^vulnerabilities/pipelines/v2_importers/gitlab_importer\.py$
94+ | ^vulnerabilities/pipelines/v2_importers/glibc_importer\.py$
95+ | ^vulnerabilities/pipelines/v2_importers/istio_importer\.py$
96+ | ^vulnerabilities/pipelines/v2_importers/linux_kernel_importer\.py$
97+ | ^vulnerabilities/pipelines/v2_importers/mattermost_importer\.py$
98+ | ^vulnerabilities/pipelines/v2_importers/mozilla_importer\.py$
99+ | ^vulnerabilities/pipelines/v2_importers/nginx_importer\.py$
100+ | ^vulnerabilities/pipelines/v2_importers/npm_importer\.py$
101+ | ^vulnerabilities/pipelines/v2_importers/nvd_importer\.py$
102+ | ^vulnerabilities/pipelines/v2_importers/openssl_importer\.py$
103+ | ^vulnerabilities/pipelines/v2_importers/oss_fuzz\.py$
104+ | ^vulnerabilities/pipelines/v2_importers/postgresql_importer\.py$
105+ | ^vulnerabilities/pipelines/v2_importers/project_kb_msr2019_importer\.py$
106+ | ^vulnerabilities/pipelines/v2_importers/project_kb_statements_importer\.py$
107+ | ^vulnerabilities/pipelines/v2_importers/pypa_importer\.py$
108+ | ^vulnerabilities/pipelines/v2_importers/pysec_importer\.py$
109+ | ^vulnerabilities/pipelines/v2_importers/redhat_importer\.py$
110+ | ^vulnerabilities/pipelines/v2_importers/retiredotnet_importer\.py$
111+ | ^vulnerabilities/pipelines/v2_importers/ruby_importer\.py$
112+ | ^vulnerabilities/pipelines/v2_importers/suse_score_importer\.py$
113+ | ^vulnerabilities/pipelines/v2_importers/ubuntu_osv_importer\.py$
114+ | ^vulnerabilities/pipelines/v2_importers/vulnrichment_importer\.py$
115+ | ^vulnerabilities/pipelines/v2_importers/xen_importer\.py$
116+
117+ # data-transform pipes not yet typed
118+ | ^vulnerabilities/pipes/advisory\.py$
119+ | ^vulnerabilities/pipes/fetchcode_utils\.py$
120+ | ^vulnerabilities/pipes/group_advisories\.py$
121+ | ^vulnerabilities/pipes/openssl\.py$
122+ | ^vulnerabilities/pipes/osv_v2\.py$
123+ | ^vulnerabilities/pipes/univers_utils\.py$
124+ | ^vulnerabilities/pipes/vcs_collector_utils\.py$
125+
126+ # improvers not yet typed
127+ | ^vulnerabilities/improvers/add_missing_refid\.py$
128+ | ^vulnerabilities/improvers/default\.py$
129+ | ^vulnerabilities/improvers/valid_versions\.py$
130+
131+ # management commands not yet typed
132+ | ^vulnerabilities/management/commands/commit_export\.py$
133+ | ^vulnerabilities/management/commands/export\.py$
134+
135+ # test suite not yet typed
136+ | ^vulnerabilities/tests/pipelines/test_base_pipeline\.py$
137+ | ^vulnerabilities/tests/pipelines/test_compute_advisory_todo\.py$
138+ | ^vulnerabilities/tests/pipelines/test_npm_importer_pipeline\.py$
139+ | ^vulnerabilities/tests/pipelines/test_pipeline_id\.py$
140+ | ^vulnerabilities/tests/pipelines/test_pypa_importer_pipeline\.py$
141+ | ^vulnerabilities/tests/pipelines/test_pysec_importer_pipeline\.py$
142+ | ^vulnerabilities/tests/pipelines/test_remove_duplicate_advisories\.py$
143+ | ^vulnerabilities/tests/pipelines/v2_importers/test_apache_httpd_importer_pipeline_v2\.py$
144+ | ^vulnerabilities/tests/pipelines/v2_importers/test_apache_kafka_importer\.py$
145+ | ^vulnerabilities/tests/pipelines/v2_importers/test_apache_tomcat_importer_pipeline\.py$
146+ | ^vulnerabilities/tests/pipelines/v2_importers/test_collect_fix_commit\.py$
147+ | ^vulnerabilities/tests/pipelines/v2_importers/test_debian_importer\.py$
148+ | ^vulnerabilities/tests/pipelines/v2_importers/test_elixir_security_importer_v2\.py$
149+ | ^vulnerabilities/tests/pipelines/v2_importers/test_github_osv_importer_v2\.py$
150+ | ^vulnerabilities/tests/pipelines/v2_importers/test_gitlab_importer_v2\.py$
151+ | ^vulnerabilities/tests/pipelines/v2_importers/test_istio_importer_v2\.py$
152+ | ^vulnerabilities/tests/pipelines/v2_importers/test_mattermost_importer_v2\.py$
153+ | ^vulnerabilities/tests/pipelines/v2_importers/test_mozilla_importer_v2\.py$
154+ | ^vulnerabilities/tests/pipelines/v2_importers/test_npm_importer_pipeline_v2\.py$
155+ | ^vulnerabilities/tests/pipelines/v2_importers/test_openssl_importer\.py$
156+ | ^vulnerabilities/tests/pipelines/v2_importers/test_postgresql_importer_v2\.py$
157+ | ^vulnerabilities/tests/pipelines/v2_importers/test_pypa_importer_pipeline_v2\.py$
158+ | ^vulnerabilities/tests/pipelines/v2_importers/test_pysec_importer_v2\.py$
159+ | ^vulnerabilities/tests/pipelines/v2_importers/test_ubuntu_osv_importer\.py$
160+ | ^vulnerabilities/tests/pipelines/v2_importers/test_xen_importer_v2\.py$
161+ | ^vulnerabilities/tests/pipelines/v2_improvers/test_unfurl_version_range\.py$
162+ | ^vulnerabilities/tests/pipes/test_apache_kafka\.py$
163+ | ^vulnerabilities/tests/pipes/test_osv_v2\.py$
164+ | ^vulnerabilities/tests/pipes/test_vulnerablecode_importer_pipeline_v2\.py$
165+ | ^vulnerabilities/tests/test_affected_package\.py$
166+ | ^vulnerabilities/tests/test_api_extension\.py$
167+ | ^vulnerabilities/tests/test_api_v3\.py$
168+ | ^vulnerabilities/tests/test_changelog\.py$
169+ | ^vulnerabilities/tests/test_data_migrations\.py$
170+ | ^vulnerabilities/tests/test_data_source\.py$
171+ | ^vulnerabilities/tests/test_debian_oval\.py$
172+ | ^vulnerabilities/tests/test_default_improver\.py$
173+ | ^vulnerabilities/tests/test_example\.py$
174+ | ^vulnerabilities/tests/test_github_osv\.py$
175+ | ^vulnerabilities/tests/test_import_command\.py$
176+ | ^vulnerabilities/tests/test_import_runner\.py$
177+ | ^vulnerabilities/tests/test_improve_command\.py$
178+ | ^vulnerabilities/tests/test_improve_runner\.py$
179+ | ^vulnerabilities/tests/test_models\.py$
180+ | ^vulnerabilities/tests/test_openssl\.py$
181+ | ^vulnerabilities/tests/test_oss_fuzz\.py$
182+ | ^vulnerabilities/tests/test_osv\.py$
183+ | ^vulnerabilities/tests/test_retiredotnet\.py$
184+ | ^vulnerabilities/tests/test_rust\.py$
185+ | ^vulnerabilities/tests/test_suse\.py$
186+ | ^vulnerabilities/tests/test_suse_oval\.py$
187+ | ^vulnerabilities/tests/test_tasks\.py$
188+ | ^vulnerabilities/tests/test_utils\.py$
189+
190+ # vulntotal data sources not yet typed
191+ | ^vulntotal/datasources/deps\.py$
192+ | ^vulntotal/datasources/github\.py$
193+ | ^vulntotal/datasources/gitlab\.py$
194+ | ^vulntotal/datasources/oss_index\.py$
195+ | ^vulntotal/datasources/osv\.py$
196+ | ^vulntotal/datasources/snyk\.py$
197+ | ^vulntotal/datasources/vulnerablecode\.py$
198+
199+ # vulntotal core not yet typed
200+ | ^vulntotal/validator\.py$
201+ | ^vulntotal/vulntotal_cli\.py$
202+
203+ # Django settings not yet typed
204+ | ^vulnerablecode/settings\.py$
205+ )
0 commit comments