Turfjs / turf

A modular geospatial engine written in JavaScript and TypeScript
https://turfjs.org/
MIT License
9.22k stars 935 forks source link

Turf semantic versioning #229

Closed morganherlocker closed 9 years ago

morganherlocker commented 9 years ago

I think we should move to a stricter interpretation of semver. Roughly what this means is:

major|minor|patch

Under this scheme, major versions are going to be pushed often. We should explain why this is happening, and I think a good place to start is a VERSIONING.md file documenting how/why we use semantic versioning, along with explicit clarifications of the finer points.

turf@36.0.0

The main thing I want to keep in mind here is that major versions should not be clumped or avoided to keep the number low. That would slow development speed, which is something I want to avoid. If we make this switch, it needs to be a mundane thing to bump major. The version will be purely a semantic communication tool, not some sort of measure of progress or meta stability.

cc @lyzidiamond @tmcw

tcql commented 9 years ago

Where do algorithm output changes fit in? (example: turf-buffer switches from planar to geodesic output, but the api is unchanged)

I think that's a major bump there. Output is still part of the API, and output changes will certainly lead to breakage for some people (or at least unexpected changes in results)

tcql commented 9 years ago

Is the questions here still outstanding? I believe we've effectively made the switch, but we still need to add documentation about versioning

cc @morganherlocker @lyzidiamond @tmcw

morganherlocker commented 9 years ago

yep, we made the jump