cycode 1.4.1.dev10__tar.gz → 1.4.1.dev12__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.
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/PKG-INFO +1 -1
- cycode-1.4.1.dev12/cycode/__init__.py +1 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/code_scanner.py +4 -8
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/tables/sca_table_printer.py +60 -14
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/scan_config_base.py +2 -4
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/pyproject.toml +1 -1
- cycode-1.4.1.dev10/cycode/__init__.py +0 -1
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/README.md +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/auth/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/auth/auth_command.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/auth/auth_manager.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/ci_integrations.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/configure/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/configure/configure_command.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/ignore/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/ignore/ignore_command.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/report_command.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/sbom/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/sbom/common.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/sbom/handle_errors.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/sbom/sbom_command.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/sbom/sbom_path_command.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/sbom/sbom_report_file.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/sbom/sbom_repository_url_command.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/config.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/config.yaml +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/consts.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/exceptions/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/exceptions/custom_exceptions.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/excluder.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/iac/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/iac/tf_content_generator.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/models/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/models/in_memory_zip.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/path_documents.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/repository_documents.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/sca/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/sca/maven/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/sca/maven/base_restore_maven_dependencies.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/sca/maven/restore_gradle_dependencies.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/sca/maven/restore_maven_dependencies.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/sca/sca_code_scanner.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/zip_documents.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/main.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/models.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/console_printer.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/json_printer.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/printer_base.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/tables/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/tables/table.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/tables/table_models.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/tables/table_printer.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/tables/table_printer_base.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/printers/text_printer.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/user_settings/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/user_settings/base_file_manager.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/user_settings/config_file_manager.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/user_settings/configuration_manager.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/user_settings/credentials_manager.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/enum_utils.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/get_api_client.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/path_utils.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/progress_bar.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/scan_batch.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/scan_utils.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/shell_executor.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/string_utils.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/task_timer.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/utils/yaml_utils.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/__init__.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/auth_client.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/client_creator.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/config.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/config.yaml +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/config_dev.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/cycode_client.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/cycode_client_base.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/cycode_dev_based_client.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/cycode_token_based_client.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/models.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/report_client.py +0 -0
- {cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cyclient/scan_client.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = '1.4.1.dev12' # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
|
|
@@ -546,13 +546,13 @@ def perform_scan(
|
|
|
546
546
|
is_commit_range: bool,
|
|
547
547
|
scan_parameters: dict,
|
|
548
548
|
) -> ZippedFileScanResult:
|
|
549
|
+
if scan_type in (consts.SCA_SCAN_TYPE, consts.SAST_SCAN_TYPE):
|
|
550
|
+
return perform_scan_async(cycode_client, zipped_documents, scan_type, scan_parameters)
|
|
551
|
+
|
|
549
552
|
if is_commit_range:
|
|
550
553
|
return cycode_client.commit_range_zipped_file_scan(scan_type, zipped_documents, scan_id)
|
|
551
554
|
|
|
552
|
-
|
|
553
|
-
return cycode_client.zipped_file_scan(scan_type, zipped_documents, scan_id, scan_parameters, is_git_diff)
|
|
554
|
-
|
|
555
|
-
return perform_scan_async(cycode_client, zipped_documents, scan_type, scan_parameters)
|
|
555
|
+
return cycode_client.zipped_file_scan(scan_type, zipped_documents, scan_id, scan_parameters, is_git_diff)
|
|
556
556
|
|
|
557
557
|
|
|
558
558
|
def perform_scan_async(
|
|
@@ -1025,10 +1025,6 @@ def _map_detections_per_file(detections: List[dict]) -> List[DetectionsPerFile]:
|
|
|
1025
1025
|
def _get_file_name_from_detection(detection: dict) -> str:
|
|
1026
1026
|
if detection['category'] == 'SAST':
|
|
1027
1027
|
return detection['detection_details']['file_path']
|
|
1028
|
-
if detection['category'] == 'SecretDetection':
|
|
1029
|
-
file_path = detection['detection_details']['file_path']
|
|
1030
|
-
file_name = detection['detection_details']['file_name']
|
|
1031
|
-
return os.path.join(file_path, file_name)
|
|
1032
1028
|
|
|
1033
1029
|
return detection['detection_details']['file_name']
|
|
1034
1030
|
|
|
@@ -4,7 +4,7 @@ from typing import TYPE_CHECKING, Dict, List
|
|
|
4
4
|
import click
|
|
5
5
|
|
|
6
6
|
from cycode.cli.consts import LICENSE_COMPLIANCE_POLICY_ID, PACKAGE_VULNERABILITY_POLICY_ID
|
|
7
|
-
from cycode.cli.models import Detection
|
|
7
|
+
from cycode.cli.models import Detection, Severity
|
|
8
8
|
from cycode.cli.printers.tables.table import Table
|
|
9
9
|
from cycode.cli.printers.tables.table_models import ColumnInfoBuilder, ColumnWidths
|
|
10
10
|
from cycode.cli.printers.tables.table_printer_base import TablePrinterBase
|
|
@@ -19,21 +19,21 @@ column_builder = ColumnInfoBuilder()
|
|
|
19
19
|
# Building must have strict order. Represents the order of the columns in the table (from left to right)
|
|
20
20
|
SEVERITY_COLUMN = column_builder.build(name='Severity')
|
|
21
21
|
REPOSITORY_COLUMN = column_builder.build(name='Repository')
|
|
22
|
-
|
|
23
|
-
FILE_PATH_COLUMN = column_builder.build(name='File Path')
|
|
22
|
+
CODE_PROJECT_COLUMN = column_builder.build(name='Code Project') # File path to manifest file
|
|
24
23
|
ECOSYSTEM_COLUMN = column_builder.build(name='Ecosystem')
|
|
25
|
-
|
|
26
|
-
DIRECT_DEPENDENCY_COLUMN = column_builder.build(name='Direct Dependency')
|
|
27
|
-
DEVELOPMENT_DEPENDENCY_COLUMN = column_builder.build(name='Development Dependency')
|
|
28
|
-
DEPENDENCY_PATHS_COLUMN = column_builder.build(name='Dependency Paths')
|
|
29
|
-
|
|
24
|
+
PACKAGE_COLUMN = column_builder.build(name='Package')
|
|
30
25
|
CVE_COLUMNS = column_builder.build(name='CVE')
|
|
26
|
+
DEPENDENCY_PATHS_COLUMN = column_builder.build(name='Dependency Paths')
|
|
31
27
|
UPGRADE_COLUMN = column_builder.build(name='Upgrade')
|
|
32
28
|
LICENSE_COLUMN = column_builder.build(name='License')
|
|
29
|
+
DIRECT_DEPENDENCY_COLUMN = column_builder.build(name='Direct Dependency')
|
|
30
|
+
DEVELOPMENT_DEPENDENCY_COLUMN = column_builder.build(name='Development Dependency')
|
|
31
|
+
|
|
33
32
|
|
|
34
33
|
COLUMN_WIDTHS_CONFIG: ColumnWidths = {
|
|
35
34
|
REPOSITORY_COLUMN: 2,
|
|
36
|
-
|
|
35
|
+
CODE_PROJECT_COLUMN: 2,
|
|
36
|
+
PACKAGE_COLUMN: 3,
|
|
37
37
|
CVE_COLUMNS: 5,
|
|
38
38
|
UPGRADE_COLUMN: 3,
|
|
39
39
|
LICENSE_COLUMN: 2,
|
|
@@ -47,7 +47,7 @@ class ScaTablePrinter(TablePrinterBase):
|
|
|
47
47
|
table = self._get_table(policy_id)
|
|
48
48
|
table.set_cols_width(COLUMN_WIDTHS_CONFIG)
|
|
49
49
|
|
|
50
|
-
for detection in detections:
|
|
50
|
+
for detection in self._sort_and_group_detections(detections):
|
|
51
51
|
self._enrich_table_with_values(table, detection)
|
|
52
52
|
|
|
53
53
|
self._print_summary_issues(len(detections), self._get_title(policy_id))
|
|
@@ -64,6 +64,52 @@ class ScaTablePrinter(TablePrinterBase):
|
|
|
64
64
|
|
|
65
65
|
return 'Unknown'
|
|
66
66
|
|
|
67
|
+
@staticmethod
|
|
68
|
+
def __group_by(detections: List[Detection], details_field_name: str) -> Dict[str, List[Detection]]:
|
|
69
|
+
grouped = defaultdict(list)
|
|
70
|
+
for detection in detections:
|
|
71
|
+
grouped[detection.detection_details.get(details_field_name)].append(detection)
|
|
72
|
+
return grouped
|
|
73
|
+
|
|
74
|
+
@staticmethod
|
|
75
|
+
def __severity_sort_key(detection: Detection) -> int:
|
|
76
|
+
severity = detection.detection_details.get('advisory_severity')
|
|
77
|
+
return Severity.try_get_value(severity)
|
|
78
|
+
|
|
79
|
+
def _sort_detections_by_severity(self, detections: List[Detection]) -> List[Detection]:
|
|
80
|
+
return sorted(detections, key=self.__severity_sort_key, reverse=True)
|
|
81
|
+
|
|
82
|
+
@staticmethod
|
|
83
|
+
def __package_sort_key(detection: Detection) -> int:
|
|
84
|
+
return detection.detection_details.get('package_name')
|
|
85
|
+
|
|
86
|
+
def _sort_detections_by_package(self, detections: List[Detection]) -> List[Detection]:
|
|
87
|
+
return sorted(detections, key=self.__package_sort_key)
|
|
88
|
+
|
|
89
|
+
def _sort_and_group_detections(self, detections: List[Detection]) -> List[Detection]:
|
|
90
|
+
"""Sort detections by severity and group by repository, code project and package name.
|
|
91
|
+
|
|
92
|
+
Note:
|
|
93
|
+
Code Project is path to manifest file.
|
|
94
|
+
|
|
95
|
+
Grouping by code projects also groups by ecosystem.
|
|
96
|
+
Because manifest files are unique per ecosystem.
|
|
97
|
+
"""
|
|
98
|
+
result = []
|
|
99
|
+
|
|
100
|
+
# we sort detections by package name to make persist output order
|
|
101
|
+
sorted_detections = self._sort_detections_by_package(detections)
|
|
102
|
+
|
|
103
|
+
grouped_by_repository = self.__group_by(sorted_detections, 'repository_name')
|
|
104
|
+
for repository_group in grouped_by_repository.values():
|
|
105
|
+
grouped_by_code_project = self.__group_by(repository_group, 'file_name')
|
|
106
|
+
for code_project_group in grouped_by_code_project.values():
|
|
107
|
+
grouped_by_package = self.__group_by(code_project_group, 'package_name')
|
|
108
|
+
for package_group in grouped_by_package.values():
|
|
109
|
+
result.extend(self._sort_detections_by_severity(package_group))
|
|
110
|
+
|
|
111
|
+
return result
|
|
112
|
+
|
|
67
113
|
def _get_table(self, policy_id: str) -> Table:
|
|
68
114
|
table = Table()
|
|
69
115
|
|
|
@@ -77,9 +123,9 @@ class ScaTablePrinter(TablePrinterBase):
|
|
|
77
123
|
if self._is_git_repository():
|
|
78
124
|
table.add(REPOSITORY_COLUMN)
|
|
79
125
|
|
|
80
|
-
table.add(
|
|
126
|
+
table.add(CODE_PROJECT_COLUMN)
|
|
81
127
|
table.add(ECOSYSTEM_COLUMN)
|
|
82
|
-
table.add(
|
|
128
|
+
table.add(PACKAGE_COLUMN)
|
|
83
129
|
table.add(DIRECT_DEPENDENCY_COLUMN)
|
|
84
130
|
table.add(DEVELOPMENT_DEPENDENCY_COLUMN)
|
|
85
131
|
table.add(DEPENDENCY_PATHS_COLUMN)
|
|
@@ -93,9 +139,9 @@ class ScaTablePrinter(TablePrinterBase):
|
|
|
93
139
|
table.set(SEVERITY_COLUMN, detection_details.get('advisory_severity'))
|
|
94
140
|
table.set(REPOSITORY_COLUMN, detection_details.get('repository_name'))
|
|
95
141
|
|
|
96
|
-
table.set(
|
|
142
|
+
table.set(CODE_PROJECT_COLUMN, detection_details.get('file_name'))
|
|
97
143
|
table.set(ECOSYSTEM_COLUMN, detection_details.get('ecosystem'))
|
|
98
|
-
table.set(
|
|
144
|
+
table.set(PACKAGE_COLUMN, detection_details.get('package_name'))
|
|
99
145
|
table.set(DIRECT_DEPENDENCY_COLUMN, detection_details.get('is_direct_dependency_str'))
|
|
100
146
|
table.set(DEVELOPMENT_DEPENDENCY_COLUMN, detection_details.get('is_dev_dependency_str'))
|
|
101
147
|
|
|
@@ -16,10 +16,8 @@ class ScanConfigBase(ABC):
|
|
|
16
16
|
return scan_type.upper()
|
|
17
17
|
|
|
18
18
|
@staticmethod
|
|
19
|
-
def get_async_entity_type(
|
|
20
|
-
|
|
21
|
-
return 'zippedfile'
|
|
22
|
-
|
|
19
|
+
def get_async_entity_type(_: str) -> str:
|
|
20
|
+
# we are migrating to "zippedfile" entity type. will be used later
|
|
23
21
|
return 'repository'
|
|
24
22
|
|
|
25
23
|
@abstractmethod
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "cycode"
|
|
3
|
-
version = "1.4.1.
|
|
3
|
+
version = "1.4.1.dev12" # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
|
|
4
4
|
description = "Boost security in your dev lifecycle via SAST, SCA, Secrets & IaC scanning."
|
|
5
5
|
keywords=["secret-scan", "cycode", "devops", "token", "secret", "security", "cycode", "code"]
|
|
6
6
|
authors = ["Cycode <support@cycode.com>"]
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = '1.4.1.dev10' # DON'T TOUCH. Placeholder. Will be filled automatically on poetry build from Git Tag
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/configure/configure_command.py
RENAMED
|
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
|
{cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/sbom/sbom_path_command.py
RENAMED
|
File without changes
|
{cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/commands/report/sbom/sbom_report_file.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/iac/tf_content_generator.py
RENAMED
|
File without changes
|
|
File without changes
|
{cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/models/in_memory_zip.py
RENAMED
|
File without changes
|
|
File without changes
|
{cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/repository_documents.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cycode-1.4.1.dev10 → cycode-1.4.1.dev12}/cycode/cli/files_collector/sca/sca_code_scanner.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|