Skip to content

ItsNickBarry/hardhat-spdx-license-identifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hardhat SPDX License Identifier

Prepend Solidity source files in Hardhat projects with the SPDX License Identifier specified in package.json.

Versions of this plugin prior to 2.0.0 were released as buidler-spdx-license-identifier.

Installation

npm install --save-dev hardhat-spdx-license-identifier
# or
yarn add --dev hardhat-spdx-license-identifier

Usage

Load plugin in Hardhat config:

require('hardhat-spdx-license-identifier');

Add configuration under the spdxLicenseIdentifier key:

option description default
overwrite whether to overwrite existing SPDX license identifiers false
runOnCompile whether to automatically prepend identifiers during compilation false
only Array of String matchers used to select included paths, defaults to all contracts if length is 0 []
except Array of String matchers used to exclude paths []
spdxLicenseIdentifier: {
  overwrite: true,
  runOnCompile: true,
  except: ['vendor/']
}

The included Hardhat task may be run manually:

npx hardhat prepend-spdx-license
# or
yarn run hardhat prepend-spdx-license

Files which do not contain a license identifier will be prepended with one. Files with a license identifier which does not match that which is specified in package.json may be updated, depending on configuration.