1 |
Hola. |
2 |
|
3 |
Attached is a patch that |
4 |
A) adds EAPI awareness to portage; mainly, if >0, complain and be |
5 |
unwilling to merge the package |
6 |
B) tweaks to portage_db_flat, addition of portage_db_metadata, and |
7 |
portage_db_flat_hash |
8 |
|
9 |
Flat_hash is the replacement cache format for metadata/cache; assuming |
10 |
nobody does anything stupid with EAPI, it will allow us to deploy new |
11 |
metadata in the tree without forcing a breakage every time we do so. |
12 |
|
13 |
portage_db_metadata.py is a compability implementation; basically |
14 |
detects if it's flat_list (portage_db_flat), or flat_hash and calls |
15 |
accordingly. |
16 |
|
17 |
Aside from that, tried to keep changes as minimal as possible. The |
18 |
patch isn't complete due to the fact we need to add an EAPI cache |
19 |
compatibility check for --metadata transfer, but can't do that till I |
20 |
get some feedback from -dev ml regarding a bit of tree cleanup that |
21 |
will go along with it. |
22 |
|
23 |
Please test this out; if you want to test the EAPI checking, tag |
24 |
EAPI=1 into an ebuild, and try making emerge bail. |
25 |
|
26 |
If you're less adventurous, please test the compatibility cache |
27 |
testing; |
28 |
in /etc/portage/modules |
29 |
portdbapi.metadbmodule=portage_db_metadata.database |
30 |
|
31 |
Will enable the autodetection. Additionally, |
32 |
portdbapi.auxdbmodule=portage_db_flat_hash.database |
33 |
|
34 |
being flipped on would be appreciated, although you will have to wipe |
35 |
your cache and run emerge --metadata; with the settings above, you're |
36 |
testing the auto-detect functionality, and the new format. |
37 |
|
38 |
Thanks, |
39 |
~harring |