* Upgrade to new lockfile format
Now requires poetry >= 1.2.2 to read and poetry >= 1.3.0 to write.
Cheat sheet:
```
poetry --version
poetry show > scratch/before
pipx upgrade poetry
poetry --version
poetry show > scratch/after
diff scratch{before,after} && echo "no change!"
```
* Use Poetry 1.3.2 when reading or writing lockfile
* Remove unneeded(?) poetry dep for cibuildwheel
* Update docs
* Remove redundant call to setup-python
* Remove outdated comments related to Poetry 1.x
* Remove outdated docs line
was fixed in #13082
* Minor improvements to poetry cheat sheet
* Invoke setup-python-poetry with explicit version
Not sure about this. It's hardcoding versions everywhere.
* Changelog
* Check the lockfile is version 2.0
Might one day incorporate other checks like #14742
* Typo fixes, thanks Sean
Co-authored-by: Sean Quah <8349537+squahtx@users.noreply.github.com>
Co-authored-by: Sean Quah <8349537+squahtx@users.noreply.github.com>
24 lines
625 B
Python
Executable File
24 lines
625 B
Python
Executable File
#! /usr/bin/env python
|
|
import sys
|
|
|
|
if sys.version_info < (3, 11):
|
|
raise RuntimeError("Requires at least Python 3.11, to import tomllib")
|
|
|
|
import tomllib
|
|
|
|
with open("poetry.lock", "rb") as f:
|
|
lockfile = tomllib.load(f)
|
|
|
|
try:
|
|
lock_version = lockfile["metadata"]["lock-version"]
|
|
assert lock_version == "2.0"
|
|
except Exception:
|
|
print(
|
|
"""\
|
|
Lockfile is not version 2.0. You probably need to upgrade poetry on your local box
|
|
and re-run `poetry lock --no-update`. See the Poetry cheat sheet at
|
|
https://matrix-org.github.io/synapse/develop/development/dependencies.html
|
|
"""
|
|
)
|
|
raise
|