amati 0.3.6__tar.gz → 0.3.8__tar.gz

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.
Files changed (98) hide show
  1. {amati-0.3.6 → amati-0.3.8}/.github/workflows/checks.yaml +2 -2
  2. {amati-0.3.6 → amati-0.3.8}/.github/workflows/codeql.yml +2 -2
  3. {amati-0.3.6 → amati-0.3.8}/.github/workflows/coverage.yaml +1 -1
  4. {amati-0.3.6 → amati-0.3.8}/.github/workflows/data-refresh.yaml +1 -1
  5. {amati-0.3.6 → amati-0.3.8}/.github/workflows/publish.yaml +1 -1
  6. {amati-0.3.6 → amati-0.3.8}/.github/workflows/scorecards.yml +2 -2
  7. {amati-0.3.6 → amati-0.3.8}/.github/workflows/tag-and-create-release.yaml +1 -1
  8. {amati-0.3.6 → amati-0.3.8}/.pre-commit-config.yaml +1 -1
  9. {amati-0.3.6 → amati-0.3.8}/Dockerfile +1 -1
  10. {amati-0.3.6 → amati-0.3.8}/PKG-INFO +1 -1
  11. {amati-0.3.6 → amati-0.3.8}/amati/_data/files/media-types.json +1 -0
  12. {amati-0.3.6 → amati-0.3.8}/pyproject.toml +1 -1
  13. {amati-0.3.6 → amati-0.3.8}/uv.lock +29 -30
  14. {amati-0.3.6 → amati-0.3.8}/.dockerignore +0 -0
  15. {amati-0.3.6 → amati-0.3.8}/.github/actions/setup/action.yaml +0 -0
  16. {amati-0.3.6 → amati-0.3.8}/.github/dependabot.yml +0 -0
  17. {amati-0.3.6 → amati-0.3.8}/.github/workflows/dependency-review.yml +0 -0
  18. {amati-0.3.6 → amati-0.3.8}/.gitignore +0 -0
  19. {amati-0.3.6 → amati-0.3.8}/.python-version +0 -0
  20. {amati-0.3.6 → amati-0.3.8}/LICENSE +0 -0
  21. {amati-0.3.6 → amati-0.3.8}/README.md +0 -0
  22. {amati-0.3.6 → amati-0.3.8}/SECURITY.md +0 -0
  23. {amati-0.3.6 → amati-0.3.8}/TEMPLATE.html +0 -0
  24. {amati-0.3.6 → amati-0.3.8}/amati/__init__.py +0 -0
  25. {amati-0.3.6 → amati-0.3.8}/amati/_data/files/http-status-codes.json +0 -0
  26. {amati-0.3.6 → amati-0.3.8}/amati/_data/files/iso9110.json +0 -0
  27. {amati-0.3.6 → amati-0.3.8}/amati/_data/files/schemes.json +0 -0
  28. {amati-0.3.6 → amati-0.3.8}/amati/_data/files/spdx-licences.json +0 -0
  29. {amati-0.3.6 → amati-0.3.8}/amati/_data/files/tlds.json +0 -0
  30. {amati-0.3.6 → amati-0.3.8}/amati/_data/http_status_code.py +0 -0
  31. {amati-0.3.6 → amati-0.3.8}/amati/_data/iso9110.py +0 -0
  32. {amati-0.3.6 → amati-0.3.8}/amati/_data/media_types.py +0 -0
  33. {amati-0.3.6 → amati-0.3.8}/amati/_data/refresh.py +0 -0
  34. {amati-0.3.6 → amati-0.3.8}/amati/_data/schemes.py +0 -0
  35. {amati-0.3.6 → amati-0.3.8}/amati/_data/spdx_licences.py +0 -0
  36. {amati-0.3.6 → amati-0.3.8}/amati/_data/tlds.py +0 -0
  37. {amati-0.3.6 → amati-0.3.8}/amati/_error_handler.py +0 -0
  38. {amati-0.3.6 → amati-0.3.8}/amati/_logging.py +0 -0
  39. {amati-0.3.6 → amati-0.3.8}/amati/_resolve_forward_references.py +0 -0
  40. {amati-0.3.6 → amati-0.3.8}/amati/amati.py +0 -0
  41. {amati-0.3.6 → amati-0.3.8}/amati/exceptions.py +0 -0
  42. {amati-0.3.6 → amati-0.3.8}/amati/fields/__init__.py +0 -0
  43. {amati-0.3.6 → amati-0.3.8}/amati/fields/_custom_types.py +0 -0
  44. {amati-0.3.6 → amati-0.3.8}/amati/fields/commonmark.py +0 -0
  45. {amati-0.3.6 → amati-0.3.8}/amati/fields/email.py +0 -0
  46. {amati-0.3.6 → amati-0.3.8}/amati/fields/http_status_codes.py +0 -0
  47. {amati-0.3.6 → amati-0.3.8}/amati/fields/iso9110.py +0 -0
  48. {amati-0.3.6 → amati-0.3.8}/amati/fields/json.py +0 -0
  49. {amati-0.3.6 → amati-0.3.8}/amati/fields/media.py +0 -0
  50. {amati-0.3.6 → amati-0.3.8}/amati/fields/oas.py +0 -0
  51. {amati-0.3.6 → amati-0.3.8}/amati/fields/spdx_licences.py +0 -0
  52. {amati-0.3.6 → amati-0.3.8}/amati/fields/uri.py +0 -0
  53. {amati-0.3.6 → amati-0.3.8}/amati/file_handler.py +0 -0
  54. {amati-0.3.6 → amati-0.3.8}/amati/grammars/oas.py +0 -0
  55. {amati-0.3.6 → amati-0.3.8}/amati/grammars/rfc6901.py +0 -0
  56. {amati-0.3.6 → amati-0.3.8}/amati/grammars/rfc7159.py +0 -0
  57. {amati-0.3.6 → amati-0.3.8}/amati/model_validators.py +0 -0
  58. {amati-0.3.6 → amati-0.3.8}/amati/py.typed +0 -0
  59. {amati-0.3.6 → amati-0.3.8}/amati/validators/__init__.py +0 -0
  60. {amati-0.3.6 → amati-0.3.8}/amati/validators/generic.py +0 -0
  61. {amati-0.3.6 → amati-0.3.8}/amati/validators/oas304.py +0 -0
  62. {amati-0.3.6 → amati-0.3.8}/amati/validators/oas311.py +0 -0
  63. {amati-0.3.6 → amati-0.3.8}/bin/checks.sh +0 -0
  64. {amati-0.3.6 → amati-0.3.8}/bin/startup.sh +0 -0
  65. {amati-0.3.6 → amati-0.3.8}/bin/upgrade-python.sh +0 -0
  66. {amati-0.3.6 → amati-0.3.8}/bin/uv-upgrade-from-main.sh +0 -0
  67. {amati-0.3.6 → amati-0.3.8}/scripts/setup_test_specs.py +0 -0
  68. {amati-0.3.6 → amati-0.3.8}/tests/__init__.py +0 -0
  69. {amati-0.3.6 → amati-0.3.8}/tests/data/.amati.tests.yaml +0 -0
  70. {amati-0.3.6 → amati-0.3.8}/tests/data/DigitalOcean-public.v2.errors.json +0 -0
  71. {amati-0.3.6 → amati-0.3.8}/tests/data/api.github.com.yaml.errors.json +0 -0
  72. {amati-0.3.6 → amati-0.3.8}/tests/data/discourse.yml.errors.json +0 -0
  73. {amati-0.3.6 → amati-0.3.8}/tests/data/invalid-openapi.yaml +0 -0
  74. {amati-0.3.6 → amati-0.3.8}/tests/data/next-api.github.com.yaml.errors.json +0 -0
  75. {amati-0.3.6 → amati-0.3.8}/tests/data/openapi.yaml +0 -0
  76. {amati-0.3.6 → amati-0.3.8}/tests/data/openapi.yaml.gz +0 -0
  77. {amati-0.3.6 → amati-0.3.8}/tests/data/redocly.openapi.yaml.errors.json +0 -0
  78. {amati-0.3.6 → amati-0.3.8}/tests/fields/__init__.py +0 -0
  79. {amati-0.3.6 → amati-0.3.8}/tests/fields/test_email.py +0 -0
  80. {amati-0.3.6 → amati-0.3.8}/tests/fields/test_http_status_codes.py +0 -0
  81. {amati-0.3.6 → amati-0.3.8}/tests/fields/test_iso9110.py +0 -0
  82. {amati-0.3.6 → amati-0.3.8}/tests/fields/test_media.py +0 -0
  83. {amati-0.3.6 → amati-0.3.8}/tests/fields/test_oas.py +0 -0
  84. {amati-0.3.6 → amati-0.3.8}/tests/fields/test_spdx_licences.py +0 -0
  85. {amati-0.3.6 → amati-0.3.8}/tests/fields/test_uri.py +0 -0
  86. {amati-0.3.6 → amati-0.3.8}/tests/helpers.py +0 -0
  87. {amati-0.3.6 → amati-0.3.8}/tests/model_validators/test_all_of.py +0 -0
  88. {amati-0.3.6 → amati-0.3.8}/tests/model_validators/test_at_least_one.py +0 -0
  89. {amati-0.3.6 → amati-0.3.8}/tests/model_validators/test_if_then.py +0 -0
  90. {amati-0.3.6 → amati-0.3.8}/tests/model_validators/test_only_one.py +0 -0
  91. {amati-0.3.6 → amati-0.3.8}/tests/test_amati.py +0 -0
  92. {amati-0.3.6 → amati-0.3.8}/tests/test_external_specs.py +0 -0
  93. {amati-0.3.6 → amati-0.3.8}/tests/test_logging.py +0 -0
  94. {amati-0.3.6 → amati-0.3.8}/tests/validators/__init__.py +0 -0
  95. {amati-0.3.6 → amati-0.3.8}/tests/validators/test_generic.py +0 -0
  96. {amati-0.3.6 → amati-0.3.8}/tests/validators/test_licence_object.py +0 -0
  97. {amati-0.3.6 → amati-0.3.8}/tests/validators/test_security_scheme_object.py +0 -0
  98. {amati-0.3.6 → amati-0.3.8}/tests/validators/test_server_variable_object.py +0 -0
