unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Python
@ 2013-09-13 15:46 Andreas Enge
  2013-09-13 16:25 ` Python Cyril Roelandt
  2013-09-13 21:32 ` Python Ludovic Courtès
  0 siblings, 2 replies; 41+ messages in thread
From: Andreas Enge @ 2013-09-13 15:46 UTC (permalink / raw)
  To: guix-devel

Hello,

recently I added a few more python packages, and things seem to work well
(except for the surprising realisation that more projects than not seem to
still depend on python 2 instead of python 3). So I do not expect big changes
to the python build system in the near future.

I considered switching from python 3.3.2 to 3.4, but the available versions
are 3.4.0a1 and 3.4.0a2, which does not inspire too much confidence; maybe
we should wait for 3.4.1.

So I would suggest to merge the branch python into master. I did a test
merge, and there were no conflicts.

What do you think?

Andreas

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

* Re: Python
  2013-09-13 15:46 Python Andreas Enge
@ 2013-09-13 16:25 ` Cyril Roelandt
  2013-09-14  9:02   ` Python Andreas Enge
  2013-09-13 21:32 ` Python Ludovic Courtès
  1 sibling, 1 reply; 41+ messages in thread
From: Cyril Roelandt @ 2013-09-13 16:25 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

On 09/13/2013 05:46 PM, Andreas Enge wrote:
> Hello,
>
> recently I added a few more python packages, and things seem to work well
> (except for the surprising realisation that more projects than not seem to
> still depend on python 2 instead of python 3). So I do not expect big changes
> to the python build system in the near future.

This does not come as a surprise to Pythonists, unfortunately :/

>
> I considered switching from python 3.3.2 to 3.4, but the available versions
> are 3.4.0a1 and 3.4.0a2, which does not inspire too much confidence; maybe
> we should wait for 3.4.1.
>

See http://www.python.org/download/ : we should stick to 3.3.2.

> So I would suggest to merge the branch python into master. I did a test
> merge, and there were no conflicts.
>
> What do you think?
>

I agree with you.


Cyril.

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

* Re: Python
  2013-09-13 15:46 Python Andreas Enge
  2013-09-13 16:25 ` Python Cyril Roelandt
@ 2013-09-13 21:32 ` Ludovic Courtès
  1 sibling, 0 replies; 41+ messages in thread
From: Ludovic Courtès @ 2013-09-13 21:32 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Andreas Enge <andreas@enge.fr> skribis:

> So I would suggest to merge the branch python into master. I did a test
> merge, and there were no conflicts.

Then go ahead, seems like it’s all good now.  :-)

Thanks for diving into the pythonic realm!

Ludo’.

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

* Re: Python
  2013-09-13 16:25 ` Python Cyril Roelandt
@ 2013-09-14  9:02   ` Andreas Enge
  0 siblings, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2013-09-14  9:02 UTC (permalink / raw)
  To: Cyril Roelandt; +Cc: guix-devel

On Fri, Sep 13, 2013 at 06:25:00PM +0200, Cyril Roelandt wrote:
> See http://www.python.org/download/ : we should stick to 3.3.2.

I see, so the a1 and a2 are not the first bugfix releases, but alpha versions.
The python branch is now merged back into master and deleted.

Andreas

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

* Re: Python
  2023-02-19 15:50         ` Lars-Dominik Braun
@ 2023-02-19 20:27           ` Andreas Enge
  2023-02-25 17:44             ` Python Andreas Enge
  0 siblings, 1 reply; 41+ messages in thread
From: Andreas Enge @ 2023-02-19 20:27 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sun, Feb 19, 2023 at 04:50:37PM +0100 schrieb Lars-Dominik Braun:
> eolie upstream looks dead, same with jrnl.

How do we drop them from the distribution? Do we need to prepare a NEWS
item?

> The rest seems to be alive
> without any references to python-pycrypto. So these should be upgradable
> and then we can drop python-pycrypto.

I found python-miio, which depends on python-android-backup, which depends
on python-pycrypto.

The first one looks alive with a new release last July, the middle one
looks dead.

Looking at
   https://github.com/rytilahti/python-miio/blob/master/pyproject.toml
android-backup appears to be an optional dependency.

Are you okay with dropping python-android-backup from Guix?

Andreas



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

* Re: Python
  2023-02-19 11:30     ` Python (was: Merging core-updates?) Andreas Enge
@ 2023-02-19 20:31       ` Andreas Enge
  2023-02-21 16:41         ` Python Andreas Enge
  0 siblings, 1 reply; 41+ messages in thread
From: Andreas Enge @ 2023-02-19 20:31 UTC (permalink / raw)
  To: guix-devel

And yet another one: python-testtool

Tests running...
======================================================================
FAIL: testtools.tests.test_testresult.TestNonAsciiResults.test_syntax_error
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-python-testtools-2.5.0.drv-0/testtools-2.5.0/testtools/tests/test_testresult.py", line 2675, in test_syntax_error
    self.assertIn(self._as_output(
  File "/tmp/guix-build-python-testtools-2.5.0.drv-0/testtools-2.5.0/testtools/testcase.py", line 399, in assertIn
    self.assertThat(haystack, Contains(needle), message)
  File "/tmp/guix-build-python-testtools-2.5.0.drv-0/testtools-2.5.0/testtools/testcase.py", line 480, in assertThat
    raise mismatch_error
testtools.matchers._impl.MismatchError: '  File "<string>", line 1\n    f(a, b c)\n         ^\nSyntaxError: ' not in 'Tests running...\n======================================================================\nERROR: test_syntax_error.Test.runTest\n----------------------------------------------------------------------\nTraceback (most recent call last):\n  File "/tmp/guix-build-python-testtools-2.5.0.drv-0/TestNonAsciiResults3xz34fmg/test_syntax_error.py", line 6, in runTest\n    exec (\'f(a, b c)\')\n  File "<string>", line 1\n    f(a, b c)\n         ^^^\nSyntaxError: invalid syntax. Perhaps you forgot a comma?\n\nRan 1 test in 0.001s\nFAILED (failures=1)\n'
======================================================================
FAIL: testtools.tests.test_testresult.TestNonAsciiResultsWithUnittest.test_syntax_error
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-python-testtools-2.5.0.drv-0/testtools-2.5.0/testtools/tests/test_testresult.py", line 2675, in test_syntax_error
    self.assertIn(self._as_output(
  File "/tmp/guix-build-python-testtools-2.5.0.drv-0/testtools-2.5.0/testtools/testcase.py", line 399, in assertIn
    self.assertThat(haystack, Contains(needle), message)
  File "/tmp/guix-build-python-testtools-2.5.0.drv-0/testtools-2.5.0/testtools/testcase.py", line 480, in assertThat
    raise mismatch_error
testtools.matchers._impl.MismatchError: '  File "<string>", line 1\n    f(a, b c)\n         ^\nSyntaxError: ' not in 'E\n======================================================================\nERROR: runTest (test_syntax_error.Test)\ntest_syntax_error.Test.runTest\n----------------------------------------------------------------------\ntesttools.testresult.real._StringException: Traceback (most recent call last):\n  File "/tmp/guix-build-python-testtools-2.5.0.drv-0/TestNonAsciiResultsWithUnittest7v17h5v5/test_syntax_error.py", line 6, in runTest\n    exec (\'f(a, b c)\')\n  File "<string>", line 1\n    f(a, b c)\n         ^^^\nSyntaxError: invalid syntax. Perhaps you forgot a comma?\n\n\n----------------------------------------------------------------------\nRan 1 test in 0.000s\n\nFAILED (errors=1)\n'

Ran 2627 tests in 1.178s
FAILED (failures=2)
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "python" arguments: ("-m" "testtools.run" "testtools.tests.test_suite") exit-status: 1 term-signal: #f stop-signal: #f>
phase `check' failed after 2.2 seconds
command "python" "-m" "testtools.run" "testtools.tests.test_suite" failed with status 1
builder for `/gnu/store/gj4g2wcf8gam52rl1ndjrypiya6pa6r0-python-testtools-2.5.0.drv' failed with exit code 1
build of /gnu/store/gj4g2wcf8gam52rl1ndjrypiya6pa6r0-python-testtools-2.5.0.drv failed
View build log at '/var/log/guix/drvs/gj/4g2wcf8gam52rl1ndjrypiya6pa6r0-python-testtools-2.5.0.drv.gz'.

What an entangled mess these languages are that are not C!
Again, this is apparently the latest version of the package.

Andreas



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

* Re: Python
  2023-02-19 15:10         ` Attila Lendvai
@ 2023-02-21 16:24           ` Andreas Enge
  0 siblings, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2023-02-21 16:24 UTC (permalink / raw)
  To: Attila Lendvai; +Cc: guix-devel

Am Sun, Feb 19, 2023 at 03:10:03PM +0000 schrieb Attila Lendvai:
> weirdly enough, upstream uses one git repo for multiple projects, and uses prefixed tag names for them.
> FYI, there's this long-pending patchset to update the trezor-agent (something i can test myself):
> https://issues.guix.gnu.org/58437#4
> it's been pending so long, maybe it should be updated again.

Feel free, but I would say this is independent of core-updates.

Well, except that python-trezor-agent does not build in core-updates,
but this is due to its dependencies python-ecdsa (already reported in
a different message), and, as I just saw, python-configargparse:

======================================================================
FAIL: testBasicCase2 (tests.test_configargparse.TestBasicUseCases)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-python-configargparse-1.2.3.drv-0/ConfigArgParse-1.2.3/tests/test_configargparse.py", line 250, in testBasicCase2
    self.assertRegex(self.format_help(),
AssertionError: Regex didn't match: 'usage: .* \\[-h\\] --genome GENOME \\[-v\\] -g MY_CFG_FILE\n?\\s+\\[-d DBSNP\\]\\s+\\[-f FRMT\\]\\s+vcf \\[vcf ...\\]\n\n(.+\\s+)(.+\\s+)(.+\\s+)(.+\\s+)(.+\\s+)(.+\\s+)(.+\\s+)(.+\\s+)(.+\\s+)positional arguments:\n  vcf \\s+ Variant file\\(s\\)\n\noptional arguments:\n  -h, --help \\s+ show this help message and exit\n  --genome GENOME \\s+ Path to genome file\n  -v\n  -g MY_CFG_FILE, --my-cfg-file MY_CFG_FILE\n  -d DBSNP, --dbsnp DBSNP\\s+\\[env var: DBSNP_PATH\\]\n  -f FRMT, --format FRMT\\s+\\[env var: OUTPUT_FORMAT\\]\n' not found in "usage: setup.py [-h] --genome GENOME [-v] -g MY_CFG_FILE [-d DBSNP] [-f FRMT]\n                vcf [vcf ...]\n\nArgs that start with '--' (eg. --genome) can also be set in a config file\n(/etc/settings.ini or /home/jeff/.user_settings or /tmp/guix-build-python-\nconfigargparse-1.2.3.drv-0/tmprdqc6hnh or specified via -g). Config file\nsyntax allows: key=value, flag=true, stuff=[a,b,c] (for details, see syntax at\nhttps://goo.gl/R74nmi). If an arg is specified in more than one place, then\ncommandline values override environment variables which override config file\nvalues which override defaults.\n\npositional arguments:\n  vcf                   Variant file(s)\n\noptions:\n  -h, --help            show this help message and exit\n  --genome GENOME       Path to genome file\n  -v\n  -g MY_CFG_FILE, --my-cfg-file MY_CFG_FILE\n  -d DBSNP, --dbsnp DBSNP\n                        [env var: DBSNP_PATH]\n  -f FRMT, --format FRMT\n                        [env var: OUTPUT_FORMAT]\n"

and many more.

It would be nice if someone actually using Python could sort out
the mess...

Andreas



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

* Re: Python
  2023-02-19 20:31       ` Python Andreas Enge
@ 2023-02-21 16:41         ` Andreas Enge
  2023-02-22 14:23           ` Python Andreas Enge
  2023-02-23 15:16           ` Python Andreas Enge
  0 siblings, 2 replies; 41+ messages in thread
From: Andreas Enge @ 2023-02-21 16:41 UTC (permalink / raw)
  To: guix-devel

Am Sun, Feb 19, 2023 at 09:31:44PM +0100 schrieb Andreas Enge:
> And yet another one: python-testtool
> FAIL: testtools.tests.test_testresult.TestNonAsciiResults.test_syntax_error
> FAIL: testtools.tests.test_testresult.TestNonAsciiResultsWithUnittest.test_syntax_error

This is reported upstream here:
   https://github.com/testing-cabal/testtools/issues/333
No patch yet.

Andreas



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

* Re: Python
  2023-02-21 16:41         ` Python Andreas Enge
@ 2023-02-22 14:23           ` Andreas Enge
  2023-02-23 15:16           ` Python Andreas Enge
  1 sibling, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2023-02-22 14:23 UTC (permalink / raw)
  To: guix-devel

In my goal of building calibre on core-updates, I encounter many build failures.
The Python package graph seems to be extremely entangled, with dependencies
on specific input package and even Python versions.

The only approach I could imagine is updating to newer versions, and this
solved some of the build failures (but not all of them). I have pushed a
few commits to core-updates. Please feel free to revert them if this is not
the good approach.

It would be nice if the Python team could take over, and more people joined
the team :)

Andreas



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

* Re: Python
  2023-02-21 16:41         ` Python Andreas Enge
  2023-02-22 14:23           ` Python Andreas Enge
@ 2023-02-23 15:16           ` Andreas Enge
  2023-02-24 16:47             ` Python Andreas Enge
  1 sibling, 1 reply; 41+ messages in thread
From: Andreas Enge @ 2023-02-23 15:16 UTC (permalink / raw)
  To: guix-devel

Another very problematic python package:
   python-sgmllib3k

It fails its tests in core-updates.

Unmaintained since 2010, the author states that they do not wish to maintain it.

Some dependencies:
Building the following 6 packages would ensure 8 dependent packages are rebuilt: emacs-calibredb@2.12.0 limnoria@2019.11.22 rss2email@3.14 quodlibet@4.5.0 python-woob@3.0 gfeeds@1.0.3

There is calibre before (behind?) emacs-calibredb. It would be good to see
if newer versions of the dependents can do without, or if otherwise they
could be dropped.

Andreas



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

* Re: Python
  2023-02-23 15:16           ` Python Andreas Enge
@ 2023-02-24 16:47             ` Andreas Enge
  2023-02-24 16:51               ` Python Andreas Enge
  2023-02-24 18:08               ` Python Lars-Dominik Braun
  0 siblings, 2 replies; 41+ messages in thread
From: Andreas Enge @ 2023-02-24 16:47 UTC (permalink / raw)
  To: guix-devel

Yet another python failure: python-pathlib

import pathlib
  File "/tmp/guix-build-python-pathlib-1.0.1.drv-0/pathlib-1.0.1/pathlib.py", line 10, in <module>
    from collections import Sequence
ImportError: cannot import name 'Sequence' from 'collections' (/gnu/store/blals34ar25fiifvm17m2b504waxzys0-python-3.10.7/lib/python3.10/collections/__init__.py)
error: in phase 'build': uncaught exception:
%exception #<&invoke-error program: "python" arguments: ("-c" "import setuptools, tokenize;__file__='setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\\r\\n', '\\n');f.close();exec(compile(code, __file__, 'exec'))" "build") exit-status: 1 term-signal: #f stop-signal: #f>
phase `build' failed after 0.2 seconds
command "python" "-c" "import setuptools, tokenize;__file__='setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\\r\\n', '\\n');f.close();exec(compile(code, __file__, 'exec'))" "build" failed with status 1
note: keeping build directory `/tmp/guix-build-python-pathlib-1.0.1.drv-0'
builder for `/gnu/store/3j0y64p8cp8kcgmmpxmnhjqglvagi6g7-python-pathlib-1.0.1.drv' failed with exit code 1
build of /gnu/store/3j0y64p8cp8kcgmmpxmnhjqglvagi6g7-python-pathlib-1.0.1.drv failed
View build log at '/var/log/guix/drvs/3j/0y64p8cp8kcgmmpxmnhjqglvagi6g7-python-pathlib-1.0.1.drv.gz'.

Materially, it does not look very difficult. It is probably enough to replace
   from collections import Sequence
by
   from collections.abc import Sequence

Metaphysically, this is a package with its latest release in 2014 (!),
the vcs page has disappeared, but it has many dependencies:

Building the following 87 packages would ensure 209 dependent packages are rebuilt: instantmusic@1.0-1.300891d conda@22.9.0 python-nb-clean@2.1.0 python-pytest-perf@0.12.0 fdroidserver@1.1.9 python-regions@0.7 python-photutils@1.6.0 python-poppy@1.0.3 python-biom-format@2.1.12 python-ipython-documentation@8.2.0 python-iml@0.6.2 python-slurm-magic@0.0-0.73dd1a2 python-pytest-exploratory@0.5 python-enoslib@8.0.1 pgcli@3.2.0 autokey@0.95.10 python-pyfuse3@3.2.1 python-telethon@1.17.5 emacs-calibredb@2.12.0 python-astroquery@0.4.6 vorta@0.8.7 cura@4.13.1 komikku@1.9.0 jrnl@1.9.7 python-harmony@0.7.1 caja-extensions@1.24.1 gourmet@0.17.4-0.8af29c8 python-swiftclient@4.0.1 dbxfs@1.0.63 linuxdcpp@1.1.0 ikiwiki@3.20200202.3 breezy@3.2.2 vembrane@0.13.2 python-nanopb@0.4.6.4 python-pynixutil@0.5.0 openconnect-sso@0.8.0 qtile@0.18.1 electrum@4.3.2 pantalaimon@0.10.5 weechat-matrix@0.3.0 snakemake@6.15.5 snakemake@7.7.0 python-trio-websocket@0.9.2 python-commonroad-route-planner@2022.3 python-sunpy@4.1.1 trytond-currency-rs@6.2.0 trytond-stock-package-shipping-mygls@6.2.1 trytond-stock-package-shipping-dpd@6.2.3 python-mailman-hyperkitty@1.2.0 python-falcon-cors@1.1.7 python-ajsonrpc@1.2.0 python-ipdb@0.13.9 python-hicexplorer@3.7.2 xeus@2.4.1 python-bash-kernel@0.7.2 r-torch@0.9.0 python-cleanlab@2.2.0 python-pari-jupyter@1.4.1 orange@3.32.0 python-ipython-cluster-helper@0.6.4 python-numpy-documentation@1.23.2 rfcat@1.9.6 ruby-iruby@0.3 nanosv@1.2.4 flair@1.6.4 tombo@1.5.1 archivebox@0.6.2 r-millefy@0.1.9-beta python-jupytext@1.14.1 python-ikarus@0.0.2 python-sparqlkernel@1.3.0 python-nbdime@3.1.1 nikola@8.2.2 pigx-sars-cov-2@0.0.8 pigx@0.0.3 python-pytest-check-links@0.3.0 python-multivelo@0.1.2 python-plotly@5.6.0 python-ipympl@0.9.1 python-ipydatawidgets@4.2.0 python-matplotlib-documentation@3.5.2 scregseg@0.1.1 r-irkernel@1.3.1 abjad-ext-ipython@3.3 guix-jupyter@0.2.2 python-jupyter-sphinx@0.3.2 python-cellbender@0.2.2

Why do so many maintained projects depend on an unmaintained library?

Andreas



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

* Re: Python
  2023-02-24 16:47             ` Python Andreas Enge
