Closed pmorie closed 6 years ago
That versioning strategy seems appropriate to me. I assume that the base version would correspond with the latest version of the OSB API that the client supports.
Matching osb release version seems safe and reasonable.
No complaints here.
I made an 0.0.1 release to capture what we have before further changes go in, and before we made a final call on the versioning scheme.
One thing that I thought of - going based on the osb release may bite us if we need to make breaking API changes. It's too bad there's no easy way to version the protocol separately from the level of the client in a single version number.
Talked to @pmorie offline. In order to give ourselves enough flexibility, we probably shouldn't couple our releases here with the OSB versions. The intent of this library is to support all versions of OSB, so there's no real reason for people to have to look back in the past for a specific version; they should just use the latest release. We should instead just make sure to have releases close to when new versions of the spec come out, and these releases can include as a "feature" the added support for that OSB version. This way, if there are necessary breaking changes or critical bug fixes, we don't get ourselves in a pickle. Users can search the release notes if they wish to find an older version that supports their targeted OSB version.
I'm going to close this for now - we'll stick with normal semver versioning. Next version will be 0.0.2 and continue with 0.0.x until we fix the adherence to the spec schema (which @luksa pointed out as an issue, see #101), after which I think we should go to 0.1.0
I realized this week that we have never released this repo and are depending on random shas in service-catalog. We should release this repo. There's a question of what the versioning strategy should be.
I'm thinking something like:
2.13
as a base version2.13.x
for fixesI suspect @kibbles-n-bytes @staebler @MHBauer may have some opinions in this area