Skip to content
This repository was archived by the owner on Jul 28, 2024. It is now read-only.

Conversation

@borekb
Copy link
Member

@borekb borekb commented Apr 14, 2019

This PR adds a changelog script that lists pull requests, noteworthy issues and other things between two versions:

$ npm run changelog -- 4.0-beta..master

NOTEWORTHY ISSUES:
#1259 Travis CI
#1389 Improve Dockerized testing infrastructure

NOTEWORTHY PULL REQUESTS:
#1334 Switch to MkDocs for documentation (#1332)
#1329 Dev setup updates – spring 2018

PULL REQUESTS:
#1423 Updated docs on development process (#1417)
#1422 Fix `run-tests.ts`: return non-zero exit code when tests fail
#1415 Have Travis run tests (#1259)
#1418 Update frontend dependecies
...

DIRECT COMMITS TO BASE BRANCH:
77ad593c Link to Gitter and support repo in ISSUE_TEMPLATE.md

The output is directly paste-able to GitHub issues, see e.g. #1373.

TODO:

  • Create the script as a fork of an internal vpmake tool we use for VersionPress.com.
  • List pull requests between two Git versions.
  • List direct commits between two Git versions (those that are not part of pull requests).
  • Print usage when --help or no args are provided.
  • Print related issues at the end of PRs, like ... (#1234). "Related issues" are those that use specific keywords in the PR body like "resolves" or "fixes", see this regex.
  • Add the changelog script to package.json.
  • Highlight 'noteworthy' PRs.
  • Add instructions on how to use it to docs.

Won't happen now but would be nice in the future:

  • Print scope, for example #123 [docs] Update dev setup; #124 [core] Improve post meta support.
  • --format markdown. Would turn things like #123 to [#123](https://github.com/versionpress/versionpress/issues/123), useful for copying the output to Markdown documents.
  • Print contributors.

borekb added 9 commits March 26, 2019 18:07
This is a port of an internal "vpmake log" command that we use on VersionPress.com. It prints pull requests and issues between two Git versions.

Right now, it's a very basic port with lots of cleaning up yet to do. But it works.

For reference, it has been ported from https://github.com/versionpress/platform/blob/57e7d89ce6e16b1f713388235914fb3a161b32ad/vpmake/src/commands/log.ts.
`changelog.ts` now always operates on the whole Git repo – we don't need path filtering.
We don't need that. Code could be simplified.
Only specific patterns like "fixes ..." or "resolves ..." are matched now.

This also includes a polyfill for the proposed string.prototype.matchAll function which makes it more convenient to work with RegExp matches.
@borekb borekb added the scope: dev-infrastructure Build scripts, IDE settings, CI, Docker dev stack, testing, tooling, etc. label Apr 14, 2019
@borekb borekb added this to the 4.0 milestone Apr 14, 2019
@borekb borekb self-assigned this Apr 14, 2019
@borekb
Copy link
Member Author

borekb commented Apr 14, 2019

Seems to work good enough for now, I'm going to merge this, improvements separately.

@borekb borekb merged commit f4a237f into master Apr 14, 2019
@borekb borekb deleted the 1373-changelog-tool branch April 14, 2019 20:07
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

scope: dev-infrastructure Build scripts, IDE settings, CI, Docker dev stack, testing, tooling, etc.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants