1.6.0 • Published 7 years ago
@futagoza/publish-package v1.6.0
A 'npm/yarn publish' API wrapper with my preferred defaults that returns a promise.
- api based, so you can call from your scripts, but spawns the actual commands
- run either Yarn (
option.yarn = true) or NPM (default) - perfect for embedding into your build scripts (Gulp anyone?)
--access publicby default (publishing scoped packages is simpler)- optionally checks if package version is already on NPM
example
const publish = require( "@futagoza/publish-package" );
publish( __dirname, { checkVersion: true } )
.catch( details => {
console.error( details.stderr );
process.exit( 1 );
} )
.then( () => console.log( "Yahoo!" ) );options
function publish( path?: string, options: {} ): Promise;| api option | npm/yarn cli option | description |
|---|---|---|
| access | --access scope | See https://docs.npmjs.com/cli/publish |
| checkVersion | Will check on NPM before publishing | |
| dir | Alternative to the path argument1 | |
| dry-run | --dry-run | See https://docs.npmjs.com/cli/publish |
| dry | --dry-run | Alias for dry-run |
| dryRun | --dry-run | Alias for dry-run |
| folder | Alternative to the path argument1 | |
| log | An optional logging function2 | |
| new-version | --new-version value | See https://yarnpkg.com/lang/en/docs/cli/publish/ |
| newVersion | --new-version value | Alias for new-version |
| otp | --otp value | See https://docs.npmjs.com/cli/publish |
| otpcode | --otp value | Alias for otp |
| path | Alternative to the path argument1 | |
| private | --access restricted | If true, uses --access restricted |
| public | --access public | If true, uses --access public (default) |
| scoped | --access public | If true, uses --access public |
| registry | --registry url | See https://docs.npmjs.com/misc/registry |
| reg | --registry url | Alias for registry |
| restricted | --access restricted | If true, uses --access restricted |
| runOpts | Option's to send to @futagoza/node-run | |
| tag | --tag name | See https://docs.npmjs.com/cli/publish |
| version | --new-version value | Alias for new-version |
| yarn | Will use yarn publish instead of npm publish |
- Can be used in place of path (e.g.
publish( { dir: ... } )) - Check
defaultLoggerin @futagoza/gulp-publish-package/index.js for an example
NOTE: To circumvent an issue with running npm publish from a yarn run ... command, the registry option is set to https://registry.npmjs.org/ by default when running npm publish only, otherwise it is only included when specified.
@futagoza/publish-package is Copyright (c) 2018+ Futago-za Ryuu