[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [patch] EDSP 0.5 w/ multi-arch support for external solvers



On Sun, May 04, 2014 at 09:50:01PM +0200, Stefano Zacchiroli wrote:
> On Wed, Jan 15, 2014 at 02:57:01PM +0100, David Kalnischkies wrote:
> > (picking up were I left nearly a month ago… sorry again)
> 
> Tell me about it...  My apologies for the delay as well. Let's just hope
> we can make the next freeze with these changes :-))

We really should not hurry to action here ;) , but after telling myself
that I would merge & fixup for a few weeks now (before your last mail),
I just did it today and should therefore also find its way into apt
proper in a few months… or maybe a bit quicker…

>   http://git.upsilon.cc/?p=apt.git;a=shortlog;h=refs/heads/zack/edsp-0.5-no-cmdline

So, for the record: This one I have merged with and did assorted fixes
for EDSP on top of that. Didn't had the time to work on implementing
pinning support for the external resolver 'apt' now through (– I have
some hopes that the new APT-Release field could help a bit with it).
[Not that anyone would really care about this toy anyway]


> > > > and the documentation should be check for sentences suggesting that
> > > > the package name alone is an identifier. The doc for APT-Candidate
> > > > e.g.  sounds a bit like it.
> > 
> > > Maybe you can show me how would you change the documentation for
> > > APT-Candidate? Once I get what you mean here, I'll be happy to reread
> > > the protocol documentation and propagate the change wherever is needed.
> > 
> > Sure. APT-Candidate doc says "When set to `yes`, the corresponding
> > package is the APT candidate for installation among all available
> > packages with the same name." which isn't true in Multi-Arch world as
> > libfoo:i386 and libfoo:amd64 can have different candidates (usually
> > with undesired consequences), but have the same name.
> 
> I've looked into this and I can easily fix that specific occurrence by
> just referring to "name:architecture" identifiers, but I think it'd be
> best to generalize that notion as "EDSP package identifier", or
> something, and adapt the rest of the EDSP documentation to match.
> 
> To do so I could use some help though:
> 
> - is there a proper term for "architecture qualified" packages in APT,
>   which I could use to talk about "package:arch" strings without
>   introducing new terminology?

Not really. APT terminology is a bit different for historical reasons
compared to what "normal" people would expect. For us, a package has a
name and an architecture ('PkgIterator'), if we refer to all packages
with the same name we use 'GrpIterator' (I should have used something
else, as Group really doesn't fit that well. In comments I tend to use
sibling, although mostly referring to M-A:same packages then…).


> - can I assume that all package "names" that APT passes to EDSP are
>   actually arch-qualified? In particular, can I assume that "Install:"
>   fields will always come with arch attached? How about "Upgrade:" and
>   "Remove:"? They do in my tests, but they have been by no means
>   exhaustive.

I presume you mean Install/Remove field in Request stanza
(Upgrade is a yes/no field). If so, yes: FullName() is used in
EDSP::WriteRequest(…) which always does "pkg:arch".


Best regards

David Kalnischkies

Attachment: signature.asc
Description: Digital signature


Reply to: