You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
sb-edit has plenty room to shake up in the future - #53, #93, #98, #100 - and maybe some of these are issues that we want to address before giving it a spiritual "1.0.0" release. But, on a practical level, it is now a package which certain other software depend on (i.e. leopard-website). Although package-lock.json has long addressed the worst concerns, still, to the end of smooth updates within package.json constraints, semantic versioning is a useful thing.
Changing toLeopard (we should perhaps change all such interfaces?) to be async - #154 - is a breaking change. One that's easy to prepare for - PullJosh/leopard-website#64 - but still breaking.
We don't personally see semantic versioning as making a statement about a certain "quality" or any other guarantee, for a project. It's just saying: this package has interfaces for usage in your code project, and they will continue to work, in the same shape, until the next major release.
We have somewhatarbitrarily used minor and patch 0.x.y versions and could discuss what we want to "count" for a minor/patch bump more specifically, but personally the main motivation is to treat breaking changes as major version bumps, so they can be more plainly documented e.g. in release notes or summaries of major API changes (maybe some of the issues linked at the top of this issue).
The text was updated successfully, but these errors were encountered:
I'm on board with this as a practical choice. I think my gut instinct is to be precious about major releases, but there's no practical reason to treat them that way, as far as I can tell. Using major releases as a clear marker of breaking changes seems wise, and it makes sense to publish 1.0.0 so that we can then bump to 2.0.0 when we release a breaking change to the API.
sb-edit has plenty room to shake up in the future - #53, #93, #98, #100 - and maybe some of these are issues that we want to address before giving it a spiritual "1.0.0" release. But, on a practical level, it is now a package which certain other software depend on (i.e. leopard-website). Although
package-lock.json
has long addressed the worst concerns, still, to the end of smooth updates withinpackage.json
constraints, semantic versioning is a useful thing.leopard
was published as a semver project basically immediately. As far as we're aware there has only just recently even been a concern about bumping leopard to 2.x.y, see: leopard-js/leopard#201 (comment).Changing
toLeopard
(we should perhaps change all such interfaces?) to be async - #154 - is a breaking change. One that's easy to prepare for - PullJosh/leopard-website#64 - but still breaking.We don't personally see semantic versioning as making a statement about a certain "quality" or any other guarantee, for a project. It's just saying: this package has interfaces for usage in your code project, and they will continue to work, in the same shape, until the next major release.
We have somewhat arbitrarily used minor and patch 0.x.y versions and could discuss what we want to "count" for a minor/patch bump more specifically, but personally the main motivation is to treat breaking changes as major version bumps, so they can be more plainly documented e.g. in release notes or summaries of major API changes (maybe some of the issues linked at the top of this issue).
The text was updated successfully, but these errors were encountered: