unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#39869: python-orator build fails
@ 2020-03-02 18:08 Maxim Cournoyer
  2020-03-20 21:45 ` Marius Bakke
  0 siblings, 1 reply; 3+ messages in thread
From: Maxim Cournoyer @ 2020-03-02 18:08 UTC (permalink / raw)
  To: 39869

Build log extract:

--8<---------------cut here---------------start------------->8---
======================================================================
ERROR: orator.commands.migrations (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: orator.commands.migrations
Traceback (most recent call last):
  File "/gnu/store/78w7y0lxar70j512iqw8x3nimzj10yga-python-3.7.4/lib/python3.7/unittest/loader.py", line 470, in _find_test_path
    package = self._get_module_from_name(name)
  File "/gnu/store/78w7y0lxar70j512iqw8x3nimzj10yga-python-3.7.4/lib/python3.7/unittest/loader.py", line 377, in _get_module_from_name
    __import__(name)
  File "/tmp/guix-build-python-orator-0.9.7.drv-0/orator-0.9.7/orator/commands/migrations/__init__.py", line 3, in <module>
    from .install_command import InstallCommand
  File "/tmp/guix-build-python-orator-0.9.7.drv-0/orator-0.9.7/orator/commands/migrations/install_command.py", line 4, in <module>
    from .base_command import BaseCommand
  File "/tmp/guix-build-python-orator-0.9.7.drv-0/orator-0.9.7/orator/commands/migrations/base_command.py", line 5, in <module>
    from ..command import Command
  File "/tmp/guix-build-python-orator-0.9.7.drv-0/orator-0.9.7/orator/commands/command.py", line 4, in <module>
    from cleo import Command as BaseCommand, InputOption, ListInput
ImportError: cannot import name 'InputOption' from 'cleo' (/gnu/store/iwhbrhr49wf6gxhxlripjf4ij0y41r3x-python-cleo-0.7.6/lib/python3.7/site-packages/cleo/__init__.py)


======================================================================
ERROR: orator.commands.seeds (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: orator.commands.seeds
Traceback (most recent call last):
  File "/gnu/store/78w7y0lxar70j512iqw8x3nimzj10yga-python-3.7.4/lib/python3.7/unittest/loader.py", line 470, in _find_test_path
    package = self._get_module_from_name(name)
  File "/gnu/store/78w7y0lxar70j512iqw8x3nimzj10yga-python-3.7.4/lib/python3.7/unittest/loader.py", line 377, in _get_module_from_name
    __import__(name)
  File "/tmp/guix-build-python-orator-0.9.7.drv-0/orator-0.9.7/orator/commands/seeds/__init__.py", line 3, in <module>
    from .make_command import SeedersMakeCommand
  File "/tmp/guix-build-python-orator-0.9.7.drv-0/orator-0.9.7/orator/commands/seeds/make_command.py", line 7, in <module>
    from .base_command import BaseCommand
  File "/tmp/guix-build-python-orator-0.9.7.drv-0/orator-0.9.7/orator/commands/seeds/base_command.py", line 4, in <module>
    from ..command import Command
  File "/tmp/guix-build-python-orator-0.9.7.drv-0/orator-0.9.7/orator/commands/command.py", line 4, in <module>
    from cleo import Command as BaseCommand, InputOption, ListInput
ImportError: cannot import name 'InputOption' from 'cleo' (/gnu/store/iwhbrhr49wf6gxhxlripjf4ij0y41r3x-python-cleo-0.7.6/lib/python3.7/site-packages/cleo/__init__.py)


----------------------------------------------------------------------
Ran 6 tests in 0.001s

FAILED (errors=6)
Test failed: <unittest.runner.TextTestResult run=6 errors=6 failures=0>
error: Test failed: <unittest.runner.TextTestResult run=6 errors=6 failures=0>
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
--8<---------------cut here---------------end--------------->8---

Tested on master c1febbbf94ee794d7a97dbde12102634f2b13529.

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

* bug#39869: python-orator build fails
  2020-03-02 18:08 bug#39869: python-orator build fails Maxim Cournoyer
@ 2020-03-20 21:45 ` Marius Bakke
  2020-03-21  1:41   ` Maxim Cournoyer
  0 siblings, 1 reply; 3+ messages in thread
From: Marius Bakke @ 2020-03-20 21:45 UTC (permalink / raw)
  To: Maxim Cournoyer, 39869-done

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

This was a surprisingly deep rabbit hole that ended pretty
unsatisfactory with commit 51d42caa94515f43d677bdd76d53bf8bb8c7bc4e.

According to a comment in the package definition, the tests were never
supposed to run, so in the end they were just disabled.

I discovered a pattern that I hadn't seen yet in the Python ecosystem:
orator and many of its dependencies are no longer using setup.py.
Instead they have a file called pyproject.toml and calls out to a tool
called "poetry" to create distribution tarballs, run tests, etc; and it
apparently also creates a setup.py for the PyPI distribution.

I did not study poetry enough to figure out how it works, but we might
need a poetry-build-system or some such if the trend continues.  Mainly
because all packages using it seem to be stripping tests from the PyPI
release!  :-/

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

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

* bug#39869: python-orator build fails
  2020-03-20 21:45 ` Marius Bakke
@ 2020-03-21  1:41   ` Maxim Cournoyer
  0 siblings, 0 replies; 3+ messages in thread
From: Maxim Cournoyer @ 2020-03-21  1:41 UTC (permalink / raw)
  To: Marius Bakke; +Cc: 39869-done

Hey Marius!

Marius Bakke <mbakke@fastmail.com> writes:

> This was a surprisingly deep rabbit hole that ended pretty
> unsatisfactory with commit 51d42caa94515f43d677bdd76d53bf8bb8c7bc4e.
>
> According to a comment in the package definition, the tests were never
> supposed to run, so in the end they were just disabled.
>
> I discovered a pattern that I hadn't seen yet in the Python ecosystem:
> orator and many of its dependencies are no longer using setup.py.
> Instead they have a file called pyproject.toml and calls out to a tool
> called "poetry" to create distribution tarballs, run tests, etc; and it
> apparently also creates a setup.py for the PyPI distribution.

Interesting!

> I did not study poetry enough to figure out how it works, but we might
> need a poetry-build-system or some such if the trend continues.  Mainly
> because all packages using it seem to be stripping tests from the PyPI
> release!  :-/

Yeah.  Or make the python-build-system smart at detecting many
situations (as we discussed on IRC today such as guessing how to run the
test suite).

Thanks for fixing it!

Maxim

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

end of thread, other threads:[~2020-03-21  1:42 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-02 18:08 bug#39869: python-orator build fails Maxim Cournoyer
2020-03-20 21:45 ` Marius Bakke
2020-03-21  1:41   ` 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).