socketsecurity 2.6.8__tar.gz → 2.6.10__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 (160) hide show
  1. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/actions/setup-sfw/action.yml +1 -1
  2. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/workflows/e2e-test.yml +1 -1
  3. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/CHANGELOG.md +16 -0
  4. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/PKG-INFO +8 -8
  5. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/docs/cli-reference.md +1 -1
  6. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/pyproject.toml +8 -8
  7. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/__init__.py +1 -1
  8. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/tools/reachability.py +3 -3
  9. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/uv.lock +62 -62
  10. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/CODEOWNERS +0 -0
  11. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/PULL_REQUEST_TEMPLATE/bug-fix.md +0 -0
  12. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/PULL_REQUEST_TEMPLATE/feature.md +0 -0
  13. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/PULL_REQUEST_TEMPLATE/improvement.md +0 -0
  14. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  15. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/actions/setup-docker/action.yml +0 -0
  16. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/actions/setup-hatch/action.yml +0 -0
  17. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/dependabot.yml +0 -0
  18. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/workflows/dependency-review.yml +0 -0
  19. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/workflows/docker-stable.yml +0 -0
  20. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/workflows/package-check.yml +0 -0
  21. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/workflows/pr-preview.yml +0 -0
  22. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/workflows/python-tests.yml +0 -0
  23. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/workflows/release.yml +0 -0
  24. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/workflows/version-check.yml +0 -0
  25. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.github/zizmor.yml +0 -0
  26. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.gitignore +0 -0
  27. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.hooks/sync_version.py +0 -0
  28. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.pre-commit-config.yaml +0 -0
  29. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/.python-version +0 -0
  30. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/CONTRIBUTING.md +0 -0
  31. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/Dockerfile +0 -0
  32. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/Dockerfile.preview +0 -0
  33. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/LICENSE +0 -0
  34. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/Makefile +0 -0
  35. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/README.md +0 -0
  36. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/benchmarks/manifest_discovery.py +0 -0
  37. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/docs/ci-cd.md +0 -0
  38. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/docs/development.md +0 -0
  39. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/docs/troubleshooting.md +0 -0
  40. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/examples/config/sarif-dashboard-parity.json +0 -0
  41. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/examples/config/sarif-dashboard-parity.toml +0 -0
  42. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/examples/config/sarif-diff-ci-cd.json +0 -0
  43. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/examples/config/sarif-diff-ci-cd.toml +0 -0
  44. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/examples/config/sarif-instance-detail.json +0 -0
  45. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/examples/config/sarif-instance-detail.toml +0 -0
  46. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/instructions/gitlab-commit-status/uat.md +0 -0
  47. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/pytest.ini +0 -0
  48. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/scripts/build_container.sh +0 -0
  49. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/scripts/build_container_flexible.sh +0 -0
  50. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/scripts/deploy-test-docker.sh +0 -0
  51. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/scripts/deploy-test-pypi.sh +0 -0
  52. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/scripts/docker-entrypoint.sh +0 -0
  53. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/scripts/run.sh +0 -0
  54. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/session.md +0 -0
  55. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socket.yml +0 -0
  56. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/config.py +0 -0
  57. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/__init__.py +0 -0
  58. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/alert_selection.py +0 -0
  59. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/classes.py +0 -0
  60. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/cli_client.py +0 -0
  61. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/cli_run.py +0 -0
  62. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/exceptions.py +0 -0
  63. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/git_interface.py +0 -0
  64. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/helper/__init__.py +0 -0
  65. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/helper/socket_facts_loader.py +0 -0
  66. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/lazy_file_loader.py +0 -0
  67. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/log_uploader.py +0 -0
  68. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/logging.py +0 -0
  69. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/messages.py +0 -0
  70. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/resource_utils.py +0 -0
  71. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/scm/__init__.py +0 -0
  72. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/scm/base.py +0 -0
  73. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/scm/client.py +0 -0
  74. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/scm/github.py +0 -0
  75. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/scm/gitlab.py +0 -0
  76. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/scm_comments.py +0 -0
  77. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/socket_config.py +0 -0
  78. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/streaming.py +0 -0
  79. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/core/utils.py +0 -0
  80. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/fossa_compat.py +0 -0
  81. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/output.py +0 -0
  82. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/plugins/__init__.py +0 -0
  83. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/plugins/base.py +0 -0
  84. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/plugins/formatters/__init__.py +0 -0
  85. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/plugins/formatters/slack.py +0 -0
  86. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/plugins/jira.py +0 -0
  87. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/plugins/manager.py +0 -0
  88. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/plugins/slack.py +0 -0
  89. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/plugins/teams.py +0 -0
  90. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/plugins/webhook.py +0 -0
  91. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/socketsecurity/socketcli.py +0 -0
  92. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/__init__.py +0 -0
  93. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/core/conftest.py +0 -0
  94. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/core/create_diff_input.json +0 -0
  95. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/core/test_diff_alerts.py +0 -0
  96. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/core/test_diff_generation.py +0 -0
  97. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/core/test_diff_scan_polling.py +0 -0
  98. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/core/test_facts_compression.py +0 -0
  99. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/core/test_has_manifest_files.py +0 -0
  100. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/core/test_package_and_alerts.py +0 -0
  101. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/core/test_sdk_methods.py +0 -0
  102. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/core/test_supporting_methods.py +0 -0
  103. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/fullscans/create_response.json +0 -0
  104. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/fullscans/diff/stream_diff.json +0 -0
  105. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/fullscans/diff/stream_diff_full.json +0 -0
  106. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/fullscans/head_scan/metadata.json +0 -0
  107. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/fullscans/head_scan/stream_scan.json +0 -0
  108. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/fullscans/head_scan/stream_scan_full.json +0 -0
  109. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/fullscans/new_scan/metadata.json +0 -0
  110. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/fullscans/new_scan/stream_scan.json +0 -0
  111. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/repos/repo_info_error.json +0 -0
  112. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/repos/repo_info_no_head.json +0 -0
  113. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/repos/repo_info_success.json +0 -0
  114. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/data/settings/security-policy.json +0 -0
  115. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/e2e/fixtures/simple-npm/index.js +0 -0
  116. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/e2e/fixtures/simple-npm/package.json +0 -0
  117. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/e2e/fixtures/simple-pypi/requirements.txt +0 -0
  118. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/e2e/reach-facts-probe.sh +0 -0
  119. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/e2e/validate-gitlab.sh +0 -0
  120. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/e2e/validate-json.sh +0 -0
  121. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/e2e/validate-reachability.sh +0 -0
  122. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/e2e/validate-sarif.sh +0 -0
  123. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/e2e/validate-scan.sh +0 -0
  124. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/fixtures/fossa/README.md +0 -0
  125. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/fixtures/fossa/fossa-analyze-empty.json +0 -0
  126. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/fixtures/fossa/fossa-analyze-populated.json +0 -0
  127. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/fixtures/fossa/fossa-sbom-empty-deep.json +0 -0
  128. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/fixtures/fossa/fossa-sbom-populated.json +0 -0
  129. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/__init__.py +0 -0
  130. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_alert_selection.py +0 -0
  131. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_cli_config.py +0 -0
  132. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_cli_run.py +0 -0
  133. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_client.py +0 -0
  134. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_config.py +0 -0
  135. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_dependency_overview.py +0 -0
  136. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_disable_ignore.py +0 -0
  137. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_exclude_paths.py +0 -0
  138. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_fossa_compat.py +0 -0
  139. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_fossa_parity.py +0 -0
  140. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_full_scan_retry.py +0 -0
  141. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_git_interface.py +0 -0
  142. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_github_buildkite_config.py +0 -0
  143. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_gitlab_auth.py +0 -0
  144. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_gitlab_auth_fallback.py +0 -0
  145. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_gitlab_commit_status.py +0 -0
  146. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_gitlab_format.py +0 -0
  147. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_ignore_telemetry_filtering.py +0 -0
  148. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_include_dirs.py +0 -0
  149. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_log_uploader.py +0 -0
  150. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_manifest_discovery.py +0 -0
  151. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_output.py +0 -0
  152. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_reachability.py +0 -0
  153. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_slack_plugin.py +0 -0
  154. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_socketcli.py +0 -0
  155. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_streaming.py +0 -0
  156. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/tests/unit/test_tier1_finalize.py +0 -0
  157. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/workflows/bitbucket-pipelines.yml +0 -0
  158. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/workflows/buildkite.yml +0 -0
  159. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/workflows/github-actions.yml +0 -0
  160. {socketsecurity-2.6.8 → socketsecurity-2.6.10}/workflows/gitlab-ci.yml +0 -0