@ 2023-02-24 16:51               ` Andreas Enge
  2023-02-24 18:08               ` Python Lars-Dominik Braun
  1 sibling, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2023-02-24 16:51 UTC (permalink / raw)
  To: guix-devel

Am Fri, Feb 24, 2023 at 05:47:33PM +0100 schrieb Andreas Enge:
> Yet another python failure: python-pathlib

Maybe this is our fault; Debian has a pathlib2 package. Us too.
So we should try to see whether we can replace the dependency python-pathlib
by python-pathlib2.

Work for another day.

Andreas



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

* Re: Python
  2023-02-24 16:47             ` Python Andreas Enge
  2023-02-24 16:51               ` Python Andreas Enge
@ 2023-02-24 18:08               ` Lars-Dominik Braun
  2023-02-25 15:15                 ` Python Andreas Enge
  2023-02-27 18:55                 ` Python Efraim Flashner
  1 sibling, 2 replies; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-02-24 18:08 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Hi Andreas,

sorry, I can’t quite keep up with the Python issues on core-updates
right now :(

> Yet another python failure: python-pathlib
this is a backport of Python’s built-in pathlib library. It should be
dropped as a dependency for all of these packages, since our Python is >=
3.4 – the version pathlib was introduced into the standard library. And
then drop the package entirely.

Lars



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

* Re: Python
  2023-02-24 18:08               ` Python Lars-Dominik Braun
@ 2023-02-25 15:15                 ` Andreas Enge
  2023-02-25 15:45                   ` Python Lars-Dominik Braun
  2023-02-27 18:55                 ` Python Efraim Flashner
  1 sibling, 1 reply; 41+ messages in thread
From: Andreas Enge @ 2023-02-25 15:15 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Hello Lars,

Am Fri, Feb 24, 2023 at 07:08:44PM +0100 schrieb Lars-Dominik Braun:
> sorry, I can’t quite keep up with the Python issues on core-updates
> right now :(

thanks for your reply, this is very helpful, as I am more than insecure
when it comes to python packaging!

> > Yet another python failure: python-pathlib
> this is a backport of Python’s built-in pathlib library. It should be
> dropped as a dependency for all of these packages, since our Python is >=
> 3.4 – the version pathlib was introduced into the standard library. And
> then drop the package entirely.

Good, thanks for the info.

What generally makes me hesitant is that we are down to manual dependency
resolution without having a good overview:
I need python-json-spec, which so far had pathlib as an input.
When I drop pathlib, the package nevertheless fails to build due to its
own Collection.abc issue. So I tried to update it to the latest version.

This version requires python-importlib-metadata; not its latest version 6,
but something at least 5 and less than 6. We were still at 4.something.
So I have just updated it to 5.2.0, the latest version 5 from last December.
This gives me python-json-spec, so I am one step closer to calibre, which
I am interested in.

But python-importlib-metadata has 892 dependents (among which interesting
looking ones, such as freecad and gnome-terminal). I wonder whether I am not
breaking 891 dependents by enabling, maybe, the one that I am interested in.

Anyway, I am operating from the assumption that updating to a newer version
is always good, and that packages that do not build anymore will have to
be updated or patched themselves. Hopefully this is a reasonable assumption
in the python world... If not, please feel free to revert my changes and to
propose a different solution.

Andreas



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

* Re: Python
  2023-02-25 15:15                 ` Python Andreas Enge
@ 2023-02-25 15:45                   ` Lars-Dominik Braun
  2023-02-25 16:39                     ` Python Andreas Enge
  0 siblings, 1 reply; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-02-25 15:45 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Hi Andreas,

> This version requires python-importlib-metadata; not its latest version 6,
> but something at least 5 and less than 6. We were still at 4.something.
> So I have just updated it to 5.2.0, the latest version 5 from last December.
> This gives me python-json-spec, so I am one step closer to calibre, which
> I am interested in.
note that importlib-metadata is – again – part of the standard
library, as the table on [1] points out. So if we would ship Python 3.12,
we would not need it. Bumping it to version 5.2 seems like the correct
approach right now, since we’re at 3.10.7 on core-updates (as far as I see).

> But python-importlib-metadata has 892 dependents (among which interesting
> looking ones, such as freecad and gnome-terminal). I wonder whether I am not
> breaking 891 dependents by enabling, maybe, the one that I am interested in.
Besides the 'sanity-check phase, which checks for the most common issues,
the only thing we can do is rebuild and run tests. Since Python is a
dynamic language that still does not guarantee that it will run, but
it’s all we can realisically do -.-

Cheers,
Lars

[1] https://pypi.org/project/importlib-metadata/



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

