scanoss 1.39.0__tar.gz → 1.40.0__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 (117) hide show
  1. {scanoss-1.39.0/src/scanoss.egg-info → scanoss-1.40.0}/PKG-INFO +1 -1
  2. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/__init__.py +1 -1
  3. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/cli.py +7 -9
  4. scanoss-1.40.0/src/scanoss/data/build_date.txt +1 -0
  5. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanners/scanner_hfh.py +3 -1
  6. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanossgrpc.py +5 -2
  7. {scanoss-1.39.0 → scanoss-1.40.0/src/scanoss.egg-info}/PKG-INFO +1 -1
  8. scanoss-1.39.0/src/scanoss/data/build_date.txt +0 -1
  9. {scanoss-1.39.0 → scanoss-1.40.0}/LICENSE +0 -0
  10. {scanoss-1.39.0 → scanoss-1.40.0}/PACKAGE.md +0 -0
  11. {scanoss-1.39.0 → scanoss-1.40.0}/README.md +0 -0
  12. {scanoss-1.39.0 → scanoss-1.40.0}/pyproject.toml +0 -0
  13. {scanoss-1.39.0 → scanoss-1.40.0}/setup.cfg +0 -0
  14. {scanoss-1.39.0 → scanoss-1.40.0}/src/protoc_gen_swagger/__init__.py +0 -0
  15. {scanoss-1.39.0 → scanoss-1.40.0}/src/protoc_gen_swagger/options/__init__.py +0 -0
  16. {scanoss-1.39.0 → scanoss-1.40.0}/src/protoc_gen_swagger/options/annotations_pb2.py +0 -0
  17. {scanoss-1.39.0 → scanoss-1.40.0}/src/protoc_gen_swagger/options/annotations_pb2.pyi +0 -0
  18. {scanoss-1.39.0 → scanoss-1.40.0}/src/protoc_gen_swagger/options/annotations_pb2_grpc.py +0 -0
  19. {scanoss-1.39.0 → scanoss-1.40.0}/src/protoc_gen_swagger/options/openapiv2_pb2.py +0 -0
  20. {scanoss-1.39.0 → scanoss-1.40.0}/src/protoc_gen_swagger/options/openapiv2_pb2.pyi +0 -0
  21. {scanoss-1.39.0 → scanoss-1.40.0}/src/protoc_gen_swagger/options/openapiv2_pb2_grpc.py +0 -0
  22. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/__init__.py +0 -0
  23. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/common/__init__.py +0 -0
  24. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/common/v2/__init__.py +0 -0
  25. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/common/v2/scanoss_common_pb2.py +0 -0
  26. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/common/v2/scanoss_common_pb2_grpc.py +0 -0
  27. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/components/__init__.py +0 -0
  28. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/components/v2/__init__.py +0 -0
  29. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/components/v2/scanoss_components_pb2.py +0 -0
  30. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/components/v2/scanoss_components_pb2_grpc.py +0 -0
  31. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/cryptography/v2/scanoss_cryptography_pb2.py +0 -0
  32. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/cryptography/v2/scanoss_cryptography_pb2_grpc.py +0 -0
  33. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/dependencies/__init__.py +0 -0
  34. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/dependencies/v2/__init__.py +0 -0
  35. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/dependencies/v2/scanoss_dependencies_pb2.py +0 -0
  36. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/dependencies/v2/scanoss_dependencies_pb2_grpc.py +0 -0
  37. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/geoprovenance/__init__.py +0 -0
  38. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/geoprovenance/v2/__init__.py +0 -0
  39. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/geoprovenance/v2/scanoss_geoprovenance_pb2.py +0 -0
  40. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/geoprovenance/v2/scanoss_geoprovenance_pb2_grpc.py +0 -0
  41. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/licenses/__init__.py +0 -0
  42. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/licenses/v2/__init__.py +0 -0
  43. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/licenses/v2/scanoss_licenses_pb2.py +0 -0
  44. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/licenses/v2/scanoss_licenses_pb2_grpc.py +0 -0
  45. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/scanning/__init__.py +0 -0
  46. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/scanning/v2/__init__.py +0 -0
  47. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/scanning/v2/scanoss_scanning_pb2.py +0 -0
  48. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/scanning/v2/scanoss_scanning_pb2_grpc.py +0 -0
  49. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/semgrep/__init__.py +0 -0
  50. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/semgrep/v2/__init__.py +0 -0
  51. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/semgrep/v2/scanoss_semgrep_pb2.py +0 -0
  52. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/semgrep/v2/scanoss_semgrep_pb2_grpc.py +0 -0
  53. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/vulnerabilities/__init__.py +0 -0
  54. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/vulnerabilities/v2/__init__.py +0 -0
  55. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/vulnerabilities/v2/scanoss_vulnerabilities_pb2.py +0 -0
  56. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/api/vulnerabilities/v2/scanoss_vulnerabilities_pb2_grpc.py +0 -0
  57. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/components.py +0 -0
  58. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/constants.py +0 -0
  59. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/cryptography.py +0 -0
  60. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/csvoutput.py +0 -0
  61. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/cyclonedx.py +0 -0
  62. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/data/scanoss-settings-schema.json +0 -0
  63. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/data/spdx-exceptions.json +0 -0
  64. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/data/spdx-licenses.json +0 -0
  65. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/delta.py +0 -0
  66. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/export/__init__.py +0 -0
  67. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/export/dependency_track.py +0 -0
  68. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/file_filters.py +0 -0
  69. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/filecount.py +0 -0
  70. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/gitlabqualityreport.py +0 -0
  71. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/__init__.py +0 -0
  72. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/dependency_track/project_violation.py +0 -0
  73. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/policy_check.py +0 -0
  74. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/raw/__init__.py +0 -0
  75. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/raw/component_summary.py +0 -0
  76. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/raw/copyleft.py +0 -0
  77. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/raw/license_summary.py +0 -0
  78. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/raw/match_summary.py +0 -0
  79. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/raw/raw_base.py +0 -0
  80. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/raw/undeclared_component.py +0 -0
  81. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/utils/file_utils.py +0 -0
  82. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/utils/license_utils.py +0 -0
  83. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/inspection/utils/markdown_utils.py +0 -0
  84. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/results.py +0 -0
  85. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scancodedeps.py +0 -0
  86. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanner.py +0 -0
  87. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanners/__init__.py +0 -0
  88. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanners/container_scanner.py +0 -0
  89. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanners/folder_hasher.py +0 -0
  90. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanners/scanner_config.py +0 -0
  91. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanoss_settings.py +0 -0
  92. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanossapi.py +0 -0
  93. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanossbase.py +0 -0
  94. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scanpostprocessor.py +0 -0
  95. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/scantype.py +0 -0
  96. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/services/dependency_track_service.py +0 -0
  97. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/spdxlite.py +0 -0
  98. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/threadeddependencies.py +0 -0
  99. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/threadedscanning.py +0 -0
  100. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/utils/__init__.py +0 -0
  101. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/utils/abstract_presenter.py +0 -0
  102. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/utils/crc64.py +0 -0
  103. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/utils/file.py +0 -0
  104. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/utils/scanoss_scan_results_utils.py +0 -0
  105. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/utils/simhash.py +0 -0
  106. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss/winnowing.py +0 -0
  107. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss.egg-info/SOURCES.txt +0 -0
  108. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss.egg-info/dependency_links.txt +0 -0
  109. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss.egg-info/entry_points.txt +0 -0
  110. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss.egg-info/requires.txt +0 -0
  111. {scanoss-1.39.0 → scanoss-1.40.0}/src/scanoss.egg-info/top_level.txt +0 -0
  112. {scanoss-1.39.0 → scanoss-1.40.0}/tests/test_csv_output.py +0 -0
  113. {scanoss-1.39.0 → scanoss-1.40.0}/tests/test_file_filters.py +0 -0
  114. {scanoss-1.39.0 → scanoss-1.40.0}/tests/test_policy_inspect.py +0 -0
  115. {scanoss-1.39.0 → scanoss-1.40.0}/tests/test_scan_post_processor.py +0 -0
  116. {scanoss-1.39.0 → scanoss-1.40.0}/tests/test_spdxlite.py +0 -0
  117. {scanoss-1.39.0 → scanoss-1.40.0}/tests/test_winnowing.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: scanoss
