unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#51498: onionshare build is broken
@ 2021-10-30  2:53 raid5atemyhomework via Bug reports for GNU Guix
  2021-10-30  3:05 ` raid5atemyhomework via Bug reports for GNU Guix
  2021-11-01 10:37 ` Efraim Flashner
  0 siblings, 2 replies; 6+ messages in thread
From: raid5atemyhomework via Bug reports for GNU Guix @ 2021-10-30  2:53 UTC (permalink / raw)
  To: 51498

onionshare is broken on master 89d8417; `guix time-machine --commit=89d8417b371f3918f0508bbc561675ec100a6add -- build onionshare` results in:


```
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/gui_base_test.py:88: in new_share_tab
    self.verify_new_tab(tab)
tests/gui_base_test.py:80: in verify_new_tab
    self.assertTrue(tab.new_tab.isVisible())
E   AssertionError: False is not true
--------------------------- Captured stdout teardown ---------------------------
[Oct 28 2021 04:36:21 AM] MainWindow.closeEvent
[Oct 28 2021 04:36:21 AM] MainWindow.closeEvent, opening warning dialog
[Oct 28 2021 04:36:21 AM] MainWindow.cleanup
[Oct 28 2021 04:36:21 AM] TabWidget.cleanup
[Oct 28 2021 04:36:21 AM] Tab.cleanup: tab_id=8
[Oct 28 2021 04:36:21 AM] Web.stop: stopping server
[Oct 28 2021 04:36:22 AM] Web.cleanup
[Oct 28 2021 04:36:22 AM] Alert.__init__
[Oct 28 2021 04:36:22 AM] OnionCleanupThread.__init__
[Oct 28 2021 04:36:22 AM] OnionCleanupThread.run
[Oct 28 2021 04:36:22 AM] Onion.cleanup
--------------------------- Captured stderr teardown ---------------------------
This plugin does not support propagateSizeHints()
This plugin does not support propagateSizeHints()
---------------------------- Captured log teardown -----------------------------
INFO     werkzeug:_internal.py:113 127.0.0.1 - - [28/Oct/2021 04:36:21] "GET /3x7qnpxrxhm3w7pzdxxfntvsvq/shutdown HTTP/1.1" 200 -
============== 6 failed, 8 passed, 5 skipped in 83.88s (0:01:23) ===============
QThread: Destroyed while thread is still running
Fatal Python error: Aborted

Thread 0x00007fffd77fe700 (most recent call first):
  File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/zipfile.py", line 1139 in write
  File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/shutil.py", line 205 in copyfileobj
  File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/zipfile.py", line 1776 in write
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 565 in add_file
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 511 in build_zipfile_list
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 418 in set_file_info_custom
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/send_base_mode.py", line 130 in set_file_info
  File "/gnu/store/vz73w4kdk44swsws46kvzvypk2dg6nv3-onionshare-2.3.2/lib/python3.8/site-packages/onionshare/tab/mode/share_mode/threads.py", line 46 in run

Current thread 0x00007ffff785c300 (most recent call first):
<no Python frame>
./tests/run.sh: line 6:    76 Aborted                 pytest -v tests/test_gui_share.py
command "./tests/run.sh" failed with status 134
builder for `/gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv' failed with exit code 1
build of /gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv failed
View build log at '/var/log/guix/drvs/nw/m0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv.bz2'.
guix build: error: build of `/gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv' failed
```

Doing a `git bisect` got me to this:

* bad: `guix time-machine --commit=ebc274063716a3a9471f51abb526d693c06b9f63 -- build onionshare`
* good: `guix time-machine --commit=c6adc0947396daa6d85ab08837f9cbc86f4d8722 -- build onionshare`
  * result: `/gnu/store/gsi65h1zj2wg8wm7c3jy2p1ac8yyynfs-onionshare-2.3.2`

However the bad commit seems to be just an update on `tor` version; I am not certain why it would cause this build failure.

Thanks,
raid5atemyhomework




^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#51498: onionshare build is broken
  2021-10-30  2:53 bug#51498: onionshare build is broken raid5atemyhomework via Bug reports for GNU Guix
@ 2021-10-30  3:05 ` raid5atemyhomework via Bug reports for GNU Guix
  2021-11-01 10:37 ` Efraim Flashner
  1 sibling, 0 replies; 6+ messages in thread
