bitwalker / bitwalker/libcluster
Changelogs and Tags
- Dominant language
- Elixir
- Stars
- 2.2k
- Forks
- 201
- PR merge metrics
- No merged PRs in 30d
Description
Hello there 👋🏼
This is a general request related to the project's changelog, tags, releases, etc. — I'll explain it in narrative form and offer some suggestions of how the maintainers of the library could make my life easier as a consumer.
**tl;dr** A detailed and up-to-date changelog, and/or tags for all releases, would be very helpful! I understand that library maintenance is extremely time-consuming, but as a consumer, I'm unqualified to determine whether updating this package will break my application.
---
Today I noticed one of our application's dependencies is using a retired version, so it's time to do a round of updates. I usually do patch package updates at the same time for efficiency. This library has an available update:
```
# mix hex.outdated
libcluster 3.3.2 3.3.3 Update possible
```
That's a patch update, so chances are it won't break anything, but I always read [the changelog](https://github.com/bitwalker/libcluster/blob/main/CHANGELOG.md) to be sure!
Unfortunately, it doesn't have clearly-labeled information about the past three releases:
```
# Changelog
## Unreleased
- Use new cypher names
- Allow Epmd strategy to reconnect after connection failures
- Detect Self Signed Certificate Authority for Kubernetes Strategy
- Remove calls to deprecated `Logger.warn/2`
### 3.3.0
...
```
In this situation, I fall back to manually reading the changes because Elixir is (in my opinion) _relatively_ easy to read. So we're interested in the changes between the `3.3.2` and `3.3.3` releases. The [releases page](https://github.com/bitwalker/libcluster/tags) is my usual way of doing this: (1) find the `3.3.3` tag and click on it, (2) use the **Compare** option in the left, and (3) choose the `3.3.2` tag. Thanks to GitHub auto-generating releases for all tags, this usually works even if the maintainer didn't create a formal release on GitHub with notes.
Unfortunately, the older release doesn't have a tag:

That's unfortunate, so we'll have to find the commit that represents the `3.3.2` release manually and use my knowledge of GitHub URLs to create a comparison between that commit and the latest tag. However, when we look at the commits, there's no indication of which one relates to the release:

Perhaps the `3.3.1` commit/tag is the same, and that's why this situation occurred. That would be fine, but unfortunately this is opaque to me as a consumer.
---
This incident isn't big enough to be worth posting about, but it has occurred a few times now. I can say with certainty that the maintainers of this library are _by far_ smarter and harder-working than me. Unfortunately, it can be difficult to use the fruits of this labor because of release-related documentation. ❤️
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.