3
- Version: 1.39.0
3
+ Version: 1.40.0
4
4
  Summary: Simple Python library to leverage the SCANOSS APIs
5
5
  Home-page: https://scanoss.com
6
6
  Author: SCANOSS
@@ -22,4 +22,4 @@ SPDX-License-Identifier: MIT
22
22
  THE SOFTWARE.
23
23
  """
24
24
 
25
- __version__ = '1.39.0'
25
+ __version__ = '1.40.0'
@@ -796,7 +796,6 @@ def setup_args() -> None: # noqa: PLR0912, PLR0915
796
796
  help='Timeout (in seconds) for API communication (optional - default 300 sec)',
797
797
  )
798
798
 
799
-
800
799
  # ==============================================================================
801
800
  # GitLab Integration Parser
802
801
  # ==============================================================================
@@ -830,11 +829,7 @@ def setup_args() -> None: # noqa: PLR0912, PLR0915
830
829
 
831
830
  # Input file argument - SCANOSS scan results in JSON format
832
831
  p_gl_inspect_matches.add_argument(
833
- '-i',
834
- '--input',
835
- required=True,
836
- type=str,
837
- help='Path to SCANOSS scan results file (JSON format) to analyze'
832
+ '-i', '--input', required=True, type=str, help='Path to SCANOSS scan results file (JSON format) to analyze'
838
833
  )
839
834
 
840
835
  # Line range prefix for GitLab file navigation
@@ -844,7 +839,7 @@ def setup_args() -> None: # noqa: PLR0912, PLR0915
844
839
  '--line-range-prefix',
845
840
  required=True,
846
841
  type=str,
847
- help='Base URL prefix for GitLab file links with line ranges (e.g., https://gitlab.com/org/project/-/blob/main)'
842
+ help='Base URL prefix for GitLab file links with line ranges (e.g., https://gitlab.com/org/project/-/blob/main)',
848
843
  )
849
844
 
850
845
  # Output file argument - where to save the generated Markdown report
@@ -853,7 +848,7 @@ def setup_args() -> None: # noqa: PLR0912, PLR0915
853
848
  '-o',
854
849
  required=False,
855
850
  type=str,
856
- help='Output file path for the generated Markdown report (default: stdout)'
851
+ help='Output file path for the generated Markdown report (default: stdout)',
857
852
  )
858
853
 
859
854
  # TODO Move to the command call def location
@@ -1189,6 +1184,7 @@ def setup_args() -> None: # noqa: PLR0912, PLR0915
1189
1184
  c_search,
1190
1185
  c_versions,
1191
1186
  c_licenses,
1187
+ p_folder_scan,
1192
1188
  ]:
1193
1189
  p.add_argument('--grpc', action='store_true', default=True, help='Use gRPC (default)')
1194
1190
  p.add_argument('--rest', action='store_true', dest='rest', help='Use REST instead of gRPC')
@@ -1975,7 +1971,7 @@ def inspect_dep_track_project_violations(parser, args):
1975
1971
  sys.exit(1)
1976
1972
 
1977
1973
 
1978
- def inspect_gitlab_matches(parser,args):
1974
+ def inspect_gitlab_matches(parser, args):
1979
1975
  """
