Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Changelog #12

Closed
florianbachmann opened this issue Nov 17, 2016 · 4 comments
Closed

Changelog #12

florianbachmann opened this issue Nov 17, 2016 · 4 comments

Comments

@florianbachmann
Copy link

Just out of curiosity
are you able to provide a high level changelog.md file?
or could you say what changed between, e.g. 16.9.10 and 16.11.0

thanks a lot
and best regards
flori

@mk-fg
Copy link
Owner

mk-fg commented Nov 17, 2016

Interesting question.

Version numbers here are just generated with every commit as <year>.<month>.<commit-count-this-month>, i.e. 16.9.10 is 11th commit in Sep 2016 and 16.11.0 is first commit this month.
For this particular versioning schema, changelog should be completely redundant with commit log - https://github.com/mk-fg/python-pulse-control/commits/master - as every line there would be a commit msg.
Guess if that is what's needed, there's commit log already.

Best way to get list of changes since some particular version - e.g. since 16.9.10 - that I can think of:

% git log --oneline $(git log --format=%h -G 16.9.10 -- setup.py | tail -1)..HEAD

Should produce same thing as I'd write into changelog for each "version" as they currently are.

Another obvious option seem to be doing releases manually every once in a while, which I don't really see much point to - every fix is important, there is no dedicated QA team or "stable" branch, so might as well do them after every commit.

And yet another alternative would be to have changelog where I'd be putting release number (even with current versioning schema) and only some subset of changes deemed "important" at my discretion.
I don't really know how to handle that - is "bugfix: mute function was segfaulting!" important? Seems so. Is "added wrapper for pa_channel_map_parse"? Yes? No? Maybe? What even is this channel-map?
I'd say every tweak is "important" to some use-cases, which almost always something I use too, and don't know what other people use/care about... so also looks like a bad idea to me.

Note that there should be no "exciting" changes here - it's a wrapper module for libpulse API, so only things that can happen are bugfixes for already-wrapped stuff or more wrapper methods added.
Former should be very dull and latter is probably stuff you don't care about anyway, if you're using the module already and didn't need these from the very start.

So can't really think of a way to easily make anything more useful than simple commit log, which is already there.

@florianbachmann
Copy link
Author

oh thanks, because it is 'only' 16, I didn't recognize it as year (as opposed as 2016 (as the people from Jetbrains do with PyCharm). but I like this versioning schema.

I looked at the commit history at https://github.com/mk-fg/python-pulse-control/commits/master
but the history on the github webpage is not very informative (because it has to many informations and white space on it). So actually I hoped for something like: http://aiohttp.readthedocs.io/en/stable/changes.html#id11
without the need to git clone the project. But it hasn't to be as detailed as aiohttp. To explain it with semantic versioning I would like to know MAJOR & MINOR changes (PATCH changes don't need to be mentioned). Like is there anything breaking, or does this release add's a new functionality.
The basic question is, can I do a safe pip upgrade, without breaking changes :-)

@mk-fg
Copy link
Owner

mk-fg commented Nov 18, 2016

Like is there anything breaking, or does this release add's a new functionality.
The basic question is, can I do a safe pip upgrade, without breaking changes :-)

That's more specific and doable than a more nebulous "changelog" thing, though I don't think there's likely to ever be intentional "breaking" changes (as opposed to bugs and "these are internals anyway", which won't make it into changelog).

And I wonder, what kind of new functionality you might need that is:

  • Available through libpulse.
  • Not much out of scope for this module (as e.g. "add gtk mixer app" might be).
  • Not wrapped by this module.

And if there is such, why not open an issue or PR for it, assuming that you need that to implement something?

Should be doable though, even if such changelog might be mostly empty and forgotten, will create one, thanks for the idea.

@mk-fg
Copy link
Owner

mk-fg commented Nov 18, 2016

will create one

Done: https://github.com/mk-fg/python-pulse-control/blob/master/CHANGES.rst

Also added a small note on it and versioning to the README - https://github.com/mk-fg/python-pulse-control/#changelog-and-versioning-scheme

Hopefully won't forget to check/update it, added a small git prepare-commit-msg hook to insert a reminder about it there - https://github.com/mk-fg/python-pulse-control/blob/master/.git.prepare-commit-msg-hook

Again, thanks for the idea!

@mk-fg mk-fg closed this as completed Nov 18, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants