Gentoo Archives: gentoo-portage-dev

From: Ned Ludd <solar@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] qfile assumes category names contain a hyphen
Date: Tue, 17 Mar 2009 17:00:01
Message-Id: 1237309198.12176.8.camel@hangover
In Reply to: Re: [gentoo-portage-dev] qfile assumes category names contain a hyphen by Mike Frysinger
1 On Mon, 2009-03-16 at 19:45 -0400, Mike Frysinger wrote:
2 > On Monday 16 March 2009 18:49:04 Ned Ludd wrote:
3 > > On Mon, 2009-03-16 at 17:05 -0400, Mike Frysinger wrote:
4 > > > On Monday 16 March 2009 14:35:15 Ned Ludd wrote:
5 > > > > On Mon, 2009-03-16 at 18:34 +0200, Amit Dor-Shifer wrote:
6 > > > > > Hi all.
7 > > > > >
8 > > > > > While working on my overlay, I stumbled on an issue where qfile
9 > > > > > refused to acknowledge an installed file as being part of my package.
10 > > > > >
11 > > > > > Looking into q's implementation (portage-utils-0.1.29), I see:
12 > > > > >
13 > > > > > amit0 portage-utils-0.1.29 # grep -A 2 next_entry
14 > > > > > ./libq/vdb_get_next_dir.c next_entry:
15 > > > > > ret = readdir(dir);
16 > > > > > if (ret == NULL) {
17 > > > > > --
18 > > > > > goto next_entry;
19 > > > > > if (strchr(ret->d_name, '-') == NULL)
20 > > > > > if ((strcmp(ret->d_name, "virtual")) != 0)
21 > > > > > goto next_entry;
22 > > > > >
23 > > > > > I encountered this since I used a new category, which only contained
24 > > > > > a single word. Adding a hyphen and a 2nd token solved my issue, and
25 > > > > > now qfile knows the file's association.
26 > > > > >
27 > > > > > Is this assumption, that category should be "stringA-stringB"
28 > > > > > documented somewhere?
29 > > > >
30 > > > > We made that assumption for portage-utils as they can be used on a
31 > > > > device which has no $PORTDIR at all. So when there is no categories
32 > > > > file that exists we fell back to the rules that have been working well
33 > > > > for the past %d years.
34 > > > >
35 > > > > We changed that behavior however a while ago. I thought this was in the
36 > > > > tree. But I guess not if you are hitting it.
37 > > > >
38 > > > > http://sources.gentoo.org/viewcvs.py/gentoo-projects/portage-utils/libq
39 > > > >/vdb _get_next_dir.c?r1=1.2&r2=1.3
40 > > >
41 > > > we should do a new release already
42 > >
43 > > Why yes.. Yes you should :)
44 >
45 > if you dont do it before me, i'll probably try and do it this weekend.
46
47
48
49 I'd prefer it if you could do it this time. (thanks in advance)
50
51 > btw, i
52 > went through the bug reports and saw qcache crashes ... are those still
53 > relevant ?
54 > -mike
55
56 Yeah. tcort was the guy who wrote most of that. He's retired now.
57 I never really looked into it much but I think there are some NULL
58 values he did not check for in the metacache.
59
60 There is also a bug with atom parsing iirc on 32bit platforms. gradm was
61 the test case. Think we need to change from int to long.. Maybe another
62 with -rX parsing.
63
64 --
65 Ned Ludd <solar@g.o>
66 Gentoo Linux

Replies