Page MenuHomePhabricator

Travis jobs are failing to install httpbin
Closed, ResolvedPublic

Description

Most travis jobs are filing with the following error:

$ if [[ "$USE_NOSE" == "1" ]]; then nosetests --version ; if [[ "$SITE_ONLY" == "1" ]]; then python setup.py nosetests --tests tests --verbosity=2 -a "family=$FAMILY,code=$LANGUAGE" --with-trim --with-coverage --cover-package=. ; else python setup.py nosetests --tests tests --verbosity=2 --with-trim --with-coverage --cover-package=. ; fi ; elif [[ "$USE_PYTEST" == "1" ]]; then if [[ "$SITE_ONLY" == "1" ]]; then python setup.py pytest --addopts="-vvv -s --timeout=$TEST_TIMEOUT --cov=. -a \"family=='$FAMILY' and code=='$LANGUAGE'\"" ; else python setup.py pytest --addopts="-vvv -s --timeout=$TEST_TIMEOUT --cov=." ; fi else coverage run setup.py test ; fi
running pytest
Searching for bz2file
Reading https://pypi.org/simple/bz2file/
Downloading https://files.pythonhosted.org/packages/61/39/122222b5e85cd41c391b68a99ee296584b2a2d1d233e7ee32b4532384f2d/bz2file-0.98.tar.gz#sha256=64c1f811e31556ba9931953c8ec7b397488726c63e09a4c67004f43bdd28da88
Best match: bz2file 0.98
Processing bz2file-0.98.tar.gz
Writing /tmp/easy_install-w_2x3jss/bz2file-0.98/setup.cfg
Running bz2file-0.98/setup.py -q bdist_egg --dist-dir /tmp/easy_install-w_2x3jss/bz2file-0.98/egg-dist-tmp-44a0u3lc
zip_safe flag not set; analyzing archive contents...
Moving bz2file-0.98-py3.6.egg to /home/travis/build/wikimedia/pywikibot/.eggs
Installed /home/travis/build/wikimedia/pywikibot/.eggs/bz2file-0.98-py3.6.egg
running egg_info
creating pywikibot.egg-info
writing pywikibot.egg-info/PKG-INFO
writing dependency_links to pywikibot.egg-info/dependency_links.txt
writing requirements to pywikibot.egg-info/requires.txt
writing top-level names to pywikibot.egg-info/top_level.txt
writing manifest file 'pywikibot.egg-info/SOURCES.txt'
reading manifest file 'pywikibot.egg-info/SOURCES.txt'
writing manifest file 'pywikibot.egg-info/SOURCES.txt'
running build_ext
Traceback (most recent call last):
  File "setup.py", line 239, in <module>
    use_2to3=False
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/setuptools/__init__.py", line 129, in setup
    return distutils.core.setup(**attrs)
  File "/opt/python/3.6.3/lib/python3.6/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/opt/python/3.6.3/lib/python3.6/distutils/dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "/opt/python/3.6.3/lib/python3.6/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ptr.py", line 176, in run
    return self.run_tests()
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ptr.py", line 187, in run_tests
    result_code = __import__('pytest').main()
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/_pytest/config.py", line 50, in main
    config = _prepareconfig(args, plugins)
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/_pytest/config.py", line 160, in _prepareconfig
    pluginmanager=pluginmanager, args=args)
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pluggy/__init__.py", line 617, in __call__
    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pluggy/__init__.py", line 222, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pluggy/__init__.py", line 216, in <lambda>
    firstresult=hook.spec_opts.get('firstresult'),
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pluggy/callers.py", line 196, in _multicall
    gen.send(outcome)
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/_pytest/helpconfig.py", line 68, in pytest_cmdline_parse
    config = outcome.get_result()
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pluggy/callers.py", line 76, in get_result
    raise ex[1].with_traceback(ex[2])
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pluggy/callers.py", line 180, in _multicall
    res = hook_impl.function(*args)
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/_pytest/config.py", line 942, in pytest_cmdline_parse
    self.parse(args)
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/_pytest/config.py", line 1107, in parse
    self._preparse(args, addopts=addopts)
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/_pytest/config.py", line 1070, in _preparse
    self.pluginmanager.load_setuptools_entrypoints('pytest11')
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pluggy/__init__.py", line 397, in load_setuptools_entrypoints
    plugin = ep.load()
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2322, in load
    return self.resolve()
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2328, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/_pytest/assertion/rewrite.py", line 212, in load_module
    py.builtin.exec_(co, mod.__dict__)
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pytest_httpbin/plugin.py", line 3, in <module>
    from httpbin import app as httpbin_app
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/httpbin/__init__.py", line 3, in <module>
    from .core import *
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/httpbin/core.py", line 19, in <module>
    from flask_common import Common
  File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/flask_common.py", line 13, in <module>
    from flask.exthook import ExtDeprecationWarning
ModuleNotFoundError: No module named 'flask.exthook'

(https://travis-ci.org/wikimedia/pywikibot/jobs/372901105#L867)

This is an upstream issue in httpbin package. See: https://github.com/requests/httpbin/issues/442

(The dependency chain is: dev-requirement.txt -> pytest-httpbin -> httpbin)

Event Timeline

Dalba triaged this task as High priority.Apr 30 2018, 8:57 AM
Dalba updated the task description. (Show Details)

Change 429778 had a related patch set uploaded (by Dalba; owner: Dalba):
[pywikibot/core@master] dev-requirements.txt: Force installing Flask<1.0.1

https://gerrit.wikimedia.org/r/429778

Change 429778 merged by jenkins-bot:
[pywikibot/core@master] dev-requirements.txt: Force installing Flask<1.0.1

https://gerrit.wikimedia.org/r/429778

Dalba lowered the priority of this task from High to Low.Apr 30 2018, 1:56 PM

Temporirily fixed here. We should wait and see what upstream is going to do about it and update accordingly. Most probably we won't need Flask<1.0.1 in our requirements after upstream issue is fixed.

Change 432343 had a related patch set uploaded (by Dalba; owner: Dalba):
[pywikibot/core@master] Remove httpbin and Flask-Common from requirements.txt

https://gerrit.wikimedia.org/r/432343

Change 432343 merged by jenkins-bot:
[pywikibot/core@master] Remove httpbin and Flask-Common from dev-requirements.txt

https://gerrit.wikimedia.org/r/432343

Vvjjkkii renamed this task from Travis jobs are failing to install httpbin to kzdaaaaaaa.Jul 1 2018, 1:13 AM
Vvjjkkii reopened this task as Open.
Vvjjkkii removed Dalba as the assignee of this task.
Vvjjkkii raised the priority of this task from Low to High.
Vvjjkkii updated the task description. (Show Details)
Vvjjkkii removed subscribers: gerritbot, Aklapper.
CommunityTechBot renamed this task from kzdaaaaaaa to Travis jobs are failing to install httpbin.Jul 2 2018, 7:28 AM
CommunityTechBot closed this task as Resolved.
CommunityTechBot assigned this task to Dalba.
CommunityTechBot lowered the priority of this task from High to Low.
CommunityTechBot updated the task description. (Show Details)
CommunityTechBot added subscribers: gerritbot, Aklapper.