* Re: Python
  2023-02-25 15:45                   ` Python Lars-Dominik Braun
@ 2023-02-25 16:39                     ` Andreas Enge
  2023-02-25 16:56                       ` Python Lars-Dominik Braun
  0 siblings, 1 reply; 41+ messages in thread
From: Andreas Enge @ 2023-02-25 16:39 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sat, Feb 25, 2023 at 04:45:39PM +0100 schrieb Lars-Dominik Braun:
> note that importlib-metadata is – again – part of the standard
> library, as the table on [1] points out. So if we would ship Python 3.12,
> we would not need it. Bumping it to version 5.2 seems like the correct
> approach right now, since we’re at 3.10.7 on core-updates (as far as I see).

Very interesting! I am just not used to these very dynamically changing
languages. After a bit of discussion, we recently decided with my coauthor
to assume the C99 standard in our library instead of C89 :)

Right now I am left with a number of test failures that look real and cannot
easily be solved by an upgrade (either because we are already on the latest
version or because the tests still fail): python-sgmllib3k, python-typeguard
and python-coveralls. See messages below.

Andreas


python-coveralls:
=================================== FAILURES ===================================
___________________ ReporterTest.test_reporter_with_branches ___________________

self = <tests.api.reporter_test.ReporterTest testMethod=test_reporter_with_branches>

    def test_reporter_with_branches(self):
        subprocess.call(['coverage', 'run', '--branch', '--omit=**/.tox/*',
                         'runtests.py'], cwd=EXAMPLE_DIR)
        results = Coveralls(repo_token='xxx').get_coverage()
        assert len(results) == 2

        # Branches are expressed as four values each in a flat list
        assert not len(results[0]['branches']) % 4
        assert not len(results[1]['branches']) % 4

>       assert_coverage(results[0], {
            'source': ('def hello():\n'
                       '    print(\'world\')\n\n\n'
                       'class Foo:\n'
                       '    """ Bar """\n\n\n'
                       'def baz():\n'
                       '    print(\'this is not tested\')\n\n'
                       'def branch(cond1, cond2):\n'
                       '    if cond1:\n'
                       '        print(\'condition tested both ways\')\n'
                       '    if cond2:\n'
                       '        print(\'condition not tested both ways\')\n'),
            'name': 'project.py',
            'branches': [13, 0, 14, 1, 13, 0, 15, 1, 15, 0, 16, 1, 15, 0, 12,
                         0],
            'coverage': [1, 1, None, None, 1, None, None,
                         None, 1, 0, None, 1, 1, 1, 1, 1]})

/tmp/guix-build-python-coveralls-3.2.0.drv-0/source/tests/api/reporter_test.py:182:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

actual = {'branches': [5, 0, 6, 1, 5, 0, ...], 'coverage': [1, 1, None, None, 1, None, ...], 'name': 'project.py', 'source': 'd...1:\n        print(\'condition tested both ways\')\n    if cond2:\n        print(\'condition not tested both ways\')\n'}
expected = {'branches': [13, 0, 14, 1, 13, 0, ...], 'coverage': [1, 1, None, None, 1, None, ...], 'name': 'project.py', 'source':...1:\n        print(\'condition tested both ways\')\n    if cond2:\n        print(\'condition not tested both ways\')\n'}

    def assert_coverage(actual, expected):
        assert actual['source'].strip() == expected['source'].strip()
        assert actual['name'] == expected['name']
        assert actual['coverage'] == expected['coverage']
>       assert actual.get('branches') == expected.get('branches')
E       assert [5, 0, 6, 1, 5, 0, 9, 1, 13, 0, 14, 1, 13, 0, 15, 1, 15, 0, 16, 1, 15, 0, 12, 0] == [13, 0, 14, 1, 13, 0, 15, 1, 15, 0, 16, 1, 15, 0, 12, 0]
E         At index 0 diff: 5 != 13
E         Left contains 8 more items, first extra item: 15
E         Full diff:
E         - [13, 0, 14, 1, 13, 0, 15, 1, 15, 0, 16, 1, 15, 0, 12, 0]
E         + [5, 0, 6, 1, 5, 0, 9, 1, 13, 0, 14, 1, 13, 0, 15, 1, 15, 0, 16, 1, 15, 0, 12, 0]
E         ?  ++++++++++++++++++++++++

/tmp/guix-build-python-coveralls-3.2.0.drv-0/source/tests/api/reporter_test.py:17: AssertionError
----------------------------- Captured stdout call -----------------------------
world
condition not tested both ways
condition tested both ways
condition not tested both ways
=========================== short test summary info ============================
FAILED tests/api/reporter_test.py::ReporterTest::test_reporter_with_branches
=================== 1 failed, 51 passed, 1 skipped in 2.51s ====================
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "pytest" arguments: ("-vv") exit-status: 1 term-signal: #f stop-signal: #f>
phase `check' failed after 2.8 seconds
command "pytest" "-vv" failed with status 1
builder for `/gnu/store/2f7hab84ljj1k284w61zn14cbapzfdnf-python-coveralls-3.2.0.drv' failed with exit code 1
build of /gnu/store/2f7hab84ljj1k284w61zn14cbapzfdnf-python-coveralls-3.2.0.drv failed
View build log at '/var/log/guix/drvs/2f/7hab84ljj1k284w61zn14cbapzfdnf-python-coveralls-3.2.0.drv.gz'.


python-sgmllib3k:
======================================================================
FAIL: test_declaration_junk_chars (test_sgmllib.SGMLParserTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-python-sgmllib3k-1.0.0-1.7999646.drv-0/source/test_sgmllib.py", line 310, in test_declaration_junk_chars
    self.check_parse_error("<!DOCTYPE foo $ >")
  File "/tmp/guix-build-python-sgmllib3k-1.0.0-1.7999646.drv-0/source/test_sgmllib.py", line 127, in check_parse_error
    parser.feed(source)
  File "/tmp/guix-build-python-sgmllib3k-1.0.0-1.7999646.drv-0/source/sgmllib.py", line 98, in feed
    self.goahead(0)
  File "/tmp/guix-build-python-sgmllib3k-1.0.0-1.7999646.drv-0/source/sgmllib.py", line 168, in goahead
    k = self.parse_declaration(i)
  File "/gnu/store/blals34ar25fiifvm17m2b504waxzys0-python-3.10.7/lib/python3.10/_markupbase.py", line 134, in parse_declaration
    raise AssertionError("unexpected %r char in declaration" % rawdata[j])
AssertionError: unexpected '$' char in declaration

----------------------------------------------------------------------
Ran 23 tests in 0.008s

FAILED (failures=1)
Test failed: <unittest.runner.TextTestResult run=23 errors=0 failures=1>
error: Test failed: <unittest.runner.TextTestResult run=23 errors=0 failures=1>
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "python" arguments: ("-c" "import setuptools, tokenize;__file__='setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\\r\\n', '\\n');f.close();exec(compile(code, __file__, 'exec'))" "test") exit-status: 1 term-signal: #f stop-signal: #f> 
phase `check' failed after 0.3 seconds
command "python" "-c" "import setuptools, tokenize;__file__='setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\\r\\n', '\\n');f.close();exec(compile(code, __file__, 'exec'))" "test" failed with status 1
builder for `/gnu/store/cp8sgcp3c1599dzjwmfms38jz3iddyk1-python-sgmllib3k-1.0.0-1.7999646.drv' failed with exit code 1
build of /gnu/store/cp8sgcp3c1599dzjwmfms38jz3iddyk1-python-sgmllib3k-1.0.0-1.7999646.drv failed
View build log at '/var/log/guix/drvs/cp/8sgcp3c1599dzjwmfms38jz3iddyk1-python-sgmllib3k-1.0.0-1.7999646.drv.gz'.


python-typeguard:
=================================== FAILURES ===================================
___________________ TestTypeChecked.test_typed_dict[correct] ___________________
tests/test_typeguard.py:1343: in test_typed_dict
    foo(value)
/gnu/store/qmli9ql0wplg1hyacy07kvgaqbpfa11z-python-typeguard-2.13.3/lib/python3.10/site-packages/typeguard/__init__.py:1032: in wrapper
    check_argument_types(memo)
/gnu/store/qmli9ql0wplg1hyacy07kvgaqbpfa11z-python-typeguard-2.13.3/lib/python3.10/site-packages/typeguard/__init__.py:875: in check_argument_types
    raise TypeError(*exc.args) from None
E   TypeError: TypedDict does not support instance and class checks
__________________ TestTypeChecked.test_typed_dict[missing_x] __________________
tests/test_typeguard.py:1341: in test_typed_dict
    pytest.raises(TypeError, foo, value).match(error_re)
E   AssertionError: Regex pattern 'required key\\(s\\) \\("x"\\) missing from argument "arg"' does not match 'TypedDict does not support instance and class checks'.
___________________ TestTypeChecked.test_typed_dict[wrong_y] ___________________
tests/test_typeguard.py:1341: in test_typed_dict
    pytest.raises(TypeError, foo, value).match(error_re)
E   AssertionError: Regex pattern 'type of dict item "y" for argument "arg" must be str; got int instead' does not match 'TypedDict does not support instance and class checks'.
_______________ TestTypeChecked.test_typed_dict[missing_y_error] _______________
tests/test_typeguard.py:1341: in test_typed_dict
    pytest.raises(TypeError, foo, value).match(error_re)
E   AssertionError: Regex pattern 'required key\\(s\\) \\("y"\\) missing from argument "arg"' does not match 'TypedDict does not support instance and class checks'.
________________ TestTypeChecked.test_typed_dict[missing_y_ok] _________________
tests/test_typeguard.py:1343: in test_typed_dict
    foo(value)
/gnu/store/qmli9ql0wplg1hyacy07kvgaqbpfa11z-python-typeguard-2.13.3/lib/python3.10/site-packages/typeguard/__init__.py:1032: in wrapper
    check_argument_types(memo)
/gnu/store/qmli9ql0wplg1hyacy07kvgaqbpfa11z-python-typeguard-2.13.3/lib/python3.10/site-packages/typeguard/__init__.py:875: in check_argument_types
    raise TypeError(*exc.args) from None
E   TypeError: TypedDict does not support instance and class checks
___________________ TestTypeChecked.test_typed_dict[wrong_x] ___________________
tests/test_typeguard.py:1341: in test_typed_dict
    pytest.raises(TypeError, foo, value).match(error_re)
E   AssertionError: Regex pattern 'type of dict item "x" for argument "arg" must be int; got str instead' does not match 'TypedDict does not support instance and class checks'.
_________________ TestTypeChecked.test_typed_dict[unknown_key] _________________
tests/test_typeguard.py:1341: in test_typed_dict
    pytest.raises(TypeError, foo, value).match(error_re)
E   AssertionError: Regex pattern 'extra key\\(s\\) \\("foo"\\) in argument "arg"' does not match 'TypedDict does not support instance and class checks'.
=============================== warnings summary ===============================
tests/test_typeguard.py::TestTypeChecker::test_generator
tests/test_typeguard.py::TestTypeChecker::test_exception
tests/test_typeguard_py36.py::TestTypeChecker::test_async_generator[generator]
tests/test_typeguard_py36.py::TestTypeChecker::test_async_generator[iterable]
tests/test_typeguard_py36.py::TestTypeChecker::test_async_generator[iterator]
  /gnu/store/fgbf94ab19n90rsz6h7vrvqyw17w9kqa-python-pytest-7.1.3/lib/python3.10/site-packages/_pytest/python.py:192: PytestRemovedIn8Warning: Passing None has been deprecated.
  See https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests for alternatives in common use cases.
    result = testfunction(**testargs)

tests/test_typeguard_py36.py::TestTypeChecker::test_callable
  /gnu/store/qmli9ql0wplg1hyacy07kvgaqbpfa11z-python-typeguard-2.13.3/lib/python3.10/site-packages/typeguard/__init__.py:1027: UserWarning: no code associated -- not typechecking test_typeguard_py36.<test_typeguard_py36.TestTypeChecker.test_callable.<locals>.command object at 0x7ffff5d4a800>
    warn('no code associated -- not typechecking {}'.format(function_name(func)))

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========== 7 failed, 233 passed, 3 deselected, 6 warnings in 2.13s ============
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "pytest" arguments: ("-vv" "-k" "not usefixtures and not test_cached_module") exit-status: 1 term-signal: #f stop-signal: #f> 
phase `check' failed after 2.5 seconds
command "pytest" "-vv" "-k" "not usefixtures and not test_cached_module" failed with status 1
builder for `/gnu/store/l9gb4nadq9c43zn82wqbxmwgib7bkqqs-python-typeguard-2.13.3.drv' failed with exit code 1
build of /gnu/store/l9gb4nadq9c43zn82wqbxmwgib7bkqqs-python-typeguard-2.13.3.drv failed
View build log at '/var/log/guix/drvs/l9/gb4nadq9c43zn82wqbxmwgib7bkqqs-python-typeguard-2.13.3.drv.gz'.



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

* Re: Python
  2023-02-25 16:39                     ` Python Andreas Enge
@ 2023-02-25 16:56                       ` Lars-Dominik Braun
  2023-02-25 18:00                         ` Python Andreas Enge
  2023-03-15 13:49                         ` Python Andreas Enge
  0 siblings, 2 replies; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-02-25 16:56 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Hi,

> Right now I am left with a number of test failures that look real and cannot
> easily be solved by an upgrade (either because we are already on the latest
> version or because the tests still fail): python-sgmllib3k, python-typeguard
> and python-coveralls. See messages below.
I don’t know for sure why any of these packages’ tests fail. typeguard
looks like it expects specific strings from Python or one of its libraries
– safe to ignore. sgmllib3k looks pretty dead upstream. Perhaps it’s
not even needed any more? Updates to Python packages (via `guix refresh`)
do not update dependencies and thus the list of inputs/native-inputs
are most likely outdated.

Well, there are reasons no-one is updating the Python ecosystem
regularly…

Cheers,
Lars



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

* Re: Python
  2023-02-19 20:27           ` Python Andreas Enge
@ 2023-02-25 17:44             ` Andreas Enge
  0 siblings, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2023-02-25 17:44 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sun, Feb 19, 2023 at 09:27:23PM +0100 schrieb Andreas Enge:
> Am Sun, Feb 19, 2023 at 04:50:37PM +0100 schrieb Lars-Dominik Braun:
> > eolie upstream looks dead, same with jrnl.

Removed.

> I found python-miio, which depends on python-android-backup, which depends
> on python-pycrypto.
> The first one looks alive with a new release last July, the middle one
> looks dead.
> Looking at
>    https://github.com/rytilahti/python-miio/blob/master/pyproject.toml
> android-backup appears to be an optional dependency.

python-miio updated, python-android-backup removed.

I also removed python-potr and python-pycrypto;
which naturally led me to removing python-potr from the inputs of poezio.

OTR is marked as a plugin of poezio, but apparently needed for its tests
to pass. I disabled the tests for the time being. The egg information also
mentions potr as a requirement. I could not test the package, since upon
startup it complains about unicode and locales.

If someone else could have a look, that would be good. If potr is indeed
a requirement, we should remove poezio also: We should not ship
unmaintained cryptography software.

Andreas



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

* Re: Python
  2023-02-25 16:56                       ` Python Lars-Dominik Braun
