I have read a little bit about using semver for contrib modules in the updated documentation Transitioning from 8.x-* to semantic versioning and Drupal.org release version numbers allow semantic versioning. While I do understand that we need to tag these branches & releases incrementally based on your current 8.x
version, how is this taken into practise?
My module for example is considered compatible for both Drupal 8 and 9, tagged with a release 8.x-2.1
on branch 8.x-2.x
. So would I switch to a new branch 3.x
and tag 3.0.0
, or can this tag be on the same 8.x-2.x
branch as they are essentially running the same codebase? Otherwise I have to apply all bug fixes and changes onto 2 branches.
How would this work in conjunction with the core_version_requirement
key, as I believe semver is only supported starting from Drupal 8.7.7
core version?
And finally if I am able to use the same codebase for either semver or without, how would this work with update hooks or are they maintaining the same format?