mosquito / pypi-server

Tornado based server like pypi.python.org. With caching from pypi.
MIT License
120 stars 38 forks source link

tornado dependency breaks with v5.0 #28

Open da4089 opened 6 years ago

da4089 commented 6 years ago

Tornado has recently released their v5.0, which breaks pypi-server's handlers/pypi/proxy/client.py on line 33 where it constructs AsyncHTTPClient passing in an io_loop parameter. It seems v5.0 doesn't support this parameter any longer.

Changing setup.py to further restrict Tornado to tornado>=4.3,<5.0 should fix it until it can be figured out what Tornado is doing with their event loop.

Tested with v5.0 and v4.5.3.

[C 180307 16:08:10 server:204] Exception on main loop:
[E 180307 16:08:10 server:205] initialize() got an unexpected keyword argument 'io_loop'
    Traceback (most recent call last):
      File "/Users/d/work/hmc/hmops/docker/images/pypi_server/venv36/lib/python3.6/site-packages/pypi_server/server.py", line 185, in run
        handlers.base.BaseHandler.THREAD_POOL
      File "/Users/d/work/hmc/hmops/docker/images/pypi_server/venv36/lib/python3.6/site-packages/pypi_server/handlers/pypi/proxy/client.py", line 33, in configure
        cls.CLIENT = AsyncHTTPClient(io_loop=IOLoop.current())
      File "/Users/d/work/hmc/hmops/docker/images/pypi_server/venv36/lib/python3.6/site-packages/tornado/httpclient.py", line 171, in __new__
        instance = super(AsyncHTTPClient, cls).__new__(cls, **kwargs)
      File "/Users/d/work/hmc/hmops/docker/images/pypi_server/venv36/lib/python3.6/site-packages/tornado/util.py", line 312, in __new__
        instance.initialize(*args, **init_kwargs)
    TypeError: initialize() got an unexpected keyword argument 'io_loop'