Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 703348 - sys-apps/portage: suggest users -with-test-deps workaround when a test circular dep issue is detected, and handle test deps like PDEPEND
Summary: sys-apps/portage: suggest users -with-test-deps workaround when a test circul...
Status: CONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - External Interaction (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 912975
  Show dependency tree
 
Reported: 2019-12-19 08:53 UTC by Pacho Ramos
Modified: 2023-08-24 20:24 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pacho Ramos gentoo-dev 2019-12-19 08:53:29 UTC
As I read in bug #697914 and bug #517658#c15 , relying on --with-test-deps as a way to deal with test related circular deps issue is a common way to go. Sadly I wasn't aware of that, and I think that many users won't know about that either.

Portage currently suggests to disable USE flag for some packages when this circular dep issue is found, could it also suggest the use of --with-test-deps?

Thanks a lot
Comment 2 Larry the Git Cow gentoo-dev 2019-12-23 22:47:48 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/proj/portage.git/commit/?id=85f0dd173ab75bcc39c3616b5a3a967bdc88cf73

commit 85f0dd173ab75bcc39c3616b5a3a967bdc88cf73
Author:     Zac Medico <zmedico@gentoo.org>
AuthorDate: 2019-12-20 06:58:58 +0000
Commit:     Zac Medico <zmedico@gentoo.org>
CommitDate: 2019-12-23 22:23:15 +0000

    emerge --with-test-deps: allow circular deps
    
    When USE=test is not enabled, allow circular test dependencies
    by treating them like PDEPEND. When USE=test is enabled, circular
    dependencies are still not allowed, as shown in unit tests.
    
    Suggested-by: Michał Górny <mgorny@gentoo.org>
    Bug: https://bugs.gentoo.org/703348
    Signed-off-by: Zac Medico <zmedico@gentoo.org>

 lib/_emerge/depgraph.py                           | 19 ++++--
 lib/portage/dep/__init__.py                       | 44 +++++++++++++-
 lib/portage/tests/dep/test_use_reduce.py          | 72 ++++++++++++++++++++++-
 lib/portage/tests/resolver/test_with_test_deps.py | 39 +++++++++++-
 4 files changed, 166 insertions(+), 8 deletions(-)
Comment 3 Pacho Ramos gentoo-dev 2019-12-23 23:00:05 UTC
Thanks a lot
Comment 4 Zac Medico gentoo-dev 2019-12-23 23:05:01 UTC
In the same location we can in include a hint about disabling FEATURES=test, as suggested in bug 416871.
Comment 5 Larry the Git Cow gentoo-dev 2019-12-24 00:57:57 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39293f8a4667fce2112792953dbc16f69b9fcb66

commit 39293f8a4667fce2112792953dbc16f69b9fcb66
Author:     Zac Medico <zmedico@gentoo.org>
AuthorDate: 2019-12-24 00:52:27 +0000
Commit:     Zac Medico <zmedico@gentoo.org>
CommitDate: 2019-12-24 00:57:38 +0000

    sys-apps/portage: Bump to version 2.3.83
    
     #384107 adjust || preference to break dependency cycles,
             which solves bug 382421 and bug 703440
     #703348 emerge --with-test-deps: allow circular deps
    
    Bug: https://bugs.gentoo.org/701268
    Bug: https://bugs.gentoo.org/382421
    Bug: https://bugs.gentoo.org/384107
    Bug: https://bugs.gentoo.org/703440
    Bug: https://bugs.gentoo.org/703348
    Package-Manager: Portage-2.3.83, Repoman-2.3.20
    Signed-off-by: Zac Medico <zmedico@gentoo.org>

 sys-apps/portage/Manifest              |   1 +
 sys-apps/portage/portage-2.3.83.ebuild | 276 +++++++++++++++++++++++++++++++++
 2 files changed, 277 insertions(+)
Comment 6 Pacho Ramos gentoo-dev 2019-12-27 19:21:16 UTC
(In reply to Larry the Git Cow from comment #2)
> The bug has been referenced in the following commit(s):
> 
> https://gitweb.gentoo.org/proj/portage.git/commit/
> ?id=85f0dd173ab75bcc39c3616b5a3a967bdc88cf73
> 
> commit 85f0dd173ab75bcc39c3616b5a3a967bdc88cf73
> Author:     Zac Medico <zmedico@gentoo.org>
> AuthorDate: 2019-12-20 06:58:58 +0000
> Commit:     Zac Medico <zmedico@gentoo.org>
> CommitDate: 2019-12-23 22:23:15 +0000
> 
>     emerge --with-test-deps: allow circular deps
>     
>     When USE=test is not enabled, allow circular test dependencies
>     by treating them like PDEPEND. When USE=test is enabled, circular
>     dependencies are still not allowed, as shown in unit tests.
>     

Could it also allow circular deps when USE=test *AND* FEATURES="-test" ? Otherwise I need to rebuild monsters as webkit-gtk two times :/

For example when updating I usually have FEATURES=-test but I keep USE enabled to allow me to enable FEATURES=test when I want to run tests (for example when testing a package I am going to commit) without needing to rebuild half of the system 

Thanks
Comment 7 Zac Medico gentoo-dev 2019-12-27 20:40:19 UTC
(In reply to Pacho Ramos from comment #6)
> Could it also allow circular deps when USE=test *AND* FEATURES="-test" ?
> Otherwise I need to rebuild monsters as webkit-gtk two times :/

See reply in bug 517658, comment 21.