On Wed, 2002-11-13 at 09:18, Max Bowsher wrote: > I've been digging around in setup hunting for the 'erroneous use of prev > versions' bug. It seems to be due to the fact that in processOneDependency > in package_version.cc, the first satisfactory version from the versions set > is chosen.
Thanks, that was it, and I've fixed it. The rest of the email is skippable for non-setup hackers. > Since packageversion doesn't expose its trust level, and > PackageSpecifications know nothing about trust levels, fixing this requires > an architectural descision. Well, PackageSpecifications are for versioning requirements, whereas trusts are administratively set based on confidence of package quality/stability. For instance you might have a local package that *needs* squid-3.0-PRE5 which is experimental, and thus you want to pull that in regardless of the published trust. To get a trust level, you query the package meta data, not a specific verison. Specific versions shouldn't know about their trust level, because it changes all the time. Package metadata knows about trusts. So this: packageversion trusted = mypackagemetadata->trustp(sometrustlevel); returns a packageversion that matches or exceeds sometrustlevel, according to the trust selection heuristics. > Robert, hope this helps. It did, thanks. Rob -- --- GPG key available at: http://users.bigpond.net.au/robertc/keys.txt. --- -- --- GPG key available at: http://users.bigpond.net.au/robertc/keys.txt. ---
signature.asc
Description: This is a digitally signed message part
signature.asc
Description: This is a digitally signed message part