From: raid5atemyhomework via Bug reports for GNU Guix @ 2021-10-30  3:05 UTC (permalink / raw)
  To: 51498@debbugs.gnu.org; +Cc: Tobias Geerinckx-Rice

CC Tobias




^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#51498: onionshare build is broken
  2021-10-30  2:53 bug#51498: onionshare build is broken raid5atemyhomework via Bug reports for GNU Guix
  2021-10-30  3:05 ` raid5atemyhomework via Bug reports for GNU Guix
@ 2021-11-01 10:37 ` Efraim Flashner
  2021-11-05  1:21   ` raid5atemyhomework via Bug reports for GNU Guix
  1 sibling, 1 reply; 6+ messages in thread
From: Efraim Flashner @ 2021-11-01 10:37 UTC (permalink / raw)
  To: raid5atemyhomework; +Cc: 51498

[-- Attachment #1: Type: text/plain, Size: 4531 bytes --]

On Sat, Oct 30, 2021 at 02:53:28AM +0000, raid5atemyhomework via Bug reports for GNU Guix wrote:
> onionshare is broken on master 89d8417; `guix time-machine --commit=89d8417b371f3918f0508bbc561675ec100a6add -- build onionshare` results in:
> 
> 
> ```
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> tests/gui_base_test.py:88: in new_share_tab
>     self.verify_new_tab(tab)
> tests/gui_base_test.py:80: in verify_new_tab
>     self.assertTrue(tab.new_tab.isVisible())
> E   AssertionError: False is not true
> --------------------------- Captured stdout teardown ---------------------------
> [Oct 28 2021 04:36:21 AM] MainWindow.closeEvent
> [Oct 28 2021 04:36:21 AM] MainWindow.closeEvent, opening warning dialog
> [Oct 28 2021 04:36:21 AM] MainWindow.cleanup
> [Oct 28 2021 04:36:21 AM] TabWidget.cleanup
> [Oct 28 2021 04:36:21 AM] Tab.cleanup: tab_id=8
> [Oct 28 2021 04:36:21 AM] Web.stop: stopping server
> [Oct 28 2021 04:36:22 AM] Web.cleanup
> [Oct 28 2021 04:36:22 AM] Alert.__init__
> [Oct 28 2021 04:36:22 AM] OnionCleanupThread.__init__
> [Oct 28 2021 04:36:22 AM] OnionCleanupThread.run
> [Oct 28 2021 04:36:22 AM] Onion.cleanup
> --------------------------- Captured stderr teardown ---------------------------
> This plugin does not support propagateSizeHints()
> This plugin does not support propagateSizeHints()
> ---------------------------- Captured log teardown -----------------------------
> INFO     werkzeug:_internal.py:113 127.0.0.1 - - [28/Oct/2021 04:36:21] "GET /3x7qnpxrxhm3w7pzdxxfntvsvq/shutdown HTTP/1.1" 200 -
> ============== 6 failed, 8 passed, 5 skipped in 83.88s (0:01:23) ===============
> QThread: Destroyed while thread is still running
> Fatal Python error: Aborted
> 
> Thread 0x00007fffd77fe700 (most recent call first):
>   File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/zipfile.py", line 1139 in write
>   File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/shutil.py", line 205 in copyfileobj
>   File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/zipfile.py", line 1776 in write
>   File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 565 in add_file
>   File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 511 in build_zipfile_list
>   File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 418 in set_file_info_custom
>   File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/send_base_mode.py", line 130 in set_file_info
>   File "/gnu/store/vz73w4kdk44swsws46kvzvypk2dg6nv3-onionshare-2.3.2/lib/python3.8/site-packages/onionshare/tab/mode/share_mode/threads.py", line 46 in run
> 
> Current thread 0x00007ffff785c300 (most recent call first):
> <no Python frame>
> ./tests/run.sh: line 6:    76 Aborted                 pytest -v tests/test_gui_share.py
> command "./tests/run.sh" failed with status 134
> builder for `/gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv' failed with exit code 1
> build of /gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv failed
> View build log at '/var/log/guix/drvs/nw/m0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv.bz2'.
> guix build: error: build of `/gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv' failed
> ```
> 
> Doing a `git bisect` got me to this:
> 
> * bad: `guix time-machine --commit=ebc274063716a3a9471f51abb526d693c06b9f63 -- build onionshare`
> * good: `guix time-machine --commit=c6adc0947396daa6d85ab08837f9cbc86f4d8722 -- build onionshare`
>   * result: `/gnu/store/gsi65h1zj2wg8wm7c3jy2p1ac8yyynfs-onionshare-2.3.2`
> 
> However the bad commit seems to be just an update on `tor` version; I am not certain why it would cause this build failure.
> 
> Thanks,
> raid5atemyhomework

Can you test it again? I was able to build it just now with commit
c0c974ad96767a1e207fe2823cd5479605485415. I was also able to build it
with your provided commit above.

-- 
Efraim Flashner   <efraim@flashner.co.il>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#51498: onionshare build is broken
  2021-11-01 10:37 ` Efraim Flashner
