Skip to content

Commit 7aacf82

Browse files
committed
fix: propagate --exclude-license-details to the full-scan diff request
The full-scan diff comparison ignored --exclude-license-details: the flag was applied to full-scan params and report URLs but never forwarded to the fullscans.stream_diff request, so diff comparisons always fetched license details regardless of the flag. Thread it through get_added_and_removed_packages -> stream_diff via a new include_license_details param (defaulting True to preserve current behavior). Non-breaking: the APIFailure handling at this call site is deliberately left as-is (exit 1, --disable-blocking -> 0). Re-routing diff APIFailures through the top-level exit-3 path is part of the 3.0 exit-code change, not this one. Originally from the unreleased PR #195 branch; the timeout-propagation half already landed in the preceding commit. Signed-off-by: lelia <2418071+lelia@users.noreply.github.com>
1 parent e671669 commit 7aacf82

2 files changed

Lines changed: 11 additions & 5 deletions

File tree

socketsecurity/core/__init__.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -920,7 +920,8 @@ def get_license_text_via_purl(self, packages: dict[str, Package], batch_size: in
920920
def get_added_and_removed_packages(
921921
self,
922922
head_full_scan_id: str,
923-
new_full_scan_id: str
923+
new_full_scan_id: str,
924+
include_license_details: bool = True
924925
) -> Tuple[Dict[str, Package], Dict[str, Package], Dict[str, Package]]:
925926
"""
926927
Get packages that were added and removed between scans.
@@ -937,12 +938,12 @@ def get_added_and_removed_packages(
937938
diff_start = time.time()
938939
try:
939940
diff_report = (
940-
self.sdk.fullscans.stream_diff
941-
(
941+
self.sdk.fullscans.stream_diff(
942942
self.config.org_slug,
943943
head_full_scan_id,
944944
new_full_scan_id,
945-
use_types=True
945+
use_types=True,
946+
include_license_details=str(include_license_details).lower()
946947
).data
947948
)
948949
except APIFailure as e:
@@ -1154,7 +1155,11 @@ def create_new_diff(
11541155
added_packages,
11551156
removed_packages,
11561157
packages
1157-
) = self.get_added_and_removed_packages(head_full_scan_id, new_full_scan.id)
1158+
) = self.get_added_and_removed_packages(
1159+
head_full_scan_id,
1160+
new_full_scan.id,
1161+
include_license_details=getattr(params, "include_license_details", True)
1162+
)
11581163

11591164
# Separate unchanged packages from added/removed for --strict-blocking support
11601165
unchanged_packages = {

tests/core/test_sdk_methods.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ def test_get_added_and_removed_packages(core):
101101
"head",
102102
"new",
103103
use_types=True,
104+
include_license_details="true",
104105
)
105106

106107
# Verify the results

0 commit comments

Comments
 (0)