@ 2023-02-25 18:00                         ` Andreas Enge
  2023-02-25 18:06                           ` Python Andreas Enge
                                             ` (2 more replies)
  2023-03-15 13:49                         ` Python Andreas Enge
  1 sibling, 3 replies; 41+ messages in thread
From: Andreas Enge @ 2023-02-25 18:00 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sat, Feb 25, 2023 at 05:56:59PM +0100 schrieb Lars-Dominik Braun:
> Well, there are reasons no-one is updating the Python ecosystem
> regularly…

;-)

> I don’t know for sure why any of these packages’ tests fail. typeguard
> looks like it expects specific strings from Python or one of its libraries
> – safe to ignore.

So you suggest to add a #:test? #f?

> sgmllib3k looks pretty dead upstream. Perhaps it’s
> not even needed any more? Updates to Python packages (via `guix refresh`)
> do not update dependencies and thus the list of inputs/native-inputs
> are most likely outdated.

Indeed, dead upstream. It has two dependents:
quodlibet in the music module. There it is given as an input, but I do not
see it in the pyproject.toml file, so it may indeed not be needed.

It is also a propagated input of python-feedparser, which is an input to
quodlibet and a (small) number of other packages:
Building the following 6 packages would ensure 8 dependent packages are rebuilt: emacs-calibredb@2.12.0 limnoria@2019.11.22 rss2email@3.14 quodlibet@4.5.0 python-woob@3.0 gfeeds@1.0.3
We are at version 6.0.8 (from June 2021), but I also tried the latest
release 6.0.10 (from May 2022). Even in its git repository, the
pyproject.toml has this:
[tool.poetry.dependencies]
python = ">=3.7"
sgmllib3k = "^1.0.0"

And indeed, it does not build without.

One option would be to disable the tests of sgmllib3k; then it would be
nice if we could build any of the binaries depending on it to have a real
test case. But they all seem to have lots of other dependencies (for
instance python-cheetah for quodlibet, which also fails).

Andreas



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

* Re: Python
  2023-02-25 18:00                         ` Python Andreas Enge
@ 2023-02-25 18:06                           ` Andreas Enge
  2023-02-25 18:15                             ` Python Andreas Enge
  2023-02-25 18:29                           ` Python Andreas Enge
  2023-03-11 11:20                           ` Python Andreas Enge
  2 siblings, 1 reply; 41+ messages in thread
From: Andreas Enge @ 2023-02-25 18:06 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Python-cheetah is misnamed, it should be called python-cheetah3; the first
one is the python@2 version, both exist on pypi. Is it okay to rename it?
It looks like moderate work:

$ guix refresh -l python-cheetah
Die folgenden 6 Pakete zu erstellen, würde zur Folge haben, dass 9 abhängige Pakete neu erstellt werden: quodlibet@4.5.0 gr-dsd@1.0.0-0.f9b9936 gr-satellites@4.6.0 gqrx@2.15.9 urh@2.9.4 gnss-sdr@0.0.17

Andreas



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

* Re: Python
  2023-02-25 18:06                           ` Python Andreas Enge
@ 2023-02-25 18:15                             ` Andreas Enge
  2023-02-25 18:33                               ` Python Andreas Enge
  0 siblings, 1 reply; 41+ messages in thread
From: Andreas Enge @ 2023-02-25 18:15 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sat, Feb 25, 2023 at 07:06:31PM +0100 schrieb Andreas Enge:
> Python-cheetah is misnamed, it should be called python-cheetah3; the first
> one is the python@2 version, both exist on pypi. Is it okay to rename it?
> It looks like moderate work:
> 
> $ guix refresh -l python-cheetah
> Die folgenden 6 Pakete zu erstellen, würde zur Folge haben, dass 9 abhängige Pakete neu erstellt werden: quodlibet@4.5.0 gr-dsd@1.0.0-0.f9b9936 gr-satellites@4.6.0 gqrx@2.15.9 urh@2.9.4 gnss-sdr@0.0.17

Actually, upstream has changed its pypi name!
   https://pypi.org/project/CT3/

Andreas



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

* Re: Python
  2023-02-25 18:00                         ` Python Andreas Enge
  2023-02-25 18:06                           ` Python Andreas Enge
@ 2023-02-25 18:29                           ` Andreas Enge
  2023-03-11 11:20                           ` Python Andreas Enge
  2 siblings, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2023-02-25 18:29 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sat, Feb 25, 2023 at 07:00:30PM +0100 schrieb Andreas Enge:
> It is also a propagated input of python-feedparser

And this fails its tests after disabling the tests of python-sgmllib3k,
even after updating to its latest version 6.0.10, like below.

Then why I was at it, I also disabled the tests of python-feedparser.

But then quodlibet fails its tests...

Andreas


======================================================================
FAIL: test_000629 (__main__.TestStrictParser)
./tests/wellformed/sanitize/xml_declaration_unexpected_character.xml: xml declaration unexpected character
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-python-feedparser-6.0.10.drv-0/feedparser-6.0.10/tests/runtests.py", line 912, in fn
    self.fail_unless_eval(xmlfile, eval_string)
  File "/tmp/guix-build-python-feedparser-6.0.10.drv-0/feedparser-6.0.10/tests/runtests.py", line 173, in fail_unless_eval
    env = feedparser.parse(xmlfile)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/api.py", line 263, in parse
    saxparser.parse(source)
  File "/gnu/store/blals34ar25fiifvm17m2b504waxzys0-python-3.10.7/lib/python3.10/xml/sax/expatreader.py", line 111, in parse
    xmlreader.IncrementalParser.parse(self, source)
  File "/gnu/store/blals34ar25fiifvm17m2b504waxzys0-python-3.10.7/lib/python3.10/xml/sax/xmlreader.py", line 125, in parse
    self.feed(buffer)
  File "/gnu/store/blals34ar25fiifvm17m2b504waxzys0-python-3.10.7/lib/python3.10/xml/sax/expatreader.py", line 217, in feed
    self._parser.Parse(data, isFinal)
  File "./Modules/pyexpat.c", line 468, in EndElement
  File "/gnu/store/blals34ar25fiifvm17m2b504waxzys0-python-3.10.7/lib/python3.10/xml/sax/expatreader.py", line 381, in end_element_ns
    self._cont_handler.endElementNS(pair, None)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/parsers/strict.py", line 124, in endElementNS
    self.unknown_endtag(localname)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/mixin.py", line 321, in unknown_endtag
    method()
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/namespaces/_base.py", line 385, in _end_title
    value = self.pop_content('title')
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/mixin.py", line 629, in pop_content
    value = self.pop(tag)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/mixin.py", line 543, in pop
    output = resolve_relative_uris(output, self.baseuri, self.encoding, self.contentparams.get('type', 'text/html'))
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/urls.py", line 154, in resolve_relative_uris
    p.feed(html_source)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/html.py", line 156, in feed
    super(_BaseHTMLProcessor, self).feed(data)
  File "/gnu/store/map94l87lb8fxb6q0szwg02sq0r3s74w-python-sgmllib3k-1.0.0-1.7999646/lib/python3.10/site-packages/sgmllib.py", line 98, in feed
    self.goahead(0)
  File "/gnu/store/map94l87lb8fxb6q0szwg02sq0r3s74w-python-sgmllib3k-1.0.0-1.7999646/lib/python3.10/site-packages/sgmllib.py", line 168, in goahead
    k = self.parse_declaration(i)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/html.py", line 351, in parse_declaration
    return sgmllib.SGMLParser.parse_declaration(self, i)
  File "/gnu/store/blals34ar25fiifvm17m2b504waxzys0-python-3.10.7/lib/python3.10/_markupbase.py", line 134, in parse_declaration
    raise AssertionError("unexpected %r char in declaration" % rawdata[j])
AssertionError: unexpected '~' char in declaration

======================================================================
FAIL: test_000629 (__main__.TestLooseParser)
./tests/wellformed/sanitize/xml_declaration_unexpected_character.xml: xml declaration unexpected character
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/gnu/store/map94l87lb8fxb6q0szwg02sq0r3s74w-python-sgmllib3k-1.0.0-1.7999646/lib/python3.10/site-packages/sgmllib.py", line 352, in finish_endtag
    method = getattr(self, 'end_' + tag)
