SPDX
| Abréviation | SPDX |
|---|---|
| Status | Publiée |
| Année de démarrage | 2011 |
| Version | 3.0.1 (décembre 2024) |
| Organisation | Fondation Linux |
| Comité | SPDX Project |
| Standards de base | ISO/IEC 5962:2021 |
| Domaine | SBOM |
| Site internet | spdx.dev |
SPDX (de l'anglais : System Package Data Exchange, anciennement Software Package Data Exchange) est un format ouvert utilisé pour documenter des systèmes comportant des composants numériques sous forme de nomenclatures telles que les SBOM[1]. C'est aussi le nom du groupe de travail qui le rédige, composé de plus de vingt organisations différentes, sous les auspices de la Fondation Linux.
SPDX tente de standardiser la façon dont les entreprises publient leurs métadonnées sur les composants des systèmes logiciels, les licences de logiciels et de leurs composants, les modèles d'IA, les versions, les données de sécurité... Elle a pour but de faciliter la mise en conformité des organisations vis-à-vis de leurs obligations concernant les logiciels qu'ils utilisent, modifient et diffusent[2].
Historique
[modifier | modifier le code]À l'origine, SPDX avait pour objectif d'améliorer la conformité des licences, mais il a depuis été étendu pour faciliter d'autres cas d'utilisation, tels que la transparence et la sécurité de la chaîne d'approvisionnement logicielle.
La version 2.2 est publiée en [3]. Parallèlement, la liste d'identifiants de licences est en version 3.14, publiée le [4].
En août 2021, SPDX est devenu une norme ISO : ISO/CEI 5962:2021.
La version 2.3 est publiée en août 2022.
La version actuelle de la spécification est la 3.0.1 publiée initialement en avril 2024, puis modifié en décembre 2024[5],[6]. Cette nouvelle version étend les possibilités du modèle SPDX, ce qui a conduit à changer le nom de Software Package Data Exchange à System Package Data Exchange[7].
Syntaxe des licences
[modifier | modifier le code]Chaque licence est identifiée par un nom complet, par exemple « Mozilla Public License 2.0 » et un identifiant court, ici « MPL-2.0 ». Les licences peuvent être combinées entre elles par les opérateurs AND (et) et OR (ou).
Par exemple, (LGPL-2.1 OR MIT) signifie que l'on a le choix entre la licence LGPL-2.1 (GNU Lesser General Public License v2.1 only) ou la licence MIT (MIT License).
Au contraire, (LGPL-2.1 AND MIT) signifie que les deux licences s'appliquent.
Il existe également un opérateur « + » qui, appliqué à une licence, signifie que les versions ultérieures de la licence s'appliquent. Par exemple, Apache-1.1+ signifie que Apache-1.1 et Apache-2.0 peuvent s'appliquer (ainsi que de futures versions le cas échéant).
Identifiants de licence obsolètes
[modifier | modifier le code]À partir de la version 2.0, les identifiants tels que GPL-2.0 ou GPL-2.0+ sont obsolètes.
Il faut utiliser à la place GPL-2.0-only ou GPL-2.0-or-later [8].
Notes et références
[modifier | modifier le code]- ↑ « Formats et normes du SBOM expliqués », sur OPSWAT, (consulté le )
- ↑ (en) « SPDX: It’s Already in Use for Global Software Bill of Materials (SBOM) and Supply Chain Security - Linux Foundation », sur www.linuxfoundation.org (consulté le )
- ↑ (en) SPDX 2.2 Specification Released
- ↑ (en) License List v3.14 released
- ↑ (en) « SPDX 3.0 Revolutionizes Software Management in Systems with Enhanced Functionality and Streamlined Use Cases », sur www.linuxfoundation.org (consulté le )
- ↑ (en) « Release 3.0.1 of the SPDX Specification », sur lists.spdx.org (consulté le )
- ↑ « Introduction - SPDX Specification 3.0.1 », sur spdx.github.io (consulté le )
- ↑ (en) « SPDX License List », sur spdx.dev (consulté le )