Skip to content

Commit f0f3e52

Browse files
committed
Merge branch 'main' into 1145-load-spdx-dependencies
2 parents 4f72dcc + 3ce578d commit f0f3e52

File tree

267 files changed

+15640
-2619
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

267 files changed

+15640
-2619
lines changed
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: Generate SBOMS
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
tags:
7+
- "v*.*.*"
8+
9+
env:
10+
INPUTS_PATH: scancode-inputs
11+
12+
jobs:
13+
generate-sboms:
14+
runs-on: ubuntu-24.04
15+
16+
steps:
17+
- name: Checkout code
18+
uses: actions/checkout@v4
19+
20+
- name: Ensure INPUTS_PATH directory exists
21+
run: mkdir -p "${{ env.INPUTS_PATH }}"
22+
23+
- name: Build the Docker image from local Dockerfile
24+
run: docker build -t local-image .
25+
26+
- name: Run pip freeze inside the built Docker container
27+
run: docker run --rm local-image pip freeze --all --exclude scancodeio > "${{ env.INPUTS_PATH }}/requirements.txt"
28+
29+
- name: Collect all .ABOUT files in the scancodeio/ directory
30+
run: |
31+
mkdir -p "${{ env.INPUTS_PATH }}/about-files"
32+
find scancodeio/ -type f -name "*.ABOUT" -exec cp {} "${{ env.INPUTS_PATH }}/about-files/" \;
33+
34+
- name: Resolve the dependencies using ScanCode-action
35+
uses: nexB/scancode-action@main
36+
with:
37+
pipelines: "resolve_dependencies:DynamicResolver"
38+
inputs-path: ${{ env.INPUTS_PATH }}
39+
scancodeio-repo-branch: main

.github/workflows/pypi-release-aboutcode-pipeline.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
run: python -m pip install flot --user
2424

2525
- name: Build a binary wheel and a source tarball
26-
run: python -m flot --pyproject pipeline-pyproject.toml --sdist --wheel --output-dir dist/
26+
run: python -m flot --pyproject pipeline-pyproject.toml --sdist --wheel --output-dir dist/
2727

2828
- name: Publish to PyPI
2929
if: startsWith(github.ref, 'refs/tags')

