1.0.4 • Published 5 years ago

@mocha/contributors v1.0.4

Weekly downloads
26
License
Apache-2.0
Repository
github
Last release
5 years ago

@mocha/contributors

semantic-release standard-readme compliant

Add & update list of Git contributors in package.json

This module uses git to find all committers to a repo; it respects .mailmap, if present.

Table of Contents

Install

$ npm i @mocha/contributors -D

Usage

contributors [options]

Options:
  --help                Show help                                      [boolean]
  --version             Show version number                            [boolean]
  --exclude, -x         Exclude author/email from list (repeatable)
                                [array] [default: (author prop of package.json)]
  --package, -p, --pkg  Path of package.json to update
                                      [string] [default: (closest package.json)]
  --property            Name of property to update
                                              [string] [default: "contributors"]

Configuration can be specified using the @mocha/contributors property of your package.json, e.g.:

{
  "@mocha/contributors": {
    "exclude": ["some", "people"],
    "package": "/path/to/package.json",
    "property": "contributors"
  }
}

API

@mocha/contributors

Provides functions to get contributors from commit history, process and write those contributors to package.json.

@mocha/contributors.getContributors(opts) ⇒ Array.<string>

Get list of contributors to Git repo at path cwd, excluding names/emails defined in exclude. locale and localeOpts must be consistent between calls in order to avoid too much churn in the contributors list.

Kind: static method of @mocha/contributors Returns: Array.<string> - Sorted list of contributors Access: public See

ParamTypeDefaultDescription
optsObject{}Options
opts.excludeArray.<string> | Set.<string>[]A list of authors/emails to ignore; must be exact match
opts.cwdstringWorking copy dir; defaults to process.cwd()
opts.localestring | Array.<string>"en-US"Locale(s) to pass to String.prototype.localeCompare
opts.localeOptsObject{sensitivity: 'accent'}Options for String.prototype.localeCompare

Example

// get list of contributors for your package (without Guy Fieri)
const {getContributors} = require('@mocha/contributors');
getContributors(
  ['Guy Fieri <guy@flavortown.com>'],
  '/path/to/working/copy/',
  'en-US',
  {sensitivity: 'accent'}
); // returns Array of contributors

@mocha/contributors.updateContributors(opts) ⇒ string

Given a path to a package.json pkg, update Git contributors in the property defined by property, excluding those in the exclude array.

Kind: static method of @mocha/contributors Returns: string - Resulting package.json Access: public

ParamTypeDefaultDescription
optsObjectOptions
opts.pkgstringPath to package.json; searches for closest by default
opts.excludeArray.<string> | Set.<string>A list of authors/emails to ignore; defaults to author prop of found package.json
opts.propertystring"contributors"Property name to update

Maintainers

@boneskull

Contribute

PRs accepted.

Small note: If editing the README, please conform to the standard-readme specification.

License

Apache-2.0 © 2018 JS Foundation & Contributors