Pantek Library
Hosting Provided By
CybrHost
High Speed Hosting

Re: [gentoo-user] portage inconsistency?

From: Abraham Marín Pérez <tecnic5(at)silvanoc.com>
Date: Mon Aug 06 2007 - 04:45:25 EDT


Bo Ørsted Andresen escribió:
> On Tuesday 17 July 2007 00:46:08 maxim wexler wrote:
>
>> So, emerge portage results in one package being
>> installed, portage, 61kb.
>>
>> emerge -u portage lines up 5 or 6 packages plus
>> portage, 18Mb.
>>
>> Went ahead and just did the one package, figuring
>> later I could do an emerge -u for the rest of it.
>>
>> But this is what happens:
>>
>> heathen@localhost ~ $ emerge -pv portage
>>
>> These are the packages that would be merged, in order:
>>
>> Calculating dependencies... done!
>> [ebuild R ] sys-apps/portage-2.1.2.9 USE="-build
>> -doc -epydoc (-selinux)" LINGUAS="-pl" 0 kB
>>
>> Total: 1 package (1 reinstall), Size of downloads: 0
>> kB
>>
>> What I expected.
>>
>> heathen@localhost ~ $ emerge -puv portage
>>
>> These are the packages that would be merged, in order:
>>
>> Calculating dependencies... done!
>>
>> Total: 0 packages, Size of downloads: 0 kB
>>
>> So why doesn't it list the upgrade part now?
>>
>
> Because --update stops calculating deps when none of the specified targets
> need updating. Only --deep checks the consistency of all dependencies even
> when none of the targets need updating. You could argue it's a deficiency in
> portage (although well-known)..
>
>

It may sound a bit off-topic, but there is (at least) one very good reason for portage behaving this way, just think of the following scenario:

We have installed an application called APP (yes, very smart name) and this application depends on a dynamic library called LIB (yet smarter name). At installation APP was in version 1.0 and LIB in version 2.0.

Now think there's a new version available of LIB, let's say version 2.1, but the latest version of APP is still 1.0. If portage performed a deep update by default LIB would be rebuilt, but no APP, what would cause broken dependencies on APP (remember LIB is a dynamic library). However, is you don't update LIB unless you update also APP you will prevent this problem*.

Just my 0.02 ;-)

Abraham

  • Needless to say, the problem will still arise if two applications depend on the same dynamic library, which is a common case, and only one of them is updated, but still it's an improvement.
-- 
gentoo-user@gentoo.org mailing list
Received on Mon Aug 6 04:46:49 2007

This archive was generated by hypermail 2.1.8 : Fri Sep 14 2007 - 10:09:11 EDT


Contact Us  Legal Notices  Order Services Online 
Pantek Home  Privacy Policy  IT news  Site Map  Pantek Library