@ 2021-11-05  1:21   ` raid5atemyhomework via Bug reports for GNU Guix
  2021-11-05  1:31     ` raid5atemyhomework via Bug reports for GNU Guix
  0 siblings, 1 reply; 6+ messages in thread
From: raid5atemyhomework via Bug reports for GNU Guix @ 2021-11-05  1:21 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 51498@debbugs.gnu.org



>
> Can you test it again? I was able to build it just now with commit
> c0c974ad96767a1e207fe2823cd5479605485415. I was also able to build it
> with your provided commit above.

Having diverging results suggests a nondeterministic build, which is bad, right?  I'm running on a Guix System machine running directly on the metal.

* bad: `guix time-machine --commit=ebc274063716a3a9471f51abb526d693c06b9f63 -- build onionshare`


```
        """
>       tab = self.new_share_tab()

tests/test_gui_share.py:435:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/gui_base_test.py:88: in new_share_tab
    self.verify_new_tab(tab)
tests/gui_base_test.py:80: in verify_new_tab
    self.assertTrue(tab.new_tab.isVisible())
E   AssertionError: False is not true
--------------------------- Captured stdout teardown ---------------------------
[Nov 05 2021 01:00:36 AM] MainWindow.closeEvent
[Nov 05 2021 01:00:36 AM] MainWindow.closeEvent, opening warning dialog
[Nov 05 2021 01:00:37 AM] MainWindow.cleanup
[Nov 05 2021 01:00:37 AM] TabWidget.cleanup
[Nov 05 2021 01:00:37 AM] Tab.cleanup: tab_id=8
[Nov 05 2021 01:00:37 AM] Web.stop: stopping server
[Nov 05 2021 01:00:37 AM] Web.cleanup
[Nov 05 2021 01:00:37 AM] Alert.__init__
[Nov 05 2021 01:00:37 AM] OnionCleanupThread.__init__
[Nov 05 2021 01:00:37 AM] OnionCleanupThread.run
[Nov 05 2021 01:00:37 AM] Onion.cleanup
--------------------------- Captured stderr teardown ---------------------------
This plugin does not support propagateSizeHints()
This plugin does not support propagateSizeHints()
---------------------------- Captured log teardown -----------------------------
INFO     werkzeug:_internal.py:113 127.0.0.1 - - [05/Nov/2021 01:00:37] "GET /hpzwg6jwsaxb4bde4qmlh5emeu/shutdown HTTP/1.1" 200 -
============== 6 failed, 8 passed, 5 skipped in 83.87s (0:01:23) ===============
QThread: Destroyed while thread is still running
Fatal Python error: Aborted

Thread 0x00007fffd77fe700 (most recent call first):
  File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/zipfile.py", line 1139 in write
  File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/shutil.py", line 205 in copyfileobj
  File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/zipfile.py", line 1776 in write
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 565 in add_file
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 511 in build_zipfile_list
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 418 in set_file_info_custom
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/send_base_mode.py", line 130 in set_file_info
  File "/gnu/store/vz73w4kdk44swsws46kvzvypk2dg6nv3-onionshare-2.3.2/lib/python3.8/site-packages/onionshare/tab/mode/share_mode/threads.py", line 46 in run

Current thread 0x00007ffff785c300 (most recent call first):
<no Python frame>
./tests/run.sh: line 6:    76 Aborted                 pytest -v tests/test_gui_share.py
command "./tests/run.sh" failed with status 134
builder for `/gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv' failed with exit code 1
build of /gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv failed
View build log at '/var/log/guix/drvs/nw/m0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv.bz2'.
guix build: error: build of `/gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv' failed
```

* bad: `guix time-machine --commit=c0c974ad96767a1e207fe2823cd5479605485415 -- build onionshare`