@@ -77,14 +77,14 @@ jobs:
77
77
  - name: Coverage comment
78
78
  if: steps.check_changes.outputs.relevant == 'true'
79
79
  id: coverage_comment
80
- uses: py-cov-action/python-coverage-comment-action@587892b1198e5e472097653a87e8f1339a251f38 # v3
80
+ uses: py-cov-action/python-coverage-comment-action@ec68fae007b9843ccfc2bf877386378f67f5eb67 # v3
81
81
  with:
82
82
  GITHUB_TOKEN: ${{ secrets.BOT_COMMENT_TOKEN }}
83
83
  continue-on-error: true
84
84
 
85
85
  - name: Store Pull Request comment to be posted
86
86
  if: steps.check_changes.outputs.relevant == 'true'
87
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
87
+ uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
88
88
  with:
89
89
  name: python-coverage-comment-action
90
90
  path: python-coverage-comment-action.txt
@@ -73,7 +73,7 @@ jobs:
73
73
 
74
74
  # Initializes the CodeQL tools for scanning.
75
75
  - name: Initialize CodeQL
76
- uses: github/codeql-action/init@16140ae1a102900babc80a33c44059580f687047 # v4.30.9
76
+ uses: github/codeql-action/init@0499de31b99561a6d14a36a5f662c2a54f91beee # v4.31.2
77
77
  with:
