npm publish service
- Dominant language
- No language data
- Stars
- 1
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
## Key features
- A script is always run in project‘s CI
- Runs `npm pack` and submits the tarball to the service on every commit
- Runs `prepublish`/`prepublishOnly` npm scripts that would normally not be triggered by `npm pack` (optionally)
- Create new release in service
- Suggests new version no
- Service creates git tag, extracts tarball, bumps version, publishes to npm
## Nice to have
- Integrates with PR status: Need to select if change is major, minor or patch
- Reads PR statuses: Only allows publishing commits with a successful build status
- Monorepo support (updating package deps inside the monorepo might get tricky)
- Use GitHub‘s [Deployment API](https://developer.github.com/v3/repos/deployments/) to annotate which commits have been an npm release
- Auto-release on PR merge, optionally request confirmation by email or [Web Push Notifications](https://developers.google.com/web/fundamentals/push-notifications/)
- Ideally cover all the features of
- Propose a release draft: All changes based on merged PRs, grouped by "feature" | "bug fix" | "chore" based on the labels of the issue the PR closed
## Known limitations
- Cannot update the package's version in the `package.json`/`package-lock.json`
## Notes
- You can `cd /tmp && npm pack /path/to/package`
- Use [tar package](https://www.npmjs.com/package/tar) to update tarball
- Store brief summary of `package.json` in DB for each tarball: `name`, `dependencies`, `devDependencies` (dependencies for monorepo support)
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.