Skip to content

Issue #558 Keepachangelog labels #636

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

jennyknuth
Copy link
Contributor

This PR addresses issue #558 and adds support for the six standard categories of changes listed in keepachangelog (three more categories—deprecated, removed, security—are added to the three that already exist).

This functionality might be covered by the add_sections option, but I couldn't find any documentation around add_sections or configure_sections so it does not appear to be easy to do.

Besides, Keepachangelog is the current standard reference for changelogs and arguably the six categories it lists should be included as the standard default sections. Including these standard sections/labels in a changelog should not require a user to implement a custom configuration.

This is my first contribution to open source, so go easy! But I have found your gem very useful and I found an issue I could address that would help improve changelogs everywhere.

@jennyknuth jennyknuth changed the title Keepachangelog labels Issue #558 Keepachangelog labels Apr 1, 2018
Copy link
Collaborator

@olleolleolle olleolleolle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for adding this piece of the puzzle!

Welcome to the project!

The Keepachangelog names of things are a valuable norm to spread and have in a changelog.

The next steps are to document the new options in the Markdown file in the man/ directory and generate its artifacts (there’s docs about how to use a gem called ronn in this repo).

@@ -177,7 +177,7 @@ You can look for params names from the [parser source code (#setup_parser)](http

## Features and advantages of this project

- Generate canonical, neat changelog file, followed by [basic changelog guidelines](http://keepachangelog.com) :gem:
- Generate canonical, neat changelog file, with default sections that follow [basic changelog guidelines](http://keepachangelog.com) :gem:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This wording is clearer, and teaches what this is about way better.

KNOWN_ARRAY_KEYS = %i[exclude_labels include_labels
breaking_labels enhancement_labels bug_labels
deprecated_labels removed_labels security_labels
issue_line_labels between_tags exclude_tags]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tiny thing: thanks for keeping the lines short - Github diffs are rendered much better when the lines are shorter (~ 80 chars). Kudos!

@olleolleolle
Copy link
Collaborator

Point of order: Thank you so much for this PR!

(If you are up to documenting the new options, do that in a follow-up PR. This one is completely fine to merge in itself.)

@olleolleolle
Copy link
Collaborator

Merging!

@olleolleolle olleolleolle merged commit 60ade2a into github-changelog-generator:master Apr 1, 2018
@hunner hunner mentioned this pull request Apr 12, 2018
@skywinder skywinder added this to the 2.0.0 milestone Apr 15, 2018
@TomasVotruba
Copy link

TomasVotruba commented May 27, 2018

Hey, thanks for this feature.

I'd like to use but I don't know how. Could you add docs to README/Wiki/Links?

I see some labels, but don't use them. Is there a way to split there by expression in merge commit, like "Add new fixers" matches *add\s* → headline "Added"?

@olleolleolle
Copy link
Collaborator

Hi there! A short note: the only metadata read by this tool is the Label data. You can add Labels to Issues and to Pull Requests.

Commit messages are not read or used.

Adding Labels matching these grouped lists of names will present that Issue or PR under a specific heading in the generated Markdown file.

I hope this helps!

@TomasVotruba
Copy link

I understand that, but that would kill me for existing projects with years of history :(

Sort by label is just one (now default) implementation of sorting issues/PRs. How to use own function to sort this by issue or PR message?

I know PHP only

@hugovk
Copy link

hugovk commented Aug 20, 2018

@jennyknuth Thank you for adding this feature, just what I was looking for in this tool. And congratulations on your first contribution to open source! 🍰 🎆

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants