Closed Anniepoo closed 5 years ago
I believe I have the packags set up to only track GitHub releases (see no new updates to the pack despite pushes to master): https://github.com/shonfeder/tokenize/releases
Using github releases, as this does, every release version gives a tag to the commit released, so I don't think we need a release vs. develop branch. But I guess to support people deploying from source, it would be good to have a stable vs. a develop branch.
I'll put that in place and make develop
the default branch going forward.
For compatibility, I think we should increment the major version when we release the new changes, and start tracking release notes.
If we release a properly versioned package, I should think it is the responsibility of users to be sure they check for breakage between major version updates. Do you think that's too harsh?
Made a develop
branch and set that as the default. Will wait to hear feedback re: versioning, support, and compatibility.
Additionally, according to semantic versioning (and I think common conventions):
Major version zero (0.y.z) is for initial development. Anything may change at any time. The public API should not be considered stable.
So I really don't think we need to worry about this too much. If you know of a party that doesn't specify their version, and their usage might break if we update, good to warn them. But I don't think we need to be previous about API changes until we push a 1.0.
yup, I concur, this was just thinking 'hey, if we keep going on master and majorly change the package, when we release new stuff we break old users.'
I know there are people depending on tokenize already. I used it in a work project at my old employer.
We should start doing dev vs master (IIRC the package manager kind of hoses you if you update the branch. May be an old bug, but...)
And we should work out how we support current users if we're doing an API redesign.