http-api-tool 1.1.2__tar.gz → 1.1.3__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 (46) hide show
  1. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.github/workflows/build-test-release.yaml +22 -22
  2. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.github/workflows/build-test.yaml +16 -16
  3. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.github/workflows/clear-action-cache.yaml +1 -1
  4. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.github/workflows/codeql.yml +10 -8
  5. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.github/workflows/openssf-scorecard.yaml +7 -7
  6. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.github/workflows/release-drafter.yaml +3 -3
  7. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.github/workflows/security-scans.yaml +2 -2
  8. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.pre-commit-config.yaml +3 -3
  9. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/PKG-INFO +3 -4
  10. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/README.md +1 -1
  11. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/action.yaml +1 -1
  12. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/pyproject.toml +3 -4
  13. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/src/http_api_tool/_version.py +2 -2
  14. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/uv.lock +20 -97
  15. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.actrc +0 -0
  16. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.aislop/config.yml +0 -0
  17. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.codespell +0 -0
  18. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.dockerignore +0 -0
  19. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.editorconfig +0 -0
  20. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.github/actionlint.yaml +0 -0
  21. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.github/cache-config.yaml +0 -0
  22. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.github/dependabot.yml +0 -0
  23. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.gitignore +0 -0
  24. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.gitlint +0 -0
  25. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.readthedocs.yml +0 -0
  26. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/.yamllint +0 -0
  27. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/AGENTS.md +0 -0
  28. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/CHANGELOG-v0.2.0.md +0 -0
  29. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/LICENSE +0 -0
  30. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/LICENSES/Apache-2.0.txt +0 -0
  31. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/REUSE.toml +0 -0
  32. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/SECURITY.md +0 -0
  33. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/UV-QUICK-REFERENCE.md +0 -0
  34. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/docker/Containerfile +0 -0
  35. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/scripts/check-pip-security.py +0 -0
  36. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/scripts/generate_requirements.py +0 -0
  37. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/sonar-project.properties +0 -0
  38. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/src/http_api_tool/__init__.py +0 -0
  39. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/src/http_api_tool/__main__.py +0 -0
  40. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/src/http_api_tool/cli.py +0 -0
  41. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/src/http_api_tool/curl_client.py +0 -0
  42. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/src/http_api_tool/reporting.py +0 -0
  43. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/src/http_api_tool/sanitize.py +0 -0
  44. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/src/http_api_tool/validation.py +0 -0
  45. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/src/http_api_tool/verifier.py +0 -0
  46. {http_api_tool-1.1.2 → http_api_tool-1.1.3}/tests/test_http_api_tool.py +0 -0
@@ -32,7 +32,7 @@ jobs:
32
32
  timeout-minutes: 5
33
33
  steps:
34
34
  # yamllint disable-line rule:line-length
35
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
35
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
36
36
  with:
37
37
  egress-policy: audit
38
38
 
@@ -45,7 +45,7 @@ jobs:
45
45
  - name: "Gather repository metadata"
46
46
  id: repo-metadata
47
47
  # yamllint disable-line rule:line-length
48
- uses: lfreleng-actions/repository-metadata-action@847400e0d0b34cc88a572fa9575accd80401b796 # v0.3.1
48
+ uses: lfreleng-actions/repository-metadata-action@2206d754f65f1a90f57b49be546712c5f594def2 # v0.3.3
49
49
  with:
50
50
  github_token: ${{ secrets.GITHUB_TOKEN }}
51
51
  github_summary: 'true'
@@ -64,7 +64,7 @@ jobs:
64
64
  steps:
65
65
  # Harden the runner used by this workflow
66
66
  # yamllint disable-line rule:line-length
67
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
67
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
68
68
  with:
69
69
  egress-policy: 'audit'
70
70
 
@@ -132,7 +132,7 @@ jobs:
132
132
  steps:
133
133
  # Harden the runner used by this workflow
134
134
  # yamllint disable-line rule:line-length
135
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
135
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
136
136
  with:
137
137
  egress-policy: 'audit'
138
138
 
@@ -144,7 +144,7 @@ jobs:
144
144
  - name: 'Build Python project'
145
145
  id: 'python-build'
146
146
  # yamllint disable-line rule:line-length
147
- uses: lfreleng-actions/python-build-action@1a1d011cd71e781f9b7896fc9a8c5653406a7758 # v2.1.0
147
+ uses: lfreleng-actions/python-build-action@3cdb6f8e3b9c6c8fb21cce123f7b873b3620273d # v2.1.1
148
148
  with:
149
149
  sigstore_sign: true
150
150
  attestations: true
@@ -163,7 +163,7 @@ jobs:
163
163
  steps:
164
164
  # Harden the runner used by this workflow
165
165
  # yamllint disable-line rule:line-length
166
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
166
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
167
167
  with:
168
168
  egress-policy: 'audit'
169
169
 
@@ -174,7 +174,7 @@ jobs:
174
174
 
175
175
  - name: 'Test Python project [PYTEST]'
176
176
  # yamllint disable-line rule:line-length
177
- uses: lfreleng-actions/python-test-action@88506b4bba4d2acd670ea3cc0bb6f976e0391d24 # v1.3.0
177
+ uses: lfreleng-actions/python-test-action@0c2fe7546faea2321e003c1c3b26a9156a7bc432 # v1.3.1
178
178
  with:
179
179
  python_version: "${{ matrix.python-version }}"
180
180
 
@@ -192,7 +192,7 @@ jobs:
192
192
  steps:
193
193
  # Harden the runner used by this workflow
194
194
  # yamllint disable-line rule:line-length
195
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
195
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
196
196
  with:
197
197
  egress-policy: 'audit'
198
198
 
@@ -203,7 +203,7 @@ jobs:
203
203
 
204
204
  - name: 'Audit Python project'
205
205
  # yamllint disable-line rule:line-length
206
- uses: lfreleng-actions/python-audit-action@f823e631b562f7632730ab36ba0b59a724350d88 # v0.5.1
206
+ uses: lfreleng-actions/python-audit-action@47af793a2a28882b10ceb9109646cbbcecc2e7b0 # v0.6.1
207
207
  with:
208
208
  python_version: "${{ matrix.python-version }}"
209
209
  permit_fail: "${{ vars.NO_BLOCK_AUDIT_FAIL == 'true' }}"
@@ -218,7 +218,7 @@ jobs:
218
218
  steps:
219
219
  # Harden the runner used by this workflow
220
220
  # yamllint disable-line rule:line-length
221
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
221
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
222
222
  with:
223
223
  egress-policy: 'audit'
224
224
 
@@ -230,14 +230,14 @@ jobs:
230
230
  - name: "Generate SBOM"
231
231
  id: sbom
232
232
  # yamllint disable-line rule:line-length
233
- uses: lfreleng-actions/python-sbom-action@a849d7190403165d437f2b8d29bc17a4894728f7 # v0.1.3
233
+ uses: lfreleng-actions/python-sbom-action@639001a0def8109e045818dfb3ee82cf602657af # v0.1.4
234
234
  with:
235
235
  include_dev: "false"
236
236
  sbom_format: "both"
237
237
 
238
238
  - name: "Upload SBOM artifacts"
239
239
  # yamllint disable-line rule:line-length
240
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
240
+ uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
241
241
  with:
242
242
  name: sbom-files
243
243
  path: |
@@ -275,7 +275,7 @@ jobs:
275
275
 
276
276
  - name: "Upload Grype scan results"
277
277
  # yamllint disable-line rule:line-length
278
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
278
+ uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
279
279
  if: always()
280
280
  with:
281
281
  name: grype-scan-results
@@ -345,13 +345,13 @@ jobs:
345
345
  steps:
346
346
  # Harden the runner used by this workflow
347
347
  # yamllint disable-line rule:line-length
348
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
348
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
349
349
  with:
350
350
  egress-policy: 'audit'
351
351
 
352
352
  - name: 'Test PyPI publishing'
353
353
  # yamllint disable-line rule:line-length
354
- uses: lfreleng-actions/pypi-publish-action@276603f5d72b11427755ef139c6fb80489cec5d9 # v0.2.0
354
+ uses: lfreleng-actions/pypi-publish-action@95a73a3d8f8a665d0816d35fcd6a75a2508e9aeb # v0.2.1
355
355
  with:
356
356
  environment: 'development'
357
357
  tag: "${{ needs.tag-validate.outputs.tag }}"
@@ -370,7 +370,7 @@ jobs:
370
370
  steps:
371
371
  # Harden the runner used by this workflow
372
372
  # yamllint disable-line rule:line-length
373
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
373
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
374
374
  with:
375
375
  egress-policy: 'audit'
376
376
 
@@ -457,13 +457,13 @@ jobs:
457
457
  steps:
458
458
  # Harden the runner used by this workflow
459
459
  # yamllint disable-line rule:line-length
460
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
460
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
461
461
  with:
462
462
  egress-policy: 'audit'
463
463
 
464
464
  - name: 'PyPI release'
465
465
  # yamllint disable-line rule:line-length
466
- uses: lfreleng-actions/pypi-publish-action@276603f5d72b11427755ef139c6fb80489cec5d9 # v0.2.0
466
+ uses: lfreleng-actions/pypi-publish-action@95a73a3d8f8a665d0816d35fcd6a75a2508e9aeb # v0.2.1
467
467
  with:
468
468
  environment: 'production'
469
469
  attestations: true
@@ -495,7 +495,7 @@ jobs:
495
495
  steps:
496
496
  # Harden the runner used by this workflow
497
497
  # yamllint disable-line rule:line-length
498
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
498
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
499
499
  with:
500
500
  egress-policy: 'audit'
501
501
 
@@ -506,7 +506,7 @@ jobs:
506
506
 
507
507
  - name: 'Download build artefacts'
