Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
alkymi
-
Changelog-Driven Releases
I also use a similar approach for my open source Python automation project, alkymi: https://github.com/MathiasStokholm/alkymi/blob/develop/CHANG...
In addition to the author's comments, I would suggest also using the format from https://keepachangelog.com/en/1.1.0/ (more sub-headings, e.g. "added").
Lastly, pruning the CHANGELOG upon adding and removing stuff again is a great idea to keep entries meaningful for the reader.
-
Show HN: Mr. Graph. A graph deifnition and execution library for Python
alkymi (https://github.com/MathiasStokholm/alkymi) is such a library (disclaimer: I'm the author). I built alkymi to help me cache complex data pipelines, while still having all the niceties of Python.
- Alkymi – Data/Task Automation in Python
- MathiasStokholm/alkymi Alkymi is a pure Python (3.5+) library for describing and executing tasks and pipelines with built-in caching and conditional evaluation based on checksums.
- Show HN: Alkymi – Data/Task Automation in Python
epage
-
Changelog-Driven Releases
My problem with maintaining a changelog during development is it can serve as a source of merge conflicts. Instead, I follow Covnentional Commit style and manually write my changelog entries based on the commits. I have a tool [0] that can show me the relevant commits for a package in my repo and automates the entire release process, including doing sanity checks.
I also feel like releasing from CI is hard, especially if you have multiple packages in a repo [1], including
- You can't as easily introspect the process
- You can't as easily recover from failure
- Getting a lot of the nuance right, like handling releases concurrent to merging of PRs, is difficult
- When the workflow is an ever-present "release PR" that you merge when ready has issues with selecting which packages to release and at what version
I have been considering making a tool to generate changelogs from fragments. Been keeping notes at https://github.com/epage/epage.github.io/issues/23
[0]: https://github.com/crate-ci/cargo-release
[1]: https://github.com/MarcoIeni/release-plz/discussions/1019
What are some alternatives?
sailboat - 🐍 A quick and easy way to distribute your Python projects!
PyFunctional - Python library for creating data pipelines with chain functional programming
sane - make, but sane.
tributary - Streaming reactive and dataflow graphs in Python
fn_graph - Lightweight function pipelines for Python
loman - Loman is a Python library designed to allow quantitative researchers to control complex live updating calculation processes