Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Sep 2017 09:45:22 +0100
From:      Matthew Seaman <matthew@FreeBSD.org>
To:        freebsd-stable@freebsd.org
Subject:   Re: ABI changes within stable branch
Message-ID:  <d340aafe-189b-ddb0-9cee-b1db8a1f9dbc@FreeBSD.org>
In-Reply-To: <21c1d954-8bdf-0d16-f1ca-176cd6df7a60@ish.com.au>
References:  <1b07bf49-508a-c6b4-e805-df7d43230f81@ish.com.au> <20170919081532.GB2170@home.opsec.eu> <21c1d954-8bdf-0d16-f1ca-176cd6df7a60@ish.com.au>

next in thread | previous in thread | raw e-mail | index | archive | help
On 19/09/2017 09:32, Aristedes Maniatis wrote:
> On 19/9/17 6:15PM, Kurt Jaeger wrote:
>> Hi!
>>
>>> Now that we are on a faster upgrade policy for minor branches, it is expected that we'll upgrade from 11.0 to 11.1 to 11.2 much faster than in the old days. I can cope with that, but it appears that functional changes are also being made within the stable branch as seen here:
>>>
>>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=221672
>>>
>>> A new fdatasync()  method is available in 11.1 but not in 11.0 which means that I now need to maintain separate ports trees for each minor update. I've never done this before, assuming (correctly for me until now) that all ports build on the latest minor release within the stable branch would work on older releases until I was ready to upgrade them.
>>
>> I think it was the other way around: All ports build on the .0 of
>> a RELEASE work on all later .x of that RELEASE. Which makes it a bit
>> difficult, if a .0 is no longer supported/patched by the secteam.
>>
>> A pointer to the official policy would be nice 8-}
> 
> Then we have a problem since https://pkg.freebsd.org/freebsd:11:x86:64/latest/All/ has been built on 11.1, not on 11.0 (I just tested it with csync2 which I know fails). Packages there may fail to run on 11.0, but there is no clear indication, just random failures at runtime.
> 
> Maybe we'd need specific 11.0, 11.1, 11.2 releases instead of quarterly releases?

Ports are still being built according to the same policy -- on the
earliest still-supported release of each major branch.

It's just that now, for 11.x and subsequent, 11.0 goes out of support a
month or so after 11.1-RELEASE comes out.  You're meant to have upgraded
by now.  The 11.0 -> 11.1 upgrade is intended to be a pretty routine
thing that you can do about as freely as you can apply a security patch
or other update within the 11.0 series.

Yes, there should be some sort of warning about your system being older
than what the package was built for.  Ideally it would be intelligent
enough to understand about things like the new fdatasync meaning libc
was incompatible.

Once we do finally get base system packages this problem should largely
disappear, as the normal pkg(8) dependency handling should pull in an
updated libc as a dependnecy of anything expecting the new fdatasync().

	Cheers,

	Matthew






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?d340aafe-189b-ddb0-9cee-b1db8a1f9dbc>