Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Gentoo Alt (http://www.linux-archive.org/gentoo-alt/)
-   -   RFC: changing sys-apps/portage python API to use $EROOT instead of $ROOT for keys to portage.db and similar map objects (http://www.linux-archive.org/gentoo-alt/582446-rfc-changing-sys-apps-portage-python-api-use-eroot-instead-root-keys-portage-db-similar-map-objects.html)

Zac Medico 10-01-2011 09:56 PM

RFC: changing sys-apps/portage python API to use $EROOT instead of $ROOT for keys to portage.db and similar map objects
 
On 10/01/2011 11:27 AM, Fabian Groffen wrote:
> Hi Zac,
>
> On 01-10-2011 10:34:02 -0700, Zac Medico wrote:
>> As I integrate prefix support into mainline portage, I think it will
>
> Cool! and Thanks!
>
>> make more sense to use $EROOT instead of $ROOT for keys to portage.db
>> and similar map objects. This will also affect the portageq commands
>> which take a <root> parameter. The reason that I think $EROOT makes more
>> sense for these keys is that it will allow for multiple prefixes to
>> exist simultaneously in maps like portage.db.
>>
>> This won't affect non-prefix users, since $EROOT == $ROOT when $EPREFIX
>> is empty. So, I'm asking here because if might affect prefix users who
>> use portageq, or any programs installed in a prefix that use the
>> sys-apps/portage python API. If necessary, I suppose that python
>> programs could have some compatibility code which checks whether or no
>> $EROOT is contained in portage.db, and fall back to "/" otherwise.
>
> What does it actually mean? Does one have to use
> portageq envvar CHOST $EPREFIX/
> instead when this is implemented?
> That would seem not correct to me.

Well, it wouldn't apply to portageq's envvar command, since that doesn't
have a <root> argument. These are the portageq commands that would be
affected:

all_best_visible <root>
best_version <root> <category/package>
best_visible <root> [pkgtype] <atom>
contents <root> <category/package>
expand_virtual <root> <atom>
filter_protected <root>
get_repo_path <root> <repo_id>+
get_repos <root>
has_version <root> <category/package>
is_protected <root> <filename>
list_preserved_libs <root>
mass_best_version <root> [<category/package>]+
mass_best_visible <root> [<category/package>]+
match <root> <atom>
metadata <root> <pkgtype> <category/package> [<key>]+
owners <root> [<filename>]+

--
Thanks,
Zac

Zac Medico 10-25-2011 09:06 AM

RFC: changing sys-apps/portage python API to use $EROOT instead of $ROOT for keys to portage.db and similar map objects
 
On 10/01/2011 10:34 AM, Zac Medico wrote:
> Hi,
>
> As I integrate prefix support into mainline portage, I think it will
> make more sense to use $EROOT instead of $ROOT for keys to portage.db
> and similar map objects. This will also affect the portageq commands
> which take a <root> parameter. The reason that I think $EROOT makes more
> sense for these keys is that it will allow for multiple prefixes to
> exist simultaneously in maps like portage.db.
>
> This won't affect non-prefix users, since $EROOT == $ROOT when $EPREFIX
> is empty. So, I'm asking here because if might affect prefix users who
> use portageq, or any programs installed in a prefix that use the
> sys-apps/portage python API. If necessary, I suppose that python
> programs could have some compatibility code which checks whether or no
> $EROOT is contained in portage.db, and fall back to "/" otherwise.

Here's the commit to watch out for if/when it gets merged into the
prefix branch:

http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=a715b65f7bd36409c1283e69112 65d1f4405ab7a
--
Thanks,
Zac

Zac Medico 12-09-2011 06:18 PM

RFC: changing sys-apps/portage python API to use $EROOT instead of $ROOT for keys to portage.db and similar map objects
 
This is a multi-part message in MIME format.On 10/25/2011 02:06 AM, Zac Medico wrote:
> On 10/01/2011 10:34 AM, Zac Medico wrote:
>> Hi,
>>
>> As I integrate prefix support into mainline portage, I think it will
>> make more sense to use $EROOT instead of $ROOT for keys to portage.db
>> and similar map objects. This will also affect the portageq commands
>> which take a <root> parameter. The reason that I think $EROOT makes more
>> sense for these keys is that it will allow for multiple prefixes to
>> exist simultaneously in maps like portage.db.
>>
>> This won't affect non-prefix users, since $EROOT == $ROOT when $EPREFIX
>> is empty. So, I'm asking here because if might affect prefix users who
>> use portageq, or any programs installed in a prefix that use the
>> sys-apps/portage python API. If necessary, I suppose that python
>> programs could have some compatibility code which checks whether or no
>> $EROOT is contained in portage.db, and fall back to "/" otherwise.
>
> Here's the commit to watch out for if/when it gets merged into the
> prefix branch:
>
> http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=a715b65f7bd36409c1283e69112 65d1f4405ab7a

This change has hit in prefix portage-2.2.01.19833. The only problem
that I've noticed so far is that `eselect news` doesn't find news items.
I've attached a patch for eselect in order to fix this. The following
commit will also have to be applied to prefix portage-2.2.01.19833 in
order to make this work correctly:

http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=174ffd8336ec9914f85f871b7ce 78506574d3d9b
--
Thanks,
Zac

Fabian Groffen 12-09-2011 06:22 PM

RFC: changing sys-apps/portage python API to use $EROOT instead of $ROOT for keys to portage.db and similar map objects
 
On 09-12-2011 11:18:33 -0800, Zac Medico wrote:
> > Here's the commit to watch out for if/when it gets merged into the
> > prefix branch:
> >
> > http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=a715b65f7bd36409c1283e69112 65d1f4405ab7a
>
> This change has hit in prefix portage-2.2.01.19833. The only problem
> that I've noticed so far is that `eselect news` doesn't find news items.
> I've attached a patch for eselect in order to fix this. The following
> commit will also have to be applied to prefix portage-2.2.01.19833 in
> order to make this work correctly:
>
> http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=174ffd8336ec9914f85f871b7ce 78506574d3d9b

Thanks! Is there a bug against eselect for this? Prefix has no local
copy of eselect.


--
Fabian Groffen
Gentoo on a different level

Zac Medico 12-09-2011 07:14 PM

RFC: changing sys-apps/portage python API to use $EROOT instead of $ROOT for keys to portage.db and similar map objects
 
On 12/09/2011 11:22 AM, Fabian Groffen wrote:
> On 09-12-2011 11:18:33 -0800, Zac Medico wrote:
>>> Here's the commit to watch out for if/when it gets merged into the
>>> prefix branch:
>>>
>>> http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=a715b65f7bd36409c1283e69112 65d1f4405ab7a
>>
>> This change has hit in prefix portage-2.2.01.19833. The only problem
>> that I've noticed so far is that `eselect news` doesn't find news items.
>> I've attached a patch for eselect in order to fix this. The following
>> commit will also have to be applied to prefix portage-2.2.01.19833 in
>> order to make this work correctly:
>>
>> http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=174ffd8336ec9914f85f871b7ce 78506574d3d9b
>
> Thanks! Is there a bug against eselect for this? Prefix has no local
> copy of eselect.

I've filed this bug:

https://bugs.gentoo.org/show_bug.cgi?id=394187
--
Thanks,
Zac


All times are GMT. The time now is 10:10 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.