licenses.nuget.org
Odůvodnění
Při zavedení licenčních výrazů se objevil požadavek na spolehlivou službu, která by poskytovala referenční text pro jednotlivé identifikátory licencí, identifikátory výjimek nebo výrazy licencí. Dalším požadavkem této služby je mít stabilní schéma adres URL, které není náchylné k rotování odkazů, abychom ji mohli bezpečně použít k zajištění zpětné kompatibility pro starší klienty.
Licenses.nuget.org plní danou roli. Nuget.org ho používá k poskytnutí odkazu na text licence pro balíčky, které určují jejich licenci pomocí licenčního výrazu. nuget pack
nebo balení s jinými klientskými nástroji nastaví licenseUrl
prvek tak, aby odkaz na licenses.nuget.org, aby poskytoval zpětnou kompatibilitu license
se staršími klienty, kteří prvek nepodporují.
Text licence a výjimky
Informace o výjimce licence a licence zobrazené na licenses.nuget.org se zkopírují z úložiště dat seznamu licencí projektu SPDX. Formát, ve kterém se informace zobrazují, úzce napodobuje formát používaný samotným webem SPDX, například mit na licenses.nuget.org a MIT na SPDX.org.
Licence, které neschválila Open Source Initiative nebo Free Software Foundation nejsou hostované na licenses.nuget.org a jsou vyloučené.
V zobrazení licence se používá několik stylů kromě prostého textu. Podle nejčastějších dotazů k seznamu licencí SPDX se červený text považuje za nahraditelný a modrý text se považuje za vynechaný. Obecnější informace o datech seznamu licencí SPDX najdete v nejčastějších dotazech a specifikaci šablony licence SPDX.
Všimněte si, že data se kopírují ze souboru SPDX do licenses.nuget.org nuget.org ad hoc. Pokud je identifikátor licence schválen iniciativou Open Source Initiative nebo free software Foundation, ale nezobrazuje se na licenses.nuget.org, nahlašte problém a tým nuget.org tým pracuje na aktualizaci licenses.nuget.org a nuget.org nahrání balíčku s nejnovějšími daty z SPDX.
Pokud jako autor balíčku nejste spokojení se sdíleným textem licence dostupným na licenses.nuget.org, můžete zvážit použití vloženého textu licence (<license type="file">
) místo výrazu licence pro váš balíček NuGet. To vám umožní plně přizpůsobit licenční podmínky a zahrnout do balíčku přizpůsobený text.
Protokol
Licenses.nuget.org je určená k prohlížení lidmi v jejich prohlížečích, nejsou k dispozici žádné strojově čitelné odpovědi.
Musí se použít protokol HTTPS a očekává se, že se požadavky vytvoří určitým způsobem. Podporuje pouze GET
požadavky.
Přijímá licenční výrazy nebo identifikátory výjimek licencí jako vstup způsobem uvedeným níže. Upozorňujeme, že všechny prvky licenčních výrazů rozlišují malá a velká písmena, a proto se u všech vstupů do licenses.nuget.org rozlišují velká a malá písmena.
Výrazy licencí
Žádost
Licenční výrazy (včetně triviálních případů, kdy se výraz skládá z jedné licence), musí být kódované adresou URL a použity jako cesta v požadavku na licenses.nuget.org.
Výraz licence | Adresa URL, která se má použít |
---|---|
MIT | https://licenses.nuget.org/MIT |
(MIT) | https://licenses.nuget.org/(MIT) |
(LGPL-2.0-only WITH FLTK-exception OR Apache-2.0+) | https://licenses.nuget.org/(LGPL-2.0-only%20WITH%20FLTK-exception%20OR%20Apache-2.0+) |
Služba podporuje pouze identifikátory licencí a identifikátory výjimek licencí, které nuget.org akceptují. To zejména znamená, že budou přijaty pouze identifikátory licencí, které jsou schváleny open source iniciativou Nebo Free Software Foundation. Všechny licenční výrazy, které obsahují nepodporované identifikátory licencí nebo identifikátory výjimek licencí nebo které neodpovídají syntaxi licenčního výrazu, jsou považovány za neplatné.
Response
Licenses.nuget.org reaguje na požadavky obsahující platné licenční výrazy se stavovým kódem HTTP 200 a webovou stránkou obsahující popis licenčního výrazu:
- Pokud zadaný licenční výraz obsahuje jeden identifikátor licence, vrátí se webová stránka, která obsahuje text odkazu na licenci;
- pokud je zadaným licenčním výrazem složený licenční výraz, vrátí se webová stránka, která obsahuje licenční výraz s odkazy na jednotlivé licence nebo odkazy na výjimky licence.
Všechny požadavky, které obsahují neplatný licenční výraz, mají za následek odpověď HTTP 404.
Výjimky licencí
Žádost
Identifikátory výjimek licencí musí být kódované adresou URL a použity jako cesta v požadavku na licenses.nuget.org. V jediné žádosti je možné zadat pouze jeden identifikátor výjimky licence. V části cesty adresy URL nesmí být k dispozici žádné další znaky kromě identifikátoru výjimky licence.
Identifikátor výjimky licence | Adresa URL, která se má použít |
---|---|
FLTK – výjimka | https://licenses.nuget.org/FLTK-exception |
openvpn-openssl-exception | https://licenses.nuget.org/openvpn-openssl-exception |
Response
Licenses.nuget.org odpoví na požadavek se známým identifikátorem výjimky licence s odpovědí HTTP 200 a webovou stránkou obsahující referenční text pro zadanou výjimku licence.
Jakýkoli požadavek obsahující nepodporovaný identifikátor výjimky licence způsobí odpověď HTTP 404.