Browse Source

Use and recommend poetry 1.1.14, up from 1.1.12 (#13285)

tags/v1.64.0rc1
David Robertson 1 year ago
committed by GitHub
parent
commit
e9ce4d089b
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 30 additions and 4 deletions
  1. +1
    -1
      .ci/scripts/test_old_deps.sh
  2. +2
    -2
      .github/workflows/twisted_trunk.yml
  3. +1
    -0
      changelog.d/13285.misc
  4. +1
    -1
      docker/Dockerfile
  5. +25
    -0
      docs/development/dependencies.md

+ 1
- 1
.ci/scripts/test_old_deps.sh View File

@@ -69,7 +69,7 @@ with open('pyproject.toml', 'w') as f:
"
python3 -c "$REMOVE_DEV_DEPENDENCIES"

pipx install poetry==1.1.12
pipx install poetry==1.1.14
~/.local/bin/poetry lock

echo "::group::Patched pyproject.toml"


+ 2
- 2
.github/workflows/twisted_trunk.yml View File

@@ -127,12 +127,12 @@ jobs:
run: |
set -x
DEBIAN_FRONTEND=noninteractive sudo apt-get install -yqq python3 pipx
pipx install poetry==1.1.12
pipx install poetry==1.1.14

poetry remove -n twisted
poetry add -n --extras tls git+https://github.com/twisted/twisted.git#trunk
poetry lock --no-update
# NOT IN 1.1.12 poetry lock --check
# NOT IN 1.1.14 poetry lock --check
working-directory: synapse

- run: |


+ 1
- 0
changelog.d/13285.misc View File

@@ -0,0 +1 @@
Upgrade from Poetry 1.1.14 to 1.1.12, to fix bugs when locking packages.

+ 1
- 1
docker/Dockerfile View File

@@ -45,7 +45,7 @@ RUN \

# We install poetry in its own build stage to avoid its dependencies conflicting with
# synapse's dependencies.
# We use a specific commit from poetry's master branch instead of our usual 1.1.12,
# We use a specific commit from poetry's master branch instead of our usual 1.1.14,
# to incorporate fixes to some bugs in `poetry export`. This commit corresponds to
# https://github.com/python-poetry/poetry/pull/5156 and
# https://github.com/python-poetry/poetry/issues/5141 ;


+ 25
- 0
docs/development/dependencies.md View File

@@ -237,3 +237,28 @@ poetry run pip install build && poetry run python -m build
because [`build`](https://github.com/pypa/build) is a standardish tool which
doesn't require poetry. (It's what we use in CI too). However, you could try
`poetry build` too.


# Troubleshooting

## Check the version of poetry with `poetry --version`.

At the time of writing, the 1.2 series is beta only. We have seen some examples
where the lockfiles generated by 1.2 prereleasese aren't interpreted correctly
by poetry 1.1.x. For now, use poetry 1.1.14, which includes a critical
[change](https://github.com/python-poetry/poetry/pull/5973) needed to remain
[compatible with PyPI](https://github.com/pypi/warehouse/pull/11775).

It can also be useful to check the version of `poetry-core` in use. If you've
installed `poetry` with `pipx`, try `pipx runpip poetry list | grep poetry-core`.

## Clear caches: `poetry cache clear --all pypi`.

Poetry caches a bunch of information about packages that isn't readily available
from PyPI. (This is what makes poetry seem slow when doing the first
`poetry install`.) Try `poetry cache list` and `poetry cache clear --all
<name of cache>` to see if that fixes things.

## Try `--verbose` or `--dry-run` arguments.

Sometimes useful to see what poetry's internal logic is.

Loading…
Cancel
Save