AttributeError: 'LooseFeedParser' object has no attribute 'end_title'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/tmp/guix-build-python-feedparser-6.0.10.drv-0/feedparser-6.0.10/tests/runtests.py", line 912, in fn
    self.fail_unless_eval(xmlfile, eval_string)
  File "/tmp/guix-build-python-feedparser-6.0.10.drv-0/feedparser-6.0.10/tests/runtests.py", line 173, in fail_unless_eval
    env = feedparser.parse(xmlfile)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/api.py", line 272, in parse
    feedparser.feed(data.decode('utf-8', 'replace'))
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/html.py", line 156, in feed
    super(_BaseHTMLProcessor, self).feed(data)
  File "/gnu/store/map94l87lb8fxb6q0szwg02sq0r3s74w-python-sgmllib3k-1.0.0-1.7999646/lib/python3.10/site-packages/sgmllib.py", line 98, in feed
    self.goahead(0)
  File "/gnu/store/map94l87lb8fxb6q0szwg02sq0r3s74w-python-sgmllib3k-1.0.0-1.7999646/lib/python3.10/site-packages/sgmllib.py", line 137, in goahead
    k = self.parse_endtag(i)
  File "/gnu/store/map94l87lb8fxb6q0szwg02sq0r3s74w-python-sgmllib3k-1.0.0-1.7999646/lib/python3.10/site-packages/sgmllib.py", line 314, in parse_endtag
    self.finish_endtag(tag)
  File "/gnu/store/map94l87lb8fxb6q0szwg02sq0r3s74w-python-sgmllib3k-1.0.0-1.7999646/lib/python3.10/site-packages/sgmllib.py", line 354, in finish_endtag
    self.unknown_endtag(tag)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/mixin.py", line 321, in unknown_endtag
    method()
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/namespaces/_base.py", line 385, in _end_title
    value = self.pop_content('title')
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/mixin.py", line 629, in pop_content
    value = self.pop(tag)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/mixin.py", line 543, in pop
    output = resolve_relative_uris(output, self.baseuri, self.encoding, self.contentparams.get('type', 'text/html'))
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/urls.py", line 154, in resolve_relative_uris
    p.feed(html_source)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/html.py", line 156, in feed
    super(_BaseHTMLProcessor, self).feed(data)
  File "/gnu/store/map94l87lb8fxb6q0szwg02sq0r3s74w-python-sgmllib3k-1.0.0-1.7999646/lib/python3.10/site-packages/sgmllib.py", line 98, in feed
    self.goahead(0)
  File "/gnu/store/map94l87lb8fxb6q0szwg02sq0r3s74w-python-sgmllib3k-1.0.0-1.7999646/lib/python3.10/site-packages/sgmllib.py", line 168, in goahead
    k = self.parse_declaration(i)
  File "/gnu/store/ipizx6yzh9ndb58xp0fhfmdgikw160d9-python-feedparser-6.0.10/lib/python3.10/site-packages/feedparser/html.py", line 351, in parse_declaration
    return sgmllib.SGMLParser.parse_declaration(self, i)
  File "/gnu/store/blals34ar25fiifvm17m2b504waxzys0-python-3.10.7/lib/python3.10/_markupbase.py", line 134, in parse_declaration
    raise AssertionError("unexpected %r char in declaration" % rawdata[j])
AssertionError: unexpected '~' char in declaration

----------------------------------------------------------------------
Ran 4335 tests in 3.675s

FAILED (failures=2)
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "python" arguments: ("tests/runtests.py") exit-status: 1 term-signal: #f stop-signal: #f>
phase `check' failed after 4.0 seconds
command "python" "tests/runtests.py" failed with status 1
builder for `/gnu/store/xdmf42yd69nhbrwvjs5fhqz2m2774xc7-python-feedparser-6.0.10.drv' failed with exit code 1
build of /gnu/store/xdmf42yd69nhbrwvjs5fhqz2m2774xc7-python-feedparser-6.0.10.drv failed
View build log at '/var/log/guix/drvs/xd/mf42yd69nhbrwvjs5fhqz2m2774xc7-python-feedparser-6.0.10.drv.gz'.




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

* Re: Python
  2023-02-25 18:15                             ` Python Andreas Enge
@ 2023-02-25 18:33                               ` Andreas Enge
  2023-02-27 19:14                                 ` Python Lars-Dominik Braun
  0 siblings, 1 reply; 41+ messages in thread
From: Andreas Enge @ 2023-02-25 18:33 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sat, Feb 25, 2023 at 07:15:24PM +0100 schrieb Andreas Enge:
> Actually, upstream has changed its pypi name!
>    https://pypi.org/project/CT3/

I updated it to its latest version under its current name python-cheetah,
but would suggest to rename it to python-ct3. What do you think?

Andreas



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

* Re: Python
  2023-02-24 18:08               ` Python Lars-Dominik Braun
  2023-02-25 15:15                 ` Python Andreas Enge
@ 2023-02-27 18:55                 ` Efraim Flashner
  2023-02-27 19:12                   ` Python Lars-Dominik Braun
  1 sibling, 1 reply; 41+ messages in thread
From: Efraim Flashner @ 2023-02-27 18:55 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: Andreas Enge, guix-devel

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

On Fri, Feb 24, 2023 at 07:08:44PM +0100, Lars-Dominik Braun wrote:
> Hi Andreas,
> 
> sorry, I can’t quite keep up with the Python issues on core-updates
> right now :(
> 
> > Yet another python failure: python-pathlib
> this is a backport of Python’s built-in pathlib library. It should be
> dropped as a dependency for all of these packages, since our Python is >=
> 3.4 – the version pathlib was introduced into the standard library. And
> then drop the package entirely.

Do we have a list of packages in the python importer that can be removed
from inputs? Like already exists for hackage (and maybe others)?

-- 
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] 41+ messages in thread

* Re: Python
  2023-02-27 18:55                 ` Python Efraim Flashner
@ 2023-02-27 19:12                   ` Lars-Dominik Braun
  0 siblings, 0 replies; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-02-27 19:12 UTC (permalink / raw)
  To: Andreas Enge, guix-devel, Efraim Flashner

Hi,

> Do we have a list of packages in the python importer that can be removed
> from inputs? Like already exists for hackage (and maybe others)?
I’m not aware of any list like that and to compile it we’d probably
have to build all python-* packages and check whether any of their
installed modules collides with anything the python package itself
provides (where collision does not necessarily mean file collision,
but package namespace collision in the Python world).

Cheers,
Lars



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

* Re: Python
  2023-02-25 18:33                               ` Python Andreas Enge
@ 2023-02-27 19:14                                 ` Lars-Dominik Braun
  2023-02-28 15:05                                   ` Python Andreas Enge
  0 siblings, 1 reply; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-02-27 19:14 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Hi,

> I updated it to its latest version under its current name python-cheetah,
> but would suggest to rename it to python-ct3. What do you think?

I don’t think we should follow PyPi’s names strictly. python-cheetah3
makes much more sense than python-ct3. That’s what upstream-name is for.

Lars



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

* Re: Python
  2023-02-27 19:14                                 ` Python Lars-Dominik Braun
@ 2023-02-28 15:05                                   ` Andreas Enge
  0 siblings, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2023-02-28 15:05 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Mon, Feb 27, 2023 at 08:14:54PM +0100 schrieb Lars-Dominik Braun:
> I don’t think we should follow PyPi’s names strictly. python-cheetah3
> makes much more sense than python-ct3. That’s what upstream-name is for.

Okay, I am fine with doing nothing :)

Andreas



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

* Re: Python
  2023-02-25 18:00                         ` Python Andreas Enge
  2023-02-25 18:06                           ` Python Andreas Enge
  2023-02-25 18:29                           ` Python Andreas Enge
@ 2023-03-11 11:20                           ` Andreas Enge
  2023-03-11 11:44                             ` Python Andreas Enge
  2 siblings, 1 reply; 41+ messages in thread
From: Andreas Enge @ 2023-03-11 11:20 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sat, Feb 25, 2023 at 07:00:30PM +0100 schrieb Andreas Enge:
> > sgmllib3k looks pretty dead upstream. Perhaps it’s
> > not even needed any more? Updates to Python packages (via `guix refresh`)
> > do not update dependencies and thus the list of inputs/native-inputs
> > are most likely outdated.
> It is also a propagated input of python-feedparser

There is a bug report for feedparser:
   https://github.com/kurtmckee/feedparser/issues/328
Unfortunately it was immediately closed with a link to an alternative
project by the feedparser author, but which has seen its latest release
in January 2022. This is not very encouraging...

Andreas



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

* Re: Python
  2023-03-11 11:20                           ` Python Andreas Enge
@ 2023-03-11 11:44                             ` Andreas Enge
  0 siblings, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2023-03-11 11:44 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sat, Mar 11, 2023 at 12:20:25PM +0100 schrieb Andreas Enge:
> There is a bug report for feedparser:
>    https://github.com/kurtmckee/feedparser/issues/328
> Unfortunately it was immediately closed with a link to an alternative
> project by the feedparser author, but which has seen its latest release
> in January 2022. This is not very encouraging...

I have added a comment to the issue (hoping that it will be seen although
the issue is closed) and have taken the liberty to upgrade the package
to its latest version. According to the NEWS file very little changed.
I had some hope that we might just patch out the use of sgmllib3k, but
it looks rather central and is apparently used to parse not only broken
XML, but any XML/HTML:
./feedparser/html.py:64:class _BaseHTMLProcessor(sgmllib.SGMLParser, object):

Andreas



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

* Re: Python
  2023-02-25 16:56                       ` Python Lars-Dominik Braun
  2023-02-25 18:00                         ` Python Andreas Enge
@ 2023-03-15 13:49                         ` Andreas Enge
  2023-03-18  8:59                           ` Python Lars-Dominik Braun
  2023-03-18  9:43                           ` Python Lars-Dominik Braun
  1 sibling, 2 replies; 41+ messages in thread
From: Andreas Enge @ 2023-03-15 13:49 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Hello,

Am Sat, Feb 25, 2023 at 05:56:59PM +0100 schrieb Lars-Dominik Braun:
> > Right now I am left with a number of test failures that look real and cannot
> > easily be solved by an upgrade (either because we are already on the latest
> > version or because the tests still fail): python-sgmllib3k, python-typeguard
> > and python-coveralls. See messages below.
> I don’t know for sure why any of these packages’ tests fail. typeguard
> looks like it expects specific strings from Python or one of its libraries
> – safe to ignore.

would you mind having a look how we should proceed? Fix tests or disable
specific ones that you deem safe to ignore?

> sgmllib3k looks pretty dead upstream. Perhaps it’s
> not even needed any more? Updates to Python packages (via `guix refresh`)
> do not update dependencies and thus the list of inputs/native-inputs
> are most likely outdated.

This one is used for python-feedparser, used for calibre and quodlibet.
The feedparser author is not enclined to work on it:
   https://github.com/kurtmckee/feedparser/issues/328
I would suggest to try compiling python-sgmllib3k (and potentially
python-feedparser) without the tests, and see whether calibre still works.
But for this, we first need to get all other inputs of calibre into working
shape.

Andreas



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

* Re: Python
  2023-03-15 13:49                         ` Python Andreas Enge
@ 2023-03-18  8:59                           ` Lars-Dominik Braun
  2023-03-18  9:15                             ` Python Andreas Enge
  2023-03-18  9:43                           ` Python Lars-Dominik Braun
  1 sibling, 1 reply; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-03-18  8:59 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Hello Andreas,

> This one is used for python-feedparser, used for calibre and quodlibet.
> The feedparser author is not enclined to work on it:
>    https://github.com/kurtmckee/feedparser/issues/328
> I would suggest to try compiling python-sgmllib3k (and potentially
> python-feedparser) without the tests, and see whether calibre still works.
> But for this, we first need to get all other inputs of calibre into working
> shape.
I fixed both python-sgmllib3k and python-feedparser. Disabling tests
would not do much in this case, since the packages really *were* broken
by a Python upstream change.

f9bff8614be32f9c2c1a54da80eaed1365b49be3 gnu: python-feedparser: Add Python >=3.9 compatibility.
cfccd6fe5ae00d7e81cd755be55d51ff3bf17186 gnu: python-sgmllib3k: Add Python >=3.9 compatibility.

Cheers,
Lars



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

* Re: Python
  2023-03-18  8:59                           ` Python Lars-Dominik Braun
@ 2023-03-18  9:15                             ` Andreas Enge
  2023-03-18 10:02                               ` Python Lars-Dominik Braun
  0 siblings, 1 reply; 41+ messages in thread
From: Andreas Enge @ 2023-03-18  9:15 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Hello Lars,

Am Sat, Mar 18, 2023 at 09:59:37AM +0100 schrieb Lars-Dominik Braun:
> I fixed both python-sgmllib3k and python-feedparser. Disabling tests
> would not do much in this case, since the packages really *were* broken
> by a Python upstream change.

excellent! It contradicts the feedparser author's statement that everything
works well, so if you have the courage, maybe you could report the issue
upstream.

Thanks, more things that work!

Andreas



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

* Re: Python
  2023-03-15 13:49                         ` Python Andreas Enge
  2023-03-18  8:59                           ` Python Lars-Dominik Braun
@ 2023-03-18  9:43                           ` Lars-Dominik Braun
  2023-03-18 19:37                             ` Python Andreas Enge
  1 sibling, 1 reply; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-03-18  9:43 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Hi again,

> > > Right now I am left with a number of test failures that look real and cannot
> > > easily be solved by an upgrade (either because we are already on the latest
> > > version or because the tests still fail): python-sgmllib3k, python-typeguard
> > > and python-coveralls. See messages below.
> > I don’t know for sure why any of these packages’ tests fail. typeguard
> > looks like it expects specific strings from Python or one of its libraries
> > – safe to ignore.
> 
> would you mind having a look how we should proceed? Fix tests or disable
> specific ones that you deem safe to ignore?

python-typeguard and python-coveralls are functional again:

d9a31cd34eb9f63460d74d3cfff0190f964f48f4 gnu: python-coveralls: Disable failing test and relax version requirements.
a7c96167ae8748a8b76fabaf74a997094cdf7fc5 gnu: python-typeguard: Python 3.10 compatibility.

Anything else that needs work?

Cheers,
Lars



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

* Re: Python
  2023-03-18  9:15                             ` Python Andreas Enge
@ 2023-03-18 10:02                               ` Lars-Dominik Braun
  2023-03-18 10:13                                 ` Python Andreas Enge
  0 siblings, 1 reply; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-03-18 10:02 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Hello Andreas,

> excellent! It contradicts the feedparser author's statement that everything
> works well, so if you have the courage, maybe you could report the issue
> upstream.

I just saw it was fixed on the develop branch already, but there’s no
new release:
https://github.com/kurtmckee/feedparser/commit/c55bd8ad37db89bd219783bc514d600c9523ed38

Cheers,
Lars



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

* Re: Python
  2023-03-18 10:02                               ` Python Lars-Dominik Braun
@ 2023-03-18 10:13                                 ` Andreas Enge
  0 siblings, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2023-03-18 10:13 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sat, Mar 18, 2023 at 11:02:57AM +0100 schrieb Lars-Dominik Braun:
> I just saw it was fixed on the develop branch already, but there’s no
> new release:
> https://github.com/kurtmckee/feedparser/commit/c55bd8ad37db89bd219783bc514d600c9523ed38

This dates from 2021, but strangely is not part of any of the 8 releases
made till then.

Andreas



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

* Re: Python
  2023-03-18  9:43                           ` Python Lars-Dominik Braun
@ 2023-03-18 19:37                             ` Andreas Enge
  2023-03-21 18:56                               ` Python Lars-Dominik Braun
  2023-03-30 11:05                               ` Python Lars-Dominik Braun
  0 siblings, 2 replies; 41+ messages in thread
From: Andreas Enge @ 2023-03-18 19:37 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Sat, Mar 18, 2023 at 10:43:17AM +0100 schrieb Lars-Dominik Braun:
> Anything else that needs work?

Well, there is pyqt as written elsewhere, but this is not only python.

I just updated python-ipython to the first version that passes all tests
without any change, in the hope that this would have the least impact on
its dependents. Without luck, now python-trio fails. Updating this to the
latest version 0.22 does not help. I copy-paste the error message below.
If you could have a look, that would definitely be welcome.

Andreas


starting phase `check'
============================= test session starts ==============================
platform linux -- Python 3.10.7, pytest-7.1.3, pluggy-0.13.1 -- /gnu/store/82nin1sk01l31p5vpnz9c2ki76qka9b0-python-wrapper-3.10.7/bin/python
cachedir: .pytest_cache
hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase('/tmp/guix-build-python-trio-0.20.0.drv-0/trio-0.20.0/.hypothesis/examples')
rootdir: /tmp/guix-build-python-trio-0.20.0.drv-0/trio-0.20.0, configfile: pyproject.toml
plugins: hypothesis-6.54.5, xdist-2.5.0, cov-3.0.0, forked-1.4.0
gw0 I / gw1 I / gw2 I / gw3 I
[gw0] linux Python 3.10.7 cwd: /tmp/guix-build-python-trio-0.20.0.drv-0/trio-0.20.0
[gw1] linux Python 3.10.7 cwd: /tmp/guix-build-python-trio-0.20.0.drv-0/trio-0.20.0
[gw2] linux Python 3.10.7 cwd: /tmp/guix-build-python-trio-0.20.0.drv-0/trio-0.20.0
[gw3] linux Python 3.10.7 cwd: /tmp/guix-build-python-trio-0.20.0.drv-0/trio-0.20.0
[gw0] Python 3.10.7 (main, Jan  1 1970, 00:00:01) [GCC 11.3.0]
[gw1] Python 3.10.7 (main, Jan  1 1970, 00:00:01) [GCC 11.3.0]
[gw2] Python 3.10.7 (main, Jan  1 1970, 00:00:01) [GCC 11.3.0]
[gw3] Python 3.10.7 (main, Jan  1 1970, 00:00:01) [GCC 11.3.0]
gw0 [0] / gw1 [0] / gw2 [0] / gw3 [0]

scheduling tests via LoadScheduling

==================================== ERRORS ====================================
________________________ ERROR collecting test session _________________________
/gnu/store/i0d555a5fd7isi606aqqmbp5zgy9jh6p-python-3.10.7/lib/python3.10/importlib/__init__.py:126: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:1006: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:688: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:883: in exec_module
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
trio/__init__.py:18: in <module>
    from ._core import (
trio/_core/__init__.py:20: in <module>
    from ._multierror import MultiError
trio/_core/_multierror.py:511: in <module>
    warnings.warn(
E   RuntimeWarning: You seem to already have a custom sys.excepthook handler installed. I'll skip installing Trio's custom handler, but this means MultiErrors will not show full tracebacks.
________________________ ERROR collecting test session _________________________
/gnu/store/i0d555a5fd7isi606aqqmbp5zgy9jh6p-python-3.10.7/lib/python3.10/importlib/__init__.py:126: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:1006: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:688: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:883: in exec_module
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
trio/__init__.py:18: in <module>
    from ._core import (
trio/_core/__init__.py:20: in <module>
    from ._multierror import MultiError
trio/_core/_multierror.py:511: in <module>
    warnings.warn(
E   RuntimeWarning: You seem to already have a custom sys.excepthook handler installed. I'll skip installing Trio's custom handler, but this means MultiErrors will not show full tracebacks.
________________________ ERROR collecting test session _________________________
/gnu/store/i0d555a5fd7isi606aqqmbp5zgy9jh6p-python-3.10.7/lib/python3.10/importlib/__init__.py:126: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:1006: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:688: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:883: in exec_module
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
trio/__init__.py:18: in <module>
    from ._core import (
trio/_core/__init__.py:20: in <module>
    from ._multierror import MultiError
trio/_core/_multierror.py:511: in <module>
    warnings.warn(
E   RuntimeWarning: You seem to already have a custom sys.excepthook handler installed. I'll skip installing Trio's custom handler, but this means MultiErrors will not show full tracebacks.
________________________ ERROR collecting test session _________________________
/gnu/store/i0d555a5fd7isi606aqqmbp5zgy9jh6p-python-3.10.7/lib/python3.10/importlib/__init__.py:126: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:992: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
<frozen importlib._bootstrap>:1050: in _gcd_import
    ???
<frozen importlib._bootstrap>:1027: in _find_and_load
    ???
<frozen importlib._bootstrap>:1006: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:688: in _load_unlocked
    ???
<frozen importlib._bootstrap_external>:883: in exec_module
    ???
<frozen importlib._bootstrap>:241: in _call_with_frames_removed
    ???
trio/__init__.py:18: in <module>
    from ._core import (
trio/_core/__init__.py:20: in <module>
    from ._multierror import MultiError
trio/_core/_multierror.py:511: in <module>
    warnings.warn(
E   RuntimeWarning: You seem to already have a custom sys.excepthook handler installed. I'll skip installing Trio's custom handler, but this means MultiErrors will not show full tracebacks.
=========================== short test summary info ============================
ERROR  - RuntimeWarning: You seem to already have a custom sys.excepthook han...
ERROR  - RuntimeWarning: You seem to already have a custom sys.excepthook han...
ERROR  - RuntimeWarning: You seem to already have a custom sys.excepthook han...
ERROR  - RuntimeWarning: You seem to already have a custom sys.excepthook han...
============================== 4 errors in 2.94s ===============================
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "pytest" arguments: ("-vv" "-n" "4" "-k" "not test_ki_protection_works and not test_guest_mode_ki and not test_run_in_trio_thread_ki and not test_simple_cancel_scope_usage_doesnt_create_cyclic_garbage and not test_nursery_cancel_doesnt_create_cyclic_garbage and not test_cancel_scope_exit_doesnt_create_cyclic_garbage and not test_locals_destroyed_promptly_on_cancel and not test_ipython_exc_handler and not test_for_leaking_fds and not test_ki_self and not test_ki_wakes_us_up and not test_getnameinfo and not test_SocketType_resolve and not test_getprotobyname and not test_static_tool_sees_all_symbols") exit-status: 1 term-signal: #f stop-signal: #f>
phase `check' failed after 3.4 seconds
command "pytest" "-vv" "-n" "4" "-k" "not test_ki_protection_works and not test_guest_mode_ki and not test_run_in_trio_thread_ki and not test_simple_cancel_scope_usage_doesnt_create_cyclic_garbage and not test_nursery_cancel_doesnt_create_cyclic_garbage and not test_cancel_scope_exit_doesnt_create_cyclic_garbage and not test_locals_destroyed_promptly_on_cancel and not test_ipython_exc_handler and not test_for_leaking_fds and not test_ki_self and not test_ki_wakes_us_up and not test_getnameinfo and not test_SocketType_resolve and not test_getprotobyname and not test_static_tool_sees_all_symbols" failed with status 1
builder for `/gnu/store/21qmmyrnvwjh7254zr2byfg3l5mwd0rh-python-trio-0.20.0.drv' failed with exit code 1
build of /gnu/store/21qmmyrnvwjh7254zr2byfg3l5mwd0rh-python-trio-0.20.0.drv failed
View build log at '/var/log/guix/drvs/21/qmmyrnvwjh7254zr2byfg3l5mwd0rh-python-trio-0.20.0.drv.gz'.



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

* Re: Python
  2023-03-18 19:37                             ` Python Andreas Enge
