How to use spdx-license-list - 5 common examples

To help you get started, we’ve selected a few spdx-license-list examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github chialab / rna-cli / commands / init / tasks / license.js View on Github external
module.exports = async function licenseTask(app, options, project) {
    const licenseFile = project.file('LICENSE');
    const licenseCode = (project.get('license') || 'unlicensed').toLowerCase();

    if (licenseCode === 'unlicensed') {
        // Package is unlicensed.
        if (licenseFile.exists()) {
            licenseFile.unlink();
        }
        app.logger.warn('no license found', project.localPath);
        return;
    }
    // Package actually is licensed.
    const list = require('spdx-license-list/spdx-full.json');
    const licenses = Object.keys(list).reduce((obj, key) => {
        obj[key.toLowerCase()] = list[key].licenseText;
        return obj;
    }, {});

    if (!(licenseCode in licenses)) {
        // We don't have a license document for the specified license code.
        app.logger.error('invalid license', project.localPath);
        return;
    }

    // Replace placeholders with actual values.
    const text = licenses[licenseCode]
        .replace(//gi, (new Date()).getFullYear())
        .replace(/<(owner|author|copyright\sholders)>/gi, () => {
            if (project.get('author')) {
                return project.get('author');
github Polymer / tools / packages / modulizer / src / package-manifest.ts View on Github external
}
  }

  if (!packageJson.license) {
    let bowerLicenses = new Array();
    if (typeof bowerJson.license === 'string') {
      bowerLicenses = [bowerJson.license];
    } else if (Array.isArray(bowerJson.license)) {
      bowerLicenses = bowerJson.license;
    }

    if (bowerLicenses.length === 1) {
      packageJson.license = bowerLicenses[0];
      if (packageJson.license.includes('polymer.github.io/LICENSE')) {
        packageJson.license = 'BSD-3-Clause';
      } else if (!spdxLicenseList.has(bowerLicenses[0])) {
        console.warn(
            `${bowerJson.name}: ` +
            `'${bowerJson.license}' is not a valid SPDX license. ` +
            `You can find a list of valid licenses at ` +
            `https://spdx.org/licenses/`);
      }

    } else if (bowerLicenses.length > 1) {
      console.warn(
          `${bowerJson.name}: Found multiple licenses in bower.json, ` +
          `but package.json must have only one.`);

    } else {
      console.warn(
          `${bowerJson.name}: ` +
          `Could not automatically find appropriate license. ` +
github Polymer / tools / src / package-manifest.ts View on Github external
}
  }

  if (!packageJson.license) {
    let bowerLicenses = new Array();
    if (typeof bowerJson.license === 'string') {
      bowerLicenses = [bowerJson.license];
    } else if (Array.isArray(bowerJson.license)) {
      bowerLicenses = bowerJson.license;
    }

    if (bowerLicenses.length === 1) {
      packageJson.license = bowerLicenses[0];
      if (packageJson.license.includes('polymer.github.io/LICENSE')) {
        packageJson.license = 'BSD-3-Clause';
      } else if (!spdxLicenseList.has(bowerLicenses[0])) {
        console.warn(
            `${bowerJson.name}: ` +
            `'${bowerJson.license}' is not a valid SPDX license. ` +
            `You can find a list of valid licenses at ` +
            `https://spdx.org/licenses/`);
      }

    } else if (bowerLicenses.length > 1) {
      console.warn(
          `${bowerJson.name}: Found multiple licenses in bower.json, ` +
          `but package.json must have only one.`);

    } else {
      console.warn(
          `${bowerJson.name}: ` +
          `Could not automatically find appropriate license. ` +
github aws / jsii / packages / jsii / lib / project-info.ts View on Github external
function _validateLicense(id: string): string {
  if (id === 'UNLICENSED') { return id; }
  if (!spdx.has(id)) {
    throw new Error(`Invalid license identifier "${id}", see valid license identifiers at https://spdx.org/licenses/`);
  }
  return id;
}
github David-Desmaisons / vue-cli-plugin-component / prompts.js View on Github external
const camelCase = require('camelcase');
const licensesInformation = require('spdx-license-list/spdx-simple.json')
const licenses = licensesInformation.map(name => ({
  name,
  value: name
}));

const prompts = module.exports = [
  {
    type: 'input',
    name: 'componentName',
    message: 'Enter the component name (in PascalCase- no hyphen nor dash):'
  },
  {
    type: 'confirm',
    name: 'useComponentFixture',
    message: 'Use componentFixture to build example?',
    default: true,
    group: 'Example',

spdx-license-list

List of SPDX licenses

CC0-1.0
Latest version published 2 months ago

Package Health Score

80 / 100
Full package analysis