camera-preview icon indicating copy to clipboard operation
camera-preview copied to clipboard

Follow SemVer

Open ryaa opened this issue 4 years ago • 1 comments

Is your feature request related to a problem? Please describe. Regular "minor versions" (e.g 1.0.3+ where toBack option was added with the default to false, while it was true before) break compatibility with existing codebases.

To make it easier for developers to determine if a new version of the plugin includes backwards-compatible features vs backwards-incompatible api changes, plugin's versioning scheme should follow semantic versioning SemVer

The gist of semver is as follows:

Given a version number MAJOR.MINOR.PATCH, increment the:

MAJOR version when you make incompatible API changes,
MINOR version when you add functionality in a backwards-compatible manner, and
PATCH version when you make backwards-compatible bug fixes.
Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.

This would make the version with toBack prop breaking change added to be a 2.0.0 version which would clearly indicate to developers that the API is different, and allow developers to utilise npm's wildcard versions (e.g "1.x", "~1")

Describe the solution you'd like Follow SemVer and change major version number if there is a breaking change.

Describe alternatives you've considered Document each release changes and specifically note about breaking changes - see https://github.com/capacitor-community/camera-preview/issues/95#issuecomment-779777667

Additional context N/A

ryaa avatar Feb 16 '21 12:02 ryaa

Agree, thank you @ryaa

arielhernandezmusa avatar Feb 28 '21 18:02 arielhernandezmusa

The plugin seems to be following semver now with 4.x version supporting Capacitor 4 and the next major version will be 5.x to also match Capacitor 5

jcesarmobile avatar Jun 08 '23 13:06 jcesarmobile