Bug 1712544

Summary: python-wstool fails to build in Fedora 31/rawhide
Product: [Fedora] Fedora Reporter: Miro Hrončok <mhroncok>
Component: python-wstoolAssignee: Scott K Logan <logans>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: rawhideCC: logans, richmattes, robotics, sanjay.ankur
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-07-29 21:31:00 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1700317, 1686977, 1732841    
Attachments:
Description Flags
build.log from Koji
none
root.log from Koji none

Description Miro Hrončok 2019-05-21 18:09:10 UTC
Created attachment 1571722 [details]
build.log from Koji

https://koji.fedoraproject.org/koji/taskinfo?taskID=34980886

python-wstool-0.1.17-10.fc31 fails to build in Fedora 31/rawhide

BUILDSTDERR: ======================================================================
BUILDSTDERR: FAIL: test_generate_sorted_with_localname (test.local.test_config_yaml.ConfigFile_Test)
BUILDSTDERR: ----------------------------------------------------------------------
BUILDSTDERR: Traceback (most recent call last):
BUILDSTDERR:   File "/builddir/build/BUILD/wstool-0.1.17/test/local/test_config_yaml.py", line 238, in test_generate_sorted_with_localname
BUILDSTDERR:     """ % (self.directory, self.directory), read_data)
BUILDSTDERR: AssertionError: '# Hello\n- git: {local-name: git, uri: /tmp/tmpmV5hiH/some/uri2}\n- svn: {local-name: ros, uri: /tmp/tmpmV5hiH/some/uri1}\n' != '# Hello\n- git:\n    local-name: git\n    uri: /tmp/tmpmV5hiH/some/uri2\n- svn:\n    local-name: ros\n    uri: /tmp/tmpmV5hiH/some/uri1\n'
BUILDSTDERR: ======================================================================
BUILDSTDERR: FAIL: test_generate_with_other (test.local.test_config_yaml.ConfigFile_Test)
BUILDSTDERR: ----------------------------------------------------------------------
BUILDSTDERR: Traceback (most recent call last):
BUILDSTDERR:   File "/builddir/build/BUILD/wstool-0.1.17/test/local/test_config_yaml.py", line 192, in test_generate_with_other
BUILDSTDERR:     self.assertEqual("- other: {local-name: ros}", lines[1])
BUILDSTDERR: AssertionError: '- other: {local-name: ros}' != '- other:'
BUILDSTDERR: ======================================================================
BUILDSTDERR: FAIL: test_generate_with_stack (test.local.test_config_yaml.ConfigFile_Test)
BUILDSTDERR: ----------------------------------------------------------------------
BUILDSTDERR: Traceback (most recent call last):
BUILDSTDERR:   File "/builddir/build/BUILD/wstool-0.1.17/test/local/test_config_yaml.py", line 204, in test_generate_with_stack
BUILDSTDERR:     self.assertEqual("- svn: {local-name: ros, uri: %s/some/uri}" % self.directory, lines[1])
BUILDSTDERR: AssertionError: '- svn: {local-name: ros, uri: /tmp/tmpGPfLsA/some/uri}' != '- svn:'
BUILDSTDERR: Name                         Stmts   Miss  Cover   Missing
BUILDSTDERR: ----------------------------------------------------------

This blocks the rebuild for Python 3.8 but i happens on 3.7 as well.

Logs attached.

Comment 1 Miro Hrončok 2019-05-21 18:09:33 UTC
Created attachment 1571723 [details]
root.log from Koji

Comment 2 Miro Hrončok 2019-07-10 11:44:15 UTC
This blocks the rebuild for Python 3.8. Please have a look at this and don't ignore it. Thanks

Comment 3 Ankur Sinha (FranciscoD) 2019-07-10 11:50:11 UTC
Rich, Scott, do we need this package or can I orphan it? (I'm not working on robotics any more).

Comment 4 Scott K Logan 2019-07-10 18:15:08 UTC
wstool is still the recommended[1] way to populate a source build workspace for ROS 1. There is a lot of crossover between wstool and vcstool, which is recommended in ROS 2, so I wouldn't be surprised if the recommended workflows change when Noetic lands, but for now we should keep supporting wstool.

I think there are a few other changes that wstool has been waiting to release for a while now, so I'll reach out to the maintainers and ask for a release soon.

So the action is on me for now.

[1] http://wiki.ros.org/melodic/Installation/Source#Create_a_catkin_Workspace

Comment 5 Ankur Sinha (FranciscoD) 2019-07-10 18:34:52 UTC
Thanks, Scott. Sorry I'm unable to help out at the moment. Just got too many things and not enough cycles to do them in :(

Comment 6 Scott K Logan 2019-07-10 18:36:18 UTC
That's what co-maintainers are for :)

Comment 7 Scott K Logan 2019-07-10 20:56:20 UTC
Just so this is clear, this package fails with PyYAML >= 5.1. The failure has nothing to do with Python 3.8 as far as I can tell.

Comment 8 Miro Hrončok 2019-07-10 22:12:28 UTC
As said, this blocks the rebuild for Python 3.8 but it happens on 3.7 as well.

It is not that important that the failure has nothing to do with Python 3.8, if we cannot rebuild the package, it will be a bummer, as it has a runtime dependency on python 3.7 packages.