@ 2023-03-21 18:56                               ` Lars-Dominik Braun
  2023-03-30  9:57                                 ` Python Lars-Dominik Braun
  2023-03-30 11:05                               ` Python Lars-Dominik Braun
  1 sibling, 1 reply; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-03-21 18:56 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Hi,

> Well, there is pyqt as written elsewhere, but this is not only python.

I looked at it and it seems that python-sip and python-pyqt-builder need a
version bump and we should maybe switch to pyproject-build-system. However
python-sip does not expose any switches to specify a different path for
.sip file includes. That requires custom patches for python-sip.
python-pyqt builds, but everything else is work in progress…

Lars



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

* Re: Python
  2023-03-21 18:56                               ` Python Lars-Dominik Braun
@ 2023-03-30  9:57                                 ` Lars-Dominik Braun
  2023-03-30 10:10                                   ` Python Andreas Enge
  0 siblings, 1 reply; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-03-30  9:57 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Hello Andreas,

> I looked at it and it seems that python-sip and python-pyqt-builder need a
> version bump and we should maybe switch to pyproject-build-system. However
> python-sip does not expose any switches to specify a different path for
> .sip file includes. That requires custom patches for python-sip.
> python-pyqt builds, but everything else is work in progress…

python-pyqt and python-pyqtwebengine should build on core-updates
now. I’ve tested qutebrowser, which works. Other packages depending
on python-pyqt fail due to unrelated problems. See

d9dc32b8716e5213fa127587dce64a6bbe5daee8 gnu: python-pyqtwebengine: Update to 5.15.9.
628eefa3695fad74f8fb8daca1f243b1684fe9f8 gnu: python-pyqt: Update to 5.15.9.
9b7e8365e228407c4f6f7071f6b36046be5e20b7 gnu: python-pyqt-builder: Update to 1.14.1.
eebb0bfd68a863f6ef6c18e20daad7aaa6d3ba2a gnu: python-sip: Update to 6.7.7.

Cheers,
Lars



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

* Re: Python
  2023-03-30  9:57                                 ` Python Lars-Dominik Braun
@ 2023-03-30 10:10                                   ` Andreas Enge
  0 siblings, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2023-03-30 10:10 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Hello Lars,

Am Thu, Mar 30, 2023 at 11:57:53AM +0200 schrieb Lars-Dominik Braun:
> python-pyqt and python-pyqtwebengine should build on core-updates
> now. I’ve tested qutebrowser, which works.

splendid, thanks a lot for this major piece of work!

> Other packages depending on python-pyqt fail due to unrelated problems.

Okay, we can see this one by one now.

Cheers,

Andreas



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

* Re: Python
  2023-03-18 19:37                             ` Python Andreas Enge
  2023-03-21 18:56                               ` Python Lars-Dominik Braun
@ 2023-03-30 11:05                               ` Lars-Dominik Braun
  2023-03-31  8:52                                 ` Python Andreas Enge
  1 sibling, 1 reply; 41+ messages in thread
From: Lars-Dominik Braun @ 2023-03-30 11:05 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

Hi again,

> I just updated python-ipython to the first version that passes all tests
> without any change, in the hope that this would have the least impact on
> its dependents. Without luck, now python-trio fails. Updating this to the
> latest version 0.22 does not help. I copy-paste the error message below.
> If you could have a look, that would definitely be welcome.

this one’s also fixed, see

cf26ee1f99f84f817f96269541073846d546026b gnu: python-trio: Run pytest on tests directory only.

Lars


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

* Re: Python
  2023-03-30 11:05                               ` Python Lars-Dominik Braun
@ 2023-03-31  8:52                                 ` Andreas Enge
  0 siblings, 0 replies; 41+ messages in thread
From: Andreas Enge @ 2023-03-31  8:52 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: guix-devel

Am Thu, Mar 30, 2023 at 01:05:43PM +0200 schrieb Lars-Dominik Braun:
> > its dependents. Without luck, now python-trio fails.
> this one’s also fixed, see
> cf26ee1f99f84f817f96269541073846d546026b gnu: python-trio: Run pytest on tests directory only.

Thanks for putting in all this energy!

Andreas



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

end of thread, other threads:[~2023-03-31  8:52 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-13 15:46 Python Andreas Enge
2013-09-13 16:25 ` Python Cyril Roelandt
2013-09-14  9:02   ` Python Andreas Enge
2013-09-13 21:32 ` Python Ludovic Courtès
  -- strict thread matches above, loose matches on Subject: below --
2023-02-12  9:05 Merging core-updates? Julien Lepiller
2023-02-13 20:35 ` Andreas Enge
2023-02-19 11:02   ` Python (was: Merging core-updates?) Andreas Enge
2023-02-19 11:15     ` Andreas Enge
2023-02-19 11:19       ` Andreas Enge
2023-02-19 15:10         ` Attila Lendvai
2023-02-21 16:24           ` Python Andreas Enge
2023-02-19 11:30     ` Python (was: Merging core-updates?) Andreas Enge
2023-02-19 20:31       ` Python Andreas Enge
2023-02-21 16:41         ` Python Andreas Enge
2023-02-22 14:23           ` Python Andreas Enge
2023-02-23 15:16           ` Python Andreas Enge
2023-02-24 16:47             ` Python Andreas Enge
2023-02-24 16:51               ` Python Andreas Enge
2023-02-24 18:08               ` Python Lars-Dominik Braun
2023-02-25 15:15                 ` Python Andreas Enge
2023-02-25 15:45                   ` Python Lars-Dominik Braun
2023-02-25 16:39                     ` Python Andreas Enge
2023-02-25 16:56                       ` Python Lars-Dominik Braun
2023-02-25 18:00                         ` Python Andreas Enge
2023-02-25 18:06                           ` Python Andreas Enge
2023-02-25 18:15                             ` Python Andreas Enge
2023-02-25 18:33                               ` Python Andreas Enge
2023-02-27 19:14                                 ` Python Lars-Dominik Braun
2023-02-28 15:05                                   ` Python Andreas Enge
2023-02-25 18:29                           ` Python Andreas Enge
2023-03-11 11:20                           ` Python Andreas Enge
2023-03-11 11:44                             ` Python Andreas Enge
2023-03-15 13:49                         ` Python Andreas Enge
2023-03-18  8:59                           ` Python Lars-Dominik Braun
2023-03-18  9:15                             ` Python Andreas Enge
2023-03-18 10:02                               ` Python Lars-Dominik Braun
2023-03-18 10:13                                 ` Python Andreas Enge
2023-03-18  9:43                           ` Python Lars-Dominik Braun
2023-03-18 19:37                             ` Python Andreas Enge
2023-03-21 18:56                               ` Python Lars-Dominik Braun
2023-03-30  9:57                                 ` Python Lars-Dominik Braun
2023-03-30 10:10                                   ` Python Andreas Enge
2023-03-30 11:05                               ` Python Lars-Dominik Braun
2023-03-31  8:52                                 ` Python Andreas Enge
2023-02-27 18:55                 ` Python Efraim Flashner
2023-02-27 19:12                   ` Python Lars-Dominik Braun
2023-02-19 11:47     ` Python (was: Merging core-updates?) Lars-Dominik Braun
2023-02-19 11:57       ` Andreas Enge
2023-02-19 15:50         ` Lars-Dominik Braun
2023-02-19 20:27           ` Python Andreas Enge
2023-02-25 17:44             ` Python Andreas Enge

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).