Olen/Spond

BREAKING CHANGES IN 0.99.x

Closed this issue · 12 comments

Olen commented

0.99.x contains breaking changes.

Mostly, they are simple replacements of camelCase() to snake_case() of function names.

Please update with care.

Olen commented

(Sorry guys. Had to make a new release in a hurry here. The family was really unhappy as their calendars were suddenly not updated and the practice and matches started again after summer this week...)

Thanks @Olen and sorry for my slipups - partly a consequence of rushing things while moving from broken Windows environment to Linux...

Olen commented

Oh, I don't blame you. You have done tremendous effort!

It was just a warning that I actually made a release before everything was tested and verified and did not give people more time to adjust for the new function names etc.

Olen commented

@elliot-100 What do you think? Should we release 1.0.0 with all the breaking changes?

I have not received any bug reports since releasing 0.99, but I am not sure how much it has been tested by others than me...

@elliot-100 What do you think? Should we release 1.0.0 with all the breaking changes?

I think the very next step is to document what the changes are, and which are breaking. 0.99x don't have release notes. I will add, and this can be the basis for the next version.

To be honest I think these should have been labelled something like 0.11.0rc1 and 0.11.0rc2, (or ...alpha or ...beta) as they introduce new functionality (#62) as well as fixes, and suffixes like this are understood by dependency management.

Not sure I understand the need to go to 1.0.0 at this point - to me that implies pretty stable development status, and I don't think we are there - the lack of test suite, and thus quality assurance is a key indicator. I'd say the next stable version should be 0.100.0, as we can't move backwards. If we want a pre-release before that, it should be e.g. 0.100.0rc1, etc.

I have not received any bug reports since releasing 0.99, but I am not sure how much it has been tested by others than me...

I think it's unlikely that all the write/send functions work, but that's one for another day.

OK, I've reviewed changes and generated/written/revised release notes for https://github.com/Olen/Spond/releases/tag/0.99.0 and https://github.com/Olen/Spond/releases/tag/0.99.1.

I've noted all the potentially breaking changes I can see.

I haven't included changes that aren't significant to end users (e.g. dev-deps, code style/linting CI changes) but can do; I tend to put this in a separate section.

Olen commented

Hi again, and thanks for the update.

When it comes to version numers, I tend to be slightly "liberal". Since this version contains a lot of breaking changes, with almost all (public) functions changing the name, I thought it would be good to highlight that.
Also, I think the release is "good enough" to warrant a 1.0.0 version.
When/if we get around to an even more class-based solution, as outlined in #57 and #63 I think we can safely create a 2.0.0

But I agreee that adding CI-changes etc. to the changelog is not important for normal users.

  • What public functions have changed name?

As per release notes, I could only find one signature change since 0.10.1 (the README has not been updated though). Have I missed something?

  • We don't have any assurance all functions work, post login fix, and for me this would be a pre-requisite for a proper (non-prerelease/beta) version.
Olen commented

Hm. I was sure the changes from camelCase to snake_case happened between 0.10.1 and now? That's why I wanted to jump. But maybe that was before? In that case, I agree.

The 0.99 should have been tagged as a beta, but I wanted to push it to pip as quickly as possible because 0.10.1 did not work due to the API-changes.
Whether we call the next release 0.100 or something else is not a big deal for me. Personally, I prefer the more generic year.month.release - version tagging that more projects are adopting, but I know not everyone likes that.

That change was documented back in 0.9.0.

The version number/numbering scheme isn't really a big issue.

To be more constructive, I will fix the doc issue #91 and should be able to spend time on #89 shortly.

Closing - I think any remaining issues are documented elsewhere.