stevearc / pypicloud

S3-backed pypi server implementation
MIT License
507 stars 141 forks source link

Redirect unknown URLs to /simple/ #305

Closed z0rc closed 2 years ago

z0rc commented 2 years ago

I'm migrating from pypiserver instance to pypicloud. A lot of our code reference old pypiserver as https://pypiserver.example.com. We tried to point this domain to new pypicloud instance and this broke package installation.

AFAIU our old reference to pypiserver without /simple/ path work due to fact that pypiserver issues redirects for /package/ to /simple/package/, see https://github.com/pypiserver/pypiserver/blob/v1.5.0/pypiserver/_app.py#L399-L403. AFAIK this behavior is specific to pypiserver and not part of PEP 503.

Still it would be nice for pypicloud to replicate this behavior. This way we could just repoint domain to new pypicloud instance. Otherwise we have to update index url and regenerate poetry lock files in a lot of projects, which is PITA.

stevearc commented 2 years ago

Is there some reason why you can't replace https://pypiserver.example.com with https://pypicloud.example.com/simple?

z0rc commented 2 years ago

Technical reason - no. It more of organization level challenge, with up to hundred repos that managed by multiple teams. This will take too much time and alignment. I'm looking into switching domain to pypicloud, so no code changes have to be done.

stevearc commented 2 years ago

Put up a preliminary PR. Seems to work, but I need to test it more thoroughly. Unfortunately I am out of time for tonight, so I'll have to come back to this later

z0rc commented 2 years ago

Thanks!