.github/workflows/pypi-release.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@ jobs:
3838
path: dist/*
3939

4040
- name: Create a GitHub release
41-
uses: softprops/action-gh-release@v1
41+
uses: softprops/action-gh-release@v2
4242
with:
43+
generate_release_notes: true
4344
draft: false
4445
files: dist/*

CHANGELOG.rst

Lines changed: 244 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,250 @@
11
Changelog
22
=========
33

4+
v34.10.2 (unreleased)
5+
---------------------
6+
7+
- Add a ``UUID`` field on the DiscoveredDependency model.
8+
Use the UUID for the DiscoveredDependency spdx_id for better SPDX compatibility.
9+
https://github.com/aboutcode-org/scancode.io/issues/1651
10+
11+
v34.10.1 (2025-03-26)
12+
---------------------
13+
14+
- Convert the ``declared_license`` field value return by ``python-inspector`` in
15+
``resolve_pypi_packages``.
16+
Resolving requirements.txt files will now return proper license data.
17+
https://github.com/aboutcode-org/scancode.io/issues/1598
18+
19+
- Add support for installing on Apple Silicon (macOS ARM64) in dev mode.
20+
https://github.com/aboutcode-org/scancode.io/pull/1646
21+
22+
v34.10.0 (2025-03-21)
23+
---------------------
24+
25+
- Rename the ``docker``, ``docker_windows``, and ``root_filesystem`` modules to
26+
``analyze_docker``, ``analyze_docker_windows``, and ``analyze_root_filesystem``
27+
for consistency.
28+
29+
- Refine and document the Webhook system
30+
https://github.com/aboutcode-org/scancode.io/issues/1587
31+
* Add UI to add/delete Webhooks from the project settings
32+
* Add a new ``add-webhook`` management command
33+
* Add a ``add_webhook`` REST API action
34+
* Add a new ``SCANCODEIO_GLOBAL_WEBHOOK`` setting
35+
* Add a new chapter dedicated to Webhooks management in the documentation
36+
* Add support for custom payload dedicated to Slack webhooks
37+
38+
- Upgrade Bulma CSS library to version 1.0.2
39+
https://github.com/aboutcode-org/scancode.io/pull/1268
40+
41+
- Disable the creation of the global webhook in the ``batch-create`` command by default.
42+
The global webhook can be created by providing the ``--create-global-webhook`` option.
43+
A ``--no-global-webhook`` option was also added to the ``create-project`` command to
44+
provide the ability to skip the global webhook creation.
45+
https://github.com/aboutcode-org/scancode.io/pull/1629
46+
47+
- Add support for "Permission denied" file access in make_codebase_resource.
48+
https://github.com/aboutcode-org/scancode.io/issues/1630
49+
50+
- Refine the ``scan_single_package`` pipeline to work on git fetched inputs.
51+
https://github.com/aboutcode-org/scancode.io/issues/1376
52+
53+
v34.9.5 (2025-02-19)
54+
--------------------
55+
56+
- Add support for the XLSX report in REST API.
57+
https://github.com/aboutcode-org/scancode.io/issues/1524
58+
59+
- Add options to the Project reset action.
60+
Also, the Project labels are kept during reset.
61+
https://github.com/aboutcode-org/scancode.io/issues/1568
62+
63+
- Add aboutcode.pipeline as an install_requires external dependency to prevent conflicts
64+
with other aboutcode submodules.
65+
https://github.com/aboutcode-org/scancode.io/issues/1423
66+
67+
- Add a ``add-webhook`` management command that allows to add webhook subscription on
68+
a project.
69+
https://github.com/aboutcode-org/scancode.io/issues/1587
70+
71+
- Add proper progress logging for the ``assemble`` section of the
72+
``scan_for_application_packages``.
73+
https://github.com/aboutcode-org/scancode.io/issues/1601
74+
75+
v34.9.4 (2025-01-21)
76+
--------------------
77+
78+
- Improve Project list page navigation.
79+
A top previous/next page navigation was added in the header for consistency with other
80+
list views.
81+
Any paginated view can now be navigated using the left/right keyboard keys.
82+
https://github.com/aboutcode-org/scancode.io/issues/1200
83+
84+
- Add support for importing the ``extra_data`` value from the JSON input with the
85+
``load_inventory`` pipeline.
86+
When multiple JSON files are provided as inputs, the ``extra`` is prefixed with
87+
the input filename.
88+
https://github.com/aboutcode-org/scancode.io/issues/926
89+
90+
- Disable CycloneDX document strict validation, which halts the entire loading process,
91+
and let the data loading process handle the data issues.
92+
https://github.com/aboutcode-org/scancode.io/issues/1515
93+
94+
- Add a report action on project list to export XLSX containing packages from selected
95+
projects.
96+
https://github.com/aboutcode-org/scancode.io/issues/1437
97+
98+
- Add a download action on project list to enable bulk download of Project output files.
99+
https://github.com/aboutcode-org/scancode.io/issues/1518
100+
101+
- Add labels to Project level search.
102+
The labels are now always presented in alphabetical order for consistency.
103+
https://github.com/aboutcode-org/scancode.io/issues/1520
104+
105+
- Add a ``batch-create`` management command that allows to create multiple projects
106+
at once from a directory containing input files.
107+
https://github.com/aboutcode-org/scancode.io/issues/1437
108+
109+
- Do not download input_urls in management commands. The fetch/download is delegated to
110+
the pipeline execution.
111+
https://github.com/aboutcode-org/scancode.io/issues/1437
112+
113+
- Add a "TODOS" sheet containing on REQUIRES_REVIEW resources in XLSX.
114+
https://github.com/aboutcode-org/scancode.io/issues/1524
115+
116+
- Improve XLSX output for Vulnerabilities.
117+
Replace the ``affected_by_vulnerabilities`` field in the PACKAGES and DEPENDENCIES
118+
sheets with a dedicated VULNERABILITIES sheet.
119+
https://github.com/aboutcode-org/scancode.io/issues/1519
120+
121+
- Keep the InputSource objects when using ``reset`` on Projects.
122+
https://github.com/aboutcode-org/scancode.io/issues/1536
123+
124+
- Add a ``report`` management command that allows to generate XLSX reports for
125+
multiple projects at once using labels and searching by project name.
126+
https://github.com/aboutcode-org/scancode.io/issues/1524
127+
128+
- Add the ability to "select across" in Projects list when using the "select all"
129+
checkbox on paginated list.
130+
https://github.com/aboutcode-org/scancode.io/issues/1524
131+
132+
- Update scancode-toolkit to v32.3.2. See CHANGELOG for updates:
133+
https://github.com/aboutcode-org/scancode-toolkit/releases/tag/v32.3.2
134+
https://github.com/aboutcode-org/scancode-toolkit/releases/tag/v32.3.1
135+
136+
- Adds a project settings ``scan_max_file_size`` and a scancode.io settings field
137+
``SCANCODEIO_SCAN_MAX_FILE_SIZE`` to skip scanning files above a certain
138+
file size (in bytes) as a temporary fix for large memory spikes while
139+
scanning for licenses in certain large files.
140+
https://github.com/aboutcode-org/scancode-toolkit/issues/3711
141+
142+
v34.9.3 (2024-12-31)
143+
--------------------
144+
145+
- Refine the available settings for RQ_QUEUES:
146+
* Rename the RQ_QUEUES sub-settings to SCANCODEIO_RQ_REDIS_*
147+
* Add SCANCODEIO_RQ_REDIS_SSL setting to enable SSL.
148+
https://github.com/aboutcode-org/scancode.io/issues/1465
149+
150+
- Add support to map binaries to source files using symbols
151+
for rust binaries and source files. This adds also using
152+
``rust-inspector`` to extract symbols from rust binaries.
153+
This is a new optional ``Rust`` step in the
154+
``map_deploy_to_develop`` pipeline.
155+
https://github.com/aboutcode-org/scancode.io/issues/1435
156+
157+
v34.9.2 (2024-12-10)
158+
--------------------
159+
160+
- Fix an issue with the ``scan_rootfs_for_system_packages`` pipe when a namespace is
161+
missing for the discovered packages.
162+
https://github.com/aboutcode-org/scancode.io/issues/1462
163+
164+
v34.9.1 (2024-12-09)
165+
--------------------
166+
167+
- Add the ability to filter on Project endpoint API actions.
168+
The list of ``resources``, ``packages``, ``dependencies``, ``relations``, and
169+
``messages`` can be filtered providing the ``?field_name=value`` in the URL
170+
parameters.
171+
https://github.com/aboutcode-org/scancode.io/issues/1449
172+
173+
- Fix the ability to provide multiple optional step when defining pipelines in the
174+
REST API.
175+
The support for providing pipeline names as a comma-separated single string was
176+
remove as the comma is used as the optional step separator.
177+
Use a list of pipeline names instead.
178+
https://github.com/aboutcode-org/scancode.io/issues/1454
179+
180+
- Make the header row of tables sticky to the top of the screen so it is always
181+
visible.
182+
https://github.com/aboutcode-org/scancode.io/issues/1457
183+
184+
v34.9.0 (2024-11-14)
185+
--------------------
186+
187+
- Add ability to declared pipeline selected groups in create project REST API endpoint.
188+
https://github.com/aboutcode-org/scancode.io/issues/1426
189+
190+
- Add a new ``list-pipelines`` management command.
191+
https://github.com/aboutcode-org/scancode.io/issues/1397
192+
193+
- Refactor the policies related code to its own module.
194+
https://github.com/aboutcode-org/scancode.io/issues/386
195+
196+
- Add support for project-specific license policies and compliance alerts.
197+
Enhance Project model to handle policies from local settings, project input
198+
"policies.yml" files, or global app settings.
199+
https://github.com/aboutcode-org/scancode.io/issues/386
200+
201+
- Refactor the ``group`` decorator for pipeline steps as ``optional_step``.
202+
The steps decorated as optional are not included by default anymore.
203+
https://github.com/aboutcode-org/scancode.io/issues/386
204+
205+
- Add a new ``PublishToFederatedCode`` pipeline (addon) to push scan result
206+
to FederatedCode.
207+
https://github.com/nexB/scancode.io/pull/1400
208+
209+
- Add new ``purl`` field to project model. https://github.com/nexB/scancode.io/pull/1400
210+
211+
v34.8.3 (2024-10-30)
212+
--------------------
213+
214+
- Include the ``aboutcode`` module in the wheel and source distribution.
215+
https://github.com/aboutcode-org/scancode.io/issues/1423
216+
217+
- Update ScanCode-toolkit to v32.3.0
218+
https://github.com/aboutcode-org/scancode.io/issues/1418
219+
220+
v34.8.2 (2024-10-28)
221+
--------------------
222+
223+
- Add ``android_analysis`` to ``extra_requires``. This installs the package
224+
``android_inspector``, which provides a pipeline for Android APK
225+
deploy-to-development analysis.
226+
227+
- Remove the sleep time in the context of testing ``matchcode.poll_run_url_status``
228+
to speed up the test.
229+
https://github.com/aboutcode-org/scancode.io/issues/1411
230+
231+
- Add ability to specify the CycloneDX output spec version using the ``output``
232+
management command and providing the ``cyclonedx:VERSION`` syntax as format value.
233+
https://github.com/aboutcode-org/scancode-action/issues/8
234+
235+
- Add new ``compliance`` REST API action that list all compliance alert for a given
236+
project. The severity level can be provided using the
237+
``?fail_level={ERROR,WARNING,MISSING}`` parameter.
238+
https://github.com/aboutcode-org/scancode.io/issues/1346
239+
240+
- Add new ``Compliance alerts`` panel in the project detail view.
241+
https://github.com/aboutcode-org/scancode.io/issues/1346
242+
243+
v34.8.1 (2024-09-06)
244+
--------------------
245+
246+
- Upgrade Django to security release 5.1.1 and related dependencies.
247+
4248
v34.8.0 (2024-08-15)
5249
--------------------
6250

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ include .VERSION
1515

1616
graft scancodeio
1717
graft scanpipe
18+
graft aboutcode
1819
graft docs
1920
graft etc
2021
graft .github/workflows

Makefile

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ VENV_LOCATION=.venv
2626
ACTIVATE?=. ${VENV_LOCATION}/bin/activate;
2727
MANAGE=${VENV_LOCATION}/bin/python manage.py
2828
VIRTUALENV_PYZ=etc/thirdparty/virtualenv.pyz
29+
PIP_ARGS=--find-links=./etc/thirdparty/dummy_dist
2930
# Do not depend on Python to generate the SECRET_KEY
3031
GET_SECRET_KEY=`head -c50 /dev/urandom | base64 | head -c50`
3132
# Customize with `$ make envfile ENV_FILE=/etc/scancodeio/.env`
@@ -51,11 +52,11 @@ virtualenv:
5152

5253
conf: virtualenv
5354
@echo "-> Install dependencies"
54-
@${ACTIVATE} pip install -e .
55+
@${ACTIVATE} pip install ${PIP_ARGS} --editable .
5556

5657
dev: virtualenv
5758
@echo "-> Configure and install development dependencies"
58-
@${ACTIVATE} pip install -e .[dev]
59+
@${ACTIVATE} pip install ${PIP_ARGS} --editable .[dev]
5960

6061
envfile:
6162
@echo "-> Create the .env file and generate a secret key"
@@ -79,6 +80,8 @@ check:
7980
@echo "-> Run Ruff format validation"
8081
@${ACTIVATE} ruff format --check
8182
@$(MAKE) doc8
83+
@echo "-> Run ABOUT files validation"
84+
@${ACTIVATE} about check --exclude .venv/ --exclude scanpipe/tests/ .
8285

8386
check-deploy:
8487
@echo "-> Check Django deployment settings"
@@ -121,6 +124,10 @@ sqlitedb:
121124
run:
122125
${MANAGE} runserver 8001 --insecure
123126

127+
run-docker-dev:
128+
@echo "-> Run the Docker compose services in dev mode (hot reload on code changes)"
129+
docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build --watch
130+
124131
test:
125132
@echo "-> Run the test suite"
126133
${MANAGE} test --noinput
@@ -156,4 +163,4 @@ offline-package: docker-images
156163
@mkdir -p dist/
157164
@tar -cf dist/scancodeio-offline-package-`git describe --tags`.tar build/
158165

159-
.PHONY: virtualenv conf dev envfile install doc8 check valid check-deploy clean migrate upgrade postgresdb sqlitedb backupdb run test fasttest docs bump docker-images offline-package
166+
.PHONY: virtualenv conf dev envfile install doc8 check valid check-deploy clean migrate upgrade postgresdb sqlitedb backupdb run run-docker-dev test fasttest docs bump docker-images offline-package

0 commit comments

Comments
 (0)