This util allows you to generate changelog entries without causing merge conflicts.
Go into the changelog
folder and run the following commands
python3 -m venv venv
source venv/bin/activate
python3 -m pip install -r requirements.txt
python3 ./src/changelog.py add
The command will ask you for the required information to create a new changelog entry.
The entry will then be added to the unreleased
folder as a .json
file.
You can edit any .json
file directly as well, the commands only exist to simplify
your workflow.
python3 ./src/changelog.py release <name-of-the-release>
The command will do the following:
unreleased
to the new release folderreleases.json
filechangelog.md
After you made a release you can move the changelog.md
file to the root of the project.
python3 ./src/changelog.py purge
This command will delete:
changelog.md
entries
directoryreleases.json
Be careful when running purge
since it will delete these files permanently!
python3 ./src/changelog.py generate
This command will generate a new changelog.md
file without making a new release.
Before we used this tool we just added changelog entries manually to the changelog.md
which lead to us having regular merge conflicts when multiple people would add a log
of the same type during the same release cycle. Those conflicts were annoying and
ate up pipeline minutes.
Yes, every log file and any meta files are editable and can be edited if a mistake was made during the generation process.
No. The changelog.md file is generated automatically and should never be edited directly. Any change you make to the file will be deleted when it's regenerated.
The order is determined by the order of the releases inside releases.json
. If you wish
to change the order you will have to move the release inside the releases
array to
the desired position.
Yes, every changelog entry should be committed as part of your MR.
Yes, you can. If you need to add bullet points for when new templates are created for
example, you can do so by adding your bullet point strings to the bullet_points
list
of a changelog entry.
You can only do this by directly editing the .json
file at the moment since it's a
fringe use case and wouldn't make sense to add as a prompt when creating the entry
via the CLI.
If you have generated a new release, and you notice afterwards that you meant to change
one of the entries before making the release you can change the content of the changelog
entry in the JSON file directly and then run python3 ./src/changelog.py generate
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。