I'd recommend that a second branch be created for development, pull requests, etc. This would alleviate the need for contributors to update the package version, and would ensure that full testing could take place with any proposed code before it's made publicly available.
New workflow would look like this:
Contributor: Fork -> Work on code -> Test -> PR to upstream development branch
Maintainer: (When new version should be released) Update version -> Merge to master -> Tag new 'release' version
I'd recommend that a second branch be created for development, pull requests, etc. This would alleviate the need for contributors to update the package version, and would ensure that full testing could take place with any proposed code before it's made publicly available.
New workflow would look like this:
Contributor: Fork -> Work on code -> Test -> PR to upstream development branch Maintainer: (When new version should be released) Update version -> Merge to master -> Tag new 'release' version