leouieda / sumario

A tool for making changelogs for the Fatiando a Terra project

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sumario

Build a changelog in the Fatiando a Terra style

Part of the Fatiando a Terra project

Latest version on PyPI Latest version on conda-forge Compatible Python versions.

About

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.

Installing

Sumario is available from PyPI:

python -m pip install sumario

and conda-forge:

conda install sumario -c conda-forge

Using

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)

Limitations

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!

Dependencies

We use the following dependencies (see setup.cfg for specific version constraints):

  • click for building the command-line interface.

Getting involved

πŸ—¨οΈ 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.

License

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.

About

A tool for making changelogs for the Fatiando a Terra project

License:BSD 3-Clause "New" or "Revised" License