1980
1976
  Handle GitLab matches the summary inspection command.
1981
1977
 
@@ -2038,6 +2034,7 @@ def inspect_gitlab_matches(parser,args):
2038
2034
  traceback.print_exc()
2039
2035
  sys.exit(1)
2040
2036
 
2037
+
2041
2038
  # =============================================================================
2042
2039
  # END INSPECT COMMAND HANDLERS
2043
2040
  # =============================================================================
@@ -2673,6 +2670,7 @@ def folder_hashing_scan(parser, args):
2673
2670
  depth=args.depth,
2674
2671
  recursive_threshold=args.recursive_threshold,
2675
2672
  min_accepted_score=args.min_accepted_score,
2673
+ use_grpc=args.grpc,
2676
2674
  )
2677
2675
 
2678
2676
  if scanner.scan():
@@ -0,0 +1 @@
1
+ date: 20251029142146, utime: 1761747706
@@ -63,6 +63,7 @@ class ScannerHFH:
63
63
  depth: int = DEFAULT_HFH_DEPTH,
64
64
  recursive_threshold: float = DEFAULT_HFH_RECURSIVE_THRESHOLD,
65
65
  min_accepted_score: float = DEFAULT_HFH_MIN_ACCEPTED_SCORE,
66
+ use_grpc: bool = False,
66
67
  ):
67
68
  """
68
69
  Initialize the ScannerHFH.
@@ -107,6 +108,7 @@ class ScannerHFH:
107
108
  self.rank_threshold = rank_threshold
108
109
  self.recursive_threshold = recursive_threshold
109
110
  self.min_accepted_score = min_accepted_score
111
+ self.use_grpc = use_grpc
110
112
 
111
113
  def scan(self) -> Optional[Dict]:
112
114
  """
@@ -134,7 +136,7 @@ class ScannerHFH:
134
136
  spinner_thread.start()
135
137
 
136
138
  try:
137
- response = self.client.folder_hash_scan(hfh_request)
139
+ response = self.client.folder_hash_scan(hfh_request, self.use_grpc)
138
140
  if response:
139
141
  self.scan_results = response
140
142
  finally:
@@ -426,21 +426,24 @@ class ScanossGrpc(ScanossBase):
426
426
  use_grpc=use_grpc,
427
427
  )
428
428
 
429
- def folder_hash_scan(self, request: Dict) -> Optional[Dict]:
429
+ def folder_hash_scan(self, request: Dict, use_grpc: Optional[bool] = None) -> Optional[Dict]:
430
430
  """
431
431
  Client function to call the rpc for Folder Hashing Scan
432
432
 
433
433
  Args:
434
434
  request (Dict): Folder Hash Request
435
+ use_grpc (Optional[bool]): Whether to use gRPC or REST API
435
436
 
436
437
  Returns:
437
438
  Optional[Dict]: Folder Hash Response, or None if the request was not succesfull
438
439
  """
439
- return self._call_rpc(
440
+ return self._call_api(
441
+ 'scanning.FolderHashScan',
440
442
  self.scanning_stub.FolderHashScan,
441
443
  request,
442
444
  HFHRequest,
443
445
  'Sending folder hash scan data (rqId: {rqId})...',
446
+ use_grpc=use_grpc,
444
447
  )
445
448
 
446
449
  def _call_api(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: scanoss
3
- Version: 1.39.0
3
+ Version: 1.40.0
4
4
  Summary: Simple Python library to leverage the SCANOSS APIs
5
5
  Home-page: https://scanoss.com
6
6
  Author: SCANOSS
@@ -1 +0,0 @@
1
- date: 20251027150435, utime: 1761577475
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes