[ros-users] API backwards compatibility [Was: Map Topic Ide…

Top Page
Attachments:
Message as email
+ (text/plain)
+ signature.asc (application/pgp-signature)
Delete this message
Reply to this message
Author: User discussions
Date:  
To: User discussions
Old-Topics: Re: [ros-users] Map Topic Idea
Subject: [ros-users] API backwards compatibility [Was: Map Topic Idea]
On 26/03/13 11:41, Jack O'Quin wrote:
>
> For 1.0 or greater package versions, there is *supposed* to be a
> commitment to API (but not ABI) stability between distro releases.
>
> http://www.ros.org/wiki/StackVersionPolicy#Release_1.0
>
> Changes to stable interfaces should be released with backwards
> compatibility for at least one release and deprecation warnings to
> notify users of the need to upgrade during that tick-tock cycle.


That document does not explicitly require API compatibility (sorry,
while I did say "stability" I actually meant "backwards-compatibility"),
except for patch releases.

Personally, I would like to see either ROS commit to Semantic Versioning
<http://semver.org/> as requirement for packages it distributes along
with requiring parallel installable major versions, or else slowing down
the release cycle in some way, perhaps alternating between a stable and
an unstable release every 6 months.

The former would go a long way to getting API compatibility, making it
easier to stay up to date with the current rapid release cycle. The
latter would reduce the pressure for people not interested in the
engineering overhead of remaining update-to-date with 6-monthly,
non-backwards-compatible releases.

//Mike

--
Michael Gratton <http://www.cse.unsw.edu.au/~mikeg/>
UNSW School of Computer Science and Engineering.