{"_id":"@bengl/changelog-maker","_rev":"1-90f38556c861e1a2a526a182153cda0e","name":"@bengl/changelog-maker","dist-tags":{"latest":"3.2.1-green-button1"},"versions":{"3.2.1-green-button":{"name":"@bengl/changelog-maker","version":"3.2.1-green-button","description":"A git log to CHANGELOG.md tool","main":"changelog-maker.js","type":"module","bin":{"changelog-maker":"changelog-maker.js"},"exports":{"./collect-commit-labels":"./collect-commit-labels.js","./groups":"./groups.js","./process-commits":"./process-commits.js"},"author":{"name":"Rod","email":"rod@vagg.org","url":"https://r.va.gg/"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/nodejs/changelog-maker.git"},"bugs":{"url":"https://github.com/nodejs/changelog-maker/issues"},"homepage":"https://github.com/nodejs/changelog-maker#readme","keywords":[],"preferGlobal":true,"dependencies":{"@octokit/graphql":"^5.0.0","async":"^3.2.2","chalk":"^5.0.0","@bengl/commit-stream":"1.1.0-green-button","debug":"^4.3.3","ghauth":"^5.0.1","ghissues":"^1.1.4","gitexec":"^2.0.1","minimist":"^1.2.5","pkg-to-id":"^0.0.3","remark":"^14.0.2","remark-parse":"^10.0.1","remark-preset-lint-node":"^3.3.0","remark-stringify":"^10.0.2","split2":"^4.1.0","strip-ansi":"^7.0.1"},"devDependencies":{"standard":"^17.0.0","tap":"^16.0.0"},"scripts":{"lint":"standard","unit":"tap --no-check-coverage test.js","test":"npm run lint && npm run unit"},"release":{"branches":["main"],"plugins":[["@semantic-release/commit-analyzer",{"preset":"conventionalcommits","releaseRules":[{"breaking":true,"release":"major"},{"revert":true,"release":"patch"},{"type":"feat","release":"minor"},{"type":"fix","release":"patch"},{"type":"chore","release":"patch"},{"type":"docs","release":"patch"},{"type":"test","release":"patch"},{"scope":"no-release","release":false}]}],["@semantic-release/release-notes-generator",{"preset":"conventionalcommits","presetConfig":{"types":[{"type":"feat","section":"Features"},{"type":"fix","section":"Bug Fixes"},{"type":"chore","section":"Trivial Changes"},{"type":"docs","section":"Trivial Changes"},{"type":"test","section":"Tests"}]}}],"@semantic-release/changelog","@semantic-release/npm","@semantic-release/github","@semantic-release/git"]},"gitHead":"268b0daeb728682039cdd6933a21ae14db04884c","_id":"@bengl/changelog-maker@3.2.1-green-button","_nodeVersion":"18.6.0","_npmVersion":"8.13.2","dist":{"integrity":"sha512-jfcuptwE8VT11vRVb7DGuDOUg8p8RfCxdsvOeCOYsFKXNNrCP9JZj2JnbCaRee1Z+AXigODw80O1b43QM6tWZQ==","shasum":"9324cd1192a0b9cc9a18a1b6860defdad91151ad","tarball":"https://registry.npmjs.org/@bengl/changelog-maker/-/changelog-maker-3.2.1-green-button.tgz","fileCount":17,"unpackedSize":45506,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCgUl0fxsgPqFBmx4h1NDmoh8VychrQlFTauadO0dPh6wIhALp/JVy8HO6+KjER1XWtGEq8mPGdzA9K7Brrn6WrIm71"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjEXiRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoV3A//XynCDf/Xp3rcz4/ILWvcpi7DjEHZDEaQZdD7cxthgVbnJTQJ\r\nEwA/ZwMmBKiW2bJwmdAB+w0IIyqir0R5dsuwZeJxftrujDvoNIM+mydYcpfZ\r\na3w8N698mO73nbEEts6ItiR+l1SVaOUurFK1VF9iU4VUU+/L6kO6yPFCRaQj\r\npfNGJH6Xu9ifUqq84jp4Ax0UMQ3yZVS/0BwtJ6/vccogo/adZha0XIPeCs0f\r\nUSXeTCtLvuamQK7ct3LyOnXDF916thEiekmR/qI1JvAoWrFa5IMrSrIpX9PZ\r\nLHuxus3RLz7JVGUsnUM74VTChWpBmM0v2F5EnZC14E9DSbrFDgIuz1nr6PDm\r\nCUIHLXYW2CZApS8qwi3Vf++Ak+T/9lzTxL8ZF74CnRv+Vgj0zPRlxgQfnxkc\r\nlsC8i2Zoj3h0bNjXWlMAzWCdgFNW/8sOTCR0zOtLX/BEYtpmIUWZ+NBcLFCz\r\nPcIayjuqQsTjNLnHTwfUCESlXignKcWJcn1PnnDGeEezCgQ9Fj3XQSj0Zs68\r\naesx+uTo7BgqU7BLj4oWnmBqDUuSx0L90aXUPhS2LPNj41D/zjlKmZ4l+Yxl\r\nL2YQvHEWGdzOCJJ8WUDtwvU1VUCjaFlXPNS6312kuT1+LNOEjHTUsTzhwD7j\r\n1YuIB4L1kOghiuVt1kaat7Itt66HVMWDf6Q=\r\n=0nUt\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bengl","email":"bryan@bryanenglish.com"},"directories":{},"maintainers":[{"name":"bengl","email":"bryan@bryanenglish.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/changelog-maker_3.2.1-green-button_1662089361271_0.19588427847399115"},"_hasShrinkwrap":false},"3.2.1-green-button1":{"name":"@bengl/changelog-maker","version":"3.2.1-green-button1","description":"A git log to CHANGELOG.md tool","main":"changelog-maker.js","type":"module","bin":{"changelog-maker":"changelog-maker.js"},"exports":{"./collect-commit-labels":"./collect-commit-labels.js","./groups":"./groups.js","./process-commits":"./process-commits.js"},"author":{"name":"Rod","email":"rod@vagg.org","url":"https://r.va.gg/"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/nodejs/changelog-maker.git"},"bugs":{"url":"https://github.com/nodejs/changelog-maker/issues"},"homepage":"https://github.com/nodejs/changelog-maker#readme","keywords":[],"preferGlobal":true,"dependencies":{"@octokit/graphql":"^5.0.0","async":"^3.2.2","chalk":"^5.0.0","@bengl/commit-stream":"1.1.0-green-button","debug":"^4.3.3","ghauth":"^5.0.1","ghissues":"^1.1.4","gitexec":"^2.0.1","minimist":"^1.2.5","pkg-to-id":"^0.0.3","remark":"^14.0.2","remark-parse":"^10.0.1","remark-preset-lint-node":"^3.3.0","remark-stringify":"^10.0.2","split2":"^4.1.0","strip-ansi":"^7.0.1"},"devDependencies":{"standard":"^17.0.0","tap":"^16.0.0"},"scripts":{"lint":"standard","unit":"tap --no-check-coverage test.js","test":"npm run lint && npm run unit"},"release":{"branches":["main"],"plugins":[["@semantic-release/commit-analyzer",{"preset":"conventionalcommits","releaseRules":[{"breaking":true,"release":"major"},{"revert":true,"release":"patch"},{"type":"feat","release":"minor"},{"type":"fix","release":"patch"},{"type":"chore","release":"patch"},{"type":"docs","release":"patch"},{"type":"test","release":"patch"},{"scope":"no-release","release":false}]}],["@semantic-release/release-notes-generator",{"preset":"conventionalcommits","presetConfig":{"types":[{"type":"feat","section":"Features"},{"type":"fix","section":"Bug Fixes"},{"type":"chore","section":"Trivial Changes"},{"type":"docs","section":"Trivial Changes"},{"type":"test","section":"Tests"}]}}],"@semantic-release/changelog","@semantic-release/npm","@semantic-release/github","@semantic-release/git"]},"gitHead":"5d94f687ddb19c0e44b2318aa5585ed77c647719","_id":"@bengl/changelog-maker@3.2.1-green-button1","_nodeVersion":"18.6.0","_npmVersion":"8.13.2","dist":{"integrity":"sha512-/XLbeOFCHK2h77cq+NTUVKr5K+1I1r/yAN+uGKPSiSukB0LUmcl13UUrYJ6N2XKR2fsnCLEutuN8eud7mbwD3A==","shasum":"0f4b513d0dc0fb30593476892eadb23a7dc07eff","tarball":"https://registry.npmjs.org/@bengl/changelog-maker/-/changelog-maker-3.2.1-green-button1.tgz","fileCount":17,"unpackedSize":45514,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH6eMDI7kUpFgxvxGBKgCUlMJZqTbtkiEcUTmRea0JO1AiEA9Yg8UGzGVpyDkfCJgCWnWeAByRAaGHOzAvZJ/KbL0dk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjEXo0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHBQ/8Cel/qhRlxntUD+IeqWkeMHWRbBrmIOs1N7cNC5o9jSC18lE2\r\nmIKAbItPRAq0KdXZjGdxq2PmjTFbVkZU6DSBYL+CmaAJISI4ZfjCrWrqk23Y\r\nPKOEBnkpgMy/SMFhaDYZGrq+mbqIyxLuk5tWsu0QUJWr/hQdNHa64XxSj8AF\r\nVDk4T1jVNoBixO2BXnl0FGVRvNtA2Kc5RGNxybLqDa+FwrX80WifWKq31BAU\r\ns8fhfzWmAMifLr/7UI3Sogs9VyLZ80GgZm5FFRjnL9VTCuRulVPUAv7GJImt\r\npDPoLgI4xoxcLIBHKsjyutXPKoUd+1U6yif06kZvotyO/4rEWUq8pmnE4cx4\r\nsmszYH0jPqxgWYT/9FhTdlRyMJf7EXdDVAa44B840Q9kUCFUYdiKMq1ySVdi\r\nLkYyRKMJJQmeqkKFyVbwv6yUi98A6DN4zfTQVRUxLJAjOnJg+sCN78cWE+YH\r\nQegR+0+N21tCFykZFari9k6Gzby5VYMAq70M1WwPuaZjDj0aHhukl7JZdZfq\r\nPvN/oIdryZsczK5RFvk5fwA3gX6HdhH+W9FcBVyCuMpOacJzybwlQB1BWVhY\r\n7E0ERCESKxV/sG3H7V4NVtFdcI1iiZFX8Vc+H1hpEXnpu6122e/fVBmRxStM\r\nSplgEjVuCmP3ylIDBSnpKJ51flk6tTN8yNI=\r\n=tu0C\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bengl","email":"bryan@bryanenglish.com"},"directories":{},"maintainers":[{"name":"bengl","email":"bryan@bryanenglish.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/changelog-maker_3.2.1-green-button1_1662089779721_0.7242167288186339"},"_hasShrinkwrap":false}},"time":{"created":"2022-09-02T03:29:21.214Z","3.2.1-green-button":"2022-09-02T03:29:21.512Z","modified":"2022-09-02T03:36:20.058Z","3.2.1-green-button1":"2022-09-02T03:36:19.983Z"},"maintainers":[{"name":"bengl","email":"bryan@bryanenglish.com"}],"description":"A git log to CHANGELOG.md tool","homepage":"https://github.com/nodejs/changelog-maker#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/nodejs/changelog-maker.git"},"author":{"name":"Rod","email":"rod@vagg.org","url":"https://r.va.gg/"},"bugs":{"url":"https://github.com/nodejs/changelog-maker/issues"},"license":"MIT","readme":"# changelog-maker [![Build Status](https://github.com/nodejs/changelog-maker/workflows/Tests/badge.svg)](https://github.com/nodejs/changelog-maker/actions?workflow=Tests)\n\n**A git log to CHANGELOG.md tool**\n\n[![npm](https://nodei.co/npm/changelog-maker.png?downloads=true&downloadRank=true)](https://nodei.co/npm/changelog-maker/)\n[![npm](https://nodei.co/npm-dl/changelog-maker.png?months=6&height=3)](https://nodei.co/npm/changelog-maker/)\n\n## Eh?\n\n**changelog-maker** is a formalisation of the [Node.js](https://github.com/nodejs/node) CHANGELOG.md entry process but flexible enough to be used on other repositories.\n\n**changelog-maker** will look at the git log of the current directory, pulling entries since the last tag. Commits with just a version number in the summary are removed, as are commits prior to, and including summaries that say `working on <version>` (this is an io.js / Node ism).\n\nAfter collecting the list of commits, any that have `PR-URL: <url>` in them are looked up on GitHub and the labels of the pull request are collected, specifically looking for labels that start with `semver` (the assumption is that `semver-minor`, `semver-major` labels are used to indicate non-patch version bumps).\n\nFinally, the list is formatted as Markdown and printed to stdout.\n\nEach commit will come out something like this (on one line):\n\n```markdown\n* [[`20f8e7f17a`](https://github.com/nodejs/io.js/commit/20f8e7f17a)] -\n  **test**: remove flaky test functionality (Rod Vagg)\n  [#812](https://github.com/nodejs/io.js/pull/812)\n```\n\nNote:\n\n* When running `changelog-maker` on the command-line, the default GitHub repo is computed from the `package.json` that exists on `cwd`, otherwise fallback to `nodejs/node`, you can change this by supplying the user/org as the first argument and project as the second. e.g `changelog-maker joyent node`.\n* Commit links will go to the assumed repo (default: nodejs/node)\n* If a commit summary starts with a word, followed by a `:`, this is treated as a special label and rendered in bold\n* Commits that have `semver*` labels on the pull request referred to in their `PR-URL` have those labels printed out at the start of the summary, in bold, upper cased.\n* Pull request URLs come from the `PR-URL` data, if it matches the assumed repo (default: nodejs/node) then just a `#` followed by the number, if another repo then a full `user/project#number`.\n\nWhen printing to a console some special behaviours are invoked:\n\n* Commits with a summary that starts with `doc:` are rendered in grey\n* Commits that have a `semver*` label on the pull request referred to in their `PR-URL` are rendered in bold green\n\n## Install\n\n```shell\nnpm i changelog-maker -g\n```\n\n## Usage\n\n**`changelog-maker [--plaintext|p] [--markdown|md] [--sha] [--group|-g] [--reverse] [--find-matching-prs] [--commit-url=<url/with/{ref}>] [--start-ref=<ref>] [--end-ref=<ref>] [github-user[, github-project]]`**\n\n`github-user` and `github-project` should point to the GitHub repository that can be used to find the `PR-URL` data if just an issue number is provided and will also impact how the PR-URL issue numbers are displayed\n\n* `--format`:          dictates what formatting the output will have. Possible options are: `simple`, `markdown`, `plaintext`, and `sha`. The default is to print a `simple` output suitable for stdout.\n  - `simple`:            don't print full markdown output, good for console printing without the additional fluff.\n  - `sha`:               print only the 10-character truncated commit hashes.\n  - `plaintext`:         a very simple form, without commit details, implies `--group`.\n  - `markdown`:          a Markdown formatted from, with links and proper escaping.\n* `--sha`:             same as `--format=sha`.\n* `--plaintext`:       same as `--format=plaintext`.\n* `--markdown`:        same as `--format=markdown`.\n* `--group`:           reorder commits so that they are listed in groups where the `xyz:` prefix of the commit message defines the group. Commits are listed in original order _within_ group.\n* `--reverse`:         reverse the order of commits when printed, does not work with `--reverse`\n* `--commit-url`:      pass in a url template which will be used to generate commit URLs for a repository not hosted in Github. `{ref}` is the placeholder that will be replaced with the commit, i.e. `--commit-url=https://gitlab.com/myUser/myRepo/commit/{ref}`\n* `--start-ref=<ref>`: use the given git `<ref>` as a starting point rather than the _last tag_. The `<ref>` can be anything commit-ish including a commit sha, tag, branch name. If you specify a `--start-ref` argument the commit log will not be pruned so that version commits and `working on <version>` commits are left in the list.\n* `--end-ref=<ref>`:   use the given git `<ref>` as a end-point rather than the _now_. The `<ref>` can be anything commit-ish including a commit sha, tag, branch name.\n* `--filter-release`:  exclude Node-style release commits from the list. e.g. \"Working on v1.0.0\" or \"2015-10-21 Version 2.0.0\" and also \"npm version X\" style commits containing _only_ an `x.y.z` semver designator.\n* `--find-matching-prs`: use the GitHub API to find the pull requests that match commits that don't have the `PR-URL` metadata in their message text. Without metadata, it may be necessary to also pass the org/user and repo name on the commandline (as the `github-user` and `github-project` arguments as demonstrated above, it may also be necessary to use `--find-matching-prs=true` in this case).\n* `--quiet` or `-q`:   do not print to `process.stdout`\n* `--all` or `-a`:     process all commits since beginning, instead of last tag.\n* `--help` or `-h`:    show usage and help.\n\n## Development\n\nTests require GitHub authentication in order to fetch pull request metadata. [ghauth](https://github.com/rvagg/ghauth) will generate, store and load a [personal access token](https://github.com/settings/tokens) in your local user configuration when changelog-maker is run during normal operation. To run the tests, you will need to ensure that you have a token in place. There are two ways to do this:\n\n1. Run `node ./changelog-maker.js -a` to cause changelog-maker to fetch metadata on a commit with a `PR-URL`.\n\n2. Manually generate a personal access token with `public_repo` scope. Then create a config.json file:\n\n    ```json\n    {\n      \"user\": \"MY_GITHUB_USERNAME\",\n      \"token\": \"MY_SECRET_TOKEN\"\n    }\n    ```\n\n    `user` is your username, and `token` is the token you generated above. The location of `config.json` depends on the OS, please see <https://github.com/LinusU/node-application-config#config-location>\n\n## License\n\n**changelog-maker** is Copyright (c) 2015 Rod Vagg [@rvagg](https://twitter.com/rvagg) and licenced under the MIT licence. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE.md file for more details.\n","readmeFilename":"README.md"}