RFC: Pin all dependencies, new package `scancode-toolkit-lib` for use as a library
メンテナーはふだん 3 日以内に返信
@AyanSinhaMahapatra がすでに取り組んでいます。
2026年10月19日 から。
評価
この issue はまだ評価されていません。
説明
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)
- 主要言語
- Python
- スター
- 2.7k
- フォーク
- 831
- 平均マージ
- 3日 4時間
- マージ済み PR(30日)
- 7
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
aboutcode-org/scancode-toolkit のほかの issue
-
bug: Unreachable JSON extension and format validation in validate_input_path対応中かも @0Cymantek0 が 20 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
aboutcode-org/scancode-toolkit#5351 · コメント 1 件 ·
メンテナーはふだん 3 日以内に返信
-
CycloneDX output: metadata.properties[].value emits JSON array instead of string対応中かも @0Cymantek0 が 20 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
aboutcode-org/scancode-toolkit#5349 · コメント 1 件 ·
メンテナーはふだん 3 日以内に返信
-
Duplicate 'COPYLEFT' entries in legal file classification names in legal.py and classify.py対応中かも @Pradeepbeleri が 47 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
aboutcode-org/scancode-toolkit#5319 · コメント 2 件 ·
メンテナーはふだん 3 日以内に返信
-
Duplicate autogen.sh entry in commoncode default ignores対応中かも @Daksha1611 が 50 日前に担当しました。 オープン
難易度 1/5 1時間未満 初心者へのやさしさ 92/100
aboutcode-org/scancode-toolkit#5316 ·
メンテナーはふだん 3 日以内に返信
-
Duplicate LGPL key in rubygems LICENSES_MAPPING makes one mapping unreachable対応中かも @Daksha1611 が 50 日前に担当しました。 オープン
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
aboutcode-org/scancode-toolkit#5314 · コメント 1 件 ·
メンテナーはふだん 3 日以内に返信
aboutcode-org/scancode-toolkit の issue をすべて見る
似ている issue
-
Status: Triage Type: Quest
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
GTNewHorizons/GT-New-Horizons-Modpack#27490 ·
メンテナーはふだん 1 日以内に返信
-
Bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
retentioneering/retentioneering-tools#231 ·
メンテナーはふだん 1 日以内に返信
-
backend bug documentation
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
geolens-io/geolens#3568 ·
メンテナーはふだん 1 日以内に返信
-
enhancement
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
mprov-ng/mprov_control_center#450 ·
メンテナーはふだん 1 日以内に返信