Skip to content

feature_request(changelog): valid and consistent Markdown in the file CHANGELOG.md #279

@Kristinita

Description

@Kristinita

1. Summary

It would be nice if Changelogen can generate the file CHANGELOG.md that will be valid and consistent with another Markdown files of the codebase.

2. Justification of the need of the feature

2.1. Short justification

  1. Valid files are better than non-valid.
  2. The ability of using the same style as the rest of the codebase is better than not having it.

2.2. Longer justification

Yes, users can just ignore the file CHANGELOG.md when they lint Markdown files use tools like Markdownlint and remark-lint, but it would be nice if they couldn’t do it. It would be nice if:

  1. The file CHANGELOG.md would comply with generally accepted Markdown standards.
  2. Users could have same styles as they use in another Markdown files in their projects.

If users doesn’t ignore the file CHANGELOG.md, possibly they will report about possible problems in changelogs more often. This is beneficial for Changelogen developers, since will be more chance that they will know about Changelogen problems.

3. MCVE

3.1. Steps to reproduce

I ran Changelogen for my example repository without a changelog:

changelogen --bump

Changelogen generated the file CHANGELOG.md

I checked this CHANGELOG.md use Markdownlint and remark-lint.

3.2. Behavior

3.2.1. Desired

No errors and warnings.

3.2.2. Current
3:1   error    markdownlint  no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]                                                         ​MD012
4:1   warning  remarklint    Unexpected `2` blank lines before node, expected up to `1` blank line, remove `1` blank line no-consecutive-blank-lines  remark-   ​warning
6:1   error    markdownlint  no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]                                                         ​MD012
7:1   warning  remarklint    Unexpected `2` blank lines before node, expected up to `1` blank line, remove `1` blank line no-consecutive-blank-lines  remark-   ​warning
9:1   warning  remarklint    Unexpected unordered list marker `-`, expected `+`                                           unordered-list-marker-style remark-   ​warning
162:1   error    markdownlint  no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]                                                         ​MD012

4. Examples of desired syntax in CHANGELOG.md

4.1. 1 blank line after headers

It would be nice to have this syntax:

# Changelog

## v0.0.1

instead of this:

# Changelog


## v0.0.1

And this syntax:

## v0.0.1

### 🩹 Fixes

instead of this:

## v0.0.1


### 🩹 Fixes

4.2. Ending of the file without the blank line

It would be nice to have this syntax:

### ❤️ Contributors

- Kristinita ([**@Kristinita**](https://github.com/Kristinita))

instead of this:

### ❤️ Contributors

- Kristinita ([**@Kristinita**](https://github.com/Kristinita))

4.3. Custom list markers

CommonMark supports symbols +, * and - as list markers. It would be nice if Changelogen will have the option like listMarker with these symbols as valid values. If the value of the option listMarker is +, Changelogen will generate this changelog:

+ first commit
+ second commit

instead of this:

- first commit
- second commit

Also, it would be nice if Changelogen would allow ordered lists. For example, if listMarker value is 1., Changelogen will generate this changelog:

1. first commit
1. second commit

Thanks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions