Skip to content

Commit 94867ba

Browse files
Update inspect_packages pipeline
* Split package/dependencies creation in a seperate step * Only create packages/dependencies from Assemblable PackageData Signed-off-by: Ayan Sinha Mahapatra <ayansmahapatra@gmail.com>
1 parent 5980255 commit 94867ba

3 files changed

Lines changed: 9 additions & 2 deletions

File tree

scanpipe/pipelines/inspect_packages.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ def steps(cls):
4949
cls.flag_empty_files,
5050
cls.flag_ignored_resources,
5151
cls.scan_for_application_packages,
52+
cls.create_packages_and_dependencies,
5253
)
5354

5455
def scan_for_application_packages(self):
@@ -60,5 +61,7 @@ def scan_for_application_packages(self):
6061
# only detect package_data in resources and create
6162
# Package/Dependency instances directly instead of assembling
6263
# the packages and assigning files to them
63-
scancode.scan_for_application_packages(self.project, assemble=False)
64+
scancode.scan_for_application_packages(project=self.project, assemble=False)
65+
66+
def create_packages_and_dependencies(self):
6467
scancode.process_package_data(self.project)

scanpipe/pipes/scancode.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
from extractcode import api as extractcode_api
4040
from packagedcode import get_package_handler
4141
from packagedcode import models as packagedcode_models
42+
from packagedcode import HANDLER_BY_DATASOURCE_ID
4243
from scancode import Scanner
4344
from scancode import api as scancode_api
4445
from scancode import cli as scancode_cli
@@ -461,6 +462,9 @@ def process_package_data(project):
461462
logger.info(f" Processing: {resource.path}")
462463
for package_mapping in resource.package_data:
463464
pd = packagedcode_models.PackageData.from_dict(mapping=package_mapping)
465+
if not pd.can_assemble:
466+
continue
467+
464468
logger.info(f" Package data: {pd.purl}")
465469

466470
package_data = pd.to_dict()

setup.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ install_requires =
7070
# Docker
7171
container-inspector==32.0.1
7272
# ScanCode-toolkit
73-
scancode-toolkit[packages] @ git+https://github.com/nexB/scancode-toolkit.git@c8f854ae1aabf78b19d3fe52e5caca08cc634037
73+
scancode-toolkit[packages] @ git+https://github.com/nexB/scancode-toolkit.git@86e4e9059e05f53ca099ab68346486f781838270
7474
extractcode[full]==31.0.0
7575
commoncode==31.0.3
7676
# FetchCode

0 commit comments

Comments
 (0)