```
        """
>       tab = self.new_share_tab()

tests/test_gui_share.py:435:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/gui_base_test.py:88: in new_share_tab
    self.verify_new_tab(tab)
tests/gui_base_test.py:80: in verify_new_tab
    self.assertTrue(tab.new_tab.isVisible())
E   AssertionError: False is not true
--------------------------- Captured stdout teardown ---------------------------
[Nov 05 2021 01:08:53 AM] MainWindow.closeEvent
[Nov 05 2021 01:08:53 AM] MainWindow.closeEvent, opening warning dialog
[Nov 05 2021 01:08:53 AM] MainWindow.cleanup
[Nov 05 2021 01:08:53 AM] TabWidget.cleanup
[Nov 05 2021 01:08:53 AM] Tab.cleanup: tab_id=8
[Nov 05 2021 01:08:53 AM] Web.stop: stopping server
[Nov 05 2021 01:08:54 AM] Web.cleanup
[Nov 05 2021 01:08:54 AM] Alert.__init__
[Nov 05 2021 01:08:54 AM] OnionCleanupThread.__init__
[Nov 05 2021 01:08:54 AM] OnionCleanupThread.run
[Nov 05 2021 01:08:54 AM] Onion.cleanup
--------------------------- Captured stderr teardown ---------------------------
This plugin does not support propagateSizeHints()
This plugin does not support propagateSizeHints()
---------------------------- Captured log teardown -----------------------------
INFO     werkzeug:_internal.py:113 127.0.0.1 - - [05/Nov/2021 01:08:53] "GET /jwkuq4zjiyi6o4dw6lz2uqetlu/shutdown HTTP/1.1" 200 -
============== 6 failed, 8 passed, 5 skipped in 83.97s (0:01:23) ===============
QThread: Destroyed while thread is still running
Fatal Python error: Aborted

Thread 0x00007fffdf7fe700 (most recent call first):
  File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/zipfile.py", line 1139 in write
  File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/shutil.py", line 205 in copyfileobj
  File "/gnu/store/9w9jvy3bgjg4qaqmrij01nbppiccqr7c-python-3.8.2/lib/python3.8/zipfile.py", line 1776 in write
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 565 in add_file
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 511 in build_zipfile_list
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/share_mode.py", line 418 in set_file_info_custom
  File "/gnu/store/qycixjbyhvh2mchlrsbadvrh0p81lgpz-onionshare-cli-2.3.2/lib/python3.8/site-packages/onionshare_cli/web/send_base_mode.py", line 130 in set_file_info
  File "/gnu/store/vz73w4kdk44swsws46kvzvypk2dg6nv3-onionshare-2.3.2/lib/python3.8/site-packages/onionshare/tab/mode/share_mode/threads.py", line 46 in run

Current thread 0x00007ffff785c300 (most recent call first):
<no Python frame>
./tests/run.sh: line 6:    76 Aborted                 pytest -v tests/test_gui_share.py
command "./tests/run.sh" failed with status 134
builder for `/gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv' failed with exit code 1
build of /gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv failed
View build log at '/var/log/guix/drvs/nw/m0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv.bz2'.
guix build: error: build of `/gnu/store/nwm0wl6ilxgaqwl331fmp3ggxgh706a5-onionshare-2.3.2.drv' failed
```

* good: `guix time-machine --commit=c6adc0947396daa6d85ab08837f9cbc86f4d8722 -- build onionshare`
  * result: `/gnu/store/gsi65h1zj2wg8wm7c3jy2p1ac8yyynfs-onionshare-2.3.2`