508
508
  # yamllint disable-line rule:line-length
509
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
509
+ uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
510
510
  with:
511
511
  name: "${{ needs.python-build.outputs.artefact_name }}"
512
512
  path: "${{ needs.python-build.outputs.artefact_path }}"
@@ -535,7 +535,7 @@ jobs:
535
535
  steps:
536
536
  # Harden the runner used by this workflow
537
537
  # yamllint disable-line rule:line-length
538
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
538
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
539
539
  with:
540
540
  egress-policy: 'audit'
541
541
 
@@ -566,7 +566,7 @@ jobs:
566
566
  id: 'promote-release'
567
567
  if: steps.check-promoted.outputs.already_promoted == 'false'
568
568
  # yamllint disable-line rule:line-length
569
- uses: lfreleng-actions/draft-release-promote-action@e420b392557c9b1eea642f0d54dec4ff39086d5f # v0.1.5
569
+ uses: lfreleng-actions/draft-release-promote-action@358264a2efca5ac359a90718373cbce18016bd27 # v0.1.7
570
570
  with:
571
571
  token: "${{ secrets.GITHUB_TOKEN }}"
572
572
  tag: "${{ needs.tag-validate.outputs.tag }}"
@@ -76,7 +76,7 @@ jobs:
76
76
  steps:
77
77
  # Harden the runner
78
78
  - name: Harden Runner
79
- uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
79
+ uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
80
80
  with:
81
81
  egress-policy: audit
82
82
 
@@ -203,7 +203,7 @@ jobs:
203
203
  steps:
204
204
  # Harden the runner
205
205
  - name: Harden Runner
206
- uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
206
+ uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
207
207
  with:
208
208
  egress-policy: audit
209
209
 
@@ -285,7 +285,7 @@ jobs:
285
285
  GH_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
286
286
  steps:
287
287
  # Harden the runner used by this workflow
288
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
288
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
289
289
  with:
290
290
  egress-policy: 'audit'
291
291
 
@@ -319,7 +319,7 @@ jobs:
319
319
  - name: 'Build Python project'
320
320
  id: python-build
321
321
  # yamllint disable-line rule:line-length
322
- uses: lfreleng-actions/python-build-action@1a1d011cd71e781f9b7896fc9a8c5653406a7758 # v2.1.0
322
+ uses: lfreleng-actions/python-build-action@3cdb6f8e3b9c6c8fb21cce123f7b873b3620273d # v2.1.1
323
323
 
324
324
  # Python tests with matrix strategy (after container pipeline)
325
325
  python-tests:
@@ -335,7 +335,7 @@ jobs:
335
335
  timeout-minutes: 12
336
336
  steps:
337
337
  # Harden the runner used by this workflow
338
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
338
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
339
339
  with:
340
340
  egress-policy: audit
341
341
 
@@ -368,7 +368,7 @@ jobs:
368
368
 
369
369
  - name: "Python tests [pytest] ${{ matrix.python-version }}"
370
370
  # yamllint disable-line rule:line-length
371
- uses: lfreleng-actions/python-test-action@88506b4bba4d2acd670ea3cc0bb6f976e0391d24 # v1.3.0
371
+ uses: lfreleng-actions/python-test-action@0c2fe7546faea2321e003c1c3b26a9156a7bc432 # v1.3.1
372
372
  with:
373
373
  python_version: ${{ matrix.python-version }}
374
374
 
@@ -386,7 +386,7 @@ jobs:
386
386
  timeout-minutes: 10
387
387
  steps:
388
388
  # Harden the runner used by this workflow
389
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
389
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
390
390
  with:
391
391
  egress-policy: 'audit'
392
392
 
@@ -419,7 +419,7 @@ jobs:
419
419
 
420
420
  - name: "Audit dependencies ${{ matrix.python-version }}"
421
421
  # yamllint disable-line rule:line-length
422
- uses: lfreleng-actions/python-audit-action@f823e631b562f7632730ab36ba0b59a724350d88 # v0.5.1
422
+ uses: lfreleng-actions/python-audit-action@47af793a2a28882b10ceb9109646cbbcecc2e7b0 # v0.6.1
423
423
  with:
424
424
  python_version: "${{ matrix.python-version }}"
425
425
 
@@ -434,7 +434,7 @@ jobs:
434
434
  timeout-minutes: 15
435
435
  steps:
436
436
  # Harden the runner used by this workflow
437
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
437
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
438
438
  with:
439
439
  egress-policy: 'audit'
440
440
 
@@ -466,7 +466,7 @@ jobs:
466
466
  uv-cli-${{ runner.os }}-
467
467
 
468
468
  - name: Install UV
469
- uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0
469
+ uses: astral-sh/setup-uv@1c37ad07a6a961277cf70c0d37d6f313000f5884 # v10.3.0
470
470
 
471
471
  - name: Install project dependencies
472
472
  run: |
@@ -561,7 +561,7 @@ jobs:
561
561
  timeout-minutes: 10
562
562
  steps:
563
563
  # Harden the runner used by this workflow
564
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
564
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
565
565
  with:
566
566
  egress-policy: 'audit'
567
567
 
@@ -618,7 +618,7 @@ jobs:
618
618
  timeout-minutes: 10
619
619
  steps:
620
620
  # Harden the runner used by this workflow
621
- - uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
621
+ - uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
622
622
  with:
623
623
  egress-policy: 'audit'
624
624
 
@@ -730,7 +730,7 @@ jobs:
730
730
  steps:
731
731
  # Harden the runner used by this workflow
732
732
  - name: Harden Runner
733
- uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
733
+ uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
734
734
  with:
735
735
  egress-policy: audit
736
736
 
@@ -797,7 +797,7 @@ jobs:
797
797
  steps:
798
798
  # Harden the runner used by this workflow
799
799
  - name: Harden Runner
800
- uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
800
+ uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
801
801
  with:
802
802
  egress-policy: audit
803
803
 
@@ -872,7 +872,7 @@ jobs:
872
872
  steps:
873
873
  # Harden the runner
874
874
  - name: Harden Runner
875
- uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
875
+ uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
876
876
  with:
877
877
  egress-policy: audit
878
878
 
@@ -905,7 +905,7 @@ jobs:
905
905
 
906
906
  # Install UV
907
907
  - name: Install UV
908
- uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0
908
+ uses: astral-sh/setup-uv@1c37ad07a6a961277cf70c0d37d6f313000f5884 # v10.3.0
909
909
 
910
910
  # Install project dependencies with dev extras (includes bandit)
911
911
  - name: Install project dependencies
@@ -51,7 +51,7 @@ jobs:
51
51
  permissions:
52
52
  actions: write # list and delete repository Actions caches
53
53
  # yamllint disable-line rule:line-length
54
- uses: lfreleng-actions/generic-workflows/.github/workflows/clear-action-cache.yaml@42ee0a60963eede4169a7347f62da102bfc3b9b5 # v0.4.0
54
+ uses: lfreleng-actions/generic-workflows/.github/workflows/clear-action-cache.yaml@0ed9c16d59a3ff92afad23a7c1aba3ab61238b87 # v0.4.3
55
55
  with:
56
56
  key_pattern: ${{ inputs.key_pattern }}
57
57
  ref_filter: ${{ inputs.ref_filter }}
@@ -22,12 +22,14 @@ concurrency:
22
22
  cancel-in-progress: true
23
23
 
24
24
  jobs:
25
- scan:
26
- name: 'Audit Repository'
27
- # yamllint disable-line rule:line-length
28
- uses: lfit/releng-reusable-workflows/.github/workflows/reuse-python-codeql.yaml@87eacd1f8322263ebbc1411ce2ea82bab10ed091 # v0.10.3
25
+ codeql:
26
+ name: 'CodeQL'
29
27
  permissions:
30
- security-events: write # Upload CodeQL results to code-scanning
31
- packages: read # Fetch internal or private CodeQL packs
32
- actions: read # Only required for workflows in private repositories
33
- contents: read
28
+ contents: read # checkout
29
+ security-events: write # upload results to code scanning
30
+ packages: read # fetch internal or private CodeQL packs
31
+ actions: read # the upload reads run info on private repositories
32
+ # yamllint disable-line rule:line-length
33
+ uses: lfreleng-actions/security-workflows/.github/workflows/codeql.yaml@ef6c0d9930feedb274067703b50eeebe5ab859b3 # v0.9.5
34
+ with:
35
+ languages: 'python,actions'
@@ -28,13 +28,13 @@ jobs:
28
28
  openssf-scorecard:
29
29
  name: "OpenSSF Scorecard"
30
30
  # yamllint disable-line rule:line-length
31
- uses: lfit/releng-reusable-workflows/.github/workflows/reuse-openssf-scorecard.yaml@87eacd1f8322263ebbc1411ce2ea82bab10ed091 # v0.10.3
31
+ uses: lfreleng-actions/security-workflows/.github/workflows/openssf-scorecard.yaml@179b57cc41fbdae90d68237b418539d33e5ba091 # v0.9.4
32
32
  # Scorecard uses no cache; deny writes under branch_protection_rule
33
33
  cache-mode: read
34
34
  permissions:
35
- contents: read # Read repository contents (checkout, etc.)
36
- # yamllint disable-line rule:line-length
37
- security-events: write # Upload results to the code-scanning dashboard
38
- id-token: write # Publish results and obtain Scorecard badge via OIDC
39
- # Uncomment the permission below if installing in a private repository.
40
- # actions: read
35
+ contents: read # checkout
36
+ security-events: write # upload results to the code scanning dashboard
37
+ id-token: write # publish results and obtain the badge, via OIDC
38
+ actions: read # upload-sarif reads run info on private repositories
39
+ # The lane's scan job requests only the scopes above, so granting
40
+ # more here has no effect, including on a private repository.
@@ -28,18 +28,18 @@ jobs:
28
28
  # organisation's .github repository and publish it as
