pax_global_header00006660000000000000000000000064145632776360014535gustar00rootroot0000000000000052 comment=3aa64bec339abc6a3eca00c3436aaa7e154b8799 jslicense-spdx-exceptions.json-8ca4464/000077500000000000000000000000001456327763600201565ustar00rootroot00000000000000jslicense-spdx-exceptions.json-8ca4464/.github/000077500000000000000000000000001456327763600215165ustar00rootroot00000000000000jslicense-spdx-exceptions.json-8ca4464/.github/.editorconfig000066400000000000000000000000421456327763600241670ustar00rootroot00000000000000[*.workflow] indent_style = space jslicense-spdx-exceptions.json-8ca4464/.github/workflows/000077500000000000000000000000001456327763600235535ustar00rootroot00000000000000jslicense-spdx-exceptions.json-8ca4464/.github/workflows/latest.yml000066400000000000000000000004201456327763600255660ustar00rootroot00000000000000--- name: 'Check Latest SPDX License List' on: workflow_dispatch: inputs: {} schedule: - cron: '0 0 */7 * *' jobs: check: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 - run: npm run latest jslicense-spdx-exceptions.json-8ca4464/README.md000066400000000000000000000023331456327763600214360ustar00rootroot00000000000000The package exports an array of strings. Each string is an identifier for a license exception under the [Software Package Data Exchange (SPDX)][SPDX] software license metadata standard. [SPDX]: https://spdx.org ## Copyright and Licensing ### SPDX "SPDX" is a federally registered United States trademark of The Linux Foundation Corporation. From version 2.0 of the [SPDX] specification: > Copyright © 2010-2015 Linux Foundation and its Contributors. Licensed > under the Creative Commons Attribution License 3.0 Unported. All other > rights are expressly reserved. The Linux Foundation and the SPDX working groups are good people. Only they decide what "SPDX" means, as a standard and otherwise. I respect their work and their rights. You should, too. ### This Package > I created this package by copying exception identifiers out of the > SPDX specification. That work was mechanical, routine, and required no > creativity whatsoever. - Kyle Mitchell, package author United States users concerned about intellectual property may wish to discuss the following Supreme Court decisions with their attorneys: - _Baker v. Selden_, 101 U.S. 99 (1879) - _Feist Publications, Inc., v. Rural Telephone Service Co._, 499 U.S. 340 (1991) jslicense-spdx-exceptions.json-8ca4464/build.js000077500000000000000000000020051456327763600216130ustar00rootroot00000000000000#!/usr/bin/env node const fs = require('fs') const https = require('https') const order = require('./order') https.request('https://spdx.org/licenses/exceptions.json', function (response) { if (response.statusCode !== 200) { console.error('spdx.org responded ' + response.statusCode) process.exit(1) } const chunks = [] response .on('data', function (chunk) { chunks.push(chunk) }) .once('end', function () { const buffer = Buffer.concat(chunks) const parsed = JSON.parse(buffer) const exceptions = [] const deprecated = [] parsed.exceptions.forEach(object => { const id = object.licenseExceptionId if (object.isDeprecatedLicenseId) { deprecated.push(id) } else { exceptions.push(id) } }) write('index', exceptions) write('deprecated', deprecated) }) }).end() function write (file, list) { fs.writeFileSync( file + '.json', JSON.stringify(list.sort(order), null, 2) + '\n' ) } jslicense-spdx-exceptions.json-8ca4464/deprecated.json000066400000000000000000000000371456327763600231510ustar00rootroot00000000000000[ "Nokia-Qt-exception-1.1" ] jslicense-spdx-exceptions.json-8ca4464/index.json000066400000000000000000000033031456327763600221570ustar00rootroot00000000000000[ "389-exception", "Asterisk-exception", "Autoconf-exception-2.0", "Autoconf-exception-3.0", "Autoconf-exception-generic", "Autoconf-exception-generic-3.0", "Autoconf-exception-macro", "Bison-exception-1.24", "Bison-exception-2.2", "Bootloader-exception", "Classpath-exception-2.0", "CLISP-exception-2.0", "cryptsetup-OpenSSL-exception", "DigiRule-FOSS-exception", "eCos-exception-2.0", "Fawkes-Runtime-exception", "FLTK-exception", "fmt-exception", "Font-exception-2.0", "freertos-exception-2.0", "GCC-exception-2.0", "GCC-exception-2.0-note", "GCC-exception-3.1", "Gmsh-exception", "GNAT-exception", "GNOME-examples-exception", "GNU-compiler-exception", "gnu-javamail-exception", "GPL-3.0-interface-exception", "GPL-3.0-linking-exception", "GPL-3.0-linking-source-exception", "GPL-CC-1.0", "GStreamer-exception-2005", "GStreamer-exception-2008", "i2p-gpl-java-exception", "KiCad-libraries-exception", "LGPL-3.0-linking-exception", "libpri-OpenH323-exception", "Libtool-exception", "Linux-syscall-note", "LLGPL", "LLVM-exception", "LZMA-exception", "mif-exception", "OCaml-LGPL-linking-exception", "OCCT-exception-1.0", "OpenJDK-assembly-exception-1.0", "openvpn-openssl-exception", "PS-or-PDF-font-exception-20170817", "QPL-1.0-INRIA-2004-exception", "Qt-GPL-exception-1.0", "Qt-LGPL-exception-1.1", "Qwt-exception-1.0", "SANE-exception", "SHL-2.0", "SHL-2.1", "stunnel-exception", "SWI-exception", "Swift-exception", "Texinfo-exception", "u-boot-exception-2.0", "UBDL-exception", "Universal-FOSS-exception-1.0", "vsftpd-openssl-exception", "WxWindows-exception-3.1", "x11vnc-openssl-exception" ] jslicense-spdx-exceptions.json-8ca4464/latest.js000077500000000000000000000036021456327763600220140ustar00rootroot00000000000000const assert = require('assert') const order = require('./order') // Download JSON file from spdx.org. require('https').request('https://spdx.org/licenses/exceptions.json') .once('response', response => { assert.strictEqual(response.statusCode, 200) const chunks = [] response .on('data', chunk => { chunks.push(chunk) }) .once('error', error => { assert.ifError(error) }) .once('end', () => { const buffer = Buffer.concat(chunks) const spdxJSON = JSON.parse(buffer) const listVersion = spdxJSON.licenseListVersion console.log(`License List Version: ${listVersion}`) const identifiers = [] const deprecated = [] spdxJSON.exceptions.forEach(object => { const id = object.licenseExceptionId if (object.isDeprecatedLicenseId) { deprecated.push(id) } else { identifiers.push(id) } }) identifiers.sort(order) deprecated.sort(order) const indexJSON = require('./index') const deprecatedJSON = require('./deprecated') identifiers.forEach(identifier => { assert(indexJSON.includes(identifier), `Missing: ${identifier}`) }) indexJSON.forEach(identifier => { assert(identifiers.includes(identifier), `Extra: ${identifier}`) }) assert.deepStrictEqual(indexJSON, identifiers, 'identifiers') console.log('index.json is up to date.') deprecated.forEach(identifier => { assert(deprecatedJSON.includes(identifier), `Missing Deprecated: ${identifier}`) }) deprecatedJSON.forEach(identifier => { assert(deprecated.includes(identifier), `Extra Deprecated: ${identifier}`) }) assert.deepStrictEqual(deprecatedJSON, deprecated, 'deprecated') console.log('deprecated.json is up to date.') }) }) .end() jslicense-spdx-exceptions.json-8ca4464/order.js000066400000000000000000000001351456327763600216260ustar00rootroot00000000000000module.exports = function (a, b) { return a.toLowerCase().localeCompare(b.toLowerCase()) } jslicense-spdx-exceptions.json-8ca4464/package.json000066400000000000000000000007171456327763600224510ustar00rootroot00000000000000{ "name": "spdx-exceptions", "description": "list of SPDX standard license exceptions", "version": "2.5.0", "author": "The Linux Foundation", "contributors": [ "Kyle E. Mitchell (https://kemitchell.com/)" ], "license": "CC-BY-3.0", "repository": "kemitchell/spdx-exceptions.json", "files": [ "index.json", "deprecated.json" ], "scripts": { "build": "node build.js", "latest": "node latest.js" } }