ossa-scanner 0.1.14__py3-none-any.whl → 0.1.16__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 +1 -1
- ossa_scanner/utils/package_manager.py +7 -3
- {ossa_scanner-0.1.14.dist-info → ossa_scanner-0.1.16.dist-info}/METADATA +1 -1
- {ossa_scanner-0.1.14.dist-info → ossa_scanner-0.1.16.dist-info}/RECORD +8 -8
- {ossa_scanner-0.1.14.dist-info → ossa_scanner-0.1.16.dist-info}/LICENSE +0 -0
- {ossa_scanner-0.1.14.dist-info → ossa_scanner-0.1.16.dist-info}/WHEEL +0 -0
- {ossa_scanner-0.1.14.dist-info → ossa_scanner-0.1.16.dist-info}/entry_points.txt +0 -0
- {ossa_scanner-0.1.14.dist-info → ossa_scanner-0.1.16.dist-info}/top_level.txt +0 -0
ossa_scanner/__init__.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = "0.1.
|
1
|
+
__version__ = "0.1.16"
|
@@ -138,10 +138,10 @@ def parse_apt_info(output, package_name):
|
|
138
138
|
info["website"] = line.split(":", 1)[1].strip()
|
139
139
|
elif "Copyright" in line:
|
140
140
|
info["references"] = line.strip()
|
141
|
-
info["licenses"] = extract_spdx_ids(info["licenses"])
|
142
|
-
severity = license_classificaton(info["licenses"])
|
143
141
|
|
144
|
-
|
142
|
+
info["licenses"] = apt_get_license_from_source(package_name)
|
143
|
+
info["licenses"] = extract_spdx_ids(info["licenses"])
|
144
|
+
severity = license_classificaton(info["licenses"])
|
145
145
|
|
146
146
|
# Ensure all keys are present even if data is missing
|
147
147
|
return {
|
@@ -153,18 +153,22 @@ def parse_apt_info(output, package_name):
|
|
153
153
|
|
154
154
|
def apt_get_license_from_source(package_name):
|
155
155
|
try:
|
156
|
+
print('downloading source for:', package_name)
|
156
157
|
subprocess.run(["apt-get", "source", package_name], check=True, capture_output=True, text=True)
|
157
158
|
source_dirs = [d for d in os.listdir() if d.startswith(package_name) and os.path.isdir(d)]
|
159
|
+
print('source_dirs for:', source_dirs)
|
158
160
|
if not source_dirs:
|
159
161
|
return "NOASSERTION"
|
160
162
|
package_dir = source_dirs[0]
|
161
163
|
copyright_file = os.path.join(package_dir, "debian", "copyright")
|
164
|
+
print('copyright_file:', copyright_file)
|
162
165
|
licenses = []
|
163
166
|
if os.path.exists(copyright_file):
|
164
167
|
with open(copyright_file, "r", encoding="utf-8") as f:
|
165
168
|
for line in f:
|
166
169
|
if re.search(r"(?i)license:", line):
|
167
170
|
licenses.append(line.split(":", 1)[1].strip())
|
171
|
+
print('licenses:', licenses)
|
168
172
|
shutil.rmtree(package_dir, ignore_errors=True)
|
169
173
|
return ", ".join(set(licenses)) if licenses else "NOASSERTION"
|
170
174
|
except subprocess.CalledProcessError as e:
|
@@ -1,4 +1,4 @@
|
|
1
|
-
ossa_scanner/__init__.py,sha256=
|
1
|
+
ossa_scanner/__init__.py,sha256=yF88-8vL8keLe6gCTumymw0UoMkWkSrJnzLru4zBCLQ,23
|
2
2
|
ossa_scanner/cli.py,sha256=sgr8NFpf_Ut84KYFQjOKRxv8CfAMaTPhMo7DbR53lT4,2311
|
3
3
|
ossa_scanner/scanner.py,sha256=Zmk-Qr8jDoPdCXLkospp2NUgYl7Sdhx_Rhraltxd2u8,4787
|
4
4
|
ossa_scanner/uploader.py,sha256=dPbhSLlQcDyHP-6Ugn6BzYGn_VQ1Ik6TWt2138k3REo,1837
|
@@ -6,11 +6,11 @@ ossa_scanner/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuF
|
|
6
6
|
ossa_scanner/utils/downloader.py,sha256=DRXMg33QB2RiFr3kVjsDUcFcq7RO-4Sbee-twRYeuSM,5330
|
7
7
|
ossa_scanner/utils/hash_calculator.py,sha256=LrDKngWOPbizYJWab2sDJDLB4pD_RrI51L0cZt3VjJY,960
|
8
8
|
ossa_scanner/utils/os_detection.py,sha256=35VbUbFklzd7aojgltKf2PxbnVFcpREA7Tri2YI5nfY,417
|
9
|
-
ossa_scanner/utils/package_manager.py,sha256
|
9
|
+
ossa_scanner/utils/package_manager.py,sha256=Dc-TqPBDRO07YwcbNQgHmgF_UkrLoy9CqIP9N1zHRyA,8238
|
10
10
|
ossa_scanner/utils/swhid_calculator.py,sha256=7-bO4RglJr-kt5SjUfnlcPZD0k0-s_dveHEjRo-zEMc,1317
|
11
|
-
ossa_scanner-0.1.
|
12
|
-
ossa_scanner-0.1.
|
13
|
-
ossa_scanner-0.1.
|
14
|
-
ossa_scanner-0.1.
|
15
|
-
ossa_scanner-0.1.
|
16
|
-
ossa_scanner-0.1.
|
11
|
+
ossa_scanner-0.1.16.dist-info/LICENSE,sha256=9slQ_XNiEkio28l90NwihP7a90fCL2GQ6YhcVXTBls4,1064
|
12
|
+
ossa_scanner-0.1.16.dist-info/METADATA,sha256=wIL8H_SYcyxH3ETS2dxJBrksUnW0khQiLlkDLRwVM4E,1938
|
13
|
+
ossa_scanner-0.1.16.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
14
|
+
ossa_scanner-0.1.16.dist-info/entry_points.txt,sha256=UVoAo-wTPxT82g3cfqTs2CmQnazd57TAwhd9VwEKD1c,55
|
15
|
+
ossa_scanner-0.1.16.dist-info/top_level.txt,sha256=uUp5CvhZfJLapXn9DyUXvgH7QK3uzF2ibH943lWN5Bs,13
|
16
|
+
ossa_scanner-0.1.16.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|