prospector 1.16.1__py3-none-any.whl → 1.17.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1347,3 +1347,19 @@ combinations:
1347
1347
  - ruff: D419
1348
1348
  - pycodestyle: D419
1349
1349
  - pep257: D419
1350
+
1351
+ - # Use lazy % formatting in logging functions
1352
+ - pylint: logging-fstring-interpolation
1353
+ - ruff: G004
1354
+
1355
+ - # No name '{}' in module '{}'
1356
+ - pylint: no-name-in-module
1357
+ - mypy: attr-defined
1358
+
1359
+ - # Module '{}' has no '{}' member
1360
+ - pylint: no-member
1361
+ - mypy: attr-defined
1362
+
1363
+ - # Missing return type annotation for public function `{}` [Fix applicability: unsafe]
1364
+ - ruff: ANN201
1365
+ - mypy: no-untyped-def
@@ -178,11 +178,11 @@ def build_command_line_source(
178
178
  },
179
179
  "messages_only": {
180
180
  "flags": ["-M", "--messages-only"],
181
- "help": "Only output message information (don't output summary" " information about the checks)",
181
+ "help": "Only output message information (don't output summary information about the checks)",
182
182
  },
183
183
  "summary_only": {
184
184
  "flags": ["-S", "--summary-only"],
185
- "help": "Only output summary information about the checks (don't" "output message information)",
185
+ "help": "Only output summary information about the checks (don't output message information)",
186
186
  },
