Part of the Fatiando a Terra project
Sumario is a small command-line program for generating a Markdown changelog from the git history. It follows the format currently used in the Fatiando projects and tries to automate some of our release process.
Sumario is available from PyPI:
python -m pip install sumario
and conda-forge:
conda install sumario -c conda-forge
Generate a changelog skeleton based on changes since the last git tag:
$ sumario > changelog.md
Gathering changes since tag v0.3.2
Adding list of contributors
Formatting the changelog
Printing changes to standard output
Done!
$ cat changelog.md
## vX.Y.Z
**Released on:** 2022/08/19
**DOI**: [XXX](https://doi.org/XXX)
Highlights:
Breaking changes:
Deprecations:
Bug fixes:
New features:
Documentation:
Maintenance:
This release contains contributions from:
* Person A
* Person B
* Person C
* First commit message title And the body of the commit appended
([#123](https://github.com/fatiando/project/pulls/123)
* Second commit message title And the body of the commit appended
([#321](https://github.com/fatiando/project/pulls/321)
The current implementation is a proof-of-concept and has some limitations:
- No customizable templates for the changelog
- Changes are copied manually to the corresponding documentation page
- Zenodo DOI is assigned manually (it would be great to do this automatically using the Zenodo API, including adding new authors to the project and publishing the source archive)
- Entries are sorted manually
Of course, all of these could be addressed if there is enough interest. Issues and PRs are welcome!
We use the following dependencies (see setup.cfg
for specific version
constraints):
- click for building the command-line interface.
π¨οΈ Contact us: Find out more about how to reach us at fatiando.org/contact.
π©πΎβπ» Contributing to project development: Please read our Contributing Guide to see how you can help and give feedback.
π§πΎβπ€βπ§πΌ Code of conduct: This project is released with a Code of Conduct. By participating in this project you agree to abide by its terms.
Imposter syndrome disclaimer: We want your help. No, really. There may be a little voice inside your head that is telling you that you're not ready, that you aren't skilled enough to contribute. We assure you that the little voice in your head is wrong. Most importantly, there are many valuable ways to contribute besides writing code.
This disclaimer was adapted from the MetPy project.
This is free software: you can redistribute it and/or modify it under the terms
of the BSD 3-clause License. A copy of this license is provided in
LICENSE.txt
.