^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#51498: onionshare build is broken
  2021-11-05  1:21   ` raid5atemyhomework via Bug reports for GNU Guix
@ 2021-11-05  1:31     ` raid5atemyhomework via Bug reports for GNU Guix
  2022-07-12  3:58       ` Maxim Cournoyer
  0 siblings, 1 reply; 6+ messages in thread
From: raid5atemyhomework via Bug reports for GNU Guix @ 2021-11-05  1:31 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 51498@debbugs.gnu.org



> > Can you test it again? I was able to build it just now with commit
> > c0c974ad96767a1e207fe2823cd5479605485415. I was also able to build it
> > with your provided commit above.
>
> Having diverging results suggests a nondeterministic build, which is bad, right? I'm running on a Guix System machine running directly on the metal.

On a Guix on top of a foreign distro, I got:

* good: `guix time-machine --commit=ebc274063716a3a9471f51abb526d693c06b9f63 -- build onionshare`
  * result: `/gnu/store/ynkjlqh9sjr72blfvvxrj86cgjpa270l-onionshare-2.3.2`

Looks like nondeterminism?

On the machine where the build is failing, this is the stanza where the tests start going wrong:

```
tests/test_gui_share.py::TestShare::test_401_public_skips_ratelimit PASSED [  5%]
tests/test_gui_share.py::TestShare::test_401_triggers_ratelimit PASSED   [ 10%]
tests/test_gui_share.py::TestShare::test_405_page_returned_for_invalid_methods PASSED [ 15%]
tests/test_gui_share.py::TestShare::test_autostart_and_autostop_timer_mismatch SKIPPED [ 21%]
tests/test_gui_share.py::TestShare::test_autostart_timer SKIPPED         [ 26%]
tests/test_gui_share.py::TestShare::test_autostart_timer_cancel PASSED   [ 31%]
tests/test_gui_share.py::TestShare::test_autostart_timer_too_short SKIPPED [ 36%]
tests/test_gui_share.py::TestShare::test_autostop_timer SKIPPED          [ 42%]
tests/test_gui_share.py::TestShare::test_autostop_timer_too_short SKIPPED [ 47%]
tests/test_gui_share.py::TestShare::test_clear_all_history_button PASSED [ 52%]
tests/test_gui_share.py::TestShare::test_download PASSED                 [ 57%]
tests/test_gui_share.py::TestShare::test_individual_files PASSED         [ 63%]
tests/test_gui_share.py::TestShare::test_individual_files_without_autostop_sharing PASSED [ 68%]
tests/test_gui_share.py::TestShare::test_large_download FAILED           [ 73%]
tests/test_gui_share.py::TestShare::test_persistent_password FAILED      [ 78%]
tests/test_gui_share.py::TestShare::test_public_mode FAILED              [ 84%]
tests/test_gui_share.py::TestShare::test_remove_all_file_selection_button FAILED [ 89%]
tests/test_gui_share.py::TestShare::test_unreadable_file FAILED          [ 94%]
tests/test_gui_share.py::TestShare::test_without_autostop_sharing FAILED [100%]
```

Build log github gist: https://gist.github.com/raid5atemyhomework/113e4860b359ab70637eedc032648d3b


Thanks
raid5atemyhomework




^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#51498: onionshare build is broken
  2021-11-05  1:31     ` raid5atemyhomework via Bug reports for GNU Guix