187
187
  "output_format": {
188
188
  "flags": ["-o", "--output-format"],
@@ -1,4 +1,4 @@
1
- from . import emacs, grouped, json, pylint, pylint_parseable, text, vscode, xunit, yaml
1
+ from . import emacs, gitlab, grouped, json, pylint, pylint_parseable, text, vscode, xunit, yaml
2
2
  from .base import Formatter
3
3
 
4
4
  __all__ = ("FORMATTERS", "Formatter")
@@ -7,6 +7,7 @@ __all__ = ("FORMATTERS", "Formatter")
7
7
  FORMATTERS: dict[str, type[Formatter]] = {
8
8
  "json": json.JsonFormatter,
9
9
  "text": text.TextFormatter,
10
+ "gitlab": gitlab.GitlabFormatter,
10
11
  "grouped": grouped.GroupedFormatter,
11
12
  "emacs": emacs.EmacsFormatter,
12
13
  "yaml": yaml.YamlFormatter,
@@ -0,0 +1,52 @@
1
+ import hashlib
2
+ import json
3
+ from typing import Any
4
+
5
+ from prospector.formatters.base import Formatter
6
+
7
+ __all__ = ("GitlabFormatter",)
8
+
9
+
10
+ class GitlabFormatter(Formatter):
11
+ """
12
+ This formatter outputs messages in the GitLab Code Quality report format.
13
+ https://docs.gitlab.com/ci/testing/code_quality/#code-quality-report-format
14
+ """
15
+
16
+ def render(self, summary: bool = True, messages: bool = True, profile: bool = False) -> str:
17
+ output: list[dict[str, Any]] = []
18
+ fingerprints = set()
19
+
20
+ if messages:
21
+ for message in sorted(self.messages):
22
+ # Make sure that we do not get a fingerprint that is already in use
23
+ # by adding in the previously generated one.
24
+ message_hash = ":".join([str(message.location.path), str(message.location.line), message.code])
25
+ sha256_hash = hashlib.sha256(message_hash.encode())
26
+ MAX_ITERATIONS = 1000
27
+ iteration_count = 0
28
+ while sha256_hash.hexdigest() in fingerprints:
29
+ # In cases of hash collisions, new hashes will be generated.
30
+ sha256_hash.update(sha256_hash.hexdigest().encode())
31
+ iteration_count += 1
32
+ if iteration_count > MAX_ITERATIONS:
33
+ raise RuntimeError("Maximum iteration limit reached while resolving hash collisions.")
34
+
35
+ fingerprint = sha256_hash.hexdigest()
36
+ fingerprints.add(fingerprint)
37
+
38
+ output.append(
39
+ {
40
+ "type": "issue",
41
+ "check_name": message.code,
42
+ "description": f"{message.source}[{message.code}]: {message.message.strip()}",
43
+ "severity": "major",
44
+ "location": {
45
+ "path": str(self._make_path(message.location)),
46
+ "lines": {"begin": message.location.line, "end": message.location.line_end},
47
+ },
48
+ "fingerprint": fingerprint,
49
+ }
50
+ )
51
+
52
+ return json.dumps(output, indent=2)
@@ -25,9 +25,7 @@ class ProspectorProfile:
25
25
  self.output_format = profile_dict.get("output-format")
26
26
  self.output_target = profile_dict.get("output-target")
27
27
  self.autodetect = profile_dict.get("autodetect", True)
28
- self.uses = [
29
- uses for uses in _ensure_list(profile_dict.get("uses", [])) if uses in ("django", "celery")
30
- ]
28
+ self.uses = [uses for uses in _ensure_list(profile_dict.get("uses", [])) if uses in ("django", "celery")]
31
29
  self.max_line_length = profile_dict.get("max-line-length")
32
30
 
33
31
  # informational shorthands
@@ -40,5 +40,5 @@ pydocstyle:
40
40
  - D000
41
41
 
42
42
  mypy:
43
- options:
43
+ options:
44
44
  strict: true
prospector/run.py CHANGED
@@ -104,10 +104,10 @@ class Prospector:
104
104
  messages.append(Message(toolname, "hidden-output", loc, message=msg))
105
105
 
106
106
  except FatalProspectorException as fatal:
107
- sys.stderr.write(str(fatal))
107
+ sys.stderr.write(f"FatalProspectorException: {str(fatal)}")
108
108
  sys.exit(2)
109
109
 
110
- except Exception as ex: # pylint:disable=broad-except
110
+ except (SystemExit, Exception) as ex: # pylint:disable=broad-except
111
111
  if self.config.die_on_tool_error:
112
112
  raise FatalProspectorException(f"Tool {toolname} failed to run.") from ex
113
113
  loc = Location(self.config.workdir, None, None, None, None)
@@ -198,7 +198,7 @@ def main() -> None:
198
198
 
199
199
  paths = config.paths
200
200
  if len(paths) > 1 and not all(os.path.isfile(path) for path in paths):
201
- sys.stderr.write("\nIn multi-path mode, all inputs must be files, not directories.\n\n")
201
+ sys.stderr.write(f"\nIn multi-path mode, all inputs must be files, not directories, for {paths}.\n\n")
202
202
  get_parser().print_usage()
203
203
  sys.exit(2)
204
204
 
@@ -125,11 +125,46 @@ class MypyTool(ToolBase):
125
125
  return self._run_std(args)
126
126
 
127
127
  def _run_std(self, args: list[str]) -> list[Message]:
128
- sources, options = mypy.main.process_options(args, fscache=self.fscache)
128
+ messages = []
129
+ try:
130
+ sources, options = mypy.main.process_options(args, fscache=self.fscache)
131
+ except (SystemExit, Exception) as e:
132
+ message = "The error(s) will be displayed before the messages" if isinstance(e, SystemExit) else str(e)
133
+ messages.append(
134
+ Message(
135
+ "mypy",
136
+ code="fatal-options-error",
137
+ message=message,
138
+ location=Location(
139
+ path="",
140
+ module=None,
141
+ function=None,
142
+ line=0,
143
+ character=0,
144
+ ),
145
+ )
146
+ )
147
+ return messages
129
148
  options.output = "json"
130
- res = mypy.build.build(sources, options, fscache=self.fscache)
149
+ try:
150
+ res = mypy.build.build(sources, options, fscache=self.fscache)
151
+ except Exception as e:
152
+ messages.append(
153
+ Message(
154
+ "mypy",
155
+ code="fatal-build-error",
156
+ message=str(e),
157
+ location=Location(
158
+ path="",
159
+ module=None,
160
+ function=None,
161
+ line=0,
162
+ character=0,
163
+ ),
164
+ )
165
+ )
166
+ return messages
131
167
 
132
- messages = []
133
168
  for mypy_json in res.errors:
134
169
  mypy_message = json.loads(mypy_json)
135
170
  message = f"{mypy_message['message']}."
@@ -63,7 +63,7 @@ class PyrightTool(ToolBase):
63
63
  if option_key not in VALID_OPTIONS:
64
64
  url = "https://github.com/PyCQA/prospector/blob/master/prospector/tools/pyright/__init__.py"
65
65
  raise BadToolConfig(
66
- "pyright", f"Option {option_key} is not valid. " f"See the list of possible options: {url}"
66
+ "pyright", f"Option {option_key} is not valid. See the list of possible options: {url}"
67
67
  )
68
68
 
69
69
  level = options.get("level", None)
@@ -1,43 +1,41 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.3
2
2
  Name: prospector
3
- Version: 1.16.1
3
+ Version: 1.17.2
4
4
  Summary: Prospector is a tool to analyse Python code by aggregating the result of other tools.
5
- Home-page: http://prospector.readthedocs.io
6
5
  License: GPLv2+
7
- Keywords: pylint,prospector,static code analysis
6
+ Keywords: prospector,pylint,static code analysis
8
7
  Author: Carl Crowder
9
8
  Author-email: git@carlcrowder.com
10
9
  Maintainer: Carl Crowder
11
10
  Maintainer-email: git@carlcrowder.com
12
- Requires-Python: >=3.9,<4.0
11
+ Requires-Python: >=3.9
13
12
  Classifier: Development Status :: 5 - Production/Stable
14
13
  Classifier: Environment :: Console
15
14
  Classifier: Intended Audience :: Developers
16
15
  Classifier: License :: OSI Approved :: GNU General Public License v2 or later (GPLv2+)
17
- Classifier: License :: Other/Proprietary License
18
16
  Classifier: Operating System :: Unix
19
- Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3 :: Only
20
18
  Classifier: Programming Language :: Python :: 3.9
21
19
  Classifier: Programming Language :: Python :: 3.10
22
- Classifier: Programming Language :: Python :: 3.10
23
20
  Classifier: Programming Language :: Python :: 3.11
24
21
  Classifier: Programming Language :: Python :: 3.12
25
22
  Classifier: Programming Language :: Python :: 3.13
26
- Classifier: Programming Language :: Python :: 3.9
27
23
  Classifier: Topic :: Software Development :: Quality Assurance
28
- Provides-Extra: with_bandit
29
- Provides-Extra: with_everything
30
- Provides-Extra: with_mypy
31
- Provides-Extra: with_pyright
32
- Provides-Extra: with_pyroma
33
- Provides-Extra: with_ruff
34
- Provides-Extra: with_vulture
24
+ Provides-Extra: with-bandit
25
+ Provides-Extra: with-everything
26
+ Provides-Extra: with-mypy
27
+ Provides-Extra: with-pyright
28
+ Provides-Extra: with-pyroma
29
+ Provides-Extra: with-ruff
30
+ Provides-Extra: with-vulture
35
31
  Requires-Dist: GitPython (>=3.1.27,<4.0.0)
36
32
  Requires-Dist: PyYAML
37
- Requires-Dist: bandit (>=1.5.1); extra == "with_bandit" or extra == "with_everything"
33
+ Requires-Dist: bandit ; extra == "with-bandit"
34
+ Requires-Dist: bandit ; extra == "with-everything"
38
35
  Requires-Dist: dodgy (>=0.2.1,<0.3.0)
39
36
  Requires-Dist: mccabe (>=0.7.0,<0.8.0)
40
- Requires-Dist: mypy (>=0.600); extra == "with_mypy" or extra == "with_everything"
37
+ Requires-Dist: mypy ; extra == "with-everything"
38
+ Requires-Dist: mypy ; extra == "with-mypy"
41
39
  Requires-Dist: packaging
42
40
  Requires-Dist: pep8-naming (>=0.3.3,<=0.10.0)
43
41
  Requires-Dist: pycodestyle (>=2.9.0)
@@ -46,14 +44,20 @@ Requires-Dist: pyflakes (>=2.2.0)
46
44
  Requires-Dist: pylint (>=3.0)
47
45
  Requires-Dist: pylint-celery (==0.3)
48
46
  Requires-Dist: pylint-django (>=2.6.1)
49
- Requires-Dist: pyright (>=1.1.3); extra == "with_pyright" or extra == "with_everything"
50
- Requires-Dist: pyroma (>=2.4); extra == "with_pyroma" or extra == "with_everything"
47
+ Requires-Dist: pyright ; extra == "with-everything"
48
+ Requires-Dist: pyright ; extra == "with-pyright"
49
+ Requires-Dist: pyroma ; extra == "with-everything"
50
+ Requires-Dist: pyroma ; extra == "with-pyroma"
51
51
  Requires-Dist: requirements-detector (>=1.3.2)
52
- Requires-Dist: ruff; extra == "with_ruff" or extra == "with_everything"
52
+ Requires-Dist: ruff ; extra == "with-everything"
53
+ Requires-Dist: ruff ; extra == "with-ruff"
53
54
  Requires-Dist: setoptconf-tmp (>=0.3.1,<0.4.0)
54
55
  Requires-Dist: toml (>=0.10.2,<0.11.0)
55
- Requires-Dist: vulture (>=1.5); extra == "with_vulture" or extra == "with_everything"
56
- Project-URL: Repository, https://github.com/PyCQA/prospector
56
+ Requires-Dist: vulture ; extra == "with-everything"
57
+ Requires-Dist: vulture ; extra == "with-vulture"
58
+ Project-URL: Bug Tracker, https://github.com/prospector-dev/prospector/issues
59
+ Project-URL: Homepage, http://prospector.readthedocs.io
60
+ Project-URL: Repository, https://github.com/prospector-dev/prospector
57
61
  Description-Content-Type: text/x-rst
58
62
 
59
63
  prospector
@@ -205,22 +209,22 @@ repository, you can install `pre-commit <https://pre-commit.com/>`_ and add the
205
209
  text to your repositories' ``.pre-commit-config.yaml``::
206
210
 
207
211
  repos:
208
- - repo: https://github.com/PyCQA/prospector
209
- rev: 1.10.0 # The version of Prospector to use, if not 'master' for latest
210
- hooks:
211
- - id: prospector
212
+ - repo: https://github.com/PyCQA/prospector
213
+ rev: v1.16.1 # The version of Prospector to use, if not 'master' for latest
214
+ hooks:
215
+ - id: prospector
212
216
 
213
217
  This only installs base prospector - if you also use optional tools, for example bandit and/or mypy, then you can add
214
218
  them to the hook configuration like so::
215
219
 
216
220
  repos:
217
- - repo: https://github.com/PyCQA/prospector
218
- rev: 1.10.0
219
- hooks:
220
- - id: prospector
221
- additional_dependencies:
221
+ - repo: https://github.com/PyCQA/prospector
222
+ rev: v1.16.1
223
+ hooks:
224
+ - id: prospector
225
+ additional_dependencies:
222
226
  - ".[with_mypy,with_bandit]"
223
- - args: [
227
+ args: [
224
228
  '--with-tool=mypy',
225
229
  '--with-tool=bandit',
226
230
  ]
@@ -246,17 +250,17 @@ For prospector options which affect display only - those which are not configura
246
250
  added as command line arguments to the hook. For example::
247
251
 
248
252
  repos:
249
- - repo: https://github.com/PyCQA/prospector
250
- rev: 1.10.0
251
- hooks:
252
- - id: prospector
253
- additional_dependencies:
254
- - ".[with_mypy,with_bandit]"
255
- args:
256
- - --with-tool=mypy
257
- - --with-tool=bandit
258
- - --summary-only
259
- - --zero-exit
253
+ - repo: https://github.com/PyCQA/prospector
254
+ rev: v1.16.1
255
+ hooks:
256
+ - id: prospector
257
+ additional_dependencies:
258
+ - ".[with_mypy,with_bandit]"
259
+ args:
260
+ - --with-tool=mypy
261
+ - --with-tool=bandit
262
+ - --summary-only
263
+ - --zero-exit
260
264
 
261
265
 
262
266
 
@@ -2,18 +2,19 @@ prospector/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  prospector/__main__.py,sha256=-gdHYZxwq_P8er7HuZEBImY0pwaFq8uIa78dQdJsTTQ,71
3
3
  prospector/autodetect.py,sha256=sUcayzZjLGESxoPDN_t4_amOAnh9bwKX-9ANBlprP8k,3103
4
4
  prospector/blender.py,sha256=ldQSkfoEKv6pd72B9YCYdapeGUzgfhGzieAu7To3l6Y,4926
5
- prospector/blender_combinations.yaml,sha256=KKeBXgt3jeOi26poNiZSqBtFmC50ADijnAz-X2nH25Q,32462
5
+ prospector/blender_combinations.yaml,sha256=1_2R_RpPuZXbExkUe3UZ55c02EfvO36vCfEp_WCSoFk,32889
6
6
  prospector/compat.py,sha256=p_2BOebzUcKbUAd7mW8rn6tIc10R96gJuZS71QI0XY4,360
7
7
  prospector/config/__init__.py,sha256=4nYshBncKUvZrwNKmp2bQ2mQ8uRS7GU20xPbiC-nJ9g,14793
8
- prospector/config/configuration.py,sha256=fPSmyBPCOb-JvkOh2QMe0PfTdIHsy6V5plagI0d_vaU,14039
8
+ prospector/config/configuration.py,sha256=g56TfwgOtEr_7O9P2S6hYo2edYiH3sTn8MVkKssqSn8,14034
9
9
  prospector/config/datatype.py,sha256=u2i3YxtFKXkeGKzrYnc8koI-Xq-Owl74e_XveNhFY8Y,658
10
10
  prospector/encoding.py,sha256=67sbqzcUoQqi3PRm_P3GNGwcL1N56RZ3T_YHmSrICEE,1549
11
11
  prospector/exceptions.py,sha256=3P58RNF7j1n4CUIZ8VM5BVhB4Q6UtVs-dQRG8TRCZ7o,1248
12
12
  prospector/finder.py,sha256=pmGuxf9Jq5SX1ANHHdnFKLDfFwTk4fKakxnFHuwzpvs,4775
13
- prospector/formatters/__init__.py,sha256=Ko96rZA7C0vjWdsU80DHdHoCk8PNjfDEQI-AACs3_CI,552
13
+ prospector/formatters/__init__.py,sha256=2Teu-eBmM9MJ-UScSKlpJseO7ERIF4Rwdja79I4Z8lM,598
14
14
  prospector/formatters/base.py,sha256=f3ku_wbFDk_woCPS15FvLDFQBSw8Bxf9Wytuz8vdplc,1883
15
15
  prospector/formatters/base_summary.py,sha256=mLV2Tw68vFAcljeYT9xH87EXoUXiQgOW5mrWRIeKLOU,3353
16
16
  prospector/formatters/emacs.py,sha256=lDOxDJSYYLV1gzevO_z7NlM4AUH6JC9EwoEZu6knnqs,724
17
+ prospector/formatters/gitlab.py,sha256=fQySIoTK5c8NthWR-XsurxPYcyykOx9TAyoNrmjdpFY,2187
17
18
  prospector/formatters/grouped.py,sha256=-vD8I3unoO0FBISoUPHZPCa0p-btWMvt1D_UxzmcGDA,1357
18
19
  prospector/formatters/json.py,sha256=_DbZ_Eb0fmZf6qZMXCU__QRXv_awkBisZ-jvGfOr4aw,1000
19
20
  prospector/formatters/pylint.py,sha256=Tq_x_9YoIUR7XDat2eknL7CQIMqTU6rViFoQ4GeEIQg,3330
@@ -28,7 +29,7 @@ prospector/pathutils.py,sha256=D43-p3eBS8oM_XIdlrAfUvaFIewEf7zkaM84cjY5-mE,1592
28
29
  prospector/postfilter.py,sha256=BpmR1g1ZlgQB92_Uk6hRyYoIBUcivvcU8RGLUHXDdcU,2695
29
30
  prospector/profiles/__init__.py,sha256=q9zPLVEwo7qoouYFrmENsmByFrKKkr27Dd_Wo9btTJI,683
30
31
  prospector/profiles/exceptions.py,sha256=MDky4KXVwfOlW1yCbyp8Y07D8Kfz76jL3z-8T3WQIFI,1062
31
- prospector/profiles/profile.py,sha256=iX9krQ-Pp0Zr2b0udEAvIo8MH0LrEMmq1GgrIAufIaY,17914
32
+ prospector/profiles/profile.py,sha256=3C66fKbiMi3JPlHw2R7FQorofj8ho-nDsNrE6g4C3sA,17892
32
33
  prospector/profiles/profiles/default.yaml,sha256=tMy-G49ZdV7gkfBoN2ngtIWha3n7JVr_rEeNkLzpKsk,100
33
34
  prospector/profiles/profiles/doc_warnings.yaml,sha256=K_cBhUeKnSvOCwgwXE2tMZ-Fr5cJovC1XSholWglzN4,48
34
35
  prospector/profiles/profiles/flake8.yaml,sha256=wC-TJYuVobo9zPm4Yc_Ocd4Wwfemx0IufmAnfiuKkHk,156
@@ -42,10 +43,10 @@ prospector/profiles/profiles/strictness_high.yaml,sha256=o-StUkt9IWs3p1Empt2LTow
42
43
  prospector/profiles/profiles/strictness_low.yaml,sha256=QONar05NOI_cidCoRASmDFzd7CSk_JC-KVjwDzcPU_8,1066
43
44
  prospector/profiles/profiles/strictness_medium.yaml,sha256=ycM66O_oX2nAmq36isxR1pBX4T6ykEIWIo8bJZuS6vg,1887
44
45
  prospector/profiles/profiles/strictness_none.yaml,sha256=_Yf-eEl4cVXw6ePqx3V4mvG80JksH9ggkUqbuAdR5iI,151
45
- prospector/profiles/profiles/strictness_veryhigh.yaml,sha256=whQFEUtkySSEIriEwYOjSr-0SxICOWalNA9Y7FmXopQ,628
46
+ prospector/profiles/profiles/strictness_veryhigh.yaml,sha256=rDULzetAEgqDXoswYnib79sOxHz91gTCoWGaa2Mn7ts,629
46
47
  prospector/profiles/profiles/strictness_verylow.yaml,sha256=YxZowcBtA3tAaHJGz2htTdAJ-AXmlHB-o4zEYKPRfJg,833
47
48
  prospector/profiles/profiles/test_warnings.yaml,sha256=arUcV9MnqiZJEHURH9bVRSYDhYUegNc-ltFYe_yQW44,23
48
- prospector/run.py,sha256=Sjh28jI-Bergzr3rxZp7QzRHP9Ue0SPdfcB0TEkMSDQ,8631
49
+ prospector/run.py,sha256=DN1YKXwBUIczeX3xvX4vWjo6XLGZtpdiq3DQJmWbvRc,8690
49
50
  prospector/suppression.py,sha256=TbJCl2i5CyEszkrOMMflSSKJUtZkysy0AKv8MqPuy1g,7671
50
51
  prospector/tools/__init__.py,sha256=9tDmxL_kn5jmAACeSi1jtSvT-9tI468Ccn1Up2wUFi0,2956
51
52
  prospector/tools/bandit/__init__.py,sha256=iU39U28_YP5QUm8sgU21Ps96czIIl6tSV7qtCxbFvms,3035
@@ -53,7 +54,7 @@ prospector/tools/base.py,sha256=s9reA-prAqNGMf1FaP-_73sptpgt6NXGIwrmKHJu3-I,2174
53
54
  prospector/tools/dodgy/__init__.py,sha256=howLCjFEheW_6ZoyQ15gLbiNNNUr0Pm2qNpLg3kleFY,1648
54
55
  prospector/tools/exceptions.py,sha256=Q-u4n6YzZuoMu17XkeKac1o1gBY36JK4MnvWaYrVYL0,170
55
56
  prospector/tools/mccabe/__init__.py,sha256=80-aYPqKCREeBqxiIUgsDvxc_GqYxHb5R0JduKHPRaE,3277
56
- prospector/tools/mypy/__init__.py,sha256=JxczQoHYdUNFLunhvtMSs7MkW7sL92pOoqSY_WI2wVs,5367
57
+ prospector/tools/mypy/__init__.py,sha256=hsmoyf8d4Os1F7CBVn3FuJu2_Ma9chmCl0WPeGVGTeI,6524
57
58
  prospector/tools/profile_validator/__init__.py,sha256=CrQeWfbnKav3xlcY2A14Ld_v-9KE5Yz5HJNtTmrST8c,8317
58
59
  prospector/tools/pycodestyle/__init__.py,sha256=uMpUxqsPsryEsfyfGxpLzwoWUjIvfxIQke4Xvkfbi9A,5970
59
60
  prospector/tools/pydocstyle/__init__.py,sha256=WB-AT-c1FeUUUWATUzJbBLeREtu-lxT03bChh4nablo,2776
@@ -61,13 +62,13 @@ prospector/tools/pyflakes/__init__.py,sha256=53NQFODU416KO991NxW14gChjagbSAhhfEr
61
62
  prospector/tools/pylint/__init__.py,sha256=MwvKY8ESvlD3FXa6GgZ5JB0ALzWRV60LVbX2RxsrzLM,11540
62
63
  prospector/tools/pylint/collector.py,sha256=7FHgO6OOLGD15_U4DERiXyEbSFnMjGUBeCwdmUlhO8I,1559
63
64
  prospector/tools/pylint/linter.py,sha256=YQ9SOna4WjbbauqSgUio6Ss8zN08PCr3aKdK9rMi7Ag,2143
64
- prospector/tools/pyright/__init__.py,sha256=USqauZofh-8ZSKGwXRXoaM2ItzfSFo2nGwPtLGEWICU,3346
65
+ prospector/tools/pyright/__init__.py,sha256=07KpAU_Tu11E60yJUYrTzU4GiSnE9EsKTjsMvxORhqc,3342
65
66
  prospector/tools/pyroma/__init__.py,sha256=GPQRJZfbs_SI0RBTyySz-4SIuM__YoLfXAm7uYVXAS8,3151
66
67
  prospector/tools/ruff/__init__.py,sha256=vQLBI7PvrnKIUVbi3XKSES6mH5UUz99X2QNBk3QAIAI,3932
67
68
  prospector/tools/utils.py,sha256=cRCogsMCH0lPBhdujPsIY0ovNAL6TAxBMohZRES02-4,1770
68
69
  prospector/tools/vulture/__init__.py,sha256=eaTh4X5onNlBMuz1x0rmcRn7x5XDVDgqftjIEd47eWI,3583
69
- prospector-1.16.1.dist-info/entry_points.txt,sha256=SxvCGt8MJTEZefHAvwnUc6jDetgCaaYY1Zpifuk8tqU,50
70
- prospector-1.16.1.dist-info/LICENSE,sha256=WoTRadDy8VbcIKoVzl5Q1QipuD_cexAf3ul4MaVLttc,18044
71
- prospector-1.16.1.dist-info/WHEEL,sha256=gSF7fibx4crkLz_A-IKR6kcuq0jJ64KNCkG8_bcaEao,88
72
- prospector-1.16.1.dist-info/METADATA,sha256=krNSyt_bIcBO89OiBaaNAUSMfoR6-bx_5f6G5xny36g,9926
73
- prospector-1.16.1.dist-info/RECORD,,
70
+ prospector-1.17.2.dist-info/LICENSE,sha256=WoTRadDy8VbcIKoVzl5Q1QipuD_cexAf3ul4MaVLttc,18044
71
+ prospector-1.17.2.dist-info/METADATA,sha256=JIK6t4o6Hl60zjYAMDP5Ewge5lYTi1Gjr3SP6mTZhr8,9923
72
+ prospector-1.17.2.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
73
+ prospector-1.17.2.dist-info/entry_points.txt,sha256=SxvCGt8MJTEZefHAvwnUc6jDetgCaaYY1Zpifuk8tqU,50
74
+ prospector-1.17.2.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 1.2.0
2
+ Generator: poetry-core 2.1.3
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any