ossa-scanner 0.1.45__py3-none-any.whl → 0.1.47__py3-none-any.whl

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.
ossa_scanner/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.1.45"
1
+ __version__ = "0.1.47"
ossa_scanner/scanner.py CHANGED
@@ -26,7 +26,6 @@ class Scanner:
26
26
  try:
27
27
  print(f"Processing package: {package}")
28
28
  package_info = get_package_info(self.pm_type, package, self.temp_dir)
29
- exit()
30
29
  source_files = download_source(self.pm_type, package, self.temp_dir)
31
30
  self.save_package_report(package, package_info, source_files)
32
31
  except Exception as e:
@@ -19,15 +19,13 @@ def cleanup_extracted_files(folder_path):
19
19
  def download_source(package_manager, package_name, output_dir):
20
20
  try:
21
21
  if package_manager == 'apt':
22
- cmd = ['apt-get', 'source', package_name, '-d', output_dir]
23
- print("CMD:", cmd)
24
- subprocess.run(cmd, check=True)
25
- exit()
26
- source_dirs = [d for d in os.listdir() if d.startswith(package_name) and os.path.isdir(d)]
27
- print('source_dirs:', source_dirs)
28
- if not source_dirs:
29
- print(f"Source package for {package_name} not found in {package_name}.")
30
- return
22
+ p_hash = hash(package_name) % 10000
23
+ src_output_dir = os.path.join(output_dir, str(p_hash))
24
+ os.makedirs(src_output_dir, exist_ok=True)
25
+ cmd = ['apt-get', 'source', package_name]
26
+ subprocess.run(cmd, check=True, cwd=src_output_dir, capture_output=True, text=True)
27
+ tarballs = [os.path.join(src_output_dir, f) for f in os.listdir(src_output_dir) if f.endswith((".tar.gz", ".tar.bz2", ".tar.xz", ".tgz"))]
28
+ print('tarballs:', tarballs)
31
29
  exit()
32
30
  elif package_manager in ['yum', 'dnf']:
33
31
  p_hash = hash(package_name) % 10000
@@ -142,13 +142,10 @@ def parse_apt_info(output, package_name, output_dir):
142
142
 
143
143
  if "licenses" not in info:
144
144
  info["licenses"] = apt_get_license_from_source(package_name, output_dir)
145
- print(package_name, info["licenses"])
146
145
  if "licenses" in info:
147
146
  info["licenses"] = extract_spdx_ids(info["licenses"])
148
147
  info["severity"] = license_classificaton(info["licenses"])
149
148
 
150
- print(package_name, output_dir, info)
151
-
152
149
  # Ensure all keys are present even if data is missing
