say we claim support for >=1, <3
- 1.0 is the first supported version.
- if this isn't tested, features from later versions may be depended on that break compatibility with this version.
- 1.x adds to it.
- test the latest version available to detect new features that collide (e.g. variables named
async
are fine in python 3.6 butasync
becomes a keyword in python 3.7).- only the latest version needs to be tested because features cannot be removed without a major version bump.
- if something breaks, either
- a new feature collided with existing code
- upstream did not follow semver and broke compatibility
- test the latest version available to detect new features that collide (e.g. variables named
- existing code uses upstream code that is not part of the public API