Skip to content

feature_request(configuration): configuration formats supported by confbox #276

@Kristinita

Description

@Kristinita

1. Summary

It would be nice if Changelogen will support configuration formats supported by confbox like YAML, TOML and INI.

If Changelogen already supports it, it would be nice if Changelogen documentation will contain information how users can set their configuration in these formats.

2. MCVE

2.1. Steps to reproduce

I make any changes in my project → git add --allgit commit --message="kira(examplescope): example commit" --signoffchangelogen.

2.2. Behavior

2.2.1. Expected — JSON configuration

If I have a file changelog.config.json:

{
	"types": {
		"kira": {
			"title": "Goddess"
		}
	}
}

I get this output:

D:\SashaDemoRepositories\SashaGitHub>changelogen
i Generating changelog for v1.9.45…KiraChangelogenConfiguration

## v1.9.45…KiraChangelogenConfiguration

[**compare changes**](https://github.com/Kristinita/SashaGitHub/compare/v1.9.45…KiraChangelogenConfiguration)

### Goddess

- **examplescope:** Example commit ([**a8c41bb**](https://github.com/Kristinita/SashaGitHub/commit/a8c41bb))

### ❤️ Contributors

- Kristinita ([**@Kristinita**](https://github.com/Kristinita))
2.2.2. Non-expected — YAML configuration

Because Changelogen has the dependency confbox and the commit “Use confbox for yaml parsing”, I tried YAML configuration. I created files .changelog.yaml, .changelogen.yaml, .changelogenrc, .changelogrc with the content:

types:
  kira:
    title: Goddess

But with these configuration files Changelogen doesn’t add to the changelog the commit with the custom type kira:

D:\SashaDemoRepositories\SashaGitHub>npx changelogen
i Generating changelog for v1.9.45…KiraChangelogenConfiguration

## v1.9.45…KiraChangelogenConfiguration

[**compare changes**](https://github.com/Kristinita/SashaGitHub/compare/v1.9.45…KiraChangelogenConfiguration)

3. Justification of the need of the feature

  1. For humans formats like YAML simpler that JSON. No extra braces/quotes.
  2. Changelogen supports solely hardcore JSON without comments in the file changelog.config.json. I prefer formats with comments, because without comments, months and years later, I may forget why I added this or that option.
  3. Yes, Changelogen supports {ts,js,mjs,cjs} configuration formats, but it would be nice if users could just use simple configuration formats without having to use JavaScript/TypeScript coding.

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