socketsecurity 2.2.86__tar.gz → 2.2.88__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 (125) hide show
  1. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/PKG-INFO +1 -1
  2. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/pyproject.toml +1 -1
  3. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/__init__.py +1 -1
  4. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/utils.py +10 -1
  5. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/core/test_has_manifest_files.py +43 -0
  6. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/CODEOWNERS +0 -0
  7. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/PULL_REQUEST_TEMPLATE/bug-fix.md +0 -0
  8. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/PULL_REQUEST_TEMPLATE/feature.md +0 -0
  9. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/PULL_REQUEST_TEMPLATE/improvement.md +0 -0
  10. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  11. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/workflows/docker-stable.yml +0 -0
  12. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/workflows/e2e-test.yml +0 -0
  13. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/workflows/pr-preview.yml +0 -0
  14. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/workflows/python-tests.yml +0 -0
  15. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/workflows/release.yml +0 -0
  16. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/workflows/version-check.yml +0 -0
  17. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.github/zizmor.yml +0 -0
  18. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.gitignore +0 -0
  19. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.hooks/sync_version.py +0 -0
  20. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.pre-commit-config.yaml +0 -0
  21. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/.python-version +0 -0
  22. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/CHANGELOG.md +0 -0
  23. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/Dockerfile +0 -0
  24. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/LICENSE +0 -0
  25. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/Makefile +0 -0
  26. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/README.md +0 -0
  27. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/docs/ci-cd.md +0 -0
  28. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/docs/cli-reference.md +0 -0
  29. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/docs/development.md +0 -0
  30. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/docs/troubleshooting.md +0 -0
  31. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/examples/config/sarif-dashboard-parity.json +0 -0
  32. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/examples/config/sarif-dashboard-parity.toml +0 -0
  33. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/examples/config/sarif-diff-ci-cd.json +0 -0
  34. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/examples/config/sarif-diff-ci-cd.toml +0 -0
  35. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/examples/config/sarif-instance-detail.json +0 -0
  36. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/examples/config/sarif-instance-detail.toml +0 -0
  37. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/instructions/gitlab-commit-status/uat.md +0 -0
  38. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/pytest.ini +0 -0
  39. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/scripts/build_container.sh +0 -0
  40. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/scripts/build_container_flexible.sh +0 -0
  41. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/scripts/deploy-test-docker.sh +0 -0
  42. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/scripts/deploy-test-pypi.sh +0 -0
  43. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/scripts/docker-entrypoint.sh +0 -0
  44. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/scripts/run.sh +0 -0
  45. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/session.md +0 -0
  46. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socket.yml +0 -0
  47. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/config.py +0 -0
  48. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/__init__.py +0 -0
  49. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/alert_selection.py +0 -0
  50. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/classes.py +0 -0
  51. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/cli_client.py +0 -0
  52. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/exceptions.py +0 -0
  53. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/git_interface.py +0 -0
  54. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/helper/__init__.py +0 -0
  55. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/helper/socket_facts_loader.py +0 -0
  56. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/lazy_file_loader.py +0 -0
  57. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/logging.py +0 -0
  58. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/messages.py +0 -0
  59. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/resource_utils.py +0 -0
  60. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/scm/__init__.py +0 -0
  61. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/scm/base.py +0 -0
  62. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/scm/client.py +0 -0
  63. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/scm/github.py +0 -0
  64. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/scm/gitlab.py +0 -0
  65. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/scm_comments.py +0 -0
  66. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/socket_config.py +0 -0
  67. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/core/tools/reachability.py +0 -0
  68. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/output.py +0 -0
  69. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/plugins/__init__.py +0 -0
  70. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/plugins/base.py +0 -0
  71. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/plugins/formatters/__init__.py +0 -0
  72. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/plugins/formatters/slack.py +0 -0
  73. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/plugins/jira.py +0 -0
  74. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/plugins/manager.py +0 -0
  75. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/plugins/slack.py +0 -0
  76. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/plugins/teams.py +0 -0
  77. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/plugins/webhook.py +0 -0
  78. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/socketsecurity/socketcli.py +0 -0
  79. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/__init__.py +0 -0
  80. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/core/conftest.py +0 -0
  81. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/core/create_diff_input.json +0 -0
  82. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/core/test_diff_alerts.py +0 -0
  83. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/core/test_diff_generation.py +0 -0
  84. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/core/test_package_and_alerts.py +0 -0
  85. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/core/test_sdk_methods.py +0 -0
  86. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/core/test_supporting_methods.py +0 -0
  87. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/fullscans/create_response.json +0 -0
  88. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/fullscans/diff/stream_diff.json +0 -0
  89. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/fullscans/diff/stream_diff_full.json +0 -0
  90. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/fullscans/head_scan/metadata.json +0 -0
  91. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/fullscans/head_scan/stream_scan.json +0 -0
  92. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/fullscans/head_scan/stream_scan_full.json +0 -0
  93. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/fullscans/new_scan/metadata.json +0 -0
  94. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/fullscans/new_scan/stream_scan.json +0 -0
  95. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/repos/repo_info_error.json +0 -0
  96. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/repos/repo_info_no_head.json +0 -0
  97. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/repos/repo_info_success.json +0 -0
  98. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/data/settings/security-policy.json +0 -0
  99. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/e2e/fixtures/simple-npm/index.js +0 -0
  100. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/e2e/fixtures/simple-npm/package.json +0 -0
  101. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/e2e/fixtures/simple-pypi/requirements.txt +0 -0
  102. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/e2e/validate-gitlab.sh +0 -0
  103. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/e2e/validate-json.sh +0 -0
  104. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/e2e/validate-reachability.sh +0 -0
  105. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/e2e/validate-sarif.sh +0 -0
  106. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/e2e/validate-scan.sh +0 -0
  107. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/__init__.py +0 -0
  108. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_alert_selection.py +0 -0
  109. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_cli_config.py +0 -0
  110. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_client.py +0 -0
  111. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_config.py +0 -0
  112. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_dependency_overview.py +0 -0
  113. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_disable_ignore.py +0 -0
  114. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_gitlab_auth.py +0 -0
  115. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_gitlab_auth_fallback.py +0 -0
  116. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_gitlab_commit_status.py +0 -0
  117. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_gitlab_format.py +0 -0
  118. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_ignore_telemetry_filtering.py +0 -0
  119. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_output.py +0 -0
  120. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/tests/unit/test_slack_plugin.py +0 -0
  121. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/uv.lock +0 -0
  122. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/workflows/bitbucket-pipelines.yml +0 -0
  123. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/workflows/buildkite.yml +0 -0
  124. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/workflows/github-actions.yml +0 -0
  125. {socketsecurity-2.2.86 → socketsecurity-2.2.88}/workflows/gitlab-ci.yml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: socketsecurity
3
- Version: 2.2.86
3
+ Version: 2.2.88
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>
@@ -6,7 +6,7 @@ build-backend = "hatchling.build"
6
6
 
7
7
  [project]
8
8
  name = "socketsecurity"
9
- version = "2.2.86"
9
+ version = "2.2.88"
10
10
  requires-python = ">= 3.11"
11
11
  license = {"file" = "LICENSE"}
12
12
  dependencies = [
@@ -1,3 +1,3 @@
1
1
  __author__ = 'socket.dev'
2
- __version__ = '2.2.86'
2
+ __version__ = '2.2.88'
3
3
  USER_AGENT = f'SocketPythonCLI/{__version__}'
@@ -38,6 +38,15 @@ socket_globs = {
38
38
  },
39
39
  "pnpm-workspace.yml": {
40
40
  "pattern": "pnpm-workspace.yml"
41
+ },
42
+ "bun.lock": {
43
+ "pattern": "bun.lock"
44
+ },
45
+ "bun.lockb": {
46
+ "pattern": "bun.lockb"
47
+ },
48
+ "vlt-lock.json": {
49
+ "pattern": "vlt-lock.json"
41
50
  }
42
51
  },
43
52
  "pypi": {
@@ -105,4 +114,4 @@ socket_globs = {
105
114
  "pattern": "packages.lock.json"
106
115
  }
107
116
  }
108
- }
117
+ }
@@ -1,6 +1,7 @@
1
1
  from unittest.mock import patch
2
2
 
3
3
  from socketsecurity.core import Core
4
+ from socketsecurity.core.utils import socket_globs
4
5
 
5
6
  # Minimal patterns matching what the Socket API returns
6
7
  MOCK_PATTERNS = {
@@ -8,6 +9,9 @@ MOCK_PATTERNS = {
8
9
  "packagejson": {"pattern": "package.json"},
9
10
  "packagelockjson": {"pattern": "package-lock.json"},
10
11
  "yarnlock": {"pattern": "yarn.lock"},
12
+ "bunlock": {"pattern": "bun.lock"},
13
+ "bunlockb": {"pattern": "bun.lockb"},
14
+ "vltlockjson": {"pattern": "vlt-lock.json"},
11
15
  },
12
16
  "pypi": {
13
17
  "requirements": {"pattern": "*requirements.txt"},
@@ -66,3 +70,42 @@ class TestHasManifestFiles:
66
70
  def test_pom_xml_root(self, mock_patterns):
67
71
  core = Core.__new__(Core)
68
72
  assert core.has_manifest_files(["pom.xml"]) is True
73
+
74
+ def test_bun_lock_root(self, mock_patterns):
75
+ core = Core.__new__(Core)
76
+ assert core.has_manifest_files(["bun.lock"]) is True
77
+
78
+ def test_bun_lockb_root(self, mock_patterns):
79
+ core = Core.__new__(Core)
80
+ assert core.has_manifest_files(["bun.lockb"]) is True
81
+
82
+ def test_vlt_lock_json_root(self, mock_patterns):
83
+ core = Core.__new__(Core)
84
+ assert core.has_manifest_files(["vlt-lock.json"]) is True
85
+
86
+ def test_bun_lock_subdirectory(self, mock_patterns):
87
+ core = Core.__new__(Core)
88
+ assert core.has_manifest_files(["apps/web/bun.lock"]) is True
89
+
90
+
91
+ @patch.object(Core, "get_supported_patterns", side_effect=RuntimeError("API unreachable"))
92
+ @patch.object(Core, "__init__", lambda self, *a, **kw: None)
93
+ class TestHasManifestFilesFallback:
94
+ """Exercises the socket_globs fallback path used when the Socket API is unreachable."""
95
+
96
+ def test_fallback_matches_bun_lock(self, mock_patterns):
97
+ core = Core.__new__(Core)
98
+ assert core.has_manifest_files(["bun.lock"]) is True
99
+
100
+ def test_fallback_matches_bun_lockb(self, mock_patterns):
101
+ core = Core.__new__(Core)
102
+ assert core.has_manifest_files(["bun.lockb"]) is True
103
+
104
+ def test_fallback_matches_vlt_lock_json(self, mock_patterns):
105
+ core = Core.__new__(Core)
106
+ assert core.has_manifest_files(["vlt-lock.json"]) is True
107
+
108
+ def test_fallback_patterns_dict_contains_new_entries(self, mock_patterns):
109
+ assert "bun.lock" in socket_globs["npm"]
110
+ assert "bun.lockb" in socket_globs["npm"]
111
+ assert "vlt-lock.json" in socket_globs["npm"]
File without changes
File without changes