29
29
  # $CONNECTION_ALLOW_LIST for the harden-runner step below.
30
30
  # yamllint disable-line rule:line-length
31
- - uses: lfreleng-actions/harden-runner-block-action@a32eb064a1188f6b0f15d2c0c0381efe54b0dd22 # v0.12.2
31
+ - uses: lfreleng-actions/harden-runner-block-action@51ef68401547a8b648275129b9a21544612596d5 # v0.13.1
32
32
  with:
33
33
  config: '@18d9c4446bea555d0783e850f6d295f844fe8f67' # v0.1.1
34
34
 
35
35
  # Harden the runner with the just-loaded allow-list.
36
36
  - name: 'Harden runner (block)'
37
37
  # yamllint disable-line rule:line-length
38
- uses: step-security/harden-runner@e14015d583714f6e62063499dc959a02595150a1 # v2.21.1
38
+ uses: step-security/harden-runner@dc2769abcc0fcfbadfc1df54081c1608579ef6b2 # v2.22.2
39
39
  with:
40
40
  egress-policy: 'block'
41
41
  allowed-endpoints: >
42
42
  ${{ env.CONNECTION_ALLOW_LIST }}
43
43
 
44
44
  # yamllint disable-line rule:line-length
45
- - uses: release-drafter/release-drafter@34d80673e067bdc0c24568d3af899c216adcfaa9 # v7.7.0
45
+ - uses: release-drafter/release-drafter@978bb0b30c5ee8cdd332ced253758157150d43f0 # v7.10.0
@@ -34,7 +34,7 @@ jobs:
34
34
  permissions:
35
35
  contents: read # Reusable scan job checks out the repo
36
36
  # yamllint disable-line rule:line-length
37
- uses: lfit/releng-reusable-workflows/.github/workflows/reuse-sonatype-lifecycle.yaml@87eacd1f8322263ebbc1411ce2ea82bab10ed091 # v0.10.3
37
+ uses: lfit/releng-reusable-workflows/.github/workflows/reuse-sonatype-lifecycle.yaml@fb907909b12bbaf262de6b24fcafd181cabe6b24 # v0.10.4
38
38
  # Neither scan writes a cache; deny writes under branch_protection_rule
39
39
  cache-mode: read
40
40
  secrets:
@@ -44,7 +44,7 @@ jobs:
44
44
  sonarqube-cloud:
45
45
  name: "SonarQube Cloud"
46
46
  # yamllint disable-line rule:line-length
47
- uses: lfit/releng-reusable-workflows/.github/workflows/reuse-sonarqube-cloud.yaml@87eacd1f8322263ebbc1411ce2ea82bab10ed091 # v0.10.3
47
+ uses: lfit/releng-reusable-workflows/.github/workflows/reuse-sonarqube-cloud.yaml@fb907909b12bbaf262de6b24fcafd181cabe6b24 # v0.10.4
48
48
  # Neither scan writes a cache; deny writes under branch_protection_rule
49
49
  cache-mode: read
50
50
  permissions:
@@ -73,7 +73,7 @@ repos:
73
73
  args: [--config-file=.yamllint]
74
74
 
75
75
  - repo: https://github.com/astral-sh/ruff-pre-commit
76
- rev: f12be1ebaa5351c1fc76472de98db2c3446c8253 # frozen: v0.16.10
76
+ rev: f368fb366ff7f2f808dd324b83a6d32267799e19 # frozen: v0.17.2
77
77
  hooks:
78
78
  - id: ruff
79
79
  files: ^(src|tests|scripts)/.+\.py$
@@ -106,7 +106,7 @@ repos:
106
106
  - id: shellcheck
107
107
 
108
108
  - repo: https://github.com/igorshubovych/markdownlint-cli
109
- rev: 5b5dddc4fb0f83c3ea1fc5616fa63e115dce83e0 # frozen: v0.49.1
109
+ rev: cbcdc463be5464e25e3e955a511599a67b9b987f # frozen: v0.50.0
110
110
  hooks:
111
111
  - id: markdownlint
112
112
  args: ["--fix"]
@@ -133,7 +133,7 @@ repos:
133
133
  - id: basedpyright
134
134
 
135
135
  - repo: https://github.com/lfreleng-actions/gha-workflow-linter
136
- rev: b23b60e5884e985320a030e6114032152e2373cd # frozen: v1.7.1
136
+ rev: 6431fe01a4f1b978de418160cc7caa6a24f6df76 # frozen: v1.10.0
137
137
  hooks:
138
138
  - id: gha-workflow-linter
139
139
  args: [lint, .]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: http-api-tool
3
- Version: 1.1.2
3
+ Version: 1.1.3
4
4
  Summary: A Python HTTP/HTTPS API testing tool for GitHub Actions and CLI usage
5
5
  Project-URL: Homepage, https://github.com/lfreleng-actions/http-api-tool-docker
6
6
  Project-URL: Repository, https://github.com/lfreleng-actions/http-api-tool-docker
@@ -18,7 +18,6 @@ Classifier: Intended Audience :: System Administrators
18
18
  Classifier: License :: OSI Approved :: Apache Software License
19
19
  Classifier: Operating System :: OS Independent
20
20
  Classifier: Programming Language :: Python :: 3
21
- Classifier: Programming Language :: Python :: 3.10
22
21
  Classifier: Programming Language :: Python :: 3.11
23
22
  Classifier: Programming Language :: Python :: 3.12
24
23
  Classifier: Programming Language :: Python :: 3.13
@@ -27,7 +26,7 @@ Classifier: Topic :: Internet :: WWW/HTTP
27
26
  Classifier: Topic :: Software Development :: Testing
28
27
  Classifier: Topic :: System :: Monitoring
29
28
  Classifier: Topic :: Utilities
30
- Requires-Python: >=3.10
29
+ Requires-Python: >=3.11
31
30
  Requires-Dist: certifi>=2025.6.15
32
31
  Requires-Dist: pycurl>=7.45.0
33
32
  Requires-Dist: requests>=2.32.4
@@ -594,7 +593,7 @@ uv run pytest tests/ -v
594
593
 
595
594
  ## Requirements
596
595
 
597
- - Python 3.10+
596
+ - Python 3.11+
598
597
  - UV (Fast Python package installer and resolver)
599
598
  - pycurl
600
599
  - typer (for CLI usage)
@@ -541,7 +541,7 @@ uv run pytest tests/ -v
541
541
 
542
542
  ## Requirements
543
543
 
544
- - Python 3.10+
544
+ - Python 3.11+
545
545
  - UV (Fast Python package installer and resolver)
546
546
  - pycurl
547
547
  - typer (for CLI usage)
@@ -166,7 +166,7 @@ runs:
166
166
  # UVX deployment path (default)
167
167
  - name: Install uv for uvx deployment
168
168
  if: inputs.deploy == 'uvx'
169
- uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0
169
+ uses: astral-sh/setup-uv@1c37ad07a6a961277cf70c0d37d6f313000f5884 # v10.3.0
170
170
  with:
171
171
  enable-cache: false
172
172
  ignore-empty-workdir: true
