Re: build and ports mismatching ?

2018-05-25 Thread Marc Espie
On Fri, May 25, 2018 at 07:51:15AM +, Stuart Henderson wrote:

> That is at least detected by package tools and more easily fixed :)

The package tools err on the side of caution because we've been burnt
too many times.

There is often whining about it from other developers because sometimes
it's a pain to keep everything in synch, but it saves the ass of end users.



Re: build and ports mismatching ?

2018-05-25 Thread Stuart Henderson
On 2018-05-24, Sebastian Benoit  wrote:
> Base system snapshots (including xenocara) and packages are not build
> at the same time. Package builds use the latest snapshot, but since
> building packages takes a day or so (depending on the arcitecture and
> build machines available) and distribution of the packages to the mirrors
> also tkes time, there is a time lag between the newer version of a base
> library available and the package that uses it being available.

Build time is around a day on the amd64 cluster, i386 a little longer,
some other arches a *lot* longer.

The exact problem here is:

- packages are built against libfreetype.so.28.2

- X provides libfreetype.so.29.0

- some other X libraries (libfontconfig etc) depend on new libfreetype
but the library version on those remained the same

- some packages depend on *both* libfontconfig and libfreetype, so the
dynamic linker loads one of the libfreetype versions and the other
libraries, notices the conflict, and warns you. (sometimes it's
harmless enough, but there could be disastrous consequences).

In this case the best thing to do is sit it out and wait for new
packages but the commit process was wrong. To avoid problems with
packages or locally compiled software, the other libraries in X that
dependg on libfreetype should have received the same type of library
bump as libfreetype itself.

> Add to that that you (as user) probably do not catch every library bump of
> base system libries when updating your machine, you can get into the
> situation that base has a newer lib than what a package needs, but the older
> lib that the package needs is newer than the old version thats still on
> your system because you skipped that.

That is at least detected by package tools and more easily fixed :)




Re: build and ports mismatching ?

2018-05-24 Thread Elias M. Mariani
Great explanation,
Thanks.
Elias.

2018-05-24 15:59 GMT-03:00 Sebastian Benoit :
> Elias M. Mariani(marianiel...@gmail.com) on 2018.05.24 15:45:15 -0300:
>> Thanks Sebastian for the reply,
>> I do follow source-changes, just that I don't understand if it's
>> common for a library to have 2 version numbers.
>
> There is the old version number(s) and the newest one.
> If you check your /usr/lib and /usr/local/lib you will find
> multiple versions of the same library.
>
> (The old ones are no longer needed when all software that was build agains
> them has been updated.)
>
>> Or if the ports/snapshots system is made with some inner logic to
>> avoid this kind of conflict.
>
> When you build software, its linked agains the newest version of the lib
> thats available on your system.
>
> Base system snapshots (including xenocara) and packages are not build
> at the same time. Package builds use the latest snapshot, but since
> building packages takes a day or so (depending on the arcitecture and
> build machines available) and distribution of the packages to the mirrors
> also tkes time, there is a time lag between the newer version of a base
> library available and the package that uses it being available.
>
> Add to that that you (as user) probably do not catch every library bump of
> base system libries when updating your machine, you can get into the
> situation that base has a newer lib than what a package needs, but the older
> lib that the package needs is newer than the old version thats still on
> your system because you skipped that.
>
> The "problem" (it's not if you know what you are doing) could be solved by
> making sure package builds and base are always in sync. But we do not want
> to do that because it slows down development.
>
>> I mean, the ports did not install the library, that means that one of
>> the packages of x did it.
>> Cheers.
>> Elias.
>>
>> 2018-05-24 15:26 GMT-03:00 Sebastian Benoit :
>> > Elias M. Mariani(marianiel...@gmail.com) on 2018.05.24 14:22:35 -0300:
>> >> Hi,
>> >> I noticed just now a couple of errors after updating from
>> >> snapshots/amd64 (22/05) and updating the packages with pkg_add -u
>> >> (24/05) indicating a mismatch in some library, I think it was
>> >> libfreetype.so.28.2 vs 29.0 or something like that.
>> >> I have both in /usr/X11R6/lib/.
>> >> I'm not familiar with the correlation between snapshots and ports. And
>> >> less about C libraries...
>> >
>> > matthieu@ updated xeoncara stuff on the 22nd.
>> >
>> > Either your snapshot does not have the updates yet, but the packages you 
>> > try
>> > to install have been build with the new library, or you have the new X
>> > libraries, but the snaps lag a bit behind. Probably the later.
>> >
>> > Wait for a day and try pkg_add again, and/or update to a newer snapshot 
>> > too.
>> >
>> > If you run current, you should follow source-changes
>> > (http://www.openbsd.org/mail.html), otherwise you might run into problems
>> > like this. Of course it also requires understanding the commit and its
>> > possible impact.
>>
>
> --



Re: build and ports mismatching ?

2018-05-24 Thread Sebastian Benoit
Elias M. Mariani(marianiel...@gmail.com) on 2018.05.24 15:45:15 -0300:
> Thanks Sebastian for the reply,
> I do follow source-changes, just that I don't understand if it's
> common for a library to have 2 version numbers.

There is the old version number(s) and the newest one.
If you check your /usr/lib and /usr/local/lib you will find
multiple versions of the same library.

(The old ones are no longer needed when all software that was build agains
them has been updated.)

> Or if the ports/snapshots system is made with some inner logic to
> avoid this kind of conflict.

When you build software, its linked agains the newest version of the lib
thats available on your system.

Base system snapshots (including xenocara) and packages are not build
at the same time. Package builds use the latest snapshot, but since
building packages takes a day or so (depending on the arcitecture and
build machines available) and distribution of the packages to the mirrors
also tkes time, there is a time lag between the newer version of a base
library available and the package that uses it being available.

Add to that that you (as user) probably do not catch every library bump of
base system libries when updating your machine, you can get into the
situation that base has a newer lib than what a package needs, but the older
lib that the package needs is newer than the old version thats still on
your system because you skipped that.

The "problem" (it's not if you know what you are doing) could be solved by
making sure package builds and base are always in sync. But we do not want
to do that because it slows down development.

> I mean, the ports did not install the library, that means that one of
> the packages of x did it.
> Cheers.
> Elias.
> 
> 2018-05-24 15:26 GMT-03:00 Sebastian Benoit :
> > Elias M. Mariani(marianiel...@gmail.com) on 2018.05.24 14:22:35 -0300:
> >> Hi,
> >> I noticed just now a couple of errors after updating from
> >> snapshots/amd64 (22/05) and updating the packages with pkg_add -u
> >> (24/05) indicating a mismatch in some library, I think it was
> >> libfreetype.so.28.2 vs 29.0 or something like that.
> >> I have both in /usr/X11R6/lib/.
> >> I'm not familiar with the correlation between snapshots and ports. And
> >> less about C libraries...
> >
> > matthieu@ updated xeoncara stuff on the 22nd.
> >
> > Either your snapshot does not have the updates yet, but the packages you try
> > to install have been build with the new library, or you have the new X
> > libraries, but the snaps lag a bit behind. Probably the later.
> >
> > Wait for a day and try pkg_add again, and/or update to a newer snapshot too.
> >
> > If you run current, you should follow source-changes
> > (http://www.openbsd.org/mail.html), otherwise you might run into problems
> > like this. Of course it also requires understanding the commit and its
> > possible impact.
> 

-- 



Re: build and ports mismatching ?

2018-05-24 Thread Elias M. Mariani
Thanks Sebastian for the reply,
I do follow source-changes, just that I don't understand if it's
common for a library to have 2 version numbers.
Or if the ports/snapshots system is made with some inner logic to
avoid this kind of conflict.
I mean, the ports did not install the library, that means that one of
the packages of x did it.
Cheers.
Elias.

2018-05-24 15:26 GMT-03:00 Sebastian Benoit :
> Elias M. Mariani(marianiel...@gmail.com) on 2018.05.24 14:22:35 -0300:
>> Hi,
>> I noticed just now a couple of errors after updating from
>> snapshots/amd64 (22/05) and updating the packages with pkg_add -u
>> (24/05) indicating a mismatch in some library, I think it was
>> libfreetype.so.28.2 vs 29.0 or something like that.
>> I have both in /usr/X11R6/lib/.
>> I'm not familiar with the correlation between snapshots and ports. And
>> less about C libraries...
>
> matthieu@ updated xeoncara stuff on the 22nd.
>
> Either your snapshot does not have the updates yet, but the packages you try
> to install have been build with the new library, or you have the new X
> libraries, but the snaps lag a bit behind. Probably the later.
>
> Wait for a day and try pkg_add again, and/or update to a newer snapshot too.
>
> If you run current, you should follow source-changes
> (http://www.openbsd.org/mail.html), otherwise you might run into problems
> like this. Of course it also requires understanding the commit and its
> possible impact.



Re: build and ports mismatching ?

2018-05-24 Thread Sebastian Benoit
Elias M. Mariani(marianiel...@gmail.com) on 2018.05.24 14:22:35 -0300:
> Hi,
> I noticed just now a couple of errors after updating from
> snapshots/amd64 (22/05) and updating the packages with pkg_add -u
> (24/05) indicating a mismatch in some library, I think it was
> libfreetype.so.28.2 vs 29.0 or something like that.
> I have both in /usr/X11R6/lib/.
> I'm not familiar with the correlation between snapshots and ports. And
> less about C libraries...

matthieu@ updated xeoncara stuff on the 22nd.

Either your snapshot does not have the updates yet, but the packages you try
to install have been build with the new library, or you have the new X
libraries, but the snaps lag a bit behind. Probably the later.

Wait for a day and try pkg_add again, and/or update to a newer snapshot too.

If you run current, you should follow source-changes
(http://www.openbsd.org/mail.html), otherwise you might run into problems
like this. Of course it also requires understanding the commit and its
possible impact.