Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1842118 - python-devtools fails to build from source due to test failures, fails to install due to broken dependency on Python 3.8
Summary: python-devtools fails to build from source due to test failures, fails to ins...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-devtools
Version: 33
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Fabian Affolter
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 1838171 (view as bug list)
Depends On:
Blocks: F33FTBFS F33FailsToInstall PYTHON39
TreeView+ depends on / blocked
 
Reported: 2020-05-30 17:33 UTC by Igor Raits
Modified: 2020-08-22 19:01 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-08-22 19:01:39 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Igor Raits 2020-05-30 17:33:31 UTC
Hello,

Please note that this comment was generated automatically. If you feel that this output has mistakes, please contact me via email (ignatenkobrain).

Your package (python-devtools) Fails To Install in Fedora 33:

can't install python3-devtools:
  - nothing provides python(abi) = 3.8 needed by python3-devtools-0.5.1-3.fc33.noarch
  
If you don't react accordingly to the policy for FTBFS/FTI bugs (https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/), your package may be orphaned in 8+ weeks.

P.S. The data was generated solely from koji buildroot, so it might be newer than the latest compose or the content on mirrors.

P.P.S. If this bug has been reported in the middle of upgrading multiple dependent packages, please consider using side tags: https://docs.fedoraproject.org/en-US/rawhide-gating/multi-builds/

Thanks!

Comment 1 Igor Raits 2020-06-08 07:00:53 UTC
Hello,

This is the first reminder (step 3 from https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/#_package_removal_for_long_standing_ftbfs_and_fti_bugs).

If you know about this problem and are planning on fixing it, please acknowledge so by setting the bug status to ASSIGNED. If you don't have time to maintain this package, consider orphaning it, so maintainers of dependent packages realize the problem.

Comment 2 Tomáš Hrnčiar 2020-06-10 07:04:44 UTC
python-devtools fails to install due to test failures

=================================== FAILURES ===================================
_________________________________ test_colours _________________________________
    def test_colours():
        v = sformat('hello', sformat.red)
>       assert v == '\x1b[31mhello\x1b[0m'
E       AssertionError: assert '\x1b[31mhell...[Style.resetm' == '\x1b[31mhello\x1b[0m'
E         - hello[Style.resetm
E         + hello
tests/test_ansi.py:10: AssertionError
_____________________________ test_combine_styles ______________________________
    def test_combine_styles():
        v = sformat('hello', sformat.red, sformat.bold)
>       assert v == '\x1b[31;1mhello\x1b[0m'
E       AssertionError: assert '\x1b[31;1mhe...[Style.resetm' == '\x1b[31;1mhello\x1b[0m'
E         - hello[Style.resetm
E         + hello
tests/test_ansi.py:20: AssertionError
________________________________ test_no_styles ________________________________
    def test_no_styles():
        v = sformat('hello')
>       assert v == 'hello\x1b[0m'
E       AssertionError: assert 'hello\x1b[Style.resetm' == 'hello\x1b[0m'
E         - hello[Style.resetm
E         + hello
tests/test_ansi.py:25: AssertionError
________________________________ test_style_str ________________________________
    def test_style_str():
        v = sformat('hello', 'red')
>       assert v == '\x1b[31mhello\x1b[0m'
E       AssertionError: assert '\x1b[31mhell...[Style.resetm' == '\x1b[31mhello\x1b[0m'
E         - hello[Style.resetm
E         + hello
tests/test_ansi.py:30: AssertionError
______________________________ test_non_str_input ______________________________
    def test_non_str_input():
        v = sformat(12.2, sformat.yellow, sformat.italic)
>       assert v == '\x1b[33;3m12.2\x1b[0m'
E       AssertionError: assert '\x1b[33;3m12...[Style.resetm' == '\x1b[33;3m12.2\x1b[0m'
E         - 12.2[Style.resetm
E         + 12.2
tests/test_ansi.py:35: AssertionError
______________________________ test_print_is_tty _______________________________
    def test_print_is_tty():
        class TTYStream(io.StringIO):
            def isatty(self):
                return True
    
        stream = TTYStream()
        sprint('hello', sprint.green, file=stream)
        out = stream.getvalue()
>       assert out == '\x1b[32mhello\x1b[0m\n', repr(out)
E       AssertionError: '\x1b[32mhello\x1b[Style.resetm\n'
E       assert '\x1b[32mhell...tyle.resetm\n' == '\x1b[32mhello\x1b[0m\n'
E         - hello[Style.resetm
E         + hello
tests/test_ansi.py:59: AssertionError
_________________________________ test_colours _________________________________
    def test_colours():
        v = debug.format(range(6))
        s = re.sub(r':\d{2,}', ':<line no>', v.str(True))
        assert s.startswith('\x1b[35mtests'), repr(s)
        s2 = strip_ansi(s)
>       assert s2 == v.str(), repr(s2)
E       AssertionError: 'tests/test_main.pytyle.resetm:202tyle.resetm test_colourstyle.resetm\n    range(6)tyle.resetm: range(0, 6) (range) len=6tyle.resetm'
E       assert 'tests/test_m...=6tyle.resetm' == 'tests/test_ma...(range) len=6'
E         - tests/test_main.pytyle.resetm:202tyle.resetm test_colourstyle.resetm
E         + tests/test_main.py:202 test_colours
E         -     range(6)tyle.resetm: range(0, 6) (range) len=6tyle.resetm
E         ?             -----------                           -----------
E         +     range(6): range(0, 6) (range) len=6
tests/test_main.py:206: AssertionError
____________________________ test_colours_warnings _____________________________
mocker = <pytest_mock.MockFixture object at 0x7fff9bf98b80>
    def test_colours_warnings(mocker):
        mocked_getouterframes = mocker.patch('inspect.getouterframes')
        mocked_getouterframes.side_effect = IndexError()
        v = debug.format('x')
        s = re.sub(r':\d{2,}', ':<line no>', v.str(True))
        assert s.startswith('\x1b[35m<unknown>'), repr(s)
        s2 = strip_ansi(s)
>       assert s2 == v.str(), repr(s2)
E       AssertionError: "<unknown>tyle.resetm:0tyle.resetm tyle.resetm (error parsing code, IndexError)tyle.resetm\n    'x' (str) len=1tyle.resetm"
E       assert '<unknown>tyl...=1tyle.resetm' == "<unknown>:0  ...' (str) len=1"
E         - <unknown>tyle.resetm:0tyle.resetm tyle.resetm (error parsing code, IndexError)tyle.resetm
E         + <unknown>:0  (error parsing code, IndexError)
E         -     'x' (str) len=1tyle.resetm
E         ?                    -----------
E         +     'x' (str) len=1
tests/test_main.py:216: AssertionError
========= 8 failed, 70 passed, 1 skipped, 6 deselected in 1.05 seconds =========

Comment 3 Fabian Affolter 2020-06-10 17:28:05 UTC
Hmm, how are test failures now an issue for the installation? Smells more like a FTBFS additionally.

Comment 4 Tomáš Hrnčiar 2020-06-11 08:56:26 UTC
Yes, you are right. I made a mistake, sorry.

Comment 5 Miro Hrončok 2020-06-26 09:49:02 UTC
(In reply to Fabian Affolter from comment #3)
> Hmm, how are test failures now an issue for the installation? Smells more
> like a FTBFS additionally.

Error: 
 Problem: conflicting requests
  - nothing provides python(abi) = 3.8 needed by python3-devtools-0.5.1-3.fc33.noarch


The FTBFS directly causes an installation failure.

Comment 6 Miro Hrončok 2020-06-26 09:49:14 UTC
*** Bug 1838171 has been marked as a duplicate of this bug. ***

Comment 7 Ben Cotton 2020-08-11 13:35:19 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 33 development cycle.
Changing version to 33.

Comment 8 Miro Hrončok 2020-08-22 10:30:48 UTC
Hello. This comment is mass posted to all 16 bugzillas for packages that failed to rebuild with Python 3.9 (and, in most cases, also fail to install on Fedora 33 and 34). Apologies if some of the suggestions or questions don't apply 100%.

Fedora 33 Beta Freeze starts next week on Tuesday, 2020-08-25. I haven't spammed this bugzilla because it is in ASSIGNED, or I've seen upstream has been notified.

Please consider what to do here. Is this failure critical? For example, can a test be temporarily skipped to make this package build? Is it possible to fix or workaround the failure before Fedora 33 Beta? Or before Fedora 33 Final? If not, would it make sense to retire the package (even temporarily) before the release to unblock updates from Fedora 31 or Fedora 32?

In case you need any assistance with a Python-related problem with the build, don't hesitate to let me know and I'll try to have a look.

Thank you!


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