153
150
  return {
154
151
  "licenses": info.get("licenses", "NOASSERTION"),
@@ -162,13 +159,11 @@ def apt_get_license_from_source(package_name, output_dir):
162
159
  p_hash = hash(package_name) % 10000
163
160
  src_output_dir = os.path.join(output_dir, str(p_hash))
164
161
  os.makedirs(src_output_dir, exist_ok=True)
165
- print(package_name, 'cwd:', src_output_dir)
166
162
  cmd = ['apt-get', 'source', package_name]
167
163
  subprocess.run(cmd, check=True, cwd=src_output_dir, capture_output=True, text=True)
168
164
  for item in os.listdir(src_output_dir):
169
165
  path = os.path.join(src_output_dir, item)
170
166
  if item.startswith(package_name) and os.path.isdir(path):
171
- print(f"{item} → Directory")
172
167
  package_dir = path
173
168
  elif item.startswith(package_name):
174
169
  shutil.rmtree(path, ignore_errors=True)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ossa_scanner
3
- Version: 0.1.45
3
+ Version: 0.1.47
4
4
  Summary: Open Source Software Advisory generator for Core and Base Linux Packages.
5
5
  Home-page: https://github.com/oscarvalenzuelab/ossa_scanner
6
6
  Author: Oscar Valenzuela
@@ -0,0 +1,16 @@
1
+ ossa_scanner/__init__.py,sha256=BqdH88p7_x5NtwJCtqUPLKt1fAJF1mVKUoKH7vlX5dQ,23
2
+ ossa_scanner/cli.py,sha256=sgr8NFpf_Ut84KYFQjOKRxv8CfAMaTPhMo7DbR53lT4,2311
3
+ ossa_scanner/scanner.py,sha256=P_pouAPLMWUq_tjiwDyBYvs6cnXDs5VHB8305ui2VHI,4802
4
+ ossa_scanner/uploader.py,sha256=dPbhSLlQcDyHP-6Ugn6BzYGn_VQ1Ik6TWt2138k3REo,1837
5
+ ossa_scanner/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
+ ossa_scanner/utils/downloader.py,sha256=w4HT_3azkWB5hpfHvG5Yjhq_xCRxHuGwYIZLAeNV6uU,5745
7
+ ossa_scanner/utils/hash_calculator.py,sha256=LrDKngWOPbizYJWab2sDJDLB4pD_RrI51L0cZt3VjJY,960
8
+ ossa_scanner/utils/os_detection.py,sha256=35VbUbFklzd7aojgltKf2PxbnVFcpREA7Tri2YI5nfY,417
9
+ ossa_scanner/utils/package_manager.py,sha256=0Gvyx0deX4aWNQ9TpxAl55_RKL9NUMeKWPocbHIYpJE,8829
10
+ ossa_scanner/utils/swhid_calculator.py,sha256=7-bO4RglJr-kt5SjUfnlcPZD0k0-s_dveHEjRo-zEMc,1317
11
+ ossa_scanner-0.1.47.dist-info/LICENSE,sha256=9slQ_XNiEkio28l90NwihP7a90fCL2GQ6YhcVXTBls4,1064
12
+ ossa_scanner-0.1.47.dist-info/METADATA,sha256=cp0WdGJHUG-yIzAMLfkNWoCDJciYS4BNsbbaswbFDk0,1938
13
+ ossa_scanner-0.1.47.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
14
+ ossa_scanner-0.1.47.dist-info/entry_points.txt,sha256=UVoAo-wTPxT82g3cfqTs2CmQnazd57TAwhd9VwEKD1c,55
15
+ ossa_scanner-0.1.47.dist-info/top_level.txt,sha256=uUp5CvhZfJLapXn9DyUXvgH7QK3uzF2ibH943lWN5Bs,13
16
+ ossa_scanner-0.1.47.dist-info/RECORD,,
@@ -1,16 +0,0 @@
1
- ossa_scanner/__init__.py,sha256=G1Bw5SEeRoSlHVxmFKf6PIpK38SHTYTFhSFGm9d8YQM,23
2
- ossa_scanner/cli.py,sha256=sgr8NFpf_Ut84KYFQjOKRxv8CfAMaTPhMo7DbR53lT4,2311
3
- ossa_scanner/scanner.py,sha256=4VfkM2h-Y1zFQnqdBxpav5OhRoTdjdmFbF5VOXKKoXU,4821
4
- ossa_scanner/uploader.py,sha256=dPbhSLlQcDyHP-6Ugn6BzYGn_VQ1Ik6TWt2138k3REo,1837
5
- ossa_scanner/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
- ossa_scanner/utils/downloader.py,sha256=AGRhJU9YducTe6mY5-7mZ4fRTFg2tcfz1DS0Nee-wM0,5693
7
- ossa_scanner/utils/hash_calculator.py,sha256=LrDKngWOPbizYJWab2sDJDLB4pD_RrI51L0cZt3VjJY,960
8
- ossa_scanner/utils/os_detection.py,sha256=35VbUbFklzd7aojgltKf2PxbnVFcpREA7Tri2YI5nfY,417
9
- ossa_scanner/utils/package_manager.py,sha256=kQ293LbJ1Jb-tzpeWpgLOmmjFd9Z4SK8fY96l7OS1CQ,9017
10
- ossa_scanner/utils/swhid_calculator.py,sha256=7-bO4RglJr-kt5SjUfnlcPZD0k0-s_dveHEjRo-zEMc,1317
11
- ossa_scanner-0.1.45.dist-info/LICENSE,sha256=9slQ_XNiEkio28l90NwihP7a90fCL2GQ6YhcVXTBls4,1064
12
- ossa_scanner-0.1.45.dist-info/METADATA,sha256=wxBVtOWzMn7MGHTHyAHclJ_gOPYT13JracJyYBqkLrM,1938
13
- ossa_scanner-0.1.45.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
14
- ossa_scanner-0.1.45.dist-info/entry_points.txt,sha256=UVoAo-wTPxT82g3cfqTs2CmQnazd57TAwhd9VwEKD1c,55
15
- ossa_scanner-0.1.45.dist-info/top_level.txt,sha256=uUp5CvhZfJLapXn9DyUXvgH7QK3uzF2ibH943lWN5Bs,13
16
- ossa_scanner-0.1.45.dist-info/RECORD,,