()
| 37 | |
| 38 | |
| 39 | def get_all_versions() -> list[Version]: |
| 40 | response = urllib3.request("GET", "https://pypi.org/pypi/ruff/json") |
| 41 | if response.status != 200: |
| 42 | raise RuntimeError("Failed to fetch versions from pypi") |
| 43 | |
| 44 | versions = [Version(release) for release in response.json()["releases"]] |
| 45 | return sorted(versions) |
| 46 | |
| 47 | |
| 48 | def get_current_version(pyproject: dict) -> Version: |