Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 933741

Summary: net-p2p/nicotine+-3.3.4 fails tests: FAILED test_startup.py::StartupTest::test_gui_startup - AssertionError: False is not true
Product: Gentoo Linux Reporter: Agostino Sarubbo <ago>
Component: Current packagesAssignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed>
Status: RESOLVED FIXED    
Severity: minor CC: gentoo-setan, lg3dx6fd
Priority: Normal Keywords: PullRequest, TESTFAILURE
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/38563
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: build.log.xz
in lzip: in tarball: typical_update_emerge_--sync_emerge_-avtqbUu_@world_--autounmask__--complete-graph=y_.txt emerge_--info.txt /var/tmp/portage/net-p2p/nicotine+-3.3.4/{temp/**,work/**.log} + elog
with -network-sandbox : how_it_was_called.txt emerge_--info.txt /var/tmp/portage/net-p2p/nicotine+-3.3.4/{temp/**,work/**.log} + elog + /etc/portage/**

Description Agostino Sarubbo gentoo-dev 2024-06-07 13:46:37 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: net-p2p/nicotine+-3.3.4 fails tests.
Discovered on: amd64 (internal ref: ci)

Info about the issue:
https://wiki.gentoo.org/wiki/Project:Tinderbox/Common_Issues_Helper#CF0015
Comment 1 Agostino Sarubbo gentoo-dev 2024-06-07 13:46:38 UTC
Created attachment 895308 [details]
build.log.xz

build log and emerge --info (compressed because it exceeds attachment limit, use 'xzless' to read it)
Comment 2 Agostino Sarubbo gentoo-dev 2024-06-07 13:46:39 UTC
Error(s) that match a know pattern in addition to what has been reported in the summary:


E       AssertionError: False is not true
ERROR setuptools_scm._file_finders.git listing git files failed - pretending there aren't any
E               urllib.error.URLError: <urlopen error [Errno -3] Temporary failure in name resolution>
FAILED pynicotine/tests/integration/test_startup.py::StartupTest::test_gui_startup - AssertionError: False is not true
FAILED pynicotine/tests/unit/test_version.py::VersionTest::test_update_check - urllib.error.URLError: <urlopen error [Errno -3] Temporary failure in name resolution>
(org.nicotine_plus.Nicotine:104): Gtk-CRITICAL **: 15:46:01.234: gtk_icon_theme_add_resource_path: assertion 'GTK_IS_ICON_THEME (self)' failed
(org.nicotine_plus.Nicotine:104): Gtk-CRITICAL **: 15:46:01.234: gtk_icon_theme_get_for_display: assertion 'GDK_IS_DISPLAY (display)' failed
pynicotine/tests/integration/test_startup.py::StartupTest::test_gui_startup FAILED [ 3/62]
pynicotine/tests/unit/test_version.py::VersionTest::test_update_check FAILED [41/62]
TypeError: Argument 0 does not allow None as a value
E       socket.gaierror: [Errno -3] Temporary failure in name resolution
Comment 3 gentoo-setan 2024-06-07 14:15:05 UTC
could you please tell me if you are running this under GTK3+ or GTK4?
Comment 4 Agostino Sarubbo gentoo-dev 2024-06-07 14:20:25 UTC
I don't understand your question, the environment does not have a gui
Comment 5 gentoo-setan 2024-06-07 14:30:53 UTC
That explains much.
I have looked at those

(org.nicotine_plus.Nicotine:104): Gtk-CRITICAL **: 15:46:01.234: gtk_icon_theme_add_resource_path: assertion 'GTK_IS_ICON_THEME (self)' failed
(org.nicotine_plus.Nicotine:104): Gtk-CRITICAL **: 15:46:01.234: gtk_icon_theme_get_for_display: assertion 'GDK_IS_DISPLAY (display)' failed
pynicotine/tests/integration/test_startup.py::StartupTest::test_gui_startup FAILED [ 3/62]

And thought that this could be connected somehow.

I have just emerged it with test succeeding on my main rig while offline.
I'll look into that.
Thanks for the report btw.
Comment 6 gentoo-setan 2024-06-19 18:01:24 UTC
The build logs after 5771 suggest thta GUI does not launch.
I thought that might be due to missing broadway USE flag, so I decided to check it.
I am unable to reproduce the bug in a clean desktop nomultilib chroots.

If i launch it with the GUI I get

[2024-06-19 19:53:31] Loading Python 3.12.3
[2024-06-19 19:53:31] Loading Nicotine+ 3.3.4
Unrecognized value "gl-no-fractional". Try GDK_DEBUG=help
[2024-06-19 19:53:32] Loading GTK 4.12.5

(org.nicotine_plus.Nicotine:18769): Gtk-WARNING **: 19:53:32.011: Unknown key gtk-modules in /home/setan/config/gtk-4.0/settings.ini
[2024-06-19 19:53:32] Loading plugin system
[2024-06-19 19:53:32] Loaded plugin Nicotine+ Commands
[2024-06-19 19:53:32] Listening on port: 2234
...

and without it

[2024-06-19 17:52:37] No graphical environment available, using headless (no GUI) mode
[2024-06-19 17:52:37] Loading Python 3.12.3 (main, Jun  9 2024, 17:22:44) [GCC 13.2.1 20240210]
[2024-06-19 17:52:37] Loading Nicotine+ 3.2.9
[2024-06-19 17:52:37] Listening on port: 2234
...

@Agostino Sarubbo
It seems to me like you have an environment variable but not a graphical environment..?

Also are you running the test with good DNS setup?
the "Temporary failure in name resolution" makes me think that it has something to do with the errors.
Comment 7 gentoo-setan 2024-07-02 15:58:46 UTC
@ago@gentoo.org

can you please help me reproduce the bug?
Comment 8 Arniii 2024-07-22 09:15:04 UTC
Created attachment 898101 [details]
in lzip: in tarball: typical_update_emerge_--sync_emerge_-avtqbUu_@world_--autounmask__--complete-graph=y_.txt emerge_--info.txt /var/tmp/portage/net-p2p/nicotine+-3.3.4/{temp/**,work/**.log} + elog

(In reply to gentoo-setan from comment #7)
> @ago@gentoo.org
> 
> can you please help me reproduce the bug?

idk, I could reproduce it + maybe network error, let me check if network error can be solved somehow on my side
Comment 9 Agostino Sarubbo gentoo-dev 2024-07-22 09:24:14 UTC
(In reply to gentoo-setan from comment #6)
> @Agostino Sarubbo
> It seems to me like you have an environment variable but not a graphical
> environment..?
> 
> Also are you running the test with good DNS setup?
> the "Temporary failure in name resolution" makes me think that it has
> something to do with the errors.

This is a chroot that do not have a configuration for running graphical programs.

Afaik, src_test is not supposed to access to the network, so you are running tests without network-sandbox?
Comment 10 Arniii 2024-07-22 09:31:34 UTC
(In reply to Agostino Sarubbo from comment #9)
> (In reply to gentoo-setan from comment #6)
> > @Agostino Sarubbo
> > It seems to me like you have an environment variable but not a graphical
> > environment..?
> > 
> > Also are you running the test with good DNS setup?
> > the "Temporary failure in name resolution" makes me think that it has
> > something to do with the errors.
> 
> This is a chroot that do not have a configuration for running graphical
> programs.
> 
> Afaik, src_test is not supposed to access to the network, so you are running
> tests without network-sandbox?

yep, with FEATURES="-network-sandbox" the test fail with "error in name resolution" passed, though, not the other
Comment 11 Arniii 2024-07-22 09:35:59 UTC
Created attachment 898102 [details]
with -network-sandbox : how_it_was_called.txt emerge_--info.txt /var/tmp/portage/net-p2p/nicotine+-3.3.4/{temp/**,work/**.log} + elog +  /etc/portage/**
Comment 12 Arniii 2024-07-22 09:41:12 UTC
I believe the test with gui-startup should be just skipped, since se usually cannot test gui stuff from console, since we need to start test somehow as a user with opened gui-anything, but `portage` user is not a user that previously typed `startx` or whatever with wayland (for plasma `dbus-launch --exit-with-session startplasma-wayland` without `startx`)
Comment 13 gentoo-setan 2024-07-22 11:36:39 UTC
I assume you mean skipped for this ebuild, not for the upstream.
I disagree -- in my opinion the test should be left in since it fails only in artificial and, for the average user, unlikely circumstances.
I think there can be a link to this bug in the ebuild and that's about it.

Also, could you check if this still happens for the old ebuild?
https://github.com/gentoo/gentoo/commit/4bb76de28fc8ee93bad04df71e84be21d02d1d04#diff-cfe5aba534f67d7e8e0c4ee4e5504a2a07cf8c5e6c5e74f4dd511b78beae8e8f

Also can some more experienced weigh in on this please?
Comment 14 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-07-22 11:38:57 UTC
(In reply to gentoo-setan from comment #13)
> I assume you mean skipped for this ebuild, not for the upstream.
> I disagree -- in my opinion the test should be left in since it fails only
> in artificial and, for the average user, unlikely circumstances.
> I think there can be a link to this bug in the ebuild and that's about it.
> 
> Also, could you check if this still happens for the old ebuild?
> https://github.com/gentoo/gentoo/commit/
> 4bb76de28fc8ee93bad04df71e84be21d02d1d04#diff-
> cfe5aba534f67d7e8e0c4ee4e5504a2a07cf8c5e6c5e74f4dd511b78beae8e8f
> 
> Also can some more experienced weigh in on this please?

* No, we want all tests to pass.
* You should not leave one failing if it's been analysed.
* You should not rely on network access. Network access is denied in ebuilds when sandboxing is enabled. network-sandbox in particular requires root (so "ebuild .. clean test" won't show it unless you do 'sudo ebuild' or whatever).
* virtualx can be used for graphical things often.
Comment 15 gentoo-setan 2024-07-22 11:45:18 UTC
In that case I will need to reproduce and study it.
I have tried chrooting into a amd64 23 desktop & nomultilib profiles with network connectivity and I cannot get the test to fail.
I will try today without network access.
Is there something else that I should try?
Comment 16 Arniii 2024-07-22 11:48:59 UTC
(In reply to gentoo-setan from comment #15)
> In that case I will need to reproduce and study it.
> I have tried chrooting into a amd64 23 desktop & nomultilib profiles with
> network connectivity and I cannot get the test to fail.
> I will try today without network access.
> Is there something else that I should try?

you can take something from /etc/portage/make.conf from what I sent and try reproduce if you want.
Comment 17 Larry the Git Cow gentoo-dev 2024-09-25 11:55:47 UTC
The bug has been closed via the following commit(s):

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

commit facd8f13b66df5b00277066e556589fbe744c880
Author:     gentoo-setan <gentoo-setan@protonmail.com>
AuthorDate: 2024-09-11 10:14:32 +0000
Commit:     Joonas Niilola <juippis@gentoo.org>
CommitDate: 2024-09-25 11:55:43 +0000

    net-p2p/nicotine+: make tests work
    
    - add broadway USE flag to test depends
    - remove version check test violating network sandbox
    
    Closes: https://bugs.gentoo.org/933741
    Signed-off-by: gentoo-setan <gentoo-setan@protonmail.com>
    Closes: https://github.com/gentoo/gentoo/pull/38563
    Signed-off-by: Joonas Niilola <juippis@gentoo.org>

 net-p2p/nicotine+/nicotine+-3.3.4.ebuild | 24 ++++++++++++++++++++++--
 1 file changed, 22 insertions(+), 2 deletions(-)