werkzeug>=0.14.1 is required by httbbin used by pytest-httpbin used by pytest. werkzeug 0.15.3 and 0.15.4 are deployed 14th/15th May and our Python 3.8 tests fails after that date:
running build_ext Traceback (most recent call last): File "setup.py", line 204, in <module> setup( File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/setuptools/__init__.py", line 145, in setup return distutils.core.setup(**attrs) File "/opt/python/3.8-dev/lib/python3.8/distutils/core.py", line 148, in setup dist.run_commands() File "/opt/python/3.8-dev/lib/python3.8/distutils/dist.py", line 966, in run_commands self.run_command(cmd) File "/opt/python/3.8-dev/lib/python3.8/distutils/dist.py", line 985, in run_command cmd_obj.run() File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/ptr.py", line 209, in run return self.run_tests() File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/ptr.py", line 220, in run_tests result_code = __import__('pytest').main() File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/_pytest/config/__init__.py", line 60, in main config = _prepareconfig(args, plugins) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/_pytest/config/__init__.py", line 200, in _prepareconfig return pluginmanager.hook.pytest_cmdline_parse( File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/pluggy/hooks.py", line 289, in __call__ return self._hookexec(self, self.get_hookimpls(), kwargs) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/pluggy/manager.py", line 68, in _hookexec return self._inner_hookexec(hook, methods, kwargs) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/pluggy/manager.py", line 59, in <lambda> self._inner_hookexec = lambda hook, methods, kwargs: hook.multicall( File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/pluggy/callers.py", line 203, in _multicall gen.send(outcome) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/_pytest/helpconfig.py", line 93, in pytest_cmdline_parse config = outcome.get_result() File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/pluggy/callers.py", line 80, in get_result raise ex[1].with_traceback(ex[2]) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/pluggy/callers.py", line 187, in _multicall res = hook_impl.function(*args) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/_pytest/config/__init__.py", line 679, in pytest_cmdline_parse self.parse(args) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/_pytest/config/__init__.py", line 896, in parse self._preparse(args, addopts=addopts) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/_pytest/config/__init__.py", line 841, in _preparse self.pluginmanager.load_setuptools_entrypoints("pytest11") File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/pluggy/manager.py", line 274, in load_setuptools_entrypoints plugin = ep.load() File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2434, in load return self.resolve() File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2440, in resolve module = __import__(self.module_name, fromlist=['__name__'], level=0) File "<frozen importlib._bootstrap>", line 991, in _find_and_load File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 655, in _load_unlocked File "<frozen importlib._bootstrap>", line 618, in _load_backward_compatible File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/_pytest/assertion/rewrite.py", line 299, in load_module six.exec_(co, mod.__dict__) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/pytest_httpbin/plugin.py", line 3, in <module> from httpbin import app as httpbin_app File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/httpbin/__init__.py", line 3, in <module> from .core import * File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/httpbin/core.py", line 26, in <module> from . import filters File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/httpbin/filters.py", line 23, in <module> app = Flask(__name__) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/flask/app.py", line 559, in __init__ self.add_url_rule( File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/flask/app.py", line 67, in wrapper_func return f(self, *args, **kwargs) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/flask/app.py", line 1217, in add_url_rule self.url_map.add(rule) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/werkzeug/routing.py", line 1388, in add rule.bind(self) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/werkzeug/routing.py", line 730, in bind self.compile() File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/werkzeug/routing.py", line 794, in compile self._build = self._compile_builder(False).__get__(self, None) File "/home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/werkzeug/routing.py", line 951, in _compile_builder code = compile(module, "<werkzeug routing>", "exec") TypeError: required field "type_ignores" missing from Module