1 |
On Mon, Jan 13, 2014, Alexander Berntsen wrote: |
2 |
> > Updating both in parallel isn't hard: once pkgcore is up to EAPI-5, |
3 |
> > EAPI-6 isn't that much work (mostly bash afair.) |
4 |
> If it is trivial: show us the code. |
5 |
|
6 |
Ah that old canard. Tell you what: I hereby undertake to deliver |
7 |
everything currently listed at [1] for pkgcore, once radhermit has |
8 |
declared he's done on his round of work with pkgcore internals and |
9 |
it's up to EAPI-5, as tested against ebuilds, ferringb has approved it, |
10 |
and its portage formatter is good enough for update[2] to use it again, |
11 |
on EAPI-5 ebuilds. |
12 |
|
13 |
Sorry the latter is why I care, and I've always pushed for it, so |
14 |
whether that annoys anyone else is not my problem. I will be involved |
15 |
in testing that aspect, obviously, and may need to patch update for |
16 |
other interactions with pmerge, so that will come first. |
17 |
|
18 |
I will deliver that within a calendar month, or 30 days, of the above |
19 |
happening, for QA and acceptance-testing, unless ferringb, radhermit |
20 |
or dol-sen veto it, preferably in #pkgcore but see disclaimer at end. |
21 |
|
22 |
To avoid confusion, in case more is added, I'll list them, so you can |
23 |
hold me to my word later: |
24 |
|
25 |
bash 4.2 #431340 |
26 |
nonfatal die #451938 -- truly lame to do this via a new func, imo |
27 |
reads like working round the PMS, which /is/ insane. static libs in |
28 |
/usr is nothing on that, when you think about it. |
29 |
get_libdir #463586 Used in econf, but so far not available as |
30 |
separate PM function |
31 |
Doc install function (edocs) #459692 |
32 |
Allow DOCS="" #463736 |
33 |
Directory support for DOCS #481980 |
34 |
Query function for IUSE #449862 |
35 |
in addition, query IUSE_EFFECTIVE -- from [3] this is what should |
36 |
be queried? |
37 |
PATCHES support in default src_prepare #463692 |
38 |
Unpack .txz #458102 |
39 |
Case-fold extensions in unpack #476730 |
40 |
unpack() accept absolute paths #483244 |
41 |
epatch_user - a sane implementation as we discussed 2 years ago or so |
42 |
Source eclasses only once #422533 -- amended at [4] |
43 |
EJOBS #273101 - emake integration -- for other languages or build- |
44 |
systems, the eclasses would have to handle it. They are not part |
45 |
of the PM/ebuild.sh, so out of scope. (There is a qm as to whether |
46 |
this is still desired 4 years later.) |
47 |
|
48 |
non-bash, but i'll provide support script as and if req'd: |
49 |
HDEPEND #317337 -- CHOST dependencies req at build-time (yaf way |
50 |
of adding a borked LDEPEND if you ask me, but w/e.) |
51 |
|
52 |
I won't do failglob (#463822) as it will make everyone's life a lot |
53 |
harder in the long run, and turn off anyone who actually has real BASH |
54 |
experience. AFAIC we want them in the same way as we want expert |
55 |
pythonistas. I'll happily add Kent's idea though, at least for this |
56 |
setting; he's a guy you should all listen to a lot more, imnsho. |
57 |
|
58 |
I'd do it like this: |
59 |
failglob will apply to the function it appears in, and any callee |
60 |
functions, and must be paired with reglob (or w/e) to restore, which |
61 |
will also restore a nullglob invocation. (reglob must be called |
62 |
on all return paths before function return, if you're doing something |
63 |
complex. Most functions won't be though, ime.) |
64 |
|
65 |
If ferringb and radhermit are ok with it, I'll implement it. If not, |
66 |
it'll be trivial to import the crappy version from portage. |
67 |
|
68 |
> > At that point, put portage into feature-freeze, and only bugfix it. |
69 |
> > Call a hiatus on new EAPIs for 6 months and put all effort into |
70 |
> > making damn sure pkgcore is a drop-in replacement. |
71 |
> I don't see this happening as it stands right now. Let's revisit this |
72 |
> when pkgcore is more up to date. |
73 |
|
74 |
Yes, "at that point". |
75 |
|
76 |
Now you may think I'm talking before I can implement, what I accused |
77 |
someone else of; feel free to. Those are mostly trivial to a BASH |
78 |
scripter, and I write (and throw away) more complex things practically |
79 |
every day. |
80 |
|
81 |
See [2] if you need verification, though it's not a work-project any |
82 |
more, and was never meant to be when I started it as a training |
83 |
assignment. We do use it at work though, so I get to maintain it. |
84 |
|
85 |
And there is no way we could have done the ABI /etc/warning stuff, if |
86 |
we hadn't had pkgcore to test resolves with. portage was just too slow, |
87 |
when we were paired and needed to flow, to implement quite major |
88 |
stuff in hindsight; ferringb even mentioned a need for exactly that |
89 |
sort of mechanism in Gentoo, on the list last feb/mar i think it was, |
90 |
when I was on hiatus. I remember being annoyed I'd missed the |
91 |
discussion when I got back to FLOSS stuff. |
92 |
|
93 |
Porcelain and plumbing. |
94 |
|
95 |
Feel free to step up and pitch in too. The more the merrier, and the |
96 |
lighter the load. Note there are queries on some of the above, and |
97 |
no clear definition of what EAPI 6 is yet. So once you've made your |
98 |
minds up about that, then you can start asking for your users to |
99 |
implement it, I'd think. After all, devs are users too, and we've |
100 |
all got other things to do. |
101 |
|
102 |
TTFN, |
103 |
steveL. |
104 |
|
105 |
Disclaimer: I don't speak for pkgcore, or any of the people mentioned, |
106 |
nor have I discussed any of this with them, so it's their call, now or |
107 |
when they get to that stage. I'm just answering the "put your code where |
108 |
your mouth is" point. |
109 |
|
110 |
I did that several years ago with ebuild.sh but it only ended in being |
111 |
told that the rewrite I was asked to step up with, should be a series |
112 |
of patches, for "policy" reasons, so I gave up in disgust (the whole |
113 |
point of a rewrite is a clean codebase that does the same thing, which |
114 |
is what tests are for.) Life's way too short, for contributing to a |
115 |
project that's going to do that to my time. *shrug* you live and learn. |
116 |
|
117 |
[1] http://wiki.gentoo.org/wiki/Future_EAPI/EAPI_6_tentative_features |
118 |
[2] http://weaver.gentooexperimental.org/update.html |
119 |
yes i know it should be split into more files; a) I wanted to see |
120 |
when bash would blow up on my old 32-bit install, and b) I just |
121 |
want it to work ;) and have other things to do. |
122 |
[3] http://www.gossamer-threads.com/lists/gentoo/dev/260812#260812 |
123 |
[4] http://marc.info/?l=gentoo-dev&m=134493783816587&w=2 |
124 |
-- |
125 |
"Daddy, Mommy: what did you do in the Eco-Wars?" |