78
78
  languages: ${{ matrix.language }}
79
79
  build-mode: ${{ matrix.build-mode }}
@@ -101,6 +101,6 @@ jobs:
101
101
  exit 1
102
102
 
103
103
  - name: Perform CodeQL Analysis
104
- uses: github/codeql-action/analyze@16140ae1a102900babc80a33c44059580f687047 # v4.30.9
104
+ uses: github/codeql-action/analyze@0499de31b99561a6d14a36a5f662c2a54f91beee # v4.31.2
105
105
  with:
106
106
  category: "/language:${{matrix.language}}"
@@ -24,7 +24,7 @@ jobs:
24
24
  egress-policy: audit
25
25
 
26
26
  - name: Post comment
27
- uses: py-cov-action/python-coverage-comment-action@587892b1198e5e472097653a87e8f1339a251f38 # v3
27
+ uses: py-cov-action/python-coverage-comment-action@ec68fae007b9843ccfc2bf877386378f67f5eb67 # v3
28
28
  with:
29
29
  GITHUB_TOKEN: ${{ secrets.BOT_COMMENT_TOKEN }}
30
30
  GITHUB_PR_RUN_ID: ${{ github.event.workflow_run.id }}
@@ -25,7 +25,7 @@ jobs:
25
25
  token: ${{ secrets.BOT_TOKEN }}
26
26
 
27
27
  - name: Set up uv
28
- uses: astral-sh/setup-uv@2ddd2b9cb38ad8efd50337e8ab201519a34c9f24 # v7.1.1
28
+ uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
29
29
  with:
30
30
  version: "latest"
31
31
 
@@ -24,7 +24,7 @@ jobs:
24
24
 
25
25
  - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
26
26
  - name: Install uv
27
- uses: astral-sh/setup-uv@2ddd2b9cb38ad8efd50337e8ab201519a34c9f24 # v7.1.1
27
+ uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
28
28
  - name: Set up Python
29
29
  uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
30
30
  with:
@@ -72,7 +72,7 @@ jobs:
72
72
  # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
73
73
  # format to the repository Actions tab.
74
74
  - name: "Upload artifact"
75
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
75
+ uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
76
76
  with:
77
77
  name: SARIF file
78
78
  path: results.sarif
@@ -80,6 +80,6 @@ jobs:
80
80
 
81
81
  # Upload the results to GitHub's code scanning dashboard.
82
82
  - name: "Upload to code-scanning"
83
- uses: github/codeql-action/upload-sarif@16140ae1a102900babc80a33c44059580f687047 # v4.30.9
83
+ uses: github/codeql-action/upload-sarif@0499de31b99561a6d14a36a5f662c2a54f91beee # v4.31.2
84
84
  with:
85
85
  sarif_file: results.sarif
@@ -34,7 +34,7 @@ jobs:
34
34
  fetch-depth: 0 # Fetch all history for proper tag creation
35
35
  token: ${{ secrets.BOT_TOKEN }}
36
36
  - name: Install uv
37
- uses: astral-sh/setup-uv@2ddd2b9cb38ad8efd50337e8ab201519a34c9f24 # v7.1.1
37
+ uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2
38
38
 
39
39
  - name: Current version
40
40
  id: current_version
@@ -1,7 +1,7 @@
1
1
  repos:
2
2
  - repo: https://github.com/astral-sh/ruff-pre-commit
3
3
  # Ruff version.
4
- rev: v0.14.2
4
+ rev: v0.14.3
5
5
  hooks:
6
6
  # Run the linter.
7
7
  - id: ruff-check
@@ -1,4 +1,4 @@
1
- FROM python:3.14.0-slim@sha256:5cfac249393fa6c7ebacaf0027a1e127026745e603908b226baa784c52b9d99b
1
+ FROM python:3.14.0-slim@sha256:4ed33101ee7ec299041cc41dd268dae17031184be94384b1ce7936dc4e5dead3
2
2
 
3
3
  ENV PYTHONUNBUFFERED=1
4
4
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: amati
3
- Version: 0.3.6
3
+ Version: 0.3.8
4
4
  Summary: Validates that a .yaml or .json file conforms to the OpenAPI Specifications 3.x.
5
5
  Project-URL: Homepage, https://github.com/gwyli/amati
6
6
  Project-URL: Issues, https://github.com/gwyli/amati/issues
@@ -872,6 +872,7 @@
872
872
  "vnd.ezpix-album",
873
873
  "vnd.ezpix-package",
874
874
  "vnd.f-secure.mobile",
875
+ "vnd.faf+yaml",
875
876
  "vnd.fastcopy-disk-image",
876
877
  "vnd.familysearch.gedcom+zip",
877
878
  "vnd.fdsn.mseed",
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "amati"
3
- version = "0.3.6"
3
+ version = "0.3.8"
4
4
  description = "Validates that a .yaml or .json file conforms to the OpenAPI Specifications 3.x."
5
5
  readme = "README.md"
