Files
2024-02-15 17:01:50 +00:00

32 lines
863 B
Python

from __future__ import annotations
import os.path
import sys
import sysconfig
PTH = """\
from pip._internal.network.download import Downloader
from pip._vendor.tenacity import retry, stop_after_attempt
Downloader.__call__ = retry(
reraise=True,
stop=stop_after_attempt(5),
after=lambda state: print(f'!!! retry: attempt {state.attempt_number + 1} !!!')
)(Downloader.__call__)
"""
def main() -> int:
assert not sys.flags.no_site, sys.flags.no_site
target = os.path.join(sysconfig.get_path("purelib"), "sentry-pip-hack.pth")
assert "/.venv/" in target, target
print("working around https://github.com/pypa/pip/issues/12383#issuecomment-1808598097")
print(f"writing: {target}")
with open(target, "w") as f:
f.write(f"import sys;exec({PTH!r})\n")
return 0
if __name__ == "__main__":
raise SystemExit(main())