@ 2022-07-12  3:58       ` Maxim Cournoyer
  0 siblings, 0 replies; 6+ messages in thread
From: Maxim Cournoyer @ 2022-07-12  3:58 UTC (permalink / raw)
  To: raid5atemyhomework; +Cc: Efraim Flashner, 51498@debbugs.gnu.org

Hi,

raid5atemyhomework <raid5atemyhomework@protonmail.com> writes:

>> > Can you test it again? I was able to build it just now with commit
>> > c0c974ad96767a1e207fe2823cd5479605485415. I was also able to build it
>> > with your provided commit above.
>>
>> Having diverging results suggests a nondeterministic build, which is
>> bad, right? I'm running on a Guix System machine running directly on
>> the metal.
>
> On a Guix on top of a foreign distro, I got:
>
> * good: `guix time-machine --commit=ebc274063716a3a9471f51abb526d693c06b9f63 -- build onionshare`
>   * result: `/gnu/store/ynkjlqh9sjr72blfvvxrj86cgjpa270l-onionshare-2.3.2`
>
> Looks like nondeterminism?
>
> On the machine where the build is failing, this is the stanza where the tests start going wrong:
>
> ```
> tests/test_gui_share.py::TestShare::test_401_public_skips_ratelimit PASSED [  5%]
> tests/test_gui_share.py::TestShare::test_401_triggers_ratelimit PASSED   [ 10%]
> tests/test_gui_share.py::TestShare::test_405_page_returned_for_invalid_methods PASSED [ 15%]
> tests/test_gui_share.py::TestShare::test_autostart_and_autostop_timer_mismatch SKIPPED [ 21%]
> tests/test_gui_share.py::TestShare::test_autostart_timer SKIPPED         [ 26%]
> tests/test_gui_share.py::TestShare::test_autostart_timer_cancel PASSED   [ 31%]
> tests/test_gui_share.py::TestShare::test_autostart_timer_too_short SKIPPED [ 36%]
> tests/test_gui_share.py::TestShare::test_autostop_timer SKIPPED          [ 42%]
> tests/test_gui_share.py::TestShare::test_autostop_timer_too_short SKIPPED [ 47%]
> tests/test_gui_share.py::TestShare::test_clear_all_history_button PASSED [ 52%]
> tests/test_gui_share.py::TestShare::test_download PASSED                 [ 57%]
> tests/test_gui_share.py::TestShare::test_individual_files PASSED         [ 63%]
> tests/test_gui_share.py::TestShare::test_individual_files_without_autostop_sharing PASSED [ 68%]
> tests/test_gui_share.py::TestShare::test_large_download FAILED           [ 73%]
> tests/test_gui_share.py::TestShare::test_persistent_password FAILED      [ 78%]
> tests/test_gui_share.py::TestShare::test_public_mode FAILED              [ 84%]
> tests/test_gui_share.py::TestShare::test_remove_all_file_selection_button FAILED [ 89%]
> tests/test_gui_share.py::TestShare::test_unreadable_file FAILED          [ 94%]
> tests/test_gui_share.py::TestShare::test_without_autostop_sharing FAILED [100%]
> ```

I was able to reproduce the nondeterministic failure; on my system it
gave:

--8<---------------cut here---------------start------------->8---
=================================== FAILURES ===================================
________________________ TestShare.test_large_download _________________________

self = <tests.test_gui_share.TestShare testMethod=test_large_download>

    def test_large_download(self):
        """
        Test a large download
        """
        tab = self.new_share_tab()
    
        self.run_all_common_setup_tests()
        self.run_all_share_mode_setup_tests(tab)
        tab.get_mode().server_status.file_selection.file_list.add_file(
            self.tmpfile_large
        )
>       self.run_all_share_mode_started_tests(tab, startup_time=15000)

tests/test_gui_share.py:432: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/test_gui_share.py:183: in run_all_share_mode_started_tests
    self.server_is_started(tab, startup_time)
tests/gui_base_test.py:249: in server_is_started
    self.assertEqual(tab.get_mode().server_status.status, 2)
E   AssertionError: 1 != 2
----------------------------- Captured stdout call -----------------------------
[Jul 11 2022 10:05:58 PM] Tab.share_mode_clicked
[Jul 11 2022 10:05:58 PM] Web.__init__: is_gui=True, mode=share
[Jul 11 2022 10:05:58 PM] Common.get_resource_path: filename=static
[Jul 11 2022 10:05:58 PM] Common.get_resource_path: filename=static, path=/gnu/store/dg59r5qmksn2llkbqxbzj4zw3xvcfppp-onionshare-cli-2.4/lib/python3.9/site-packages/onionshare_cli/resources/static
[Jul 11 2022 10:05:58 PM] Common.get_resource_path: filename=templates
[Jul 11 2022 10:05:58 PM] Common.get_resource_path: filename=templates, path=/gnu/store/dg59r5qmksn2llkbqxbzj4zw3xvcfppp-onionshare-cli-2.4/lib/python3.9/site-packages/onionshare_cli/resources/templates
[Jul 11 2022 10:05:58 PM] Web.generate_static_url_path: new static_url_path is /static_uosd2rkf6txcyiop4jrurdpxtu
[Jul 11 2022 10:05:58 PM] ShareModeWeb.init
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = []
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/640bf8a6.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/640bf8a6.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/c31c4eeb.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ToggleHistory.toggle_clicked
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/640bf8a6.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/c31c4eeb.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/640bf8a6.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/c31c4eeb.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/c31c4eeb.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/c31c4eeb.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/c31c4eeb.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/c31c4eeb.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/640bf8a6.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/640bf8a6.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/640bf8a6.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/c31c4eeb.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/640bf8a6.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/c31c4eeb.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/large_file', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt']
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] ShareMode.update_primary_action
[Jul 11 2022 10:05:58 PM] ServerStatus.update
[Jul 11 2022 10:05:58 PM] Mode.start_server
[Jul 11 2022 10:05:58 PM] Mode.start_server: Starting an onion thread
[Jul 11 2022 10:05:58 PM] OnionThread.__init__
[Jul 11 2022 10:05:58 PM] ModeSettings.set: updating undress-coyness-anime: share.filenames = ['/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/640bf8a6.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/c31c4eeb.txt', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/large_file', '/tmp/guix-build-onionshare-2.4.drv-0/tmpx624akaf/test.txt'][Jul 11 2022 10:05:58 PM] OnionThread.run

[Jul 11 2022 10:05:58 PM] Web.generate_static_url_path: new static_url_path is /static_76kyy3l57efdgiew6xhqlusxca
[Jul 11 2022 10:05:58 PM] OnionShare.start_onion_service
[Jul 11 2022 10:05:59 PM] WebThread.__init__
[Jul 11 2022 10:05:59 PM] WebThread.run[Jul 11 2022 10:05:59 PM] Mode.start_server_step2

[Jul 11 2022 10:05:59 PM] Web.start: port=17618
[Jul 11 2022 10:05:59 PM] CompressThread.__init__
[Jul 11 2022 10:05:59 PM] CompressThread.run
[Jul 11 2022 10:05:59 PM] ShareModeWeb.init
[Jul 11 2022 10:05:59 PM] ShareModeWeb.set_file_info_custom
[Jul 11 2022 10:05:59 PM] ShareModeWeb.build_zipfile_list
----------------------------- Captured stderr call -----------------------------
This plugin does not support setParent!
------------------------------ Captured log call -------------------------------
INFO     werkzeug:_internal.py:225  * Running on http://127.0.0.1:17618/ (Press CTRL+C to quit)
__________________________ TestShare.test_public_mode __________________________

self = <tests.test_gui_share.TestShare testMethod=test_public_mode>

    def test_public_mode(self):
        """
        Public mode shouldn't have a password
        """
>       tab = self.new_share_tab()

tests/test_gui_share.py:367: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/gui_base_test.py:88: in new_share_tab
    self.verify_new_tab(tab)
tests/gui_base_test.py:80: in verify_new_tab
    self.assertTrue(tab.new_tab.isVisible())
E   AssertionError: False is not true
----------------------------- Captured stdout call -----------------------------
[Jul 11 2022 10:06:14 PM] Mode.start_server_step3
[Jul 11 2022 10:06:14 PM] ServerStatus.update
[Jul 11 2022 10:06:14 PM] Settings.load
_______________ TestShare.test_remove_all_file_selection_button ________________

self = <tests.test_gui_share.TestShare testMethod=test_remove_all_file_selection_button>

    def test_remove_all_file_selection_button(self):
        """
        Test remove all file items at once
        """
>       tab = self.new_share_tab()

tests/test_gui_share.py:356: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/gui_base_test.py:88: in new_share_tab
    self.verify_new_tab(tab)
tests/gui_base_test.py:80: in verify_new_tab
    self.assertTrue(tab.new_tab.isVisible())
E   AssertionError: False is not true
________________________ TestShare.test_unreadable_file ________________________

self = <tests.test_gui_share.TestShare testMethod=test_unreadable_file>

    def test_unreadable_file(self):
        """
        Sharing an unreadable file should throw a warning
        """
>       tab = self.new_share_tab()

tests/test_gui_share.py:489: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/gui_base_test.py:88: in new_share_tab
    self.verify_new_tab(tab)
tests/gui_base_test.py:80: in verify_new_tab
    self.assertTrue(tab.new_tab.isVisible())
E   AssertionError: False is not true
___________________ TestShare.test_without_autostop_sharing ____________________

self = <tests.test_gui_share.TestShare testMethod=test_without_autostop_sharing>

    def test_without_autostop_sharing(self):
        """
        Disable autostop sharing after first download
        """
>       tab = self.new_share_tab()

tests/test_gui_share.py:379: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/gui_base_test.py:88: in new_share_tab
    self.verify_new_tab(tab)
tests/gui_base_test.py:80: in verify_new_tab
    self.assertTrue(tab.new_tab.isVisible())
E   AssertionError: False is not true
--------------------------- Captured stdout teardown ---------------------------
[Jul 11 2022 10:06:18 PM] MainWindow.closeEvent
[Jul 11 2022 10:06:18 PM] MainWindow.closeEvent, opening warning dialog
[Jul 11 2022 10:06:18 PM] MainWindow.cleanup
[Jul 11 2022 10:06:18 PM] TabWidget.cleanup
[Jul 11 2022 10:06:18 PM] Tab.cleanup: tab_id=8
[Jul 11 2022 10:06:18 PM] Web.stop: stopping server
[Jul 11 2022 10:06:19 PM] Web.cleanup
[Jul 11 2022 10:06:19 PM] Alert.__init__
[Jul 11 2022 10:06:19 PM] OnionCleanupThread.__init__
[Jul 11 2022 10:06:19 PM] OnionCleanupThread.run
[Jul 11 2022 10:06:19 PM] Onion.cleanup
--------------------------- Captured stderr teardown ---------------------------
This plugin does not support propagateSizeHints()
This plugin does not support propagateSizeHints()
---------------------------- Captured log teardown -----------------------------
INFO     werkzeug:_internal.py:225 127.0.0.1 - - [11/Jul/2022 22:06:18] "GET /xwpum3u67ltpl525lvd3tgghce/shutdown HTTP/1.1" 200 -
=============================== warnings summary ===============================
tests/conftest.py:75
  /tmp/guix-build-onionshare-2.4.drv-0/source/desktop/tests/conftest.py:75: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def temp_dir_1024_delete(temp_dir):

tests/conftest.py:99
  /tmp/guix-build-onionshare-2.4.drv-0/source/desktop/tests/conftest.py:99: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    def temp_file_1024_delete(temp_dir):

tests/conftest.py:113
  /tmp/guix-build-onionshare-2.4.drv-0/source/desktop/tests/conftest.py:113: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    @pytest.yield_fixture(scope="session")

tests/conftest.py:126
  /tmp/guix-build-onionshare-2.4.drv-0/source/desktop/tests/conftest.py:126: PytestDeprecationWarning: @pytest.yield_fixture is deprecated.
  Use @pytest.fixture instead; they are the same.
    @pytest.yield_fixture(scope="session")

tests/test_gui_share.py::TestShare::test_405_page_returned_for_invalid_methods
tests/test_gui_share.py::TestShare::test_clear_all_history_button
tests/test_gui_share.py::TestShare::test_client_auth
tests/test_gui_share.py::TestShare::test_individual_files_without_autostop_sharing
tests/test_gui_share.py::TestShare::test_without_autostop_sharing
  /gnu/store/dg59r5qmksn2llkbqxbzj4zw3xvcfppp-onionshare-cli-2.4/lib/python3.9/site-packages/onionshare_cli/web/web.py:317: UserWarning: The 'environ['werkzeug.server.shutdown']' function is deprecated and will be removed in Werkzeug 2.1.
    func()

tests/test_gui_share.py::TestShare::test_download
tests/test_gui_share.py::TestShare::test_individual_files
  /gnu/store/dg59r5qmksn2llkbqxbzj4zw3xvcfppp-onionshare-cli-2.4/lib/python3.9/site-packages/onionshare_cli/web/share_mode.py:387: UserWarning: The 'environ['werkzeug.server.shutdown']' function is deprecated and will be removed in Werkzeug 2.1.
    shutdown_func()

-- Docs: https://docs.pytest.org/en/stable/warnings.html
=========================== short test summary info ============================
FAILED tests/test_gui_share.py::TestShare::test_large_download - AssertionErr...
FAILED tests/test_gui_share.py::TestShare::test_public_mode - AssertionError:...
FAILED tests/test_gui_share.py::TestShare::test_remove_all_file_selection_button
FAILED tests/test_gui_share.py::TestShare::test_unreadable_file - AssertionEr...
FAILED tests/test_gui_share.py::TestShare::test_without_autostop_sharing - As...
======== 5 failed, 7 passed, 5 skipped, 11 warnings in 73.66s (0:01:13) ========
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "./tests/run.sh" arguments: () exit-status: 1 term-signal: #f stop-signal: #f> 
phase `check' failed after 97.3 seconds
command "./tests/run.sh" failed with status 1
--8<---------------cut here---------------end--------------->8---

So the first thing I tried was updating onionshare to 2.5; unfortunately
the tests got even more problematic to run, so I asked guidance upstream
and disabled the test suite for now, after trying to make things work
for a good while (see commit aedd7dc8e085788fbaf066754eb3387edb719335).

At least it won't fail nondeterministically!

Thanks for the report.

Closing.

Maxim




^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-07-12  4:00 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-30  2:53 bug#51498: onionshare build is broken raid5atemyhomework via Bug reports for GNU Guix
2021-10-30  3:05 ` raid5atemyhomework via Bug reports for GNU Guix
2021-11-01 10:37 ` Efraim Flashner
2021-11-05  1:21   ` raid5atemyhomework via Bug reports for GNU Guix
2021-11-05  1:31     ` raid5atemyhomework via Bug reports for GNU Guix
2022-07-12  3:58       ` Maxim Cournoyer

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).