RFC: Pin all dependencies, new package `scancode-toolkit-lib` for use as a library
Los mantenedores suelen responder en 3 días
@AyanSinhaMahapatra ya está trabajando en esto.
Desde el 19/10/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Originally suggested by @tdruez in context of use of scancode-toolkit in scancode.io as a library, and as discussed with @pombredanne and other aboutcode maintainers:
We should consider pinning all dependencies in scancode-toolkit, as this fixes a few issues faced by us currently:
-
pip install scancode-toolkitbreaking more often because of a change in scancode dependencies, and often this takes a while to fix and release, requiring additional steps from scancode users installing scancode via pip. -
With
pip installwe are fetching the latest and greatest from pip for our libraries and this isn't the best thing with supply chain attacks and security issues being more common. -
Unexpected behaviour changes from updated dependencies which are harder to catch (as we only run a fraction of cor tests on latest from pip) and these can cause performance, quality issues which are hard to detect and fix.
So as a solution, we should:
- Pin all dependencies in
scancode-toolkit - Start releasing a new library
scancode-toolkit-libwhich has flexible dependency ranges (as we have in the current scancode-toolkit library) - Also adopt the newer
pylock.tomllockfile format - Development installation should still use latest from pip dependencies as a way to catch these issues early, potentially with the new feature in pip 26.0+
--uploaded-prior-to=https://pip.pypa.io/en/latest/user_guide/#filtering-by-upload-time
The reason behind having the default scancode-toolkit having pinned versions, as opposed to the new scancode-toolkit-lib, is having secure defaults, where we are installing a more secure set of dependencies usually with the default and presently used scancode-toolkit library, even at the added cost of slight friction of downstream tools updating their dependency to scancode-toolkit-lib.
Suggestions are welcome on the above and on better possible names for the new library (currently meantioned as: scancode-toolkit-lib)
- Lenguaje dominante
- Python
- Estrellas
- 2.7k
- Forks
- 831
- Merge medio
- 3 d 4 h
- PR fusionados (30 d)
- 7
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de aboutcode-org/scancode-toolkit
-
bug: Unreachable JSON extension and format validation in validate_input_pathPosiblemente ocupada @0Cymantek0 la tomó hace 18 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
aboutcode-org/scancode-toolkit#5351 · 1 comentario ·
Los mantenedores suelen responder en 3 días
-
CycloneDX output: metadata.properties[].value emits JSON array instead of stringPosiblemente ocupada @0Cymantek0 la tomó hace 18 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
aboutcode-org/scancode-toolkit#5349 · 1 comentario ·
Los mantenedores suelen responder en 3 días
-
Duplicate 'COPYLEFT' entries in legal file classification names in legal.py and classify.pyPosiblemente ocupada @Pradeepbeleri la tomó hace 45 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
aboutcode-org/scancode-toolkit#5319 · 2 comentarios ·
Los mantenedores suelen responder en 3 días
-
Duplicate autogen.sh entry in commoncode default ignoresPosiblemente ocupada @Daksha1611 la tomó hace 48 días. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
aboutcode-org/scancode-toolkit#5316 ·
Los mantenedores suelen responder en 3 días
-
Duplicate LGPL key in rubygems LICENSES_MAPPING makes one mapping unreachablePosiblemente ocupada @Daksha1611 la tomó hace 48 días. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
aboutcode-org/scancode-toolkit#5314 · 1 comentario ·
Los mantenedores suelen responder en 3 días
Todos los issues de aboutcode-org/scancode-toolkit
Issues similares
-
enhancement help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Git-Hospital/githealthcheck#61 ·
Los mantenedores suelen responder en 1 día
-
changelog investigate
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
ramnes/notion-sdk-py#433 ·
-
Partial method descriptors raise on class accessPosiblemente ocupada @Gambit-Checkmate la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 19 días
-
docs pkg:core
Dificultad 1/5 Menos de una hora Aptitud para principiantes 84/100
pydantic/pydantic-ai#11929 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
intake/intake-esm#789 ·