mxnet-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sheng Zha <zhash...@apache.org>
Subject [Discussion] Branch Usage and Release Versioning
Date Wed, 17 Jan 2018 19:01:16 GMT
Dear community members,

Now that we're preparing a new release under the 1.0 version, I'd like to
propose that we discuss, clarify, and decide how we use versions and
branches.

Current practice is:
1. we use master branch for development.
2. we fork from master branch and create release branch for specific
versions, such as 1.0.0
3. no formal process for bug fixes on those release branches after release
4. not agreed on using Semantic Versioning for deciding version number:
https://semver.org/ (though technically not breaking it either, because we
only had one release for 1.0 so far, which defines the promised set of
public APIs)

I propose the following changes:
1. we continue to use master branch for development (not really a change,
duh)
2. we create release branches for minor versions, such as 1.0.x, 1.1.x, and
release from the head of those branches with version numbers according to
semantic versioning.
3. we regularly apply relevant bug fixes to release branches and provide
maintenance releases.
4. we use the same protected branch and CI features to protect our release
branches (i.e. PR-only, tested at every step)
5. we promise the practice of semantic versioning to users.

Note that in order to be able to perform proposed item 3, we need clarity
on whether a PR introduces a new API, and record the version in which it
was released. Note that this applies to new argument to existing API, and
new semantic meaning of existing APIs and arguments. This way, we know
which bug fixes are relevant to which versions.

Your thoughts and suggestions are welcome. Thank you for your time.

-sz

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message