@@ -24,7 +24,6 @@ classifiers = [
24
24
  "License :: OSI Approved :: Apache Software License",
25
25
  "Operating System :: OS Independent",
26
26
  "Programming Language :: Python :: 3",
27
- "Programming Language :: Python :: 3.10",
28
27
  "Programming Language :: Python :: 3.11",
29
28
  "Programming Language :: Python :: 3.12",
30
29
  "Programming Language :: Python :: 3.13",
@@ -44,7 +43,7 @@ keywords = [
44
43
  "monitoring",
45
44
  "health-check",
46
45
  ]
47
- requires-python = ">=3.10"
46
+ requires-python = ">=3.11"
48
47
  dependencies = [
49
48
  "pycurl>=7.45.0",
50
49
  "typer>=0.9.0",
@@ -149,7 +148,7 @@ precision = 2
149
148
  directory = "coverage_html_report"
150
149
 
151
150
  [tool.mypy]
152
- python_version = "3.10"
151
+ python_version = "3.11"
153
152
  warn_return_any = true
154
153
  warn_unused_configs = true
155
154
  disallow_untyped_defs = true
@@ -196,7 +195,7 @@ color = true
196
195
  omit-covered-files = false
197
196
 
198
197
  [tool.basedpyright]
199
- pythonVersion = "3.10"
198
+ pythonVersion = "3.11"
200
199
  typeCheckingMode = "standard"
201
200
  reportMissingImports = "warning"
202
201
  reportUninitializedInstanceVariable = "warning"
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '1.1.2'
22
- __version_tuple__ = version_tuple = (1, 1, 2)
21
+ __version__ = version = '1.1.3'
22
+ __version_tuple__ = version_tuple = (1, 1, 3)
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -1,6 +1,6 @@
1
1
  version = 1
2
2
  revision = 3
3
- requires-python = ">=3.10"
3
+ requires-python = ">=3.11"
4
4
 
5
5
  [[package]]
6
6
  name = "attrs"
@@ -37,16 +37,9 @@ dependencies = [
37
37
  { name = "pathspec" },
38
38
  { name = "platformdirs" },
39
39
  { name = "pytokens" },
40
- { name = "tomli", marker = "python_full_version < '3.11'" },
41
- { name = "typing-extensions", marker = "python_full_version < '3.11'" },
42
40
  ]
43
41
  sdist = { url = "https://files.pythonhosted.org/packages/e1/c5/61175d618685d42b005847464b8fb4743a67b1b8fdb75e50e5a96c31a27a/black-26.3.1.tar.gz", hash = "sha256:2c50f5063a9641c7eed7795014ba37b0f5fa227f3d408b968936e24bc0566b07", size = 666155, upload-time = "2026-03-12T03:36:03.593Z" }
44
42
  wheels = [
45
- { url = "https://files.pythonhosted.org/packages/32/a8/11170031095655d36ebc6664fe0897866f6023892396900eec0e8fdc4299/black-26.3.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:86a8b5035fce64f5dcd1b794cf8ec4d31fe458cf6ce3986a30deb434df82a1d2", size = 1866562, upload-time = "2026-03-12T03:39:58.639Z" },
46
- { url = "https://files.pythonhosted.org/packages/69/ce/9e7548d719c3248c6c2abfd555d11169457cbd584d98d179111338423790/black-26.3.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5602bdb96d52d2d0672f24f6ffe5218795736dd34807fd0fd55ccd6bf206168b", size = 1703623, upload-time = "2026-03-12T03:40:00.347Z" },
47
- { url = "https://files.pythonhosted.org/packages/7f/0a/8d17d1a9c06f88d3d030d0b1d4373c1551146e252afe4547ed601c0e697f/black-26.3.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6c54a4a82e291a1fee5137371ab488866b7c86a3305af4026bdd4dc78642e1ac", size = 1768388, upload-time = "2026-03-12T03:40:01.765Z" },
48
- { url = "https://files.pythonhosted.org/packages/52/79/c1ee726e221c863cde5164f925bacf183dfdf0397d4e3f94889439b947b4/black-26.3.1-cp310-cp310-win_amd64.whl", hash = "sha256:6e131579c243c98f35bce64a7e08e87fb2d610544754675d4a0e73a070a5aa3a", size = 1412969, upload-time = "2026-03-12T03:40:03.252Z" },
49
- { url = "https://files.pythonhosted.org/packages/73/a5/15c01d613f5756f68ed8f6d4ec0a1e24b82b18889fa71affd3d1f7fad058/black-26.3.1-cp310-cp310-win_arm64.whl", hash = "sha256:5ed0ca58586c8d9a487352a96b15272b7fa55d139fc8496b519e78023a8dab0a", size = 1220345, upload-time = "2026-03-12T03:40:04.892Z" },
50
43
  { url = "https://files.pythonhosted.org/packages/17/57/5f11c92861f9c92eb9dddf515530bc2d06db843e44bdcf1c83c1427824bc/black-26.3.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:28ef38aee69e4b12fda8dba75e21f9b4f979b490c8ac0baa7cb505369ac9e1ff", size = 1851987, upload-time = "2026-03-12T03:40:06.248Z" },
51
44
  { url = "https://files.pythonhosted.org/packages/54/aa/340a1463660bf6831f9e39646bf774086dbd8ca7fc3cded9d59bbdf4ad0a/black-26.3.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:bf9bf162ed91a26f1adba8efda0b573bc6924ec1408a52cc6f82cb73ec2b142c", size = 1689499, upload-time = "2026-03-12T03:40:07.642Z" },
52
45
  { url = "https://files.pythonhosted.org/packages/f3/01/b726c93d717d72733da031d2de10b92c9fa4c8d0c67e8a8a372076579279/black-26.3.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:474c27574d6d7037c1bc875a81d9be0a9a4f9ee95e62800dab3cfaadbf75acd5", size = 1754369, upload-time = "2026-03-12T03:40:09.279Z" },
@@ -72,11 +65,11 @@ wheels = [
72
65
 
73
66
  [[package]]
74
67
  name = "certifi"
75
- version = "2025.10.5"
68
+ version = "2026.10.19"
76
69
  source = { registry = "https://pypi.org/simple" }
77
- sdist = { url = "https://files.pythonhosted.org/packages/4c/5b/b6ce21586237c77ce67d01dc5507039d444b630dd76611bbca2d8e5dcd91/certifi-2025.10.5.tar.gz", hash = "sha256:47c09d31ccf2acf0be3f701ea53595ee7e0b8fa08801c6624be771df09ae7b43", size = 164519, upload-time = "2025-10-05T04:12:15.808Z" }
70
+ sdist = { url = "https://files.pythonhosted.org/packages/a6/bd/1436c50cc46699de0230fbaacc1d1de7bfec413176099949e9d5112e88f2/certifi-2026.10.19.tar.gz", hash = "sha256:035c1e85572b141bf1c3a3eff0e33a8eb74917522f2559075ff8d2fea780a1ae", size = 137598, upload-time = "2026-10-20T02:24:16.604Z" }
78
71
  wheels = [
79
- { url = "https://files.pythonhosted.org/packages/e4/37/af0d2ef3967ac0d6113837b44a4f0bfe1328c2b9763bd5b1744520e5cfed/certifi-2025.10.5-py3-none-any.whl", hash = "sha256:0f212c2744a9bb6de0c56639a6f68afe01ecd92d91f14ae897c4fe7bbeeef0de", size = 163286, upload-time = "2025-10-05T04:12:14.03Z" },
72
+ { url = "https://files.pythonhosted.org/packages/c4/51/29046e48f693c54e5b7412216d447a1d8362c9653148d98c02cdf65fa733/certifi-2026.10.19-py3-none-any.whl", hash = "sha256:42d35340cc5b9ba78e818ddbff0c5b1c2b779de448a340fd1b989f5fa8670e1b", size = 136464, upload-time = "2026-10-20T02:24:15.072Z" },
80
73
  ]
81
74
 
82
75
  [[package]]
@@ -94,22 +87,6 @@ version = "3.4.4"
94
87
  source = { registry = "https://pypi.org/simple" }
95
88
  sdist = { url = "https://files.pythonhosted.org/packages/13/69/33ddede1939fdd074bce5434295f38fae7136463422fe4fd3e0e89b98062/charset_normalizer-3.4.4.tar.gz", hash = "sha256:94537985111c35f28720e43603b8e7b43a6ecfb2ce1d3058bbe955b73404e21a", size = 129418, upload-time = "2025-10-14T04:42:32.879Z" }
96
89
  wheels = [
97
- { url = "https://files.pythonhosted.org/packages/1f/b8/6d51fc1d52cbd52cd4ccedd5b5b2f0f6a11bbf6765c782298b0f3e808541/charset_normalizer-3.4.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e824f1492727fa856dd6eda4f7cee25f8518a12f3c4a56a74e8095695089cf6d", size = 209709, upload-time = "2025-10-14T04:40:11.385Z" },
98
- { url = "https://files.pythonhosted.org/packages/5c/af/1f9d7f7faafe2ddfb6f72a2e07a548a629c61ad510fe60f9630309908fef/charset_normalizer-3.4.4-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4bd5d4137d500351a30687c2d3971758aac9a19208fc110ccb9d7188fbe709e8", size = 148814, upload-time = "2025-10-14T04:40:13.135Z" },
99
- { url = "https://files.pythonhosted.org/packages/79/3d/f2e3ac2bbc056ca0c204298ea4e3d9db9b4afe437812638759db2c976b5f/charset_normalizer-3.4.4-cp310-cp310-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:027f6de494925c0ab2a55eab46ae5129951638a49a34d87f4c3eda90f696b4ad", size = 144467, upload-time = "2025-10-14T04:40:14.728Z" },
100
- { url = "https://files.pythonhosted.org/packages/ec/85/1bf997003815e60d57de7bd972c57dc6950446a3e4ccac43bc3070721856/charset_normalizer-3.4.4-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f820802628d2694cb7e56db99213f930856014862f3fd943d290ea8438d07ca8", size = 162280, upload-time = "2025-10-14T04:40:16.14Z" },
101
- { url = "https://files.pythonhosted.org/packages/3e/8e/6aa1952f56b192f54921c436b87f2aaf7c7a7c3d0d1a765547d64fd83c13/charset_normalizer-3.4.4-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:798d75d81754988d2565bff1b97ba5a44411867c0cf32b77a7e8f8d84796b10d", size = 159454, upload-time = "2025-10-14T04:40:17.567Z" },
102
- { url = "https://files.pythonhosted.org/packages/36/3b/60cbd1f8e93aa25d1c669c649b7a655b0b5fb4c571858910ea9332678558/charset_normalizer-3.4.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9d1bb833febdff5c8927f922386db610b49db6e0d4f4ee29601d71e7c2694313", size = 153609, upload-time = "2025-10-14T04:40:19.08Z" },
103
- { url = "https://files.pythonhosted.org/packages/64/91/6a13396948b8fd3c4b4fd5bc74d045f5637d78c9675585e8e9fbe5636554/charset_normalizer-3.4.4-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:9cd98cdc06614a2f768d2b7286d66805f94c48cde050acdbbb7db2600ab3197e", size = 151849, upload-time = "2025-10-14T04:40:20.607Z" },
104
- { url = "https://files.pythonhosted.org/packages/b7/7a/59482e28b9981d105691e968c544cc0df3b7d6133152fb3dcdc8f135da7a/charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:077fbb858e903c73f6c9db43374fd213b0b6a778106bc7032446a8e8b5b38b93", size = 151586, upload-time = "2025-10-14T04:40:21.719Z" },
105
- { url = "https://files.pythonhosted.org/packages/92/59/f64ef6a1c4bdd2baf892b04cd78792ed8684fbc48d4c2afe467d96b4df57/charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:244bfb999c71b35de57821b8ea746b24e863398194a4014e4c76adc2bbdfeff0", size = 145290, upload-time = "2025-10-14T04:40:23.069Z" },
106
- { url = "https://files.pythonhosted.org/packages/6b/63/3bf9f279ddfa641ffa1962b0db6a57a9c294361cc2f5fcac997049a00e9c/charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:64b55f9dce520635f018f907ff1b0df1fdc31f2795a922fb49dd14fbcdf48c84", size = 163663, upload-time = "2025-10-14T04:40:24.17Z" },
107
- { url = "https://files.pythonhosted.org/packages/ed/09/c9e38fc8fa9e0849b172b581fd9803bdf6e694041127933934184e19f8c3/charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_riscv64.whl", hash = "sha256:faa3a41b2b66b6e50f84ae4a68c64fcd0c44355741c6374813a800cd6695db9e", size = 151964, upload-time = "2025-10-14T04:40:25.368Z" },
108
- { url = "https://files.pythonhosted.org/packages/d2/d1/d28b747e512d0da79d8b6a1ac18b7ab2ecfd81b2944c4c710e166d8dd09c/charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:6515f3182dbe4ea06ced2d9e8666d97b46ef4c75e326b79bb624110f122551db", size = 161064, upload-time = "2025-10-14T04:40:26.806Z" },
109
- { url = "https://files.pythonhosted.org/packages/bb/9a/31d62b611d901c3b9e5500c36aab0ff5eb442043fb3a1c254200d3d397d9/charset_normalizer-3.4.4-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:cc00f04ed596e9dc0da42ed17ac5e596c6ccba999ba6bd92b0e0aef2f170f2d6", size = 155015, upload-time = "2025-10-14T04:40:28.284Z" },
110
- { url = "https://files.pythonhosted.org/packages/1f/f3/107e008fa2bff0c8b9319584174418e5e5285fef32f79d8ee6a430d0039c/charset_normalizer-3.4.4-cp310-cp310-win32.whl", hash = "sha256:f34be2938726fc13801220747472850852fe6b1ea75869a048d6f896838c896f", size = 99792, upload-time = "2025-10-14T04:40:29.613Z" },
111
- { url = "https://files.pythonhosted.org/packages/eb/66/e396e8a408843337d7315bab30dbf106c38966f1819f123257f5520f8a96/charset_normalizer-3.4.4-cp310-cp310-win_amd64.whl", hash = "sha256:a61900df84c667873b292c3de315a786dd8dac506704dea57bc957bd31e22c7d", size = 107198, upload-time = "2025-10-14T04:40:30.644Z" },
112
- { url = "https://files.pythonhosted.org/packages/b5/58/01b4f815bf0312704c267f2ccb6e5d42bcc7752340cd487bc9f8c3710597/charset_normalizer-3.4.4-cp310-cp310-win_arm64.whl", hash = "sha256:cead0978fc57397645f12578bfd2d5ea9138ea0fac82b2f63f7f7c6877986a69", size = 100262, upload-time = "2025-10-14T04:40:32.108Z" },
113
90
  { url = "https://files.pythonhosted.org/packages/ed/27/c6491ff4954e58a10f69ad90aca8a1b6fe9c5d3c6f380907af3c37435b59/charset_normalizer-3.4.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6e1fcf0720908f200cd21aa4e6750a48ff6ce4afe7ff5a79a90d5ed8a08296f8", size = 206988, upload-time = "2025-10-14T04:40:33.79Z" },
114
91
  { url = "https://files.pythonhosted.org/packages/94/59/2e87300fe67ab820b5428580a53cad894272dbb97f38a7a814a2a1ac1011/charset_normalizer-3.4.4-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5f819d5fe9234f9f82d75bdfa9aef3a3d72c4d24a6e57aeaebba32a704553aa0", size = 147324, upload-time = "2025-10-14T04:40:34.961Z" },
115
92
  { url = "https://files.pythonhosted.org/packages/07/fb/0cf61dc84b2b088391830f6274cb57c82e4da8bbc2efeac8c025edb88772/charset_normalizer-3.4.4-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:a59cb51917aa591b1c4e6a43c132f0cdc3c76dbad6155df4e28ee626cc77a0a3", size = 142742, upload-time = "2025-10-14T04:40:36.105Z" },
@@ -204,18 +181,6 @@ version = "7.11.0"
204
181
  source = { registry = "https://pypi.org/simple" }
205
182
  sdist = { url = "https://files.pythonhosted.org/packages/1c/38/ee22495420457259d2f3390309505ea98f98a5eed40901cf62196abad006/coverage-7.11.0.tar.gz", hash = "sha256:167bd504ac1ca2af7ff3b81d245dfea0292c5032ebef9d66cc08a7d28c1b8050", size = 811905, upload-time = "2025-10-15T15:15:08.542Z" }
206
183
  wheels = [
207
- { url = "https://files.pythonhosted.org/packages/12/95/c49df0aceb5507a80b9fe5172d3d39bf23f05be40c23c8d77d556df96cec/coverage-7.11.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:eb53f1e8adeeb2e78962bade0c08bfdc461853c7969706ed901821e009b35e31", size = 215800, upload-time = "2025-10-15T15:12:19.824Z" },
208
- { url = "https://files.pythonhosted.org/packages/dc/c6/7bb46ce01ed634fff1d7bb53a54049f539971862cc388b304ff3c51b4f66/coverage-7.11.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d9a03ec6cb9f40a5c360f138b88266fd8f58408d71e89f536b4f91d85721d075", size = 216198, upload-time = "2025-10-15T15:12:22.549Z" },
209
- { url = "https://files.pythonhosted.org/packages/94/b2/75d9d8fbf2900268aca5de29cd0a0fe671b0f69ef88be16767cc3c828b85/coverage-7.11.0-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:0d7f0616c557cbc3d1c2090334eddcbb70e1ae3a40b07222d62b3aa47f608fab", size = 242953, upload-time = "2025-10-15T15:12:24.139Z" },
210
- { url = "https://files.pythonhosted.org/packages/65/ac/acaa984c18f440170525a8743eb4b6c960ace2dbad80dc22056a437fc3c6/coverage-7.11.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:e44a86a47bbdf83b0a3ea4d7df5410d6b1a0de984fbd805fa5101f3624b9abe0", size = 244766, upload-time = "2025-10-15T15:12:25.974Z" },
211
- { url = "https://files.pythonhosted.org/packages/d8/0d/938d0bff76dfa4a6b228c3fc4b3e1c0e2ad4aa6200c141fcda2bd1170227/coverage-7.11.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:596763d2f9a0ee7eec6e643e29660def2eef297e1de0d334c78c08706f1cb785", size = 246625, upload-time = "2025-10-15T15:12:27.387Z" },
212
- { url = "https://files.pythonhosted.org/packages/38/54/8f5f5e84bfa268df98f46b2cb396b1009734cfb1e5d6adb663d284893b32/coverage-7.11.0-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:ef55537ff511b5e0a43edb4c50a7bf7ba1c3eea20b4f49b1490f1e8e0e42c591", size = 243568, upload-time = "2025-10-15T15:12:28.799Z" },
213
- { url = "https://files.pythonhosted.org/packages/68/30/8ba337c2877fe3f2e1af0ed7ff4be0c0c4aca44d6f4007040f3ca2255e99/coverage-7.11.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:9cbabd8f4d0d3dc571d77ae5bdbfa6afe5061e679a9d74b6797c48d143307088", size = 244665, upload-time = "2025-10-15T15:12:30.297Z" },
214
- { url = "https://files.pythonhosted.org/packages/cc/fb/c6f1d6d9a665536b7dde2333346f0cc41dc6a60bd1ffc10cd5c33e7eb000/coverage-7.11.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e24045453384e0ae2a587d562df2a04d852672eb63051d16096d3f08aa4c7c2f", size = 242681, upload-time = "2025-10-15T15:12:32.326Z" },
215
- { url = "https://files.pythonhosted.org/packages/be/38/1b532319af5f991fa153c20373291dc65c2bf532af7dbcffdeef745c8f79/coverage-7.11.0-cp310-cp310-musllinux_1_2_riscv64.whl", hash = "sha256:7161edd3426c8d19bdccde7d49e6f27f748f3c31cc350c5de7c633fea445d866", size = 242912, upload-time = "2025-10-15T15:12:34.079Z" },
216
- { url = "https://files.pythonhosted.org/packages/67/3d/f39331c60ef6050d2a861dc1b514fa78f85f792820b68e8c04196ad733d6/coverage-7.11.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:3d4ed4de17e692ba6415b0587bc7f12bc80915031fc9db46a23ce70fc88c9841", size = 243559, upload-time = "2025-10-15T15:12:35.809Z" },
217
- { url = "https://files.pythonhosted.org/packages/4b/55/cb7c9df9d0495036ce582a8a2958d50c23cd73f84a23284bc23bd4711a6f/coverage-7.11.0-cp310-cp310-win32.whl", hash = "sha256:765c0bc8fe46f48e341ef737c91c715bd2a53a12792592296a095f0c237e09cf", size = 218266, upload-time = "2025-10-15T15:12:37.429Z" },
218
- { url = "https://files.pythonhosted.org/packages/68/a8/b79cb275fa7bd0208767f89d57a1b5f6ba830813875738599741b97c2e04/coverage-7.11.0-cp310-cp310-win_amd64.whl", hash = "sha256:24d6f3128f1b2d20d84b24f4074475457faedc3d4613a7e66b5e769939c7d969", size = 219169, upload-time = "2025-10-15T15:12:39.25Z" },
219
184
  { url = "https://files.pythonhosted.org/packages/49/3a/ee1074c15c408ddddddb1db7dd904f6b81bc524e01f5a1c5920e13dbde23/coverage-7.11.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3d58ecaa865c5b9fa56e35efc51d1014d4c0d22838815b9fce57a27dd9576847", size = 215912, upload-time = "2025-10-15T15:12:40.665Z" },
220
185
  { url = "https://files.pythonhosted.org/packages/70/c4/9f44bebe5cb15f31608597b037d78799cc5f450044465bcd1ae8cb222fe1/coverage-7.11.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b679e171f1c104a5668550ada700e3c4937110dbdd153b7ef9055c4f1a1ee3cc", size = 216310, upload-time = "2025-10-15T15:12:42.461Z" },
221
186
  { url = "https://files.pythonhosted.org/packages/42/01/5e06077cfef92d8af926bdd86b84fb28bf9bc6ad27343d68be9b501d89f2/coverage-7.11.0-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:ca61691ba8c5b6797deb221a0d09d7470364733ea9c69425a640f1f01b7c5bf0", size = 246706, upload-time = "2025-10-15T15:12:44.001Z" },
@@ -304,32 +269,20 @@ toml = [
304
269
 
305
270
  [[package]]
306
271
  name = "distlib"
307
- version = "0.4.0"
272
+ version = "0.4.4"
308
273
  source = { registry = "https://pypi.org/simple" }
309
- sdist = { url = "https://files.pythonhosted.org/packages/96/8e/709914eb2b5749865801041647dc7f4e6d00b549cfe88b65ca192995f07c/distlib-0.4.0.tar.gz", hash = "sha256:feec40075be03a04501a973d81f633735b4b69f98b05450592310c0f401a4e0d", size = 614605, upload-time = "2025-07-17T16:52:00.465Z" }
274
+ sdist = { url = "https://files.pythonhosted.org/packages/68/bc/d36966de7304047a1001a7559fbf266c464bb5d8cc85464536ef8c9bcc32/distlib-0.4.4.tar.gz", hash = "sha256:ca4175b4ac7f71223cc30ed7248c45d2b38c2439d8ee6e498ab67ed63cf3508d", size = 621304, upload-time = "2026-10-16T13:56:34.203Z" }
310
275
  wheels = [
311
- { url = "https://files.pythonhosted.org/packages/33/6b/e0547afaf41bf2c42e52430072fa5658766e3d65bd4b03a563d1b6336f57/distlib-0.4.0-py2.py3-none-any.whl", hash = "sha256:9659f7d87e46584a30b5780e43ac7a2143098441670ff0a49d5f9034c54a6c16", size = 469047, upload-time = "2025-07-17T16:51:58.613Z" },
312
- ]
313
-
314
- [[package]]
315
- name = "exceptiongroup"
316
- version = "1.3.0"
317
- source = { registry = "https://pypi.org/simple" }
318
- dependencies = [
319
- { name = "typing-extensions" },
320
- ]
321
- sdist = { url = "https://files.pythonhosted.org/packages/0b/9f/a65090624ecf468cdca03533906e7c69ed7588582240cfe7cc9e770b50eb/exceptiongroup-1.3.0.tar.gz", hash = "sha256:b241f5885f560bc56a59ee63ca4c6a8bfa46ae4ad651af316d4e81817bb9fd88", size = 29749, upload-time = "2025-05-10T17:42:51.123Z" }
322
- wheels = [
323
- { url = "https://files.pythonhosted.org/packages/36/f4/c6e662dade71f56cd2f3735141b265c3c79293c109549c1e6933b0651ffc/exceptiongroup-1.3.0-py3-none-any.whl", hash = "sha256:4d111e6e0c13d0644cad6ddaa7ed0261a0b36971f6d23e7ec9b4b9097da78a10", size = 16674, upload-time = "2025-05-10T17:42:49.33Z" },
276
+ { url = "https://files.pythonhosted.org/packages/c1/2b/238f02a4927fa2e27aa995371d240a468b52e42eae44a678434aff736b38/distlib-0.4.4-py2.py3-none-any.whl", hash = "sha256:cf09d55b1e85a89576b036aeb71550bfd68320f3f21761ca329eadadad918638", size = 472099, upload-time = "2026-10-16T13:56:32.053Z" },
324
277
  ]
325
278
 
326
279
  [[package]]
327
280
  name = "filelock"
328
- version = "3.25.2"
281
+ version = "4.2.4"
329
282
  source = { registry = "https://pypi.org/simple" }
330
- sdist = { url = "https://files.pythonhosted.org/packages/94/b8/00651a0f559862f3bb7d6f7477b192afe3f583cc5e26403b44e59a55ab34/filelock-3.25.2.tar.gz", hash = "sha256:b64ece2b38f4ca29dd3e810287aa8c48182bbecd1ae6e9ae126c9b35f1382694", size = 40480, upload-time = "2026-03-11T20:45:38.487Z" }
283
+ sdist = { url = "https://files.pythonhosted.org/packages/d8/28/3893324bcadf8f89b1616637468d766af3f625008c0735bf704fdfa86617/filelock-4.2.4.tar.gz", hash = "sha256:c6d8663535e1650ee430507b4ffbac7b464dd64b7647ea0112a9f406499d163d", size = 652444, upload-time = "2026-10-19T01:57:51.001Z" }
331
284
  wheels = [
332
- { url = "https://files.pythonhosted.org/packages/a4/a5/842ae8f0c08b61d6484b52f99a03510a3a72d23141942d216ebe81fefbce/filelock-3.25.2-py3-none-any.whl", hash = "sha256:ca8afb0da15f229774c9ad1b455ed96e85a81373065fb10446672f64444ddf70", size = 26759, upload-time = "2026-03-11T20:45:37.437Z" },
285
+ { url = "https://files.pythonhosted.org/packages/e0/1b/5e74289a1878e666bb4b65fe5805a04cafcac2aa5f519ef1ead67ef91c56/filelock-4.2.4-py3-none-any.whl", hash = "sha256:301241438c57936ef93f4243a94f2559022268bfcf9b375a9a72eb0f8db8358e", size = 162475, upload-time = "2026-10-19T01:57:49.419Z" },
333
286
  ]
334
287
 
335
288
  [[package]]
@@ -438,7 +391,6 @@ dependencies = [
438
391
  { name = "colorama" },
439
392
  { name = "py" },
440
393
  { name = "tabulate" },
441
- { name = "tomli", marker = "python_full_version < '3.11'" },
442
394
  ]
443
395
  sdist = { url = "https://files.pythonhosted.org/packages/8b/22/74f7fcc96280eea46cf2bcbfa1354ac31de0e60a4be6f7966f12cef20893/interrogate-1.7.0.tar.gz", hash = "sha256:a320d6ec644dfd887cc58247a345054fc4d9f981100c45184470068f4b3719b0", size = 159636, upload-time = "2024-04-07T22:30:46.217Z" }
444
396
  wheels = [
@@ -491,17 +443,10 @@ source = { registry = "https://pypi.org/simple" }
491
443
  dependencies = [
492
444
  { name = "mypy-extensions" },
493
445
  { name = "pathspec" },
494
- { name = "tomli", marker = "python_full_version < '3.11'" },
495
446
  { name = "typing-extensions" },
496
447
  ]
497
448
  sdist = { url = "https://files.pythonhosted.org/packages/c0/77/8f0d0001ffad290cef2f7f216f96c814866248a0b92a722365ed54648e7e/mypy-1.18.2.tar.gz", hash = "sha256:06a398102a5f203d7477b2923dda3634c36727fa5c237d8f859ef90c42a9924b", size = 3448846, upload-time = "2025-09-19T00:11:10.519Z" }
498
449
  wheels = [
499
- { url = "https://files.pythonhosted.org/packages/03/6f/657961a0743cff32e6c0611b63ff1c1970a0b482ace35b069203bf705187/mypy-1.18.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c1eab0cf6294dafe397c261a75f96dc2c31bffe3b944faa24db5def4e2b0f77c", size = 12807973, upload-time = "2025-09-19T00:10:35.282Z" },
500
- { url = "https://files.pythonhosted.org/packages/10/e9/420822d4f661f13ca8900f5fa239b40ee3be8b62b32f3357df9a3045a08b/mypy-1.18.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7a780ca61fc239e4865968ebc5240bb3bf610ef59ac398de9a7421b54e4a207e", size = 11896527, upload-time = "2025-09-19T00:10:55.791Z" },
501
- { url = "https://files.pythonhosted.org/packages/aa/73/a05b2bbaa7005f4642fcfe40fb73f2b4fb6bb44229bd585b5878e9a87ef8/mypy-1.18.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:448acd386266989ef11662ce3c8011fd2a7b632e0ec7d61a98edd8e27472225b", size = 12507004, upload-time = "2025-09-19T00:11:05.411Z" },
502
- { url = "https://files.pythonhosted.org/packages/4f/01/f6e4b9f0d031c11ccbd6f17da26564f3a0f3c4155af344006434b0a05a9d/mypy-1.18.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f9e171c465ad3901dc652643ee4bffa8e9fef4d7d0eece23b428908c77a76a66", size = 13245947, upload-time = "2025-09-19T00:10:46.923Z" },
503
- { url = "https://files.pythonhosted.org/packages/d7/97/19727e7499bfa1ae0773d06afd30ac66a58ed7437d940c70548634b24185/mypy-1.18.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:592ec214750bc00741af1f80cbf96b5013d81486b7bb24cb052382c19e40b428", size = 13499217, upload-time = "2025-09-19T00:09:39.472Z" },
504
- { url = "https://files.pythonhosted.org/packages/9f/4f/90dc8c15c1441bf31cf0f9918bb077e452618708199e530f4cbd5cede6ff/mypy-1.18.2-cp310-cp310-win_amd64.whl", hash = "sha256:7fb95f97199ea11769ebe3638c29b550b5221e997c63b14ef93d2e971606ebed", size = 9766753, upload-time = "2025-09-19T00:10:49.161Z" },
505
450
  { url = "https://files.pythonhosted.org/packages/88/87/cafd3ae563f88f94eec33f35ff722d043e09832ea8530ef149ec1efbaf08/mypy-1.18.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:807d9315ab9d464125aa9fcf6d84fde6e1dc67da0b6f80e7405506b8ac72bc7f", size = 12731198, upload-time = "2025-09-19T00:09:44.857Z" },
506
451
  { url = "https://files.pythonhosted.org/packages/0f/e0/1e96c3d4266a06d4b0197ace5356d67d937d8358e2ee3ffac71faa843724/mypy-1.18.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:776bb00de1778caf4db739c6e83919c1d85a448f71979b6a0edd774ea8399341", size = 11817879, upload-time = "2025-09-19T00:09:47.131Z" },
507
452
  { url = "https://files.pythonhosted.org/packages/72/ef/0c9ba89eb03453e76bdac5a78b08260a848c7bfc5d6603634774d9cd9525/mypy-1.18.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1379451880512ffce14505493bd9fe469e0697543717298242574882cf8cdb8d", size = 12427292, upload-time = "2025-09-19T00:10:22.472Z" },
@@ -549,11 +494,11 @@ wheels = [
549
494
 
550
495
  [[package]]
551
496
  name = "packaging"
552
- version = "25.0"
497
+ version = "26.3"
553
498
  source = { registry = "https://pypi.org/simple" }
554
- sdist = { url = "https://files.pythonhosted.org/packages/a1/d4/1fc4078c65507b51b96ca8f8c3ba19e6a61c8253c72794544580a7b6c24d/packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f", size = 165727, upload-time = "2025-04-19T11:48:59.673Z" }
499
+ sdist = { url = "https://files.pythonhosted.org/packages/7d/fa/3944b40b07da9ce895c0e6303a5ab7d53da063554f534556b134a54d6093/packaging-26.3.tar.gz", hash = "sha256:94edc256424af38762eb31306eed28beb9f0efc50a8837492c9d6fd6004aed79", size = 313412, upload-time = "2026-08-04T18:15:28.737Z" }
555
500
  wheels = [
556
- { url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484", size = 66469, upload-time = "2025-04-19T11:48:57.875Z" },
501
+ { url = "https://files.pythonhosted.org/packages/63/34/ba1c580383c9eada3711951fef0795c80b829a078d72188184bcab9dd527/packaging-26.3-py3-none-any.whl", hash = "sha256:d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c", size = 129956, upload-time = "2026-08-04T18:15:27.159Z" },
557
502
  ]
558
503
 
559
504
  [[package]]
@@ -623,12 +568,6 @@ version = "7.45.7"
623
568
  source = { registry = "https://pypi.org/simple" }
624
569
  sdist = { url = "https://files.pythonhosted.org/packages/e3/3d/01255f1cde24401f54bb3727d0e5d3396b67fc04964f287d5d473155f176/pycurl-7.45.7.tar.gz", hash = "sha256:9d43013002eab2fd6d0dcc671cd1e9149e2fc1c56d5e796fad94d076d6cb69ef", size = 241098, upload-time = "2025-09-24T13:37:17.067Z" }
625
570
  wheels = [
626
- { url = "https://files.pythonhosted.org/packages/37/c9/e4184b4d50b5e6ebfc2a8a3076171f09a404736d789e8cc2429c120c9730/pycurl-7.45.7-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c21c3262244f7b2af27636bc1052cb861a70df933b8bc188a7fb8fe3c895b608", size = 3796067, upload-time = "2025-09-24T13:35:56.249Z" },
627
- { url = "https://files.pythonhosted.org/packages/60/99/808de664fe4ce041f5d660d04222b2c80bdf28d621cca186a570da881b48/pycurl-7.45.7-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9903eabe2578143487d2387947d28323e12df49e142ffb0e3b5709fc6c942c47", size = 3903386, upload-time = "2025-09-24T13:35:58.234Z" },
628
- { url = "https://files.pythonhosted.org/packages/83/66/b962cc586ea1a593af9ba43e0ac5c9b632bebe5d6441bde281db5f6879dc/pycurl-7.45.7-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:fb97f8f3f7754a5a00da450248de79d83e34938db04486efd26db81526dc25b4", size = 5173438, upload-time = "2025-09-24T13:36:00.061Z" },
629
- { url = "https://files.pythonhosted.org/packages/9c/bc/1bf01ca26724f1df389142219acf4c56493219f91b844230a705ef49b457/pycurl-7.45.7-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:26fcc5b982fdc7c49ab9dd84910e986ef2631f1b57e02ecefd5393366f7acbe6", size = 4876980, upload-time = "2025-09-24T13:36:02.133Z" },
630
- { url = "https://files.pythonhosted.org/packages/59/c9/61139320188d3806dbff4a9cf0b565c5ad1e8169ff7597d80d28d6100f53/pycurl-7.45.7-cp310-cp310-win32.whl", hash = "sha256:38492a48bd51252b70d6008b2f38a62b8ddb55ed7d4c905717eca290c94ef125", size = 2738552, upload-time = "2025-09-24T13:36:03.755Z" },
631
- { url = "https://files.pythonhosted.org/packages/85/42/e4d89ed4593bed2c7ccfec972351fa6e54fd02082a04e01e247d16c74df3/pycurl-7.45.7-cp310-cp310-win_amd64.whl", hash = "sha256:2101c343f425545d8329004971d3549a1c553fb2b027c23ddfffebdd7b3fb309", size = 3299529, upload-time = "2025-09-24T13:36:05.406Z" },
632
571
  { url = "https://files.pythonhosted.org/packages/b9/b1/923d75ec2bcb39bef889ce47f706ab07fbb050ac528712af586acd641028/pycurl-7.45.7-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f17264adc95a7f92a148d17c55eee885da640cbd98cf9169e643029d79bb18c7", size = 3795020, upload-time = "2025-09-24T13:36:07.115Z" },
633
572
  { url = "https://files.pythonhosted.org/packages/92/f9/edf6965ab5260257fad3ba962474908150ca45125b415a561ec710f6b5b6/pycurl-7.45.7-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:0bcfeaf766372ec40e3830d4ad6ebc3064e8a0bd145214d4291d17ed6017f3e3", size = 3902808, upload-time = "2025-09-24T13:36:08.827Z" },
634
573
  { url = "https://files.pythonhosted.org/packages/a4/61/2c3aea6481d9012e9b8e7264225ac57a3fa03ff02b1b6c3a4e89a8b78bdf/pycurl-7.45.7-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:788df7ab964f03894c616e742e088f1bf209a54465f61541ba77901a9e1cd701", size = 5178287, upload-time = "2025-09-24T13:36:10.613Z" },
@@ -685,12 +624,10 @@ version = "9.0.3"
685
624
  source = { registry = "https://pypi.org/simple" }
686
625
  dependencies = [
687
626
  { name = "colorama", marker = "sys_platform == 'win32'" },
688
- { name = "exceptiongroup", marker = "python_full_version < '3.11'" },
689
627
  { name = "iniconfig" },
690
628
  { name = "packaging" },
691
629
  { name = "pluggy" },
692
630
  { name = "pygments" },
693
- { name = "tomli", marker = "python_full_version < '3.11'" },
694
631
  ]
695
632
  sdist = { url = "https://files.pythonhosted.org/packages/7d/0d/549bd94f1a0a402dc8cf64563a117c0f3765662e2e668477624baeec44d5/pytest-9.0.3.tar.gz", hash = "sha256:b86ada508af81d19edeb213c681b1d48246c1a91d304c6c81a427674c17eb91c", size = 1572165, upload-time = "2026-04-07T17:16:18.027Z" }
696
633
  wheels = [
@@ -729,11 +666,6 @@ version = "0.4.1"
729
666
  source = { registry = "https://pypi.org/simple" }
730
667
  sdist = { url = "https://files.pythonhosted.org/packages/b6/34/b4e015b99031667a7b960f888889c5bd34ef585c85e1cb56a594b92836ac/pytokens-0.4.1.tar.gz", hash = "sha256:292052fe80923aae2260c073f822ceba21f3872ced9a68bb7953b348e561179a", size = 23015, upload-time = "2026-01-30T01:03:45.924Z" }
731
668
  wheels = [
732
- { url = "https://files.pythonhosted.org/packages/42/24/f206113e05cb8ef51b3850e7ef88f20da6f4bf932190ceb48bd3da103e10/pytokens-0.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2a44ed93ea23415c54f3face3b65ef2b844d96aeb3455b8a69b3df6beab6acc5", size = 161522, upload-time = "2026-01-30T01:02:50.393Z" },
733
- { url = "https://files.pythonhosted.org/packages/d4/e9/06a6bf1b90c2ed81a9c7d2544232fe5d2891d1cd480e8a1809ca354a8eb2/pytokens-0.4.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:add8bf86b71a5d9fb5b89f023a80b791e04fba57960aa790cc6125f7f1d39dfe", size = 246945, upload-time = "2026-01-30T01:02:52.399Z" },
734
- { url = "https://files.pythonhosted.org/packages/69/66/f6fb1007a4c3d8b682d5d65b7c1fb33257587a5f782647091e3408abe0b8/pytokens-0.4.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:670d286910b531c7b7e3c0b453fd8156f250adb140146d234a82219459b9640c", size = 259525, upload-time = "2026-01-30T01:02:53.737Z" },
735
- { url = "https://files.pythonhosted.org/packages/04/92/086f89b4d622a18418bac74ab5db7f68cf0c21cf7cc92de6c7b919d76c88/pytokens-0.4.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:4e691d7f5186bd2842c14813f79f8884bb03f5995f0575272009982c5ac6c0f7", size = 262693, upload-time = "2026-01-30T01:02:54.871Z" },
736
- { url = "https://files.pythonhosted.org/packages/b4/7b/8b31c347cf94a3f900bdde750b2e9131575a61fdb620d3d3c75832262137/pytokens-0.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:27b83ad28825978742beef057bfe406ad6ed524b2d28c252c5de7b4a6dd48fa2", size = 103567, upload-time = "2026-01-30T01:02:56.414Z" },
737
669
  { url = "https://files.pythonhosted.org/packages/3d/92/790ebe03f07b57e53b10884c329b9a1a308648fc083a6d4a39a10a28c8fc/pytokens-0.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d70e77c55ae8380c91c0c18dea05951482e263982911fc7410b1ffd1dadd3440", size = 160864, upload-time = "2026-01-30T01:02:57.882Z" },
738
670
  { url = "https://files.pythonhosted.org/packages/13/25/a4f555281d975bfdd1eba731450e2fe3a95870274da73fb12c40aeae7625/pytokens-0.4.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4a58d057208cb9075c144950d789511220b07636dd2e4708d5645d24de666bdc", size = 248565, upload-time = "2026-01-30T01:02:59.912Z" },
739
671
  { url = "https://files.pythonhosted.org/packages/17/50/bc0394b4ad5b1601be22fa43652173d47e4c9efbf0044c62e9a59b747c56/pytokens-0.4.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b49750419d300e2b5a3813cf229d4e5a4c728dae470bcc89867a9ad6f25a722d", size = 260824, upload-time = "2026-01-30T01:03:01.471Z" },
@@ -768,15 +700,6 @@ version = "6.0.3"
768
700
  source = { registry = "https://pypi.org/simple" }
769
701
  sdist = { url = "https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz", hash = "sha256:d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f", size = 130960, upload-time = "2025-09-25T21:33:16.546Z" }
770
702
  wheels = [
771
- { url = "https://files.pythonhosted.org/packages/f4/a0/39350dd17dd6d6c6507025c0e53aef67a9293a6d37d3511f23ea510d5800/pyyaml-6.0.3-cp310-cp310-macosx_10_13_x86_64.whl", hash = "sha256:214ed4befebe12df36bcc8bc2b64b396ca31be9304b8f59e25c11cf94a4c033b", size = 184227, upload-time = "2025-09-25T21:31:46.04Z" },
772
- { url = "https://files.pythonhosted.org/packages/05/14/52d505b5c59ce73244f59c7a50ecf47093ce4765f116cdb98286a71eeca2/pyyaml-6.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:02ea2dfa234451bbb8772601d7b8e426c2bfa197136796224e50e35a78777956", size = 174019, upload-time = "2025-09-25T21:31:47.706Z" },
773
- { url = "https://files.pythonhosted.org/packages/43/f7/0e6a5ae5599c838c696adb4e6330a59f463265bfa1e116cfd1fbb0abaaae/pyyaml-6.0.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b30236e45cf30d2b8e7b3e85881719e98507abed1011bf463a8fa23e9c3e98a8", size = 740646, upload-time = "2025-09-25T21:31:49.21Z" },
774
- { url = "https://files.pythonhosted.org/packages/2f/3a/61b9db1d28f00f8fd0ae760459a5c4bf1b941baf714e207b6eb0657d2578/pyyaml-6.0.3-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:66291b10affd76d76f54fad28e22e51719ef9ba22b29e1d7d03d6777a9174198", size = 840793, upload-time = "2025-09-25T21:31:50.735Z" },
775
- { url = "https://files.pythonhosted.org/packages/7a/1e/7acc4f0e74c4b3d9531e24739e0ab832a5edf40e64fbae1a9c01941cabd7/pyyaml-6.0.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9c7708761fccb9397fe64bbc0395abcae8c4bf7b0eac081e12b809bf47700d0b", size = 770293, upload-time = "2025-09-25T21:31:51.828Z" },
776
- { url = "https://files.pythonhosted.org/packages/8b/ef/abd085f06853af0cd59fa5f913d61a8eab65d7639ff2a658d18a25d6a89d/pyyaml-6.0.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:418cf3f2111bc80e0933b2cd8cd04f286338bb88bdc7bc8e6dd775ebde60b5e0", size = 732872, upload-time = "2025-09-25T21:31:53.282Z" },
777
- { url = "https://files.pythonhosted.org/packages/1f/15/2bc9c8faf6450a8b3c9fc5448ed869c599c0a74ba2669772b1f3a0040180/pyyaml-6.0.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:5e0b74767e5f8c593e8c9b5912019159ed0533c70051e9cce3e8b6aa699fcd69", size = 758828, upload-time = "2025-09-25T21:31:54.807Z" },
778
- { url = "https://files.pythonhosted.org/packages/a3/00/531e92e88c00f4333ce359e50c19b8d1de9fe8d581b1534e35ccfbc5f393/pyyaml-6.0.3-cp310-cp310-win32.whl", hash = "sha256:28c8d926f98f432f88adc23edf2e6d4921ac26fb084b028c733d01868d19007e", size = 142415, upload-time = "2025-09-25T21:31:55.885Z" },
779
- { url = "https://files.pythonhosted.org/packages/2a/fa/926c003379b19fca39dd4634818b00dec6c62d87faf628d1394e137354d4/pyyaml-6.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:bdb2c67c6c1390b63c6ff89f210c8fd09d9a1217a465701eac7316313c915e4c", size = 158561, upload-time = "2025-09-25T21:31:57.406Z" },
780
703
  { url = "https://files.pythonhosted.org/packages/6d/16/a95b6757765b7b031c9374925bb718d55e0a9ba8a1b6a12d25962ea44347/pyyaml-6.0.3-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:44edc647873928551a01e7a563d7452ccdebee747728c1080d881d68af7b997e", size = 185826, upload-time = "2025-09-25T21:31:58.655Z" },
781
704
  { url = "https://files.pythonhosted.org/packages/16/19/13de8e4377ed53079ee996e1ab0a9c33ec2faf808a4647b7b4c0d46dd239/pyyaml-6.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:652cb6edd41e718550aad172851962662ff2681490a8a711af6a4d288dd96824", size = 175577, upload-time = "2025-09-25T21:32:00.088Z" },
782
705
  { url = "https://files.pythonhosted.org/packages/0c/62/d2eb46264d4b157dae1275b573017abec435397aa59cbcdab6fc978a8af4/pyyaml-6.0.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:10892704fc220243f5305762e276552a0395f7beb4dbf9b14ec8fd43b57f126c", size = 775556, upload-time = "2025-09-25T21:32:01.31Z" },
@@ -961,11 +884,11 @@ wheels = [
961
884
 
962
885
  [[package]]
963
886
  name = "typing-extensions"
964
- version = "4.15.0"
887
+ version = "4.16.0"
965
888
  source = { registry = "https://pypi.org/simple" }
966
- sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391, upload-time = "2025-08-25T13:49:26.313Z" }
889
+ sdist = { url = "https://files.pythonhosted.org/packages/f6/cc/6253133b5bb138fc3306cebfbda2c520f545d36b5be2c7255cc528bb45d6/typing_extensions-4.16.0.tar.gz", hash = "sha256:dc983d19a509c94dba722ee6abd33940f7c05a89e243c47e907eb4db6f1a43e5", size = 113555, upload-time = "2026-07-02T08:40:05.92Z" }
967
890
  wheels = [
968
- { url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614, upload-time = "2025-08-25T13:49:24.86Z" },
891
+ { url = "https://files.pythonhosted.org/packages/49/d3/b8441a820a491ddfc024b0b0cf0393375b75ea13866d9c66727e54c2fc80/typing_extensions-4.16.0-py3-none-any.whl", hash = "sha256:481caa481374e813c1b176ada14e97f1f67a4539ce9cfeb3f350d78d6370c2e8", size = 45571, upload-time = "2026-07-02T08:40:04.659Z" },
969
892
  ]
970
893
 
971
894
  [[package]]
@@ -979,16 +902,16 @@ wheels = [
979
902
 
980
903
  [[package]]
981
904
  name = "virtualenv"
982
- version = "21.7.13"
905
+ version = "21.14.9"
983
906
  source = { registry = "https://pypi.org/simple" }
984
907
  dependencies = [
985
908
  { name = "distlib" },
986
909
  { name = "filelock" },
910
+ { name = "packaging" },
987
911
  { name = "platformdirs" },
988
912
  { name = "python-discovery" },
989
- { name = "typing-extensions", marker = "python_full_version < '3.11'" },
990
913
  ]
991
- sdist = { url = "https://files.pythonhosted.org/packages/13/50/c9b84eb106d0db420b9878dac0a386c5791726f127ce20b06897f6e3a1e9/virtualenv-21.7.13.tar.gz", hash = "sha256:0355558b6f33619aab31347e43643b0ebc97f61ea3acf617b2b69e1f8a843d11", size = 5360306, upload-time = "2026-09-18T04:35:49.354Z" }
914
+ sdist = { url = "https://files.pythonhosted.org/packages/d0/04/2f69ba1207ce59630ecea8ebfdaf5c8f9a14726f2408ccd145a18d1ef619/virtualenv-21.14.9.tar.gz", hash = "sha256:4d1bee354cd81c820da3bee56e38be3426490f8d1fc54e10ea5b2072ebad8ef8", size = 5500672, upload-time = "2026-10-17T16:09:42.345Z" }
992
915
  wheels = [
993
- { url = "https://files.pythonhosted.org/packages/9a/ce/e74453531b0c49a58d0e8a4f9bab4495705859fee4a4f7de27d58f4a791a/virtualenv-21.7.13-py3-none-any.whl", hash = "sha256:1bea5af7463f59c4719db48fe739579a2a4f569c96f26c086edda85c96da9f59", size = 5328680, upload-time = "2026-09-18T04:35:47.194Z" },
916
+ { url = "https://files.pythonhosted.org/packages/64/e5/9a3918219745e8bdd64fe0fd9a2d7ce4fffde9268fbc791634b7d4779de9/virtualenv-21.14.9-py3-none-any.whl", hash = "sha256:ac51744da66ae56ff814b087d65096c94de698ec520adc624b108b679655809b", size = 5494452, upload-time = "2026-10-17T16:09:40.584Z" },
994
917
  ]
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