6
6
  authors = [
@@ -13,7 +13,7 @@ wheels = [
13
13
 
14
14
  [[package]]
15
15
  name = "amati"
16
- version = "0.3.6"
16
+ version = "0.3.8"
17
17
  source = { editable = "." }
18
18
  dependencies = [
19
19
  { name = "abnf" },
@@ -212,15 +212,14 @@ wheels = [
212
212
 
213
213
  [[package]]
214
214
  name = "hypothesis"
215
- version = "6.142.3"
215
+ version = "6.145.1"
216
216
  source = { registry = "https://pypi.org/simple/" }
217
217
  dependencies = [
218
- { name = "attrs" },
219
218
  { name = "sortedcontainers" },
220
219
  ]
221
- sdist = { url = "https://files.pythonhosted.org/packages/e8/c9/03b5177dcd0224338c9ef63890bc52c0b0fbc86fba7c2c8a8523c0f02833/hypothesis-6.142.3.tar.gz", hash = "sha256:f1aaf83f6cc0c50f1b61e167974a8a67377dce13e0ea628b67a83f574ef30b85", size = 466042, upload-time = "2025-10-22T19:22:16.689Z" }
220
+ sdist = { url = "https://files.pythonhosted.org/packages/83/22/a3aba4f28826ddee2a1f5b0cb6fcc295012794139ea159990dc1e987cfd8/hypothesis-6.145.1.tar.gz", hash = "sha256:4e7610923de7e0c7d5c1bfa84114f2579e06f0e83a4ce9f073ca0c887d222b7e", size = 467743, upload-time = "2025-11-03T21:41:42.788Z" }
222
221
  wheels = [
223
- { url = "https://files.pythonhosted.org/packages/28/42/7422624c9079865a094e3e13014ecf21f07f07b190df09e1feaaaa687891/hypothesis-6.142.3-py3-none-any.whl", hash = "sha256:2fc19a2824c9bdc3f8e39d87861fbdf1d766982b20d54646a642bce82bcac179", size = 533464, upload-time = "2025-10-22T19:22:13.051Z" },
222
+ { url = "https://files.pythonhosted.org/packages/9c/e3/d4d9195ace4a407f665622c74635fd28901539b8ee375f31be08613eb94d/hypothesis-6.145.1-py3-none-any.whl", hash = "sha256:8b4c2d93adbacd235153a3ee075012fc870da341b32c3035838963b6241d6281", size = 534763, upload-time = "2025-11-03T21:41:38.695Z" },
224
223
  ]
225
224
 
226
225
  [[package]]
@@ -449,15 +448,15 @@ wheels = [
449
448
 
450
449
  [[package]]
451
450
  name = "pyright"
452
- version = "1.1.406"
451
+ version = "1.1.407"
453
452
  source = { registry = "https://pypi.org/simple/" }
454
453
  dependencies = [
455
454
  { name = "nodeenv" },
456
455
  { name = "typing-extensions" },
457
456
  ]
458
- sdist = { url = "https://files.pythonhosted.org/packages/f7/16/6b4fbdd1fef59a0292cbb99f790b44983e390321eccbc5921b4d161da5d1/pyright-1.1.406.tar.gz", hash = "sha256:c4872bc58c9643dac09e8a2e74d472c62036910b3bd37a32813989ef7576ea2c", size = 4113151, upload-time = "2025-10-02T01:04:45.488Z" }
457
+ sdist = { url = "https://files.pythonhosted.org/packages/a6/1b/0aa08ee42948b61745ac5b5b5ccaec4669e8884b53d31c8ec20b2fcd6b6f/pyright-1.1.407.tar.gz", hash = "sha256:099674dba5c10489832d4a4b2d302636152a9a42d317986c38474c76fe562262", size = 4122872, upload-time = "2025-10-24T23:17:15.145Z" }
459
458
  wheels = [
460
- { url = "https://files.pythonhosted.org/packages/f6/a2/e309afbb459f50507103793aaef85ca4348b66814c86bc73908bdeb66d12/pyright-1.1.406-py3-none-any.whl", hash = "sha256:1d81fb43c2407bf566e97e57abb01c811973fdb21b2df8df59f870f688bdca71", size = 5980982, upload-time = "2025-10-02T01:04:43.137Z" },
459
+ { url = "https://files.pythonhosted.org/packages/dc/93/b69052907d032b00c40cb656d21438ec00b3a471733de137a3f65a49a0a0/pyright-1.1.407-py3-none-any.whl", hash = "sha256:6dd419f54fcc13f03b52285796d65e639786373f433e243f8b94cf93a7444d21", size = 5997008, upload-time = "2025-10-24T23:17:13.159Z" },
461
460
  ]
462
461
 
463
462
  [[package]]
@@ -583,28 +582,28 @@ wheels = [
583
582
 
584
583
  [[package]]
585
584
  name = "ruff"
586
- version = "0.14.2"
587
- source = { registry = "https://pypi.org/simple/" }
588
- sdist = { url = "https://files.pythonhosted.org/packages/ee/34/8218a19b2055b80601e8fd201ec723c74c7fe1ca06d525a43ed07b6d8e85/ruff-0.14.2.tar.gz", hash = "sha256:98da787668f239313d9c902ca7c523fe11b8ec3f39345553a51b25abc4629c96", size = 5539663, upload-time = "2025-10-23T19:37:00.956Z" }
589
- wheels = [
590
- { url = "https://files.pythonhosted.org/packages/16/dd/23eb2db5ad9acae7c845700493b72d3ae214dce0b226f27df89216110f2b/ruff-0.14.2-py3-none-linux_armv6l.whl", hash = "sha256:7cbe4e593505bdec5884c2d0a4d791a90301bc23e49a6b1eb642dd85ef9c64f1", size = 12533390, upload-time = "2025-10-23T19:36:18.044Z" },
591
- { url = "https://files.pythonhosted.org/packages/5a/8c/5f9acff43ddcf3f85130d0146d0477e28ccecc495f9f684f8f7119b74c0d/ruff-0.14.2-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:8d54b561729cee92f8d89c316ad7a3f9705533f5903b042399b6ae0ddfc62e11", size = 12887187, upload-time = "2025-10-23T19:36:22.664Z" },
592
- { url = "https://files.pythonhosted.org/packages/99/fa/047646491479074029665022e9f3dc6f0515797f40a4b6014ea8474c539d/ruff-0.14.2-py3-none-macosx_11_0_arm64.whl", hash = "sha256:5c8753dfa44ebb2cde10ce5b4d2ef55a41fb9d9b16732a2c5df64620dbda44a3", size = 11925177, upload-time = "2025-10-23T19:36:24.778Z" },
593
- { url = "https://files.pythonhosted.org/packages/15/8b/c44cf7fe6e59ab24a9d939493a11030b503bdc2a16622cede8b7b1df0114/ruff-0.14.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3d0bbeffb8d9f4fccf7b5198d566d0bad99a9cb622f1fc3467af96cb8773c9e3", size = 12358285, upload-time = "2025-10-23T19:36:26.979Z" },
594
- { url = "https://files.pythonhosted.org/packages/45/01/47701b26254267ef40369aea3acb62a7b23e921c27372d127e0f3af48092/ruff-0.14.2-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7047f0c5a713a401e43a88d36843d9c83a19c584e63d664474675620aaa634a8", size = 12303832, upload-time = "2025-10-23T19:36:29.192Z" },
595
- { url = "https://files.pythonhosted.org/packages/2d/5c/ae7244ca4fbdf2bee9d6405dcd5bc6ae51ee1df66eb7a9884b77b8af856d/ruff-0.14.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3bf8d2f9aa1602599217d82e8e0af7fd33e5878c4d98f37906b7c93f46f9a839", size = 13036995, upload-time = "2025-10-23T19:36:31.861Z" },
596
- { url = "https://files.pythonhosted.org/packages/27/4c/0860a79ce6fd4c709ac01173f76f929d53f59748d0dcdd662519835dae43/ruff-0.14.2-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:1c505b389e19c57a317cf4b42db824e2fca96ffb3d86766c1c9f8b96d32048a7", size = 14512649, upload-time = "2025-10-23T19:36:33.915Z" },
597
- { url = "https://files.pythonhosted.org/packages/7f/7f/d365de998069720a3abfc250ddd876fc4b81a403a766c74ff9bde15b5378/ruff-0.14.2-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a307fc45ebd887b3f26b36d9326bb70bf69b01561950cdcc6c0bdf7bb8e0f7cc", size = 14088182, upload-time = "2025-10-23T19:36:36.983Z" },
598
- { url = "https://files.pythonhosted.org/packages/6c/ea/d8e3e6b209162000a7be1faa41b0a0c16a133010311edc3329753cc6596a/ruff-0.14.2-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:61ae91a32c853172f832c2f40bd05fd69f491db7289fb85a9b941ebdd549781a", size = 13599516, upload-time = "2025-10-23T19:36:39.208Z" },
599
- { url = "https://files.pythonhosted.org/packages/fa/ea/c7810322086db68989fb20a8d5221dd3b79e49e396b01badca07b433ab45/ruff-0.14.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1967e40286f63ee23c615e8e7e98098dedc7301568bd88991f6e544d8ae096", size = 13272690, upload-time = "2025-10-23T19:36:41.453Z" },
600
- { url = "https://files.pythonhosted.org/packages/a9/39/10b05acf8c45786ef501d454e00937e1b97964f846bf28883d1f9619928a/ruff-0.14.2-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:2877f02119cdebf52a632d743a2e302dea422bfae152ebe2f193d3285a3a65df", size = 13496497, upload-time = "2025-10-23T19:36:43.61Z" },
601
- { url = "https://files.pythonhosted.org/packages/59/a1/1f25f8301e13751c30895092485fada29076e5e14264bdacc37202e85d24/ruff-0.14.2-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:e681c5bc777de5af898decdcb6ba3321d0d466f4cb43c3e7cc2c3b4e7b843a05", size = 12266116, upload-time = "2025-10-23T19:36:45.625Z" },
602
- { url = "https://files.pythonhosted.org/packages/5c/fa/0029bfc9ce16ae78164e6923ef392e5f173b793b26cc39aa1d8b366cf9dc/ruff-0.14.2-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:e21be42d72e224736f0c992cdb9959a2fa53c7e943b97ef5d081e13170e3ffc5", size = 12281345, upload-time = "2025-10-23T19:36:47.618Z" },
603
- { url = "https://files.pythonhosted.org/packages/a5/ab/ece7baa3c0f29b7683be868c024f0838770c16607bea6852e46b202f1ff6/ruff-0.14.2-py3-none-musllinux_1_2_i686.whl", hash = "sha256:b8264016f6f209fac16262882dbebf3f8be1629777cf0f37e7aff071b3e9b92e", size = 12629296, upload-time = "2025-10-23T19:36:49.789Z" },
604
- { url = "https://files.pythonhosted.org/packages/a4/7f/638f54b43f3d4e48c6a68062794e5b367ddac778051806b9e235dfb7aa81/ruff-0.14.2-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:5ca36b4cb4db3067a3b24444463ceea5565ea78b95fe9a07ca7cb7fd16948770", size = 13371610, upload-time = "2025-10-23T19:36:51.882Z" },
605
- { url = "https://files.pythonhosted.org/packages/8d/35/3654a973ebe5b32e1fd4a08ed2d46755af7267da7ac710d97420d7b8657d/ruff-0.14.2-py3-none-win32.whl", hash = "sha256:41775927d287685e08f48d8eb3f765625ab0b7042cc9377e20e64f4eb0056ee9", size = 12415318, upload-time = "2025-10-23T19:36:53.961Z" },
606
- { url = "https://files.pythonhosted.org/packages/71/30/3758bcf9e0b6a4193a6f51abf84254aba00887dfa8c20aba18aa366c5f57/ruff-0.14.2-py3-none-win_amd64.whl", hash = "sha256:0df3424aa5c3c08b34ed8ce099df1021e3adaca6e90229273496b839e5a7e1af", size = 13565279, upload-time = "2025-10-23T19:36:56.578Z" },
607
- { url = "https://files.pythonhosted.org/packages/2e/5d/aa883766f8ef9ffbe6aa24f7192fb71632f31a30e77eb39aa2b0dc4290ac/ruff-0.14.2-py3-none-win_arm64.whl", hash = "sha256:ea9d635e83ba21569fbacda7e78afbfeb94911c9434aff06192d9bc23fd5495a", size = 12554956, upload-time = "2025-10-23T19:36:58.714Z" },
585
+ version = "0.14.3"
586
+ source = { registry = "https://pypi.org/simple/" }
587
+ sdist = { url = "https://files.pythonhosted.org/packages/75/62/50b7727004dfe361104dfbf898c45a9a2fdfad8c72c04ae62900224d6ecf/ruff-0.14.3.tar.gz", hash = "sha256:4ff876d2ab2b161b6de0aa1f5bd714e8e9b4033dc122ee006925fbacc4f62153", size = 5558687, upload-time = "2025-10-31T00:26:26.878Z" }
588
+ wheels = [
589
+ { url = "https://files.pythonhosted.org/packages/ce/8e/0c10ff1ea5d4360ab8bfca4cb2c9d979101a391f3e79d2616c9bf348cd26/ruff-0.14.3-py3-none-linux_armv6l.whl", hash = "sha256:876b21e6c824f519446715c1342b8e60f97f93264012de9d8d10314f8a79c371", size = 12535613, upload-time = "2025-10-31T00:25:44.302Z" },
590
+ { url = "https://files.pythonhosted.org/packages/d3/c8/6724f4634c1daf52409fbf13fefda64aa9c8f81e44727a378b7b73dc590b/ruff-0.14.3-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:b6fd8c79b457bedd2abf2702b9b472147cd860ed7855c73a5247fa55c9117654", size = 12855812, upload-time = "2025-10-31T00:25:47.793Z" },
591
+ { url = "https://files.pythonhosted.org/packages/de/03/db1bce591d55fd5f8a08bb02517fa0b5097b2ccabd4ea1ee29aa72b67d96/ruff-0.14.3-py3-none-macosx_11_0_arm64.whl", hash = "sha256:71ff6edca490c308f083156938c0c1a66907151263c4abdcb588602c6e696a14", size = 11944026, upload-time = "2025-10-31T00:25:49.657Z" },
592
+ { url = "https://files.pythonhosted.org/packages/0b/75/4f8dbd48e03272715d12c87dc4fcaaf21b913f0affa5f12a4e9c6f8a0582/ruff-0.14.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:786ee3ce6139772ff9272aaf43296d975c0217ee1b97538a98171bf0d21f87ed", size = 12356818, upload-time = "2025-10-31T00:25:51.949Z" },
593
+ { url = "https://files.pythonhosted.org/packages/ec/9b/506ec5b140c11d44a9a4f284ea7c14ebf6f8b01e6e8917734a3325bff787/ruff-0.14.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:cd6291d0061811c52b8e392f946889916757610d45d004e41140d81fb6cd5ddc", size = 12336745, upload-time = "2025-10-31T00:25:54.248Z" },
594
+ { url = "https://files.pythonhosted.org/packages/c7/e1/c560d254048c147f35e7f8131d30bc1f63a008ac61595cf3078a3e93533d/ruff-0.14.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a497ec0c3d2c88561b6d90f9c29f5ae68221ac00d471f306fa21fa4264ce5fcd", size = 13101684, upload-time = "2025-10-31T00:25:56.253Z" },
595
+ { url = "https://files.pythonhosted.org/packages/a5/32/e310133f8af5cd11f8cc30f52522a3ebccc5ea5bff4b492f94faceaca7a8/ruff-0.14.3-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:e231e1be58fc568950a04fbe6887c8e4b85310e7889727e2b81db205c45059eb", size = 14535000, upload-time = "2025-10-31T00:25:58.397Z" },
596
+ { url = "https://files.pythonhosted.org/packages/a2/a1/7b0470a22158c6d8501eabc5e9b6043c99bede40fa1994cadf6b5c2a61c7/ruff-0.14.3-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:469e35872a09c0e45fecf48dd960bfbce056b5db2d5e6b50eca329b4f853ae20", size = 14156450, upload-time = "2025-10-31T00:26:00.889Z" },
597
+ { url = "https://files.pythonhosted.org/packages/0a/96/24bfd9d1a7f532b560dcee1a87096332e461354d3882124219bcaff65c09/ruff-0.14.3-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3d6bc90307c469cb9d28b7cfad90aaa600b10d67c6e22026869f585e1e8a2db0", size = 13568414, upload-time = "2025-10-31T00:26:03.291Z" },
598
+ { url = "https://files.pythonhosted.org/packages/a7/e7/138b883f0dfe4ad5b76b58bf4ae675f4d2176ac2b24bdd81b4d966b28c61/ruff-0.14.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2f8a0bbcffcfd895df39c9a4ecd59bb80dca03dc43f7fb63e647ed176b741e", size = 13315293, upload-time = "2025-10-31T00:26:05.708Z" },
599
+ { url = "https://files.pythonhosted.org/packages/33/f4/c09bb898be97b2eb18476b7c950df8815ef14cf956074177e9fbd40b7719/ruff-0.14.3-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:678fdd7c7d2d94851597c23ee6336d25f9930b460b55f8598e011b57c74fd8c5", size = 13539444, upload-time = "2025-10-31T00:26:08.09Z" },
600
+ { url = "https://files.pythonhosted.org/packages/9c/aa/b30a1db25fc6128b1dd6ff0741fa4abf969ded161599d07ca7edd0739cc0/ruff-0.14.3-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:1ec1ac071e7e37e0221d2f2dbaf90897a988c531a8592a6a5959f0603a1ecf5e", size = 12252581, upload-time = "2025-10-31T00:26:10.297Z" },
601
+ { url = "https://files.pythonhosted.org/packages/da/13/21096308f384d796ffe3f2960b17054110a9c3828d223ca540c2b7cc670b/ruff-0.14.3-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:afcdc4b5335ef440d19e7df9e8ae2ad9f749352190e96d481dc501b753f0733e", size = 12307503, upload-time = "2025-10-31T00:26:12.646Z" },
602
+ { url = "https://files.pythonhosted.org/packages/cb/cc/a350bac23f03b7dbcde3c81b154706e80c6f16b06ff1ce28ed07dc7b07b0/ruff-0.14.3-py3-none-musllinux_1_2_i686.whl", hash = "sha256:7bfc42f81862749a7136267a343990f865e71fe2f99cf8d2958f684d23ce3dfa", size = 12675457, upload-time = "2025-10-31T00:26:15.044Z" },
603
+ { url = "https://files.pythonhosted.org/packages/cb/76/46346029fa2f2078826bc88ef7167e8c198e58fe3126636e52f77488cbba/ruff-0.14.3-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:a65e448cfd7e9c59fae8cf37f9221585d3354febaad9a07f29158af1528e165f", size = 13403980, upload-time = "2025-10-31T00:26:17.81Z" },
604
+ { url = "https://files.pythonhosted.org/packages/9f/a4/35f1ef68c4e7b236d4a5204e3669efdeefaef21f0ff6a456792b3d8be438/ruff-0.14.3-py3-none-win32.whl", hash = "sha256:f3d91857d023ba93e14ed2d462ab62c3428f9bbf2b4fbac50a03ca66d31991f7", size = 12500045, upload-time = "2025-10-31T00:26:20.503Z" },
605
+ { url = "https://files.pythonhosted.org/packages/03/15/51960ae340823c9859fb60c63301d977308735403e2134e17d1d2858c7fb/ruff-0.14.3-py3-none-win_amd64.whl", hash = "sha256:d7b7006ac0756306db212fd37116cce2bd307e1e109375e1c6c106002df0ae5f", size = 13594005, upload-time = "2025-10-31T00:26:22.533Z" },
606
+ { url = "https://files.pythonhosted.org/packages/b7/73/4de6579bac8e979fca0a77e54dec1f1e011a0d268165eb8a9bc0982a6564/ruff-0.14.3-py3-none-win_arm64.whl", hash = "sha256:26eb477ede6d399d898791d01961e16b86f02bc2486d0d1a7a9bb2379d055dc1", size = 12590017, upload-time = "2025-10-31T00:26:24.52Z" },
608
607
  ]
609
608
 
610
609
  [[package]]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes