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 1716530

Summary: python-seesaw fails to build with Python 3.8
Product: [Fedora] Fedora Reporter: Miro Hrončok <mhroncok>
Component: python-seesawAssignee: Ben Rosser <rosser.bjr>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: rawhideCC: cstratak, python-sig, rosser.bjr
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://copr.fedorainfracloud.org/coprs/g/python/python3.8/package/python-seesaw/
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-07-31 21:01:16 UTC Type: ---
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: 1686977    

Description Miro Hrončok 2019-06-03 14:40:41 UTC
See https://copr.fedorainfracloud.org/coprs/g/python/python3.8/package/python-seesaw/ for actual logs. This report is automated and not very verbose, but feel free to ping me for help.

Comment 1 Miro Hrončok 2019-07-10 14:15:54 UTC
+ nosetests-3 -v
Failure: ModuleNotFoundError (No module named 'tornado.stack_context') ... ERROR
It should match the version string. ... ok
It should not raise ValueError. ... ok
test_get_returns_none_for_undefined_keys (seesaw.item_test.ItemTest) ... ok
test_get_returns_property (seesaw.item_test.ItemTest) ... ok
test_property_events (seesaw.item_test.ItemTest) ... ok
Failure: ModuleNotFoundError (No module named 'tornado.stack_context') ... ERROR
Failure: ModuleNotFoundError (No module named 'tornado.stack_context') ... ERROR
test_find_executable (seesaw.util_test.UtilTest) ... FAIL
test_find_executable_bad_version (seesaw.util_test.UtilTest) ... ok
test_find_executable_list_version (seesaw.util_test.UtilTest) ... FAIL
test_find_executable_regex_version (seesaw.util_test.UtilTest) ... FAIL
test_unique_id_str (seesaw.util_test.UtilTest) ... ok
test_example_pipeline (run_pipeline_test.RunPipelineTest) ... Traceback (most recent call last):
  File "./run-pipeline3", line 4, in <module>
    from seesaw.script.run_pipeline import main
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/script/run_pipeline.py", line 12, in <module>
    from seesaw.web import start_runner_server
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/web.py", line 11, in <module>
    from sockjs.tornado import SockJSConnection, SockJSRouter
  File "/usr/lib/python3.8/site-packages/sockjs/tornado/__init__.py", line 3, in <module>
    from .router import SockJSRouter
  File "/usr/lib/python3.8/site-packages/sockjs/tornado/router.py", line 11, in <module>
    from sockjs.tornado import transports, session, sessioncontainer, static, stats, proto
  File "/usr/lib/python3.8/site-packages/sockjs/tornado/transports/__init__.py", line 3, in <module>
    import sockjs.tornado.transports.pollingbase
  File "/usr/lib/python3.8/site-packages/sockjs/tornado/transports/pollingbase.py", line 9, in <module>
    from sockjs.tornado import basehandler
  File "/usr/lib/python3.8/site-packages/sockjs/tornado/basehandler.py", line 13, in <module>
    from tornado.web import asynchronous, RequestHandler
ImportError: cannot import name 'asynchronous' from 'tornado.web' (/usr/lib64/python3.8/site-packages/tornado/web.py)
ERROR

======================================================================
ERROR: Failure: ModuleNotFoundError (No module named 'tornado.stack_context')
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/nose/failure.py", line 39, in runTest
    raise self.exc_val.with_traceback(self.tb)
  File "/usr/lib/python3.8/site-packages/nose/loader.py", line 416, in loadTestsFromName
    module = self.importer.importFromPath(
  File "/usr/lib/python3.8/site-packages/nose/importer.py", line 47, in importFromPath
    return self.importFromDir(dir_path, fqname)
  File "/usr/lib/python3.8/site-packages/nose/importer.py", line 94, in importFromDir
    mod = load_module(part_fqname, fh, filename, desc)
  File "/usr/lib64/python3.8/imp.py", line 234, in load_module
    return load_source(name, filename, file)
  File "/usr/lib64/python3.8/imp.py", line 171, in load_source
    module = _load(spec)
  File "<frozen importlib._bootstrap>", line 702, in _load
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 780, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/externalprocess_test.py", line 5, in <module>
    from seesaw.pipeline import Pipeline
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/pipeline.py", line 5, in <module>
    import tornado.stack_context
ModuleNotFoundError: No module named 'tornado.stack_context'

======================================================================
ERROR: Failure: ModuleNotFoundError (No module named 'tornado.stack_context')
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/nose/failure.py", line 39, in runTest
    raise self.exc_val.with_traceback(self.tb)
  File "/usr/lib/python3.8/site-packages/nose/loader.py", line 416, in loadTestsFromName
    module = self.importer.importFromPath(
  File "/usr/lib/python3.8/site-packages/nose/importer.py", line 47, in importFromPath
    return self.importFromDir(dir_path, fqname)
  File "/usr/lib/python3.8/site-packages/nose/importer.py", line 94, in importFromDir
    mod = load_module(part_fqname, fh, filename, desc)
  File "/usr/lib64/python3.8/imp.py", line 234, in load_module
    return load_source(name, filename, file)
  File "/usr/lib64/python3.8/imp.py", line 171, in load_source
    module = _load(spec)
  File "<frozen importlib._bootstrap>", line 702, in _load
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 780, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/pipeline_test.py", line 2, in <module>
    from seesaw.pipeline import Pipeline
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/pipeline.py", line 5, in <module>
    import tornado.stack_context
ModuleNotFoundError: No module named 'tornado.stack_context'

======================================================================
ERROR: Failure: ModuleNotFoundError (No module named 'tornado.stack_context')
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python3.8/site-packages/nose/failure.py", line 39, in runTest
    raise self.exc_val.with_traceback(self.tb)
  File "/usr/lib/python3.8/site-packages/nose/loader.py", line 416, in loadTestsFromName
    module = self.importer.importFromPath(
  File "/usr/lib/python3.8/site-packages/nose/importer.py", line 47, in importFromPath
    return self.importFromDir(dir_path, fqname)
  File "/usr/lib/python3.8/site-packages/nose/importer.py", line 94, in importFromDir
    mod = load_module(part_fqname, fh, filename, desc)
  File "/usr/lib64/python3.8/imp.py", line 234, in load_module
    return load_source(name, filename, file)
  File "/usr/lib64/python3.8/imp.py", line 171, in load_source
    module = _load(spec)
  File "<frozen importlib._bootstrap>", line 702, in _load
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 780, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/runner_test.py", line 1, in <module>
    from seesaw.pipeline import Pipeline
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/pipeline.py", line 5, in <module>
    import tornado.stack_context
ModuleNotFoundError: No module named 'tornado.stack_context'

======================================================================
ERROR: test_example_pipeline (run_pipeline_test.RunPipelineTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/seesaw-0.10.0/tests/run_pipeline_test.py", line 15, in test_example_pipeline
    subprocess.check_call([
  File "/usr/lib64/python3.8/subprocess.py", line 348, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['python3', './run-pipeline3', './examples/example-pipeline.py', 'testuser', '--max-items', '1', '--disable-web-server']' returned non-zero exit status 1.

======================================================================
FAIL: test_find_executable (seesaw.util_test.UtilTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/util_test.py", line 16, in test_find_executable
    self.assertTrue(find_executable(
AssertionError: None is not true
-------------------- >> begin captured stdout << ---------------------
Looking for pipeline runner in ./run-pipeline3
./run-pipeline3: Returned code 1
Looking for pipeline runner in ../run-pipeline3
../run-pipeline3: [Errno 2] No such file or directory: '../run-pipeline3'

--------------------- >> end captured stdout << ----------------------

======================================================================
FAIL: test_find_executable_list_version (seesaw.util_test.UtilTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/util_test.py", line 42, in test_find_executable_list_version
    self.assertTrue(find_executable(
AssertionError: None is not true
-------------------- >> begin captured stdout << ---------------------
Looking for pipeline runner in ./run-pipeline3
./run-pipeline3: Returned code 1
Looking for pipeline runner in ../run-pipeline3
../run-pipeline3: [Errno 2] No such file or directory: '../run-pipeline3'

--------------------- >> end captured stdout << ----------------------

======================================================================
FAIL: test_find_executable_regex_version (seesaw.util_test.UtilTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/seesaw-0.10.0/seesaw/util_test.py", line 29, in test_find_executable_regex_version
    self.assertTrue(find_executable(
AssertionError: None is not true
-------------------- >> begin captured stdout << ---------------------
Looking for pipeline runner in ./run-pipeline3
./run-pipeline3: Returned code 1
Looking for pipeline runner in ../run-pipeline3
../run-pipeline3: [Errno 2] No such file or directory: '../run-pipeline3'

--------------------- >> end captured stdout << ----------------------

----------------------------------------------------------------------
Ran 14 tests in 1.086s

FAILED (errors=4, failures=3)

Comment 2 Ben Rosser 2019-07-16 14:54:32 UTC
Sorry for my tardiness here. 

Looking through these error messages, I think seesaw just won't work with tornado 6. In fact, the upstream requirements file claims that seesaw will only work with tornado *4*:

https://github.com/ArchiveTeam/seesaw-kit/blob/development/requirements.txt

I'm not currently using seesaw, and nothing in Fedora requires it, so maybe I'll just go ahead and retire it rather than try and patch it. If someone is particularly motivated in doing ArchiveTeam stuff and wants to work with upstream to make it support a newer tornado they can take over the package.

Comment 3 Charalampos Stratakis 2019-07-30 14:21:45 UTC
Could you retired the package?

Comment 4 Ben Rosser 2019-07-31 21:01:16 UTC
Retired in Rawhide.