Bug 1583678 - python-markdown FTBFS with Python 3.7
Summary: python-markdown FTBFS with Python 3.7
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-markdown
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Thomas Moschny
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON37
TreeView+ depends on / blocked
 
Reported: 2018-05-29 13:16 UTC by Miro Hrončok
Modified: 2018-06-04 09:13 UTC (History)
2 users (show)

Fixed In Version: 2.6.11-2.fc29
Clone Of:
Environment:
Last Closed: 2018-06-04 09:13:43 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
build.log from copr (44.05 KB, text/plain)
2018-05-29 13:16 UTC, Miro Hrončok
no flags Details
root.log from copr (32.27 KB, text/plain)
2018-05-29 13:16 UTC, Miro Hrončok
no flags Details

Description Miro Hrončok 2018-05-29 13:16:02 UTC
Created attachment 1445380 [details]
build.log from copr

Description of problem: python-markdown FTBFS with Python 3.7

ERROR: Failure: DeprecationWarning (Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working)


Version-Release number of selected component (if applicable): 2.6.11-1.fc29

Logs attached.

Comment 1 Miro Hrončok 2018-05-29 13:16:22 UTC
Created attachment 1445381 [details]
root.log from copr

Comment 2 Miro Hrončok 2018-05-29 13:52:05 UTC
So upstream tests pass, and I didn't see any noticable difference except that upstream runs test a bit differently and voilà https://src.fedoraproject.org/rpms/python-markdown/pull-request/2

Comment 3 Alyssa Coghlan 2018-05-30 12:03:50 UTC
That fix working technically means you've found a unittest bug where the discover subcommand isn't correctly turning on reporting of deprecation warnings :)

Comment 4 Miro Hrončok 2018-05-30 12:29:54 UTC
And it should? Let's report this then.

Comment 5 Miro Hrončok 2018-05-30 12:38:14 UTC
It reports the warning, it just doesn't turn it into errors.

$ python3.7 -m unittest discover -v
test_foo (test_reproducer.TestFoo) ... /home/churchyard/tmp/discover_bug/test_reproducer.py:6: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working
  from collections import Mapping
ok

----------------------------------------------------------------------
Ran 1 test in 0.000s

OK


With -Werror it does:

$ python3.7 -Werror -m unittest discover -v
test_foo (test_reproducer.TestFoo) ... ERROR

======================================================================
ERROR: test_foo (test_reproducer.TestFoo)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/churchyard/tmp/discover_bug/test_reproducer.py", line 6, in test_foo
    from collections import Mapping
  File "<frozen importlib._bootstrap>", line 1032, in _handle_fromlist
  File "/usr/lib64/python3.7/collections/__init__.py", line 52, in __getattr__
    DeprecationWarning, stacklevel=2)
DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working

----------------------------------------------------------------------
Ran 1 test in 0.007s

FAILED (errors=1)


This is not desired behavior?

Comment 6 Thomas Moschny 2018-06-04 05:41:54 UTC
As python-markdown (in the released version) still uses nose for the tests, the workaround would imho not execute the same set of tests.

Therefore, I add a different fix (see https://src.fedoraproject.org/rpms/python-markdown/c/93312f7d), please test.

Comment 7 Miro Hrončok 2018-06-04 08:04:28 UTC
A new build dependency make this being blocked by bz1577396. Why it was added?

Comment 8 Miro Hrončok 2018-06-04 08:11:30 UTC
Sorry, maybe it got not. Let me recheck.

Comment 9 Miro Hrončok 2018-06-04 09:13:43 UTC
Ok, the gdb problem was unrelated indeed, I prematurely jumped to conclusions. It builds now. Thank you.


Note You need to log in before you can comment on or make changes to this bug.