@@ -32,7 +32,7 @@ runs:
32
32
  python-version: "3.12"
33
33
 
34
34
  - if: ${{ inputs.node == 'true' }}
35
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
35
+ uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
36
36
  with:
37
37
  node-version: "20"
38
38
 
@@ -84,7 +84,7 @@ jobs:
84
84
  with:
85
85
  python-version: '3.12'
86
86
 
87
- - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
87
+ - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
88
88
  if: matrix.setup-node == 'true'
89
89
  with:
90
90
  node-version: '20'
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.6.10
4
+
5
+ ### Changed: bump pinned @coana-tech/cli to 15.10.28
6
+
7
+ - Bumped the pinned reachability engine (`@coana-tech/cli`) from `15.10.27` to
8
+ `15.10.28`. See the [Coana changelogs](https://docs.coana.tech/changelogs) for
9
+ engine changes.
10
+
11
+ ## 2.6.9
12
+
13
+ ### Changed: bump pinned @coana-tech/cli to 15.10.27
14
+
15
+ - Bumped the pinned reachability engine (`@coana-tech/cli`) from `15.10.25` to
16
+ `15.10.27`. See the [Coana changelogs](https://docs.coana.tech/changelogs) for
17
+ engine changes.
18
+
3
19
  ## 2.6.8
4
20
 
5
21
  ### Changed: bump pinned @coana-tech/cli to 15.10.25
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.5
2
2
  Name: socketsecurity
3
- Version: 2.6.8
3
+ Version: 2.6.10
4
4
  Summary: Socket Security CLI for CI/CD
5
5
  Project-URL: Homepage, https://socket.dev
6
6
  Author-email: Douglas Coburn <douglas@socket.dev>
@@ -39,17 +39,17 @@ Requires-Dist: brotlicffi==1.2.0.1; platform_python_implementation != 'CPython'
39
39
  Requires-Dist: gitpython==3.1.59
40
40
  Requires-Dist: markdown==3.10.3
41
41
  Requires-Dist: mdutils==1.8.1
42
- Requires-Dist: packaging==26.2
42
+ Requires-Dist: packaging==26.3
43
43
  Requires-Dist: prettytable==3.18.0
44
- Requires-Dist: python-dotenv==1.2.2
44
+ Requires-Dist: python-dotenv==1.2.3
45
45
  Requires-Dist: requests==2.34.2
46
46
  Requires-Dist: socketdev==3.5.0
47
47
  Provides-Extra: dev
48
- Requires-Dist: hatch==1.17.1; extra == 'dev'
49
- Requires-Dist: pre-commit==4.6.1; extra == 'dev'
50
- Requires-Dist: ruff==0.16.1; extra == 'dev'
48
+ Requires-Dist: hatch==1.18.0; extra == 'dev'
49
+ Requires-Dist: pre-commit==4.6.2; extra == 'dev'
50
+ Requires-Dist: ruff==0.16.3; extra == 'dev'
51
51
  Requires-Dist: twine==7.0.0; extra == 'dev'
52
- Requires-Dist: uv==0.12.0; extra == 'dev'
52
+ Requires-Dist: uv==0.12.5; extra == 'dev'
53
53
  Provides-Extra: test
54
54
  Requires-Dist: pytest-asyncio==1.4.0; extra == 'test'
55
55
  Requires-Dist: pytest-cov==7.1.0; extra == 'test'
@@ -275,7 +275,7 @@ If you don't want to provide the Socket API Token every time then you can use th
275
275
  | Parameter | Required | Default | Description |
276
276
  |:---------------------------------|:---------|:--------|:---------------------------------------------------------------------------------------------------------------------------|
277
277
  | `--reach` | False | False | Enable reachability analysis to identify which vulnerable functions are actually called by your code. Creates a full application reachability scan (`scan_type=socket_tier1`). |
278
- | `--reach-version` | False | 15.10.25 | Version of @coana-tech/cli to use. Defaults to the pinned version that ships with this CLI release, so the engine only changes when you upgrade the Socket CLI. Pass `latest` to always use the newest published version (opt-in auto-update), or an explicit version (e.g. `1.2.3`) to pin it. |
278
+ | `--reach-version` | False | 15.10.28 | Version of @coana-tech/cli to use. Defaults to the pinned version that ships with this CLI release, so the engine only changes when you upgrade the Socket CLI. Pass `latest` to always use the newest published version (opt-in auto-update), or an explicit version (e.g. `1.2.3`) to pin it. |
279
279
  | `--reach-analysis-timeout` | False | 10m | Timeout for each reachability analysis run, e.g. `90s`, `10m` or `1h`. Omitted by default, so coana applies its own default (`10m`). Alias: `--reach-timeout` |
280
280
  | `--reach-analysis-memory-limit` | False | 8GB | Memory limit for each reachability analysis run, e.g. `512MB` or `8GB`. Omitted by default, so coana applies its own default (`8GB`). Alias: `--reach-memory-limit` |
281
281
  | `--reach-concurrency` | False | 1 | Control parallel analysis execution (must be >= 1). Omitted by default, so coana applies its own default. |
@@ -1,12 +1,12 @@
1
1
  [build-system]
2
2
  requires = [
3
- "hatchling==1.31.0"
3
+ "hatchling==1.32.0"
4
4
  ]
5
5
  build-backend = "hatchling.build"
6
6
 
7
7
  [project]
8
8
  name = "socketsecurity"
9
- version = "2.6.8"
9
+ version = "2.6.10"
10
10
  requires-python = ">= 3.11"
11
11
  license = {"file" = "LICENSE"}
12
12
  dependencies = [
@@ -14,8 +14,8 @@ dependencies = [
14
14
  "mdutils==1.8.1",
15
15
  "prettytable==3.18.0",
16
16
  "GitPython==3.1.59",
17
- "packaging==26.2",
18
- "python-dotenv==1.2.2",
17
+ "packaging==26.3",
18
+ "python-dotenv==1.2.3",
19
19
  "socketdev==3.5.0",
20
20
  "beautifulsoup4==4.15.0",
21
21
  "markdown==3.10.3",
@@ -47,11 +47,11 @@ test = [
47
47
  "pytest-watch==4.2.0"
48
48
  ]
49
49
  dev = [
50
- "ruff==0.16.1",
50
+ "ruff==0.16.3",
51
51
  "twine==7.0.0", # for building
52
- "uv==0.12.0", # for dependency management
53
- "pre-commit==4.6.1",
54
- "hatch==1.17.1"
52
+ "uv==0.12.5", # for dependency management
53
+ "pre-commit==4.6.2",
54
+ "hatch==1.18.0"
55
55
  ]
56
56
 
57
57
  [project.scripts]
@@ -1,3 +1,3 @@
1
1
  __author__ = 'socket.dev'
2
- __version__ = '2.6.8'
2
+ __version__ = '2.6.10'
3
3
  USER_AGENT = f'SocketPythonCLI/{__version__}'
@@ -18,7 +18,7 @@ log = logging.getLogger(__name__)
18
18
  # Pinned @coana-tech/cli version. Bumped deliberately per Python CLI release so the
19
19
  # reachability engine version only changes through a standard pip upgrade (advance notice).
20
20
  # Pass --reach-version latest to opt into the newest published version instead.
21
- DEFAULT_COANA_CLI_VERSION: Final = "15.10.25"
21
+ DEFAULT_COANA_CLI_VERSION: Final = "15.10.28"
22
22
 
23
23
  # Resolved @coana-tech/cli script paths from the npm-install fallback, keyed by version.
24
24
  # Lives for the process lifetime so repeated fallback invocations install only once
@@ -55,7 +55,7 @@ class ReachabilityAnalyzer:
55
55
 
56
56
  def _resolve_coana_package_spec(self, version: Optional[str] = None) -> str:
57
57
  """
58
- Resolve the @coana-tech/cli package spec to run (e.g. '@coana-tech/cli@15.10.25').
58
+ Resolve the @coana-tech/cli package spec to run (e.g. '@coana-tech/cli@15.10.28').
59
59
 
60
60
  Args:
61
61
  version: Coana CLI version to use.
@@ -64,7 +64,7 @@ class ReachabilityAnalyzer:
64
64
  - '<semver>': that exact version.
65
65
 
66
66
  Returns:
67
- str: The package specifier to use with npx (e.g. '@coana-tech/cli@15.10.25').
67
+ str: The package specifier to use with npx (e.g. '@coana-tech/cli@15.10.28').
68
68
  """
69
69
  return f"@coana-tech/cli@{self._resolve_coana_version(version)}"
70
70
 
@@ -595,7 +595,7 @@ wheels = [
595
595
 
596
596
  [[package]]
597
597
  name = "hatch"
598
- version = "1.17.1"
598
+ version = "1.18.0"
599
599
  source = { registry = "https://pypi.org/simple" }
600
600
  dependencies = [
601
601
  { name = "backports-zstd", marker = "python_full_version < '3.14'" },
@@ -618,9 +618,9 @@ dependencies = [
618
618
  { name = "uv" },
619
619
  { name = "virtualenv" },
620
620
  ]
621
- sdist = { url = "https://files.pythonhosted.org/packages/01/5a/7cacce8d33a93e81cda9b4f8623ebf67b73859950af0062e1f2c527f4b34/hatch-1.17.1.tar.gz", hash = "sha256:e5f2f389ececd7e86cd86863e3f921a9024cd04ce6ef6b36d07cd9a6dc37c9cd", size = 5252686, upload-time = "2026-07-08T01:54:37.327Z" }
621
+ sdist = { url = "https://files.pythonhosted.org/packages/10/fd/634c575b5becad2dfa7135f3ad66d57102cd77d834cf473756d868a808ff/hatch-1.18.0.tar.gz", hash = "sha256:463d214cb068391454be198e58d3cc0846f71e39d68c5568ba650af7781e8ae3", size = 5275084, upload-time = "2026-08-11T05:06:41.513Z" }
622
622
  wheels = [
623
- { url = "https://files.pythonhosted.org/packages/0d/0a/2b4e653186fc85061f0dfde43d602e7e93c08c0d75b23fa3577f9b3f83fd/hatch-1.17.1-py3-none-any.whl", hash = "sha256:cc6c06d302cfa785c35586ab4285c8c28a24b1744addb66344192302f6958083", size = 162405, upload-time = "2026-07-08T01:54:35.452Z" },
623
+ { url = "https://files.pythonhosted.org/packages/fd/b1/d14265cb26c57af1485c01fd95037a35f13748b718617405cdefc6150429/hatch-1.18.0-py3-none-any.whl", hash = "sha256:75874c0905fe76b44fd39585c49bc9bd2b9fee638abb11f1f3d087042e7f9122", size = 171310, upload-time = "2026-08-11T05:06:39.807Z" },
624
624
  ]
625
625
 
626
626
  [[package]]
@@ -885,11 +885,11 @@ wheels = [
885
885
 
886
886
  [[package]]
887
887
  name = "packaging"
888
- version = "26.2"
888
+ version = "26.3"
889
889
  source = { registry = "https://pypi.org/simple" }
890
- sdist = { url = "https://files.pythonhosted.org/packages/d7/f1/e7a6dd94a8d4a5626c03e4e99c87f241ba9e350cd9e6d75123f992427270/packaging-26.2.tar.gz", hash = "sha256:ff452ff5a3e828ce110190feff1178bb1f2ea2281fa2075aadb987c2fb221661", size = 228134, upload-time = "2026-04-24T20:15:23.917Z" }
890
+ 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" }
891
891
  wheels = [
892
- { url = "https://files.pythonhosted.org/packages/df/b2/87e62e8c3e2f4b32e5fe99e0b86d576da1312593b39f47d8ceef365e95ed/packaging-26.2-py3-none-any.whl", hash = "sha256:5fc45236b9446107ff2415ce77c807cee2862cb6fac22b8a73826d0693b0980e", size = 100195, upload-time = "2026-04-24T20:15:22.081Z" },
892
+ { 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" },
893
893
  ]
894
894
 
895
895
  [[package]]
@@ -933,7 +933,7 @@ wheels = [
933
933
 
934
934
  [[package]]
935
935
  name = "pre-commit"
936
- version = "4.6.1"
936
+ version = "4.6.2"
937
937
  source = { registry = "https://pypi.org/simple" }
938
938
  dependencies = [
939
939
  { name = "cfgv" },
@@ -942,9 +942,9 @@ dependencies = [
942
942
  { name = "pyyaml" },
943
943
  { name = "virtualenv" },
944
944
  ]
945
- sdist = { url = "https://files.pythonhosted.org/packages/25/3a/ddb78f32a0814e66b18a099377a106a2dcdce92d86a034d69d65df9b256e/pre_commit-4.6.1.tar.gz", hash = "sha256:03e809865c7d178b9979d06c761fcbfe6808fdaded8581a745bb110e52050421", size = 198646, upload-time = "2026-07-21T20:56:58.225Z" }
945
+ sdist = { url = "https://files.pythonhosted.org/packages/74/89/1f3e8e1fc3e97de0fa963495832f581f025f29471602a309e48808244292/pre_commit-4.6.2.tar.gz", hash = "sha256:8f5d7bfb021ecdbcd9d49d89847082dd24172ccde534390081a679ad046e2441", size = 198670, upload-time = "2026-08-10T22:07:18.421Z" }
946
946
  wheels = [
947
- { url = "https://files.pythonhosted.org/packages/fb/49/bc925106abcdac498074f2cbe6137e94e09f418dd2b7775df5b577dc0313/pre_commit-4.6.1-py2.py3-none-any.whl", hash = "sha256:0e3b2942510d1fb34eec167a3ec57331bf8442122f1153a9fb8b58f5c49b2717", size = 226186, upload-time = "2026-07-21T20:56:57.064Z" },
947
+ { url = "https://files.pythonhosted.org/packages/45/e2/bbb7129c9e7999a6b8ee9cca3b66486c25c423ab5a75f34071798b74ce94/pre_commit-4.6.2-py2.py3-none-any.whl", hash = "sha256:e2dde9a75d3bce11bd3831c26d134df00a2803c1d818be6a0383c3dcda25dc4e", size = 226202, upload-time = "2026-08-10T22:07:16.942Z" },
948
948
  ]
949
949
 
950
950
  [[package]]
@@ -1077,11 +1077,11 @@ wheels = [
1077
1077
 
1078
1078
  [[package]]
1079
1079
  name = "python-dotenv"
1080
- version = "1.2.2"
1080
+ version = "1.2.3"
1081
1081
  source = { registry = "https://pypi.org/simple" }
1082
- sdist = { url = "https://files.pythonhosted.org/packages/82/ed/0301aeeac3e5353ef3d94b6ec08bbcabd04a72018415dcb29e588514bba8/python_dotenv-1.2.2.tar.gz", hash = "sha256:2c371a91fbd7ba082c2c1dc1f8bf89ca22564a087c2c287cd9b662adde799cf3", size = 50135, upload-time = "2026-03-01T16:00:26.196Z" }
1082
+ sdist = { url = "https://files.pythonhosted.org/packages/6a/53/ed9d74092561d4b01a2ef1349d52cdbc135e526c245f366b089cfca6de49/python_dotenv-1.2.3.tar.gz", hash = "sha256:a20a594dabeaa385725aa239d5244871c143ecb356add8a20fcf23773a6c3a35", size = 58945, upload-time = "2026-08-16T16:54:54.067Z" }
1083
1083
  wheels = [
1084
- { url = "https://files.pythonhosted.org/packages/0b/d7/1959b9648791274998a9c3526f6d0ec8fd2233e4d4acce81bbae76b44b2a/python_dotenv-1.2.2-py3-none-any.whl", hash = "sha256:1d8214789a24de455a8b8bd8ae6fe3c6b69a5e3d64aa8a8e5d68e694bbcb285a", size = 22101, upload-time = "2026-03-01T16:00:25.09Z" },
1084
+ { url = "https://files.pythonhosted.org/packages/0d/17/c5c6b53ddc18f297992099b3d9ec16c855c0ccc83263a21fe4d1c625ec6c/python_dotenv-1.2.3-py3-none-any.whl", hash = "sha256:904552145e8bfed22162c09dab1c2b9b54fefa7b23ba780f4f26ca0316b0f0d9", size = 22780, upload-time = "2026-08-16T16:54:52.473Z" },
1085
1085
  ]
1086
1086
 
1087
1087
  [[package]]
@@ -1213,27 +1213,27 @@ wheels = [
1213
1213
 
1214
1214
  [[package]]
1215
1215
  name = "ruff"
1216
- version = "0.16.1"
1217
- source = { registry = "https://pypi.org/simple" }
1218
- sdist = { url = "https://files.pythonhosted.org/packages/70/25/7113f6d5498888c5fb7db34081cba7d5971c4cb1bfb26819966eee68f003/ruff-0.16.1.tar.gz", hash = "sha256:fedad7c801dabd3fb9741d76aca39246e6ddd9ca446a015875207bf19f1e6bc7", size = 4877500, upload-time = "2026-07-30T19:37:01.379Z" }
1219
- wheels = [
1220
- { url = "https://files.pythonhosted.org/packages/1b/bd/694da69368e0973de65df2ddc73ab18d43c469d5963d9b150911de6bc513/ruff-0.16.1-py3-none-linux_armv6l.whl", hash = "sha256:58edb313b88f0c5460a26adf5f39a37a3be789494a15e3e411e35fa78b89f9a0", size = 10839126, upload-time = "2026-07-30T19:36:13.697Z" },
1221
- { url = "https://files.pythonhosted.org/packages/3f/f0/b626e5d5bd0dd9576263658ef12885e2288afd1029a48e26ffed65ec1ac1/ruff-0.16.1-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:fde5a99e2f97479af66edd6622c6d5a2a7592c77cf4153d9e4428f5eeb55b60c", size = 11070253, upload-time = "2026-07-30T19:36:17.14Z" },
1222
- { url = "https://files.pythonhosted.org/packages/83/63/f40acfb6b35b88623e71684942b552c3edd96035f5d98f313815f7b277de/ruff-0.16.1-py3-none-macosx_11_0_arm64.whl", hash = "sha256:e0d4c20532fca4f7fa609369161d968dd28f65d83dabbd61d8e9c7edbf7001f6", size = 10561425, upload-time = "2026-07-30T19:36:20.04Z" },
1223
- { url = "https://files.pythonhosted.org/packages/aa/dd/14ec0e9c2b4d315547dd38765004b4863e354e1b52cb308272215d9f6f6d/ruff-0.16.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:30affbcedf59ad5703d9c91f82266e02b47739f797e1a7b6e158e5526a6dae38", size = 10948879, upload-time = "2026-07-30T19:36:22.476Z" },
1224
- { url = "https://files.pythonhosted.org/packages/33/e9/9d870cbae575030fdef595f04b4b97573c525b5497cce4f4498cf2f85446/ruff-0.16.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:24e9c631573cbca9d20f1283f8f479b2afa4a8503504822bd71a293889f16743", size = 10643691, upload-time = "2026-07-30T19:36:24.914Z" },
1225
- { url = "https://files.pythonhosted.org/packages/c4/09/12743d544e2173f53ecd27217c65f90d2bc0f8424a66a60339e56bbc0457/ruff-0.16.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b41bdd48fb420987a9b5212e4957c26ad4abce401fa9ea9d4d85843727945f4f", size = 11435354, upload-time = "2026-07-30T19:36:28.447Z" },
1226
- { url = "https://files.pythonhosted.org/packages/7f/89/a1652b2daee52083c9554a6333b678a8b01d0400f976827bb87857f9449a/ruff-0.16.1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b0d1e1393b7648079e13669de1c1f4fde06d4583e84d8fd5c1551e0a77a2aa75", size = 12259033, upload-time = "2026-07-30T19:36:31.326Z" },
1227
- { url = "https://files.pythonhosted.org/packages/16/96/ecdcb8c54ee7b123b487f807eb014e6e019155a0b81dfb669acd52f28ce3/ruff-0.16.1-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:07bf434b1c95f4e093be4532068ef4fcf00924eb2ade8796075980902d6fd54a", size = 11667981, upload-time = "2026-07-30T19:36:34.394Z" },
1228
- { url = "https://files.pythonhosted.org/packages/cd/90/c52e12e0d862e9572f2a33aa227409143520abe53111e9a6babbac7b4af8/ruff-0.16.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39897739f112253ee4fdd2e8aa9a4f9ded99fb2be367d5f31dfa4ded6025584c", size = 11468183, upload-time = "2026-07-30T19:36:37.339Z" },
1229
- { url = "https://files.pythonhosted.org/packages/2c/6b/4ffb7ad1d83eb16cf8cbb3c8815d3f11c88460fd162d4b372a2059be1c2a/ruff-0.16.1-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:82ae3c0c0d74daf17b968a10b7b3bb3ef297ab7de0c1f749646b25e690ccb150", size = 11470071, upload-time = "2026-07-30T19:36:39.91Z" },
1230
- { url = "https://files.pythonhosted.org/packages/9c/72/32ae7db4c0b5e32ab611787caa19d1546800676d79f7483b7100a3561bf4/ruff-0.16.1-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:4d5f2ed10f8242d83fc08d521301089364e3375375705356f20c0e31606ef3ef", size = 10919503, upload-time = "2026-07-30T19:36:42.65Z" },
1231
- { url = "https://files.pythonhosted.org/packages/f7/ca/3d901ba6ad6fc38da39c3448fc6c59ac945679293a17c3ceb6d6c1cba13e/ruff-0.16.1-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:a4665b309891f83f3e3c25447935f1213e9abbd4b5640af7a1f2def9f8d413c1", size = 10649861, upload-time = "2026-07-30T19:36:45.18Z" },
1232
- { url = "https://files.pythonhosted.org/packages/92/79/894ef1ced26552d5f8c9cf6d85b0687840e1128c55aeab7b9c2d54a0d880/ruff-0.16.1-py3-none-musllinux_1_2_i686.whl", hash = "sha256:26e9ca5c9bc3971f20d3cf18a957f52ffd6a5f6564ff15c4912a144dcac22494", size = 11148137, upload-time = "2026-07-30T19:36:47.936Z" },
1233
- { url = "https://files.pythonhosted.org/packages/2d/69/3609a09fa1cb46cc28b762363e440a354204e5dff01bd0c8d7437874d6b9/ruff-0.16.1-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:67e1e1e3fa4f0c82f0e36d4cd61e661f6e7a6196cb1aa92fe0828fa7b8f257cd", size = 11559211, upload-time = "2026-07-30T19:36:50.448Z" },
1234
- { url = "https://files.pythonhosted.org/packages/fc/8a/fb22af2fd78a736e241fabf67e30ce1799a64244026377a49e133af90762/ruff-0.16.1-py3-none-win32.whl", hash = "sha256:d31765e131295b8445caf301e3e8a85b34d1b9b211b4109b7ba457888b051806", size = 10838258, upload-time = "2026-07-30T19:36:53.298Z" },
1235
- { url = "https://files.pythonhosted.org/packages/d4/35/e57fd9fb5d423961df087a00b12d42c0a830288dc2f3b45ecca299158b4f/ruff-0.16.1-py3-none-win_amd64.whl", hash = "sha256:09b05e8b90c2cb06ad63464350e7a45e8e44a2dfe52072ebfba6666ca8d3f596", size = 11961111, upload-time = "2026-07-30T19:36:56.107Z" },
1236
- { url = "https://files.pythonhosted.org/packages/cb/46/240ea004bf6dc4feb40e9832f2205a476a47dd5b8a3f8211a5fc5f95e20e/ruff-0.16.1-py3-none-win_arm64.whl", hash = "sha256:dbaadaac38c70239f056d306b7476f246b0bf000fa6b3876402acbf5b227eaf8", size = 11309414, upload-time = "2026-07-30T19:36:58.79Z" },
1216
+ version = "0.16.3"
1217
+ source = { registry = "https://pypi.org/simple" }
1218
+ sdist = { url = "https://files.pythonhosted.org/packages/61/b3/3213589383f8f1b3938781bd1278713f6d18621a14992b3e81fefb8a5ef9/ruff-0.16.3.tar.gz", hash = "sha256:e76d33a347661a84b5be6d043d0347fdc745dfdcf825a8f4fed64b5e26eebdf2", size = 4891904, upload-time = "2026-08-13T15:17:13.381Z" }
1219
+ wheels = [
1220
+ { url = "https://files.pythonhosted.org/packages/bf/96/493770daebd68c0a67f1549fdf519f53be51fc435186c0585bcc272fd76c/ruff-0.16.3-py3-none-linux_armv6l.whl", hash = "sha256:0c5710e247a58a4521e66e124ba9a74655b414f61ba3a2e9e3811e11098f48f7", size = 10902799, upload-time = "2026-08-13T15:16:27.382Z" },
1221
+ { url = "https://files.pythonhosted.org/packages/5e/e6/2becf3942fddc29a29b8df47691d456fb1085391a694f74d84513251418c/ruff-0.16.3-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:fe155130631a2471fd2e14a7a664a4dfbd7194b8229c3d7b2a40b21178639081", size = 11135539, upload-time = "2026-08-13T15:16:30.87Z" },
1222
+ { url = "https://files.pythonhosted.org/packages/3e/1e/4b8b72f0d006dbf19326aa99f9ca0ee2ff374187c4d301cf529a51aa06fe/ruff-0.16.3-py3-none-macosx_11_0_arm64.whl", hash = "sha256:e2ed719e14aa64d895c2ee922594a90a43c861a93f0575a95ff8c47cdbd13eb9", size = 10475095, upload-time = "2026-08-13T15:16:33.259Z" },
1223
+ { url = "https://files.pythonhosted.org/packages/92/32/2201fa49ba1f6c101ee321e83f051ac7a4b8d07b0ef6b4d3f2772b302275/ruff-0.16.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9e0b1da805eb043654645d74d5de1e5ce2edc686e40790d2b86f56d71cc06a84", size = 10668771, upload-time = "2026-08-13T15:16:35.65Z" },
1224
+ { url = "https://files.pythonhosted.org/packages/c3/66/4afc5c8363bd04d45effce1b7c8713ca037d7a6740b7451a2403a6e3a972/ruff-0.16.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a37bdea0bbe21780f590bf437d6412c8c4e1b6cd010f91a65c2c40c5e5f5f870", size = 10699568, upload-time = "2026-08-13T15:16:38.195Z" },
1225
+ { url = "https://files.pythonhosted.org/packages/53/fd/c67d246bf36bf1698551c56de39e95cd07f70e64433e0098e6267d77061b/ruff-0.16.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:09571e6d1288ed9be475207a3ac04ada404f1cd898104be0f6ab8d7df438575b", size = 11499365, upload-time = "2026-08-13T15:16:40.623Z" },
1226
+ { url = "https://files.pythonhosted.org/packages/67/0b/00ecbceb99a263af7b12f6f05ac3c92bc47b905e91adc3f207a836e3bc01/ruff-0.16.3-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2c18c5a101eb540010638cc1ff3c84944d3adb3df62b8d98ca8f22ba484d3413", size = 12311728, upload-time = "2026-08-13T15:16:43.564Z" },
1227
+ { url = "https://files.pythonhosted.org/packages/54/b2/b7b3bb54f4d3f7db504e476ad4ab8de530dceebe2c061384b2757ee419e8/ruff-0.16.3-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8457c44f15033c85ddbb77b15d451df9e24e4bd03b628396dd3610cedc3b8f82", size = 11699896, upload-time = "2026-08-13T15:16:46.209Z" },
1228
+ { url = "https://files.pythonhosted.org/packages/c7/30/4c468429ac195addc5ee1b717b6ab1b66632786737ca3b2ed3443fb0c26a/ruff-0.16.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:294b95c4ae0cda9388525c2047778aa758d6b8d4bb876fd4e9eaa3ebc92343eb", size = 11058736, upload-time = "2026-08-13T15:16:48.823Z" },
1229
+ { url = "https://files.pythonhosted.org/packages/43/67/7a113cdaddf24b64d7f75b1242a99d04c82fcef4f6921fdbb832beaffb5f/ruff-0.16.3-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:3d0c7c40c87c2a820509c31ba007968da6e1306468c067b2d82fbfdbcd0e8474", size = 11586911, upload-time = "2026-08-13T15:16:51.913Z" },
1230
+ { url = "https://files.pythonhosted.org/packages/f1/c1/2e66f24c0f3ead25a5e660111778685e505e5da353c82802bf49f0cbe7b9/ruff-0.16.3-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:9f738c0fdfa8eed0b2ce7fb27ee7258208a92a68d7949e62aa15164bc7b389da", size = 10954265, upload-time = "2026-08-13T15:16:54.763Z" },
1231
+ { url = "https://files.pythonhosted.org/packages/c2/ba/4cee23bf52cba9a058d3726de623624daf50ef9638868edd86f4126157f6/ruff-0.16.3-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:fb785f0be25abe69d320415cd4f833b59e17ba7613d9ba6a958023b6bceb0a50", size = 10709886, upload-time = "2026-08-13T15:16:57.339Z" },
1232
+ { url = "https://files.pythonhosted.org/packages/82/df/7da7194fa5d9dc0a285f7e6fa5a4722e7c63faac0b45b614ded9314363a1/ruff-0.16.3-py3-none-musllinux_1_2_i686.whl", hash = "sha256:c5536e3acfbf9563085aa2be7b13c629c3077e902afc5b941ac44024dbb9f506", size = 11210392, upload-time = "2026-08-13T15:17:00.171Z" },
1233
+ { url = "https://files.pythonhosted.org/packages/35/85/7795f6e817af050e7517bf3e7aa9b061cce70ef33d280aad902c956c1ecf/ruff-0.16.3-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:a2d85c02f9b8e165d85e6779184d38c4132de12603dab59c51c28e22584f9e4d", size = 11626910, upload-time = "2026-08-13T15:17:03.299Z" },
1234
+ { url = "https://files.pythonhosted.org/packages/78/9b/475b927cf27a5cbbda3c7bafb69ed6ff77e1d7923d5d85f17c2749d7ae32/ruff-0.16.3-py3-none-win32.whl", hash = "sha256:388cdf2166642bd9b13d52b5932d3170f34f8abed7e8d9a855f1d84b83645a0a", size = 10931415, upload-time = "2026-08-13T15:17:05.726Z" },
1235
+ { url = "https://files.pythonhosted.org/packages/b2/99/e2a2bfc4fbf0a1e8a916bc9ebe6fe6c58cc34c28e0ffc6ce281d572d1c2e/ruff-0.16.3-py3-none-win_amd64.whl", hash = "sha256:e80a7d69ca2a6d1c4d352ec91458cdca6e56c83cdbcabd93e4abe1e53591d948", size = 11445993, upload-time = "2026-08-13T15:17:08.353Z" },
1236
+ { url = "https://files.pythonhosted.org/packages/69/3e/4132e539aed78c148854d4997a2685b0ed4dc4e87110b59ce528564e184e/ruff-0.16.3-py3-none-win_arm64.whl", hash = "sha256:b8ca152da82c1acc1fa8d5874b15951935f0eef46f10e6954c83859011b6178a", size = 11399302, upload-time = "2026-08-13T15:17:10.908Z" },
1237
1237
  ]
1238
1238
 
1239
1239
  [[package]]
@@ -1282,7 +1282,7 @@ wheels = [
1282
1282
 
1283
1283
  [[package]]
1284
1284
  name = "socketsecurity"
1285
- version = "2.6.8"
1285
+ version = "2.6.10"
1286
1286
  source = { editable = "." }
1287
1287
  dependencies = [
1288
1288
  { name = "beautifulsoup4" },
@@ -1325,23 +1325,23 @@ requires-dist = [
1325
1325
  { name = "brotli", marker = "platform_python_implementation == 'CPython'", specifier = "==1.2.0" },
1326
1326
  { name = "brotlicffi", marker = "platform_python_implementation != 'CPython'", specifier = "==1.2.0.1" },
1327
1327
  { name = "gitpython", specifier = "==3.1.59" },
1328
- { name = "hatch", marker = "extra == 'dev'", specifier = "==1.17.1" },
1328
+ { name = "hatch", marker = "extra == 'dev'", specifier = "==1.18.0" },
1329
1329
  { name = "markdown", specifier = "==3.10.3" },
1330
1330
  { name = "mdutils", specifier = "==1.8.1" },
1331
- { name = "packaging", specifier = "==26.2" },
1332
- { name = "pre-commit", marker = "extra == 'dev'", specifier = "==4.6.1" },
1331
+ { name = "packaging", specifier = "==26.3" },
1332
+ { name = "pre-commit", marker = "extra == 'dev'", specifier = "==4.6.2" },
1333
1333
  { name = "prettytable", specifier = "==3.18.0" },
1334
1334
  { name = "pytest", marker = "extra == 'test'", specifier = "==9.1.1" },
1335
1335
  { name = "pytest-asyncio", marker = "extra == 'test'", specifier = "==1.4.0" },
1336
1336
  { name = "pytest-cov", marker = "extra == 'test'", specifier = "==7.1.0" },
1337
1337
  { name = "pytest-mock", marker = "extra == 'test'", specifier = "==3.15.1" },
1338
1338
  { name = "pytest-watch", marker = "extra == 'test'", specifier = "==4.2.0" },
1339
- { name = "python-dotenv", specifier = "==1.2.2" },
1339
+ { name = "python-dotenv", specifier = "==1.2.3" },
1340
1340
  { name = "requests", specifier = "==2.34.2" },
1341
- { name = "ruff", marker = "extra == 'dev'", specifier = "==0.16.1" },
1341
+ { name = "ruff", marker = "extra == 'dev'", specifier = "==0.16.3" },
1342
1342
  { name = "socketdev", specifier = "==3.5.0" },
1343
1343
  { name = "twine", marker = "extra == 'dev'", specifier = "==7.0.0" },
1344
- { name = "uv", marker = "extra == 'dev'", specifier = "==0.12.0" },
1344
+ { name = "uv", marker = "extra == 'dev'", specifier = "==0.12.5" },
1345
1345
  ]
1346
1346
  provides-extras = ["test", "dev"]
1347
1347
 
@@ -1494,28 +1494,28 @@ wheels = [
1494
1494
 
1495
1495
  [[package]]
1496
1496
  name = "uv"
1497
- version = "0.12.0"
1498
- source = { registry = "https://pypi.org/simple" }
1499
- sdist = { url = "https://files.pythonhosted.org/packages/a7/e7/5a94b658b08c46142cf7bf1d0c432cc7d04375b80f42765633414e7541bd/uv-0.12.0.tar.gz", hash = "sha256:80ba22cae467c6f47d2157ec2b840c032cac709b85ab1300ac4dcfeb29986462", size = 5827380, upload-time = "2026-07-28T18:57:12.191Z" }
1500
- wheels = [
1501
- { url = "https://files.pythonhosted.org/packages/20/e9/5663af6b4d90827c008005cfe7926a747688bd408226913d249b9de8492b/uv-0.12.0-py3-none-linux_armv6l.whl", hash = "sha256:11cc7ef5386fe54536cc8921676728a0e5c348cf522c8ee1fa0b81cbafc20cbc", size = 21499556, upload-time = "2026-07-28T18:56:27.552Z" },
1502
- { url = "https://files.pythonhosted.org/packages/4b/8e/b88ae4a3b704f60f8e9dcdef78047c3749077b2f1e884bd387c8e41fe378/uv-0.12.0-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:074e693e9b2df99f621166b44760abe0d53cd9b0ae96fcbfec5809497925da87", size = 19751720, upload-time = "2026-07-28T18:56:30.623Z" },
1503
- { url = "https://files.pythonhosted.org/packages/a5/7b/15d6865264120bd30c738b4bf63ddff66d087087cadeb2a6b88c6284a446/uv-0.12.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:009758d8fde2da2b90900f5fe863c71d0e1b8b28bbdba59863ceb967973a3735", size = 18117978, upload-time = "2026-07-28T18:56:32.904Z" },
1504
- { url = "https://files.pythonhosted.org/packages/0e/bc/2066cc63e6930e3d5e27c73a9c439418164eafb4f1c24845f17caf63eaea/uv-0.12.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl", hash = "sha256:effc2de9f044e880306f3c52b048bf24ee4fe63429c82dd6509c9a0f3d1b8f0b", size = 20833318, upload-time = "2026-07-28T18:56:35.567Z" },
1505
- { url = "https://files.pythonhosted.org/packages/2d/d6/49fef7e4e3c401540113115846e47094aff7cda86f54ba79477636758e38/uv-0.12.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.musllinux_1_1_armv7l.whl", hash = "sha256:e9e660171873f905a6782bf2a5e7515aba1a8e8a5cfce0add68fbe7a22ead8b0", size = 21056599, upload-time = "2026-07-28T18:56:38.117Z" },
1506
- { url = "https://files.pythonhosted.org/packages/2e/b9/cc32f406b5429cbb0f0849938d12a24a33c3bd28b710c8ccd0955c588131/uv-0.12.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:53c5c07fafcf620d23faa8f339742806d57cb82122c97544d0f3750f55e2fe36", size = 21100563, upload-time = "2026-07-28T18:56:40.305Z" },
1507
- { url = "https://files.pythonhosted.org/packages/42/ff/36eef4c1624ed371d8367cf96207f35ba81b42b8308688d1acad835432cc/uv-0.12.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b80a1a89aad16c6d84dd96b0c795b44f3824f0765e815af2f93fd05cb4a894cd", size = 21763617, upload-time = "2026-07-28T18:56:42.59Z" },
1508
- { url = "https://files.pythonhosted.org/packages/05/23/b82dbd945c5b8a88ed5dc8c2c001619677ad5aea246318716c773711aef9/uv-0.12.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a1e84987c4b4d832796b779ad614e91c1b44ac1ade5163c00654b70881ef53cb", size = 22917937, upload-time = "2026-07-28T18:56:45.546Z" },
1509
- { url = "https://files.pythonhosted.org/packages/7b/d9/44f5f753fda99820b972251c3be9ca9e56d98f4ced752cea623f19479fa8/uv-0.12.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbb9d9c40e91b6bf5e124230277fe5579ecf685e6de47e61a0eed8af5ffa0cdb", size = 22555435, upload-time = "2026-07-28T18:56:47.882Z" },
1510
- { url = "https://files.pythonhosted.org/packages/4b/ba/bc14d74741b0292edd8e61e87a4bd96f79447a1b9d27e85cda2e8539039b/uv-0.12.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cbff74f884846d794713670faf8abe10db3bd70c43b01e63223f74eb7d958689", size = 21986958, upload-time = "2026-07-28T18:56:50.271Z" },
1511
- { url = "https://files.pythonhosted.org/packages/1d/52/e14f0a91be4b426f18107f63b1b87e99ec671e8907689cf45144a79c4f76/uv-0.12.0-py3-none-manylinux_2_28_aarch64.whl", hash = "sha256:c818bb6aead39652e2ad644583fa418ac8d92baf50b4c6f685738bb2598e33bd", size = 20965849, upload-time = "2026-07-28T18:56:52.628Z" },
1512
- { url = "https://files.pythonhosted.org/packages/0d/a6/ef7b436f9983c467b88bacb5ce58620398c7fe7fa86ee67906bfce343201/uv-0.12.0-py3-none-manylinux_2_31_riscv64.musllinux_1_1_riscv64.whl", hash = "sha256:5fe6cdc82cacc630827f2ec779b91b0d13ff57ff476e41bdcace05cd61261951", size = 21671684, upload-time = "2026-07-28T18:56:54.923Z" },
1513
- { url = "https://files.pythonhosted.org/packages/9d/c8/19086d68078b514be4c266081e11d5530b07d099cb05d011e1fa6a216e10/uv-0.12.0-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:fcf4b6d0807f8f05a7dd8c090f080674e8526db27a0764af2a5a54ab5096c3eb", size = 21798247, upload-time = "2026-07-28T18:56:57.226Z" },
1514
- { url = "https://files.pythonhosted.org/packages/4d/87/571847075bbe2205ec7ae108c17d01742a1251aea9fe5f9cd5da1496922e/uv-0.12.0-py3-none-musllinux_1_1_i686.whl", hash = "sha256:4be9870fca2952143f33a02347c8da603bbe645283e3e989f038ef7b306b3ecb", size = 20977006, upload-time = "2026-07-28T18:56:59.544Z" },
1515
- { url = "https://files.pythonhosted.org/packages/be/df/d391bc0f5901ff8a0d6285eb433222cacb972b5e5817a420e084ee698894/uv-0.12.0-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:ed4053e07048ab3561de95c3b686b7983f997cd19d53a265a238103b5dbf258a", size = 22186132, upload-time = "2026-07-28T18:57:02.014Z" },
1516
- { url = "https://files.pythonhosted.org/packages/9c/fe/d440d50811ef913cb035e4c5f346799d9353fd5a8aa8479e57d7efc34692/uv-0.12.0-py3-none-win32.whl", hash = "sha256:bef14df9bec1ee7577fdc5b37d02ad8128574a2eebc130c525255edac051b9a4", size = 19210613, upload-time = "2026-07-28T18:57:04.493Z" },
1517
- { url = "https://files.pythonhosted.org/packages/cb/27/c3da5b9136925ea2bc9209f7cabbfae12fd191f778456ead0f2d6de446a7/uv-0.12.0-py3-none-win_amd64.whl", hash = "sha256:ffdfed09a23e67ef6facf1d4db978a3cd73a886674644131a11a933fd746904a", size = 20005960, upload-time = "2026-07-28T18:57:07.332Z" },
1518
- { url = "https://files.pythonhosted.org/packages/9f/bc/d04df3b6c36be124cb99e7eab59db514ec528f2b5c5ac2ed9fec41fbdc71/uv-0.12.0-py3-none-win_arm64.whl", hash = "sha256:e3d748f526739110dd9e267ecca30604b64a5fe3344f903d348b5a3af1f0a90a", size = 18981523, upload-time = "2026-07-28T18:57:09.743Z" },
1497
+ version = "0.12.5"
1498
+ source = { registry = "https://pypi.org/simple" }
1499
+ sdist = { url = "https://files.pythonhosted.org/packages/7c/b0/3085b844fe59aa319a3f94a5cca9938fffecc82705aa9c2762a749f7095c/uv-0.12.5.tar.gz", hash = "sha256:442a21d181faae21742aaaf6d2091a0d27755d3eac344061a9a00c90169b7524", size = 7101936, upload-time = "2026-08-14T19:56:57.693Z" }
1500
+ wheels = [
1501
+ { url = "https://files.pythonhosted.org/packages/b8/4c/6412d4a618230db699118b362ec41c54795f93992b43c53e225bd0213501/uv-0.12.5-py3-none-linux_armv6l.whl", hash = "sha256:2bd62134e56af35b9cf017aaf8ae41a605d6501dd49afc35b70b544a45dd8354", size = 23310055, upload-time = "2026-08-14T19:55:51.357Z" },
1502
+ { url = "https://files.pythonhosted.org/packages/bd/ec/d76387b388fa21620088b89b9c67f2596a707add585104e0cb5e8abf55f2/uv-0.12.5-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:1a06c8bc4d43b5f6c1e3f2ae3d0f6455b07515f762516f95e52e6c0cbccedf15", size = 21401335, upload-time = "2026-08-14T19:55:55.371Z" },
1503
+ { url = "https://files.pythonhosted.org/packages/6d/bc/81ab953b7261ae6be40874b1f283a10873871e02eb353d354614dd8da96b/uv-0.12.5-py3-none-macosx_11_0_arm64.whl", hash = "sha256:d87156bc174d94fae890bb7a261e2867140abb9fe1e9de81a5295e582fb9d0f5", size = 19290641, upload-time = "2026-08-14T19:55:58.998Z" },
1504
+ { url = "https://files.pythonhosted.org/packages/7d/13/07585043c10e648820bf826474dac46864ce6691da5dc52fee43c5c7523a/uv-0.12.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl", hash = "sha256:2d65b7b3bc3fd28678f62aa7fb5d90f106ad9782c1354af60b6cecdf9ea9ecd9", size = 22245569, upload-time = "2026-08-14T19:56:02.729Z" },
1505
+ { url = "https://files.pythonhosted.org/packages/3e/6d/310f8f56f8d001b4000112a09d7b7de80fb2024a90208fabb9ddc457c123/uv-0.12.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.musllinux_1_1_armv7l.whl", hash = "sha256:712624b62e25c84e5a10fc6aa144d8a81b685fdc067a54a7ca4367d75d2cf791", size = 22745152, upload-time = "2026-08-14T19:56:06.426Z" },
1506
+ { url = "https://files.pythonhosted.org/packages/92/da/7922b67eec5ee03e94333c5841b682c335033ee80acac17c3417bd752656/uv-0.12.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f9656ac7a00fd4314980fb0f790df1c1f3fa9cbcf9af9c6f611b19448b9da687", size = 22787947, upload-time = "2026-08-14T19:56:10.149Z" },
1507
+ { url = "https://files.pythonhosted.org/packages/62/55/5dbaed832a4b36809ef8a07c8e56e9fee0dedb0aa0454f6d232b6e468f2c/uv-0.12.5-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:568485b44e848eb3693f85d6b00299ccd8fc4d26902030dbf24f549c276db9ca", size = 23367616, upload-time = "2026-08-14T19:56:13.768Z" },
1508
+ { url = "https://files.pythonhosted.org/packages/11/77/baf761d12bb66efb01706e3bbb5926ed0d13cb0a40539a661fcfffd46de4/uv-0.12.5-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bd08c82831b0033330f8eeeb0d90f938a4d999f25569bee68a975c736142d795", size = 24586263, upload-time = "2026-08-14T19:56:17.57Z" },
1509
+ { url = "https://files.pythonhosted.org/packages/c3/a8/76c1031c4834c959bb8a8059c9feabeaa77488ce8b6a3529d6d929ae81cf/uv-0.12.5-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:edd9ff6154b891146a342c143cd29b330ad97ac6a4b20ff4a99a20a4da84ceca", size = 24160655, upload-time = "2026-08-14T19:56:21.568Z" },
1510
+ { url = "https://files.pythonhosted.org/packages/93/22/dacc9a0bc8604187a1ba954a3aef8329e4104eb0af772d2c3c634893bd9b/uv-0.12.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3e195ccf1ed60c8bb24a6447ce306441a4181d54b602407e09bc56e963911c15", size = 23657089, upload-time = "2026-08-14T19:56:25.144Z" },
1511
+ { url = "https://files.pythonhosted.org/packages/39/98/e8f9c071622f2cb4072d8b587d27b27d23cf0d3ebf8b3687f5af6030f587/uv-0.12.5-py3-none-manylinux_2_28_aarch64.whl", hash = "sha256:58abfb0f658b39a834307a11223bc170294ea214263b4c99ecc7663720d43544", size = 22379954, upload-time = "2026-08-14T19:56:28.789Z" },
1512
+ { url = "https://files.pythonhosted.org/packages/73/95/4c3f060e95f7cbe9177b4ab361f0cbfc4ae22e5a49b22e73eee9f0d0a6ca/uv-0.12.5-py3-none-manylinux_2_31_riscv64.musllinux_1_1_riscv64.whl", hash = "sha256:6ad2c455f1fe4d2962f6fd7ccb3b1f61c61856681c9d99f40e170b2074353fa3", size = 23318163, upload-time = "2026-08-14T19:56:32.504Z" },
1513
+ { url = "https://files.pythonhosted.org/packages/a0/96/ca0497ef8912ef48dbbc9982a8b4212260c34d56bfd0d45fe67b31942121/uv-0.12.5-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:a05b497c2a948c8600f4c831a89852b4d2514b7f561074225cc9edd0cc4811e2", size = 23470437, upload-time = "2026-08-14T19:56:36.525Z" },
1514
+ { url = "https://files.pythonhosted.org/packages/60/e7/8bdc37669a6cd2b46a2ec08ccbb58c61395ec84a073e199f5a4a64bb998f/uv-0.12.5-py3-none-musllinux_1_1_i686.whl", hash = "sha256:7817f8e957960f9ddc452ea353f283c0d6393e2e31b400276485adced5b1f371", size = 22545803, upload-time = "2026-08-14T19:56:40.606Z" },
1515
+ { url = "https://files.pythonhosted.org/packages/37/cc/01e39e1dbeb838a6b3c26bf97c867d6f366459b22a38bea691af8c6c94c0/uv-0.12.5-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:dc14e4f81a99b585a891350c60d1ff4557d54cb3c3c81fa45fd4e0dd512ba752", size = 23874113, upload-time = "2026-08-14T19:56:44.193Z" },
1516
+ { url = "https://files.pythonhosted.org/packages/0a/38/9053599a73a351d1cd34195c7a48c1db4d4d51b57b543607fad7ecf9354c/uv-0.12.5-py3-none-win32.whl", hash = "sha256:39bb102766c95571781a7b4c611675ea213e08df5c680f3936279b3c0d1f6c3c", size = 20744641, upload-time = "2026-08-14T19:56:47.689Z" },
1517
+ { url = "https://files.pythonhosted.org/packages/ce/f6/a9af9311c7f5640ca2bfcfdedb7aca37fa6d1d9f5c981fb50c5be02b7477/uv-0.12.5-py3-none-win_amd64.whl", hash = "sha256:455c3e57602e2141e66e2f0bf685898c9c5e5a70377d14c9a71554a3baf3ddbf", size = 21621812, upload-time = "2026-08-14T19:56:51.126Z" },
1518
+ { url = "https://files.pythonhosted.org/packages/bc/fb/e1266399f755f97a0783de379f2fed6dae0a2a240db32fe5a2eb976fec8a/uv-0.12.5-py3-none-win_arm64.whl", hash = "sha256:bea86f27a027e0e3af908db4bdd4f1ceef3ca2bd47673b5ccca7f550e325b1b4", size = 20381876, upload-time = "2026-08-14T19:56:54.883Z" },
1519
1519
  ]
1520
1520
 
1521
1521
  [[package]]
File without changes
File without changes