[Ros-release] ABI compatibility

Tully Foote tfoote at willowgarage.com
Fri Jan 4 21:00:53 UTC 2013

My best estimate was that rolling over the version numbers to even values
would cost us a full week of work for the core team and would require every
single maintainer to respond quickly to the request to rerelease.  And
availability of all maintainers any specific week is not likely.  Because
of this large overhead I didn't ask everyone to comply with that policy.
 You'll note I've updated the Version Policy wiki page to reflect that too.

I think what this points out is that we need to make sure we develop a way
to know what versions of packages are available in the debian repository.
 And we should make the Changelogs much more visible.  There was a
discussion long ago about moving the Changelogs from the wiki back into the
source. I think it's time to revive that discussion.  Especially now that
we have tools like bloom which could inject that information into the
debian packages now.

Also we should update REP 9 to not reference the even odd scheme, but be
more explicit about when and where things should be compatible.

And the last thing we should do is find a way to integrate some of the ABI
checking tools into the prereleases to help maintainers know when things
slip through the cracks.


On Fri, Jan 4, 2013 at 9:38 AM, William Woodall
<wwoodall at willowgarage.com>wrote:

> I think that is exactly the problem.  Come release time that would mean
> incrementing the version of our now 400+ packages for no reason other than
> incrementing the versions.
> There might be other reasons, but I am not sure about those.
> On Fri, Jan 4, 2013 at 8:08 AM, Jack O'Quin <jack.oquin at gmail.com> wrote:
>> On Fri, Jan 4, 2013 at 4:26 AM, Thibault Kruse <kruset at in.tum.de> wrote:
>>> On 04.01.2013 00:29, Jack O'Quin wrote:
>>>> My understanding of REP 9 is that ABI consistency is only required
>>>> *within* an even-cycle release, such as Fuerte or Groovy. Not *between*
>>>> releases.
>>>>  Hi Jack,
>>> note that Groovy packages were released with 1.9 as version numbers, not
>>> 1.10, so there is no "even-cycle" anymore.
>>> I don't think there has been any formal announcement of this decision.
>> I did notice that, but assumed it was an oversight. You are saying it was
>> intentional.
>> This would mean the documentation at http://www.ros.org/wiki/**
>>> StackVersionPolicy <http://www.ros.org/wiki/StackVersionPolicy> and
>>> REP9 referencing it became a little problematic with reference to "even
>>> cycles".
>> It could be updated to maintaining ABI compatibility any time the major
>> and minor numbers remain unchanged. That leaves a period of user
>> uncertainty during the unstable period before a release when ABI-breaking
>> changes are actually allowed.
>> So, perhaps this could use some discussion. What was the rationale for
>> abandoning the former practice?
>> The only problem I know about is that the even-number rule frequently
>> forces additional package releases just to bump version numbers from 1.9.x
>> to 1.10.0.
>>  --
>>  joq
>> _______________________________________________
>> Ros-release mailing list
>> Ros-release at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-release
> --
> William Woodall
> Willow Garage - Software Engineer
> wwoodall at willowgarage.com
> _______________________________________________
> Ros-release mailing list
> Ros-release at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-release

Tully Foote
tfoote at willowgarage.com
(650) 475-2827
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-release/attachments/20130104/eba679a4/attachment-0009.html>

More information about the Ros-release mailing list