python-poetry / poetry

Python packaging and dependency management made easy
https://python-poetry.org
MIT License
31.69k stars 2.27k forks source link

PyPI JSON API caching prevents versions from being found #6473

Closed caniko closed 2 years ago

caniko commented 2 years ago

Issue

poetry fails to resolve latest version on poetry update, I recently updated my package syndb-cassandra. This happened both 2 days ago, and now. I am certain that this issue still percists. The issue is at least very similar to #3543.

I bumped the version .toml file to make sure, I get this:

Because syndb-api depends on syndb-cassandra (>=2.0.1) which doesn't match any versions, version solving failed.

This issue won't occur for you however, follow reproduce guide. no-cache flagg has no effect.

Reproduce

  1. Make a package, A
  2. Upload to PyPi
  3. Make another package, B, that depends on A, and poetry lock B
  4. Bump A version by minor or patch
  5. Upload to A PyPi
  6. poetry update B

This will fail to find the latest package. pip install -U <package_name> inside the poetry package env will succeed.

Verbose error output

 ╰─λ poetry update -vvv
Loading configuration file /home/can/.config/pypoetry/config.toml
Using virtualenv: /home/can/.cache/pypoetry/virtualenvs/syndb-api-Sd1jQNq4-py3.10
Project environment contains an empty path in sys_path, ignoring.
Updating dependencies
Resolving dependencies...
   1: fact: syndb-api is 0.4.1
   1: derived: syndb-api
   0: Duplicate dependencies for syndb-cassandra[driver]
   1: fact: syndb-api depends on asyncio (^3.4.3)
   1: fact: syndb-api depends on pydantic (^1.9.0)
   1: fact: syndb-api depends on click (^8.0.4)
   1: fact: syndb-api depends on hypercorn (*)
   1: fact: syndb-api depends on orjson (^3.6.8)
   1: fact: syndb-api depends on fastapi (^0.74.1)
   1: fact: syndb-api depends on brotli-asgi (^1.1.0)
   1: fact: syndb-api depends on httpx (^0.22.0)
   1: fact: syndb-api depends on jwcrypto (^1.2)
   1: fact: syndb-api depends on fastapi-users (10.1.3)
   1: fact: syndb-api depends on fastapi-users-tortoise (*)
   1: fact: syndb-api depends on tortoise-orm (^0.19.1)
   1: fact: syndb-api depends on extended-tortoise-models (^0.1.1)
   1: fact: syndb-api depends on aerich (^0.6.3)
   1: fact: syndb-api depends on celery (5.3.0b1)
   1: fact: syndb-api depends on passlib (^1.7.4)
   1: fact: syndb-api depends on PyJWT (^2.3.0)
   1: fact: syndb-api depends on hvac (^0.11.2)
   1: fact: syndb-api depends on requests-unixsocket (^0.3.0)
   1: fact: syndb-api depends on syndb-cassandra (>=2.0.1)
   1: fact: syndb-api depends on syndb-cassandra[driver] (2.0.1)
   1: fact: syndb-api depends on syndb-admin (../..)
   1: fact: syndb-api depends on ruamel.yaml (^0.17.21)
   1: fact: syndb-api depends on celery (5.3.0b1)
   1: fact: syndb-api depends on docker (^5.0.3)
   1: fact: syndb-api depends on aiosqlite (^0.17.0)
   1: fact: syndb-api depends on black (*)
   1: fact: syndb-api depends on isort (*)
   1: fact: syndb-api depends on flakeheaven (^0.11.1)
   1: fact: syndb-api depends on pytest (*)
   1: fact: syndb-api depends on pytest-asyncio (*)
   1: fact: syndb-api depends on pytest-env (^0.6.2)
   1: selecting syndb-api (0.4.1)
   1: derived: pytest-env (>=0.6.2,<0.7.0)
   1: derived: pytest-asyncio
   1: derived: pytest
   1: derived: flakeheaven (>=0.11.1,<0.12.0)
   1: derived: isort
   1: derived: black
   1: derived: aiosqlite (>=0.17.0,<0.18.0)
   1: derived: docker (>=5.0.3,<6.0.0)
   1: derived: celery[redis] (==5.3.0b1)
   1: derived: ruamel.yaml (>=0.17.21,<0.18.0)
   1: derived: syndb-admin
   1: derived: syndb-cassandra[driver] (2.0.1) @ ../syndb-cassandra
   1: derived: requests-unixsocket (>=0.3.0,<0.4.0)
   1: derived: hvac[parser] (>=0.11.2,<0.12.0)
   1: derived: PyJWT[crypto] (>=2.3.0,<3.0.0)
   1: derived: passlib[argon2] (>=1.7.4,<2.0.0)
   1: derived: celery[cassandra,librabbitmq] (==5.3.0b1)
   1: derived: aerich (>=0.6.3,<0.7.0)
   1: derived: extended-tortoise-models (>=0.1.1,<0.2.0)
   1: derived: tortoise-orm[asyncpg] (>=0.19.1,<0.20.0)
   1: derived: fastapi-users-tortoise
   1: derived: fastapi-users[oauth] (==10.1.3)
   1: derived: jwcrypto (>=1.2,<2.0)
   1: derived: httpx (>=0.22.0,<0.23.0)
   1: derived: brotli-asgi (>=1.1.0,<2.0.0)
   1: derived: fastapi (>=0.74.1,<0.75.0)
   1: derived: orjson (>=3.6.8,<4.0.0)
   1: derived: hypercorn
   1: derived: click (>=8.0.4,<9.0.0)
   1: derived: pydantic (>=1.9.0,<2.0.0)
   1: derived: asyncio (>=3.4.3,<4.0.0)
   1: fact: syndb-cassandra[driver] (2.0.1) depends on syndb-cassandra (2.0.1)
   1: fact: syndb-cassandra[driver] (2.0.1) depends on click (^8.1.3)
   1: fact: syndb-cassandra[driver] (2.0.1) depends on cassandra-driver (^3.21.0)
   1: fact: syndb-cassandra[driver] (2.0.1) depends on pydantic (^1.9.0)
   1: fact: syndb-cassandra[driver] (2.0.1) depends on orjson (*)
   1: fact: syndb-cassandra[driver] (2.0.1) depends on syndb-admin (*)
   1: selecting syndb-cassandra[driver] (2.0.1 /home/can/Projects/SynDB/backend/syndb-cassandra)
   1: derived: cassandra-driver (>=3.21.0,<4.0.0)
   1: derived: click (>=8.1.3,<9.0.0)
   1: derived: syndb-cassandra (2.0.1) @ file:///home/can/Projects/SynDB/backend/syndb-cassandra
   1: fact: syndb-cassandra (2.0.1) depends on click (^8.1.3)
   1: fact: syndb-cassandra (2.0.1) depends on syndb-admin (*)
   1: selecting syndb-cassandra (2.0.1 /home/can/Projects/SynDB/backend/syndb-cassandra)
No suitable keyring backend found
No suitable keyring backends were found
Keyring is not available, credentials will be stored and retrieved from configuration files as plaintext.
Creating new session for pypi.org
Source (PyPI): 1 packages found for pytest-env >=0.6.2,<0.7.0
   1: fact: pytest-env (0.6.2) depends on pytest (>=2.6.0)
   1: selecting pytest-env (0.6.2)
   1: derived: pytest (>=2.6.0)
Source (PyPI): 27 packages found for pytest-asyncio *
   1: fact: pytest-asyncio (0.19.0) depends on pytest (>=6.1.0)
   1: selecting pytest-asyncio (0.19.0)
   1: derived: pytest (>=6.1.0)
Source (PyPI): 15 packages found for pytest >=6.1.0
   1: fact: pytest (7.1.3) depends on attrs (>=19.2.0)
   1: fact: pytest (7.1.3) depends on iniconfig (*)
   1: fact: pytest (7.1.3) depends on packaging (*)
   1: fact: pytest (7.1.3) depends on pluggy (>=0.12,<2.0)
   1: fact: pytest (7.1.3) depends on py (>=1.8.2)
   1: fact: pytest (7.1.3) depends on tomli (>=1.0.0)
   1: fact: pytest (7.1.3) depends on colorama (*)
   1: selecting pytest (7.1.3)
   1: derived: colorama
   1: derived: tomli (>=1.0.0)
   1: derived: py (>=1.8.2)
   1: derived: pluggy (>=0.12,<2.0)
   1: derived: packaging
   1: derived: iniconfig
   1: derived: attrs (>=19.2.0)
Source (PyPI): 1 packages found for flakeheaven >=0.11.1,<0.12.0
   1: fact: flakeheaven (0.11.1) depends on colorama (*)
   1: fact: flakeheaven (0.11.1) depends on entrypoints (*)
   1: fact: flakeheaven (0.11.1) depends on flake8 (>=4.0.1,<5.0.0)
   1: fact: flakeheaven (0.11.1) depends on pygments (*)
   1: fact: flakeheaven (0.11.1) depends on toml (*)
   1: fact: flakeheaven (0.11.1) depends on urllib3 (*)
   1: selecting flakeheaven (0.11.1)
   1: derived: urllib3
   1: derived: toml
   1: derived: pygments
   1: derived: flake8 (>=4.0.1,<5.0.0)
   1: derived: entrypoints
Source (PyPI): 132 packages found for isort *
   1: selecting isort (5.10.1)
Source (PyPI): 4 packages found for black *
   1: fact: black (22.8.0) depends on click (>=8.0.0)
   1: fact: black (22.8.0) depends on platformdirs (>=2)
   1: fact: black (22.8.0) depends on pathspec (>=0.9.0)
   1: fact: black (22.8.0) depends on mypy-extensions (>=0.4.3)
   1: fact: black (22.8.0) depends on tomli (>=1.1.0)
   1: selecting black (22.8.0)
   1: derived: tomli (>=1.1.0)
   1: derived: mypy-extensions (>=0.4.3)
   1: derived: pathspec (>=0.9.0)
   1: derived: platformdirs (>=2)
Source (PyPI): 1 packages found for aiosqlite >=0.17.0,<0.18.0
   1: fact: aiosqlite (0.17.0) depends on typing_extensions (>=3.7.2)
   1: selecting aiosqlite (0.17.0)
   1: derived: typing_extensions (>=3.7.2)
Source (PyPI): No release information found for docker-0.0.1, skipping
Source (PyPI): 1 packages found for docker >=5.0.3,<6.0.0
   1: fact: docker (5.0.3) depends on websocket-client (>=0.32.0)
   1: fact: docker (5.0.3) depends on requests (>=2.14.2,<2.18.0 || >2.18.0)
   1: fact: docker (5.0.3) depends on pywin32 (227)
   1: selecting docker (5.0.3)
   1: derived: pywin32 (==227)
   1: derived: requests (>=2.14.2,!=2.18.0)
   1: derived: websocket-client (>=0.32.0)
Source (PyPI): 1 packages found for celery 5.3.0b1
   1: fact: celery (5.3.0b1) depends on celery (5.3.0b1)
   1: fact: celery (5.3.0b1) depends on pytz (>=2021.3)
   1: fact: celery (5.3.0b1) depends on billiard (>=3.6.4.0,<5.0)
   1: fact: celery (5.3.0b1) depends on kombu (>=5.3.0b1,<6.0)
   1: fact: celery (5.3.0b1) depends on vine (>=5.0.0,<6.0)
   1: fact: celery (5.3.0b1) depends on click (>=8.1.2,<9.0)
   1: fact: celery (5.3.0b1) depends on click-didyoumean (>=0.3.0)
   1: fact: celery (5.3.0b1) depends on click-repl (>=0.2.0)
   1: fact: celery (5.3.0b1) depends on click-plugins (>=1.1.1)
   1: fact: celery (5.3.0b1) depends on redis (>=4.2.2)
   1: selecting celery[redis] (5.3.0b1)
   1: derived: redis (>=4.2.2)
   1: derived: click-plugins (>=1.1.1)
   1: derived: click-repl (>=0.2.0)
   1: derived: click-didyoumean (>=0.3.0)
   1: derived: vine (>=5.0.0,<6.0)
   1: derived: kombu (>=5.3.0b1,<6.0)
   1: derived: billiard (>=3.6.4.0,<5.0)
   1: derived: pytz (>=2021.3)
   1: derived: celery (==5.3.0b1)
Source (PyPI): 1 packages found for ruamel-yaml >=0.17.21,<0.18.0
   1: fact: ruamel-yaml (0.17.21) depends on ruamel.yaml.clib (>=0.2.6)
   1: selecting ruamel-yaml (0.17.21)
   1: derived: ruamel.yaml.clib (>=0.2.6)
Source (PyPI): 1 packages found for syndb-admin *
   1: fact: syndb-admin (0.1.0) depends on pydantic (>=1.9.2,<2.0.0)
   1: fact: syndb-admin (0.1.0) depends on ruamel.yaml (>=0.17.21,<0.18.0)
   1: selecting syndb-admin (0.1.0)
   1: derived: pydantic (>=1.9.2,<2.0.0)
Source (PyPI): No release information found for requests-unixsocket-0.1.0.1.g46ab6a7, skipping
Source (PyPI): 1 packages found for requests-unixsocket >=0.3.0,<0.4.0
   1: fact: requests-unixsocket (0.3.0) depends on requests (>=1.1)
   1: selecting requests-unixsocket (0.3.0)
Source (PyPI): No release information found for hvac-0.2.11, skipping
Source (PyPI): 1 packages found for hvac >=0.11.2,<0.12.0
   1: fact: hvac (0.11.2) depends on hvac (0.11.2)
   1: fact: hvac (0.11.2) depends on requests (>=2.21.0)
   1: fact: hvac (0.11.2) depends on six (>=1.5.0)
   1: fact: hvac (0.11.2) depends on pyhcl (>=0.3.10)
   1: selecting hvac[parser] (0.11.2)
   1: derived: pyhcl (>=0.3.10)
   1: derived: six (>=1.5.0)
   1: derived: requests (>=2.21.0)
   1: derived: hvac (==0.11.2)
Source (PyPI): 2 packages found for pyjwt >=2.3.0,<3.0.0
   1: fact: pyjwt (2.4.0) depends on pyjwt (2.4.0)
   1: fact: pyjwt (2.4.0) depends on cryptography (>=3.3.1)
   1: selecting pyjwt[crypto] (2.4.0)
   1: derived: cryptography (>=3.3.1)
   1: derived: pyjwt (==2.4.0)
Source (PyPI): 1 packages found for passlib >=1.7.4,<2.0.0
   1: fact: passlib (1.7.4) depends on passlib (1.7.4)
   1: fact: passlib (1.7.4) depends on argon2-cffi (>=18.2.0)
   1: selecting passlib[argon2] (1.7.4)
   1: derived: argon2-cffi (>=18.2.0)
   1: derived: passlib (==1.7.4)
Source (PyPI): 1 packages found for celery 5.3.0b1
   1: fact: celery (5.3.0b1) depends on celery (5.3.0b1)
   1: fact: celery (5.3.0b1) depends on pytz (>=2021.3)
   1: fact: celery (5.3.0b1) depends on billiard (>=3.6.4.0,<5.0)
   1: fact: celery (5.3.0b1) depends on kombu (>=5.3.0b1,<6.0)
   1: fact: celery (5.3.0b1) depends on vine (>=5.0.0,<6.0)
   1: fact: celery (5.3.0b1) depends on click (>=8.1.2,<9.0)
   1: fact: celery (5.3.0b1) depends on click-didyoumean (>=0.3.0)
   1: fact: celery (5.3.0b1) depends on click-repl (>=0.2.0)
   1: fact: celery (5.3.0b1) depends on click-plugins (>=1.1.1)
   1: fact: celery (5.3.0b1) depends on cassandra-driver (>=3.25.0,<4)
   1: fact: celery (5.3.0b1) depends on librabbitmq (>=1.5.0)
   1: selecting celery[cassandra,librabbitmq] (5.3.0b1)
   1: derived: librabbitmq (>=1.5.0)
   1: derived: cassandra-driver (>=3.25.0,<4)
Source (PyPI): 1 packages found for aerich >=0.6.3,<0.7.0
   1: fact: aerich (0.6.3) depends on tortoise-orm (*)
   1: fact: aerich (0.6.3) depends on tomlkit (*)
   1: fact: aerich (0.6.3) depends on pydantic (*)
   1: fact: aerich (0.6.3) depends on dictdiffer (*)
   1: fact: aerich (0.6.3) depends on click (*)
   1: selecting aerich (0.6.3)
   1: derived: dictdiffer
   1: derived: tomlkit
   1: derived: tortoise-orm
Source (PyPI): 1 packages found for extended-tortoise-models >=0.1.1,<0.2.0
   1: fact: extended-tortoise-models (0.1.1) depends on tortoise-orm (*)
   1: selecting extended-tortoise-models (0.1.1)
Source (PyPI): 2 packages found for tortoise-orm >=0.19.1,<0.20.0
   1: fact: tortoise-orm (0.19.2) depends on tortoise-orm (0.19.2)
   1: fact: tortoise-orm (0.19.2) depends on aiosqlite (>=0.16.0,<0.18.0)
   1: fact: tortoise-orm (0.19.2) depends on asyncpg (*)
   1: fact: tortoise-orm (0.19.2) depends on iso8601 (>=1.0.2,<2.0.0)
   1: fact: tortoise-orm (0.19.2) depends on pypika-tortoise (>=0.1.6,<0.2.0)
   1: fact: tortoise-orm (0.19.2) depends on pytz (*)
   1: selecting tortoise-orm[asyncpg] (0.19.2)
   1: derived: pypika-tortoise (>=0.1.6,<0.2.0)
   1: derived: iso8601 (>=1.0.2,<2.0.0)
   1: derived: asyncpg
   1: derived: tortoise-orm (==0.19.2)
Source (PyPI): 2 packages found for fastapi-users-tortoise *
   1: fact: fastapi-users-tortoise (0.2.0) depends on tortoise-orm (>=0.19.0)
   1: fact: fastapi-users-tortoise (0.2.0) depends on fastapi-users (>=10.0.0)
   1: selecting fastapi-users-tortoise (0.2.0)
   1: derived: fastapi-users (>=10.0.0)
Source (PyPI): 1 packages found for fastapi-users 10.1.3
   1: fact: fastapi-users (10.1.3) depends on fastapi-users (10.1.3)
   1: fact: fastapi-users (10.1.3) depends on fastapi (>=0.65.2)
   1: fact: fastapi-users (10.1.3) depends on passlib (1.7.4)
   1: fact: fastapi-users (10.1.3) depends on email-validator (>=1.1.0,<1.3)
   1: fact: fastapi-users (10.1.3) depends on pyjwt (2.4.0)
   1: fact: fastapi-users (10.1.3) depends on python-multipart (0.0.5)
   1: fact: fastapi-users (10.1.3) depends on makefun (>=1.11.2,<1.14)
   1: fact: fastapi-users (10.1.3) depends on httpx-oauth (>=0.4,<=0.7)
   1: selecting fastapi-users[oauth] (10.1.3)
   1: derived: httpx-oauth (>=0.4,<=0.7)
   1: derived: makefun (>=1.11.2,<1.14)
   1: derived: python-multipart (==0.0.5)
   1: derived: email-validator (>=1.1.0,<1.3)
   1: derived: passlib[bcrypt] (==1.7.4)
   1: derived: fastapi-users (==10.1.3)
Source (PyPI): 3 packages found for jwcrypto >=1.2,<2.0
   1: fact: jwcrypto (1.3.1) depends on cryptography (>=2.3)
   1: fact: jwcrypto (1.3.1) depends on deprecated (*)
   1: selecting jwcrypto (1.3.1)
   1: derived: deprecated
Source (PyPI): No release information found for httpx-0.0.1, skipping
Source (PyPI): 1 packages found for httpx >=0.22.0,<0.23.0
   1: fact: httpx (0.22.0) depends on certifi (*)
   1: fact: httpx (0.22.0) depends on charset-normalizer (*)
   1: fact: httpx (0.22.0) depends on sniffio (*)
   1: fact: httpx (0.22.0) depends on rfc3986 (>=1.3,<2)
   1: fact: httpx (0.22.0) depends on httpcore (>=0.14.5,<0.15.0)
   1: selecting httpx (0.22.0)
   1: derived: httpcore (>=0.14.5,<0.15.0)
   1: derived: rfc3986[idna2008] (>=1.3,<2)
   1: derived: sniffio
   1: derived: charset-normalizer
   1: derived: certifi
Source (PyPI): 1 packages found for brotli-asgi >=1.1.0,<2.0.0
   1: fact: brotli-asgi (1.1.0) depends on brotli (>=1.0.7)
   1: fact: brotli-asgi (1.1.0) depends on starlette (>=0.13.4)
   1: selecting brotli-asgi (1.1.0)
   1: derived: starlette (>=0.13.4)
   1: derived: brotli (>=1.0.7)
Source (PyPI): 1 packages found for fastapi >=0.74.1,<0.75.0
   1: fact: fastapi (0.74.1) depends on starlette (0.17.1)
   1: fact: fastapi (0.74.1) depends on pydantic (>=1.6.2,<1.7 || >1.7,<1.7.1 || >1.7.1,<1.7.2 || >1.7.2,<1.7.3 || >1.7.3,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0)
   1: selecting fastapi (0.74.1)
   1: derived: starlette (==0.17.1)
Source (PyPI): 16 packages found for orjson >=3.6.8,<4.0.0
   1: selecting orjson (3.8.0)
Source (PyPI): 49 packages found for hypercorn *
   1: fact: hypercorn (0.14.3) depends on h11 (*)
   1: fact: hypercorn (0.14.3) depends on h2 (>=3.1.0)
   1: fact: hypercorn (0.14.3) depends on priority (*)
   1: fact: hypercorn (0.14.3) depends on toml (*)
   1: fact: hypercorn (0.14.3) depends on wsproto (>=0.14.0)
   1: selecting hypercorn (0.14.3)
   1: derived: wsproto (>=0.14.0)
   1: derived: priority
   1: derived: h2 (>=3.1.0)
   1: derived: h11
Source (PyPI): 1 packages found for click >=8.1.3,<9.0.0
   1: fact: click (8.1.3) depends on colorama (*)
   1: selecting click (8.1.3)
Source (PyPI): 4 packages found for pydantic >=1.9.2,<2.0.0
   1: fact: pydantic (1.10.2) depends on typing-extensions (>=4.1.0)
   1: selecting pydantic (1.10.2)
   1: derived: typing-extensions (>=4.1.0)
Source (PyPI): 1 packages found for asyncio >=3.4.3,<4.0.0
   1: selecting asyncio (3.4.3)
Source (PyPI): 1 packages found for cassandra-driver >=3.25.0,<4.0.0
   1: fact: cassandra-driver (3.25.0) depends on six (>=1.9)
   1: fact: cassandra-driver (3.25.0) depends on geomet (>=0.1,<0.3)
   1: selecting cassandra-driver (3.25.0)
   1: derived: geomet (>=0.1,<0.3)
   1: derived: six (>=1.9)
Source (PyPI): 7 packages found for tomli >=1.1.0
   1: selecting tomli (2.0.1)
Source (PyPI): No release information found for py-0.8.0-alpha2, skipping
Source (PyPI): No release information found for py-0.9.0, skipping
Source (PyPI): No release information found for py-1.4.32.dev1, skipping
Source (PyPI): 4 packages found for py >=1.8.2
   1: selecting py (1.11.0)
Source (PyPI): 4 packages found for pluggy >=0.12,<2.0
   1: selecting pluggy (1.0.0)
Source (PyPI): 38 packages found for packaging *
   1: fact: packaging (21.3) depends on pyparsing (>=2.0.2,<3.0.5 || >3.0.5)
   1: selecting packaging (21.3)
   1: derived: pyparsing (>=2.0.2,!=3.0.5)
Source (PyPI): No release information found for iniconfig-0.0, skipping
Source (PyPI): 5 packages found for iniconfig *
   1: selecting iniconfig (1.1.1)
Source (PyPI): 9 packages found for attrs >=19.2.0
   1: selecting attrs (22.1.0)
Source (PyPI): No release information found for urllib3-0.3, skipping
Source (PyPI): No release information found for urllib3-0.3.1, skipping
Source (PyPI): No release information found for urllib3-0.4.0, skipping
Source (PyPI): No release information found for urllib3-0.4.1, skipping
Source (PyPI): 69 packages found for urllib3 *
   1: selecting urllib3 (1.26.12)
Source (PyPI): 16 packages found for toml *
   1: selecting toml (0.10.2)
Source (PyPI): 53 packages found for pygments *
   1: selecting pygments (2.13.0)
Source (PyPI): 1 packages found for flake8 >=4.0.1,<5.0.0
   1: fact: flake8 (4.0.1) depends on mccabe (>=0.6.0,<0.7.0)
   1: fact: flake8 (4.0.1) depends on pycodestyle (>=2.8.0,<2.9.0)
   1: fact: flake8 (4.0.1) depends on pyflakes (>=2.4.0,<2.5.0)
   1: selecting flake8 (4.0.1)
   1: derived: pyflakes (>=2.4.0,<2.5.0)
   1: derived: pycodestyle (>=2.8.0,<2.9.0)
   1: derived: mccabe (>=0.6.0,<0.7.0)
Source (PyPI): 7 packages found for entrypoints *
   1: selecting entrypoints (0.4)
Source (PyPI): 1 packages found for mypy-extensions >=0.4.3
   1: selecting mypy-extensions (0.4.3)
Source (PyPI): 2 packages found for pathspec >=0.9.0
   1: selecting pathspec (0.10.1)
Source (PyPI): 10 packages found for platformdirs >=2
   1: selecting platformdirs (2.5.2)
Source (PyPI): 4 packages found for typing-extensions >=4.1.0
   1: selecting typing-extensions (4.3.0)
Source (PyPI): No release information found for requests-0.0.1, skipping
Source (PyPI): No release information found for requests-0.12.01, skipping
Source (PyPI): No release information found for requests-2.15.0, skipping
Source (PyPI): 11 packages found for requests >=2.21.0
   1: fact: requests (2.28.1) depends on charset-normalizer (>=2,<3)
   1: fact: requests (2.28.1) depends on idna (>=2.5,<4)
   1: fact: requests (2.28.1) depends on urllib3 (>=1.21.1,<1.27)
   1: fact: requests (2.28.1) depends on certifi (>=2017.4.17)
   1: selecting requests (2.28.1)
   1: derived: certifi (>=2017.4.17)
   1: derived: idna (>=2.5,<4)
   1: derived: charset-normalizer (>=2,<3)
Source (PyPI): 41 packages found for websocket-client >=0.32.0
   1: selecting websocket-client (1.4.1)
Source (PyPI): 1 packages found for click-plugins >=1.1.1
   1: fact: click-plugins (1.1.1) depends on click (>=4.0)
   1: selecting click-plugins (1.1.1)
Source (PyPI): 1 packages found for click-repl >=0.2.0
   1: fact: click-repl (0.2.0) depends on click (*)
   1: fact: click-repl (0.2.0) depends on prompt-toolkit (*)
   1: fact: click-repl (0.2.0) depends on six (*)
   1: selecting click-repl (0.2.0)
   1: derived: prompt-toolkit
Source (PyPI): 1 packages found for click-didyoumean >=0.3.0
   1: fact: click-didyoumean (0.3.0) depends on click (>=7)
   1: selecting click-didyoumean (0.3.0)
Source (PyPI): No release information found for vine-1.0.0rc1, skipping
Source (PyPI): 1 packages found for vine >=5.0.0,<6.0
   1: selecting vine (5.0.0)
Source (PyPI): No release information found for kombu-3.0.17-20140602, skipping
Source (PyPI): 1 packages found for kombu >=5.3.0b1,<6.0
   1: fact: kombu (5.3.0b1) depends on amqp (>=5.1.1,<6.0.0)
   1: fact: kombu (5.3.0b1) depends on vine (*)
   1: selecting kombu (5.3.0b1)
   1: derived: amqp (>=5.1.1,<6.0.0)
Source (PyPI): 4 packages found for billiard >=3.6.4.0,<5.0
   1: selecting billiard (4.0.2)
Source (PyPI): Unable to parse version "2004d" for the pytz package, skipping
Source (PyPI): Unable to parse version "2005e" for the pytz package, skipping
Source (PyPI): Unable to parse version "2005i" for the pytz package, skipping
Source (PyPI): Unable to parse version "2005k" for the pytz package, skipping
Source (PyPI): Unable to parse version "2005m" for the pytz package, skipping
Source (PyPI): Unable to parse version "2006g" for the pytz package, skipping
Source (PyPI): Unable to parse version "2006j" for the pytz package, skipping
Source (PyPI): Unable to parse version "2006p" for the pytz package, skipping
Source (PyPI): Unable to parse version "2007d" for the pytz package, skipping
Source (PyPI): Unable to parse version "2007f" for the pytz package, skipping
Source (PyPI): Unable to parse version "2007g" for the pytz package, skipping
Source (PyPI): Unable to parse version "2007i" for the pytz package, skipping
Source (PyPI): Unable to parse version "2007k" for the pytz package, skipping
Source (PyPI): Unable to parse version "2008g" for the pytz package, skipping
Source (PyPI): Unable to parse version "2008h" for the pytz package, skipping
Source (PyPI): Unable to parse version "2008i" for the pytz package, skipping
Source (PyPI): Unable to parse version "2009d" for the pytz package, skipping
Source (PyPI): Unable to parse version "2009e" for the pytz package, skipping
Source (PyPI): Unable to parse version "2009f" for the pytz package, skipping
Source (PyPI): Unable to parse version "2009g" for the pytz package, skipping
Source (PyPI): Unable to parse version "2009i" for the pytz package, skipping
Source (PyPI): Unable to parse version "2009j" for the pytz package, skipping
Source (PyPI): Unable to parse version "2009l" for the pytz package, skipping
Source (PyPI): Unable to parse version "2009n" for the pytz package, skipping
Source (PyPI): Unable to parse version "2009p" for the pytz package, skipping
Source (PyPI): Unable to parse version "2009u" for the pytz package, skipping
Source (PyPI): Unable to parse version "2010e" for the pytz package, skipping
Source (PyPI): Unable to parse version "2010g" for the pytz package, skipping
Source (PyPI): Unable to parse version "2010h" for the pytz package, skipping
Source (PyPI): Unable to parse version "2010k" for the pytz package, skipping
Source (PyPI): Unable to parse version "2010l" for the pytz package, skipping
Source (PyPI): Unable to parse version "2010o" for the pytz package, skipping
Source (PyPI): Unable to parse version "2011d" for the pytz package, skipping
Source (PyPI): Unable to parse version "2011e" for the pytz package, skipping
Source (PyPI): Unable to parse version "2011g" for the pytz package, skipping
Source (PyPI): Unable to parse version "2011h" for the pytz package, skipping
Source (PyPI): Unable to parse version "2011j" for the pytz package, skipping
Source (PyPI): Unable to parse version "2011k" for the pytz package, skipping
Source (PyPI): Unable to parse version "2011n" for the pytz package, skipping
Source (PyPI): Unable to parse version "2012d" for the pytz package, skipping
Source (PyPI): Unable to parse version "2012f" for the pytz package, skipping
Source (PyPI): Unable to parse version "2012g" for the pytz package, skipping
Source (PyPI): Unable to parse version "2012h" for the pytz package, skipping
Source (PyPI): Unable to parse version "2012j" for the pytz package, skipping
Source (PyPI): Unable to parse version "2013d" for the pytz package, skipping
Source (PyPI): 4 packages found for pytz >=2021.3
   1: selecting pytz (2022.2.1)
Source (PyPI): 8 packages found for six >=1.9
   1: selecting six (1.16.0)
Source (PyPI): 1 packages found for passlib 1.7.4
   1: selecting passlib (1.7.4)
Source (PyPI): 16 packages found for dictdiffer *
   1: selecting dictdiffer (0.9.0)
Source (PyPI): 39 packages found for tomlkit *
   1: selecting tomlkit (0.11.4)
Source (PyPI): 1 packages found for tortoise-orm 0.19.2
   1: fact: tortoise-orm (0.19.2) depends on aiosqlite (>=0.16.0,<0.18.0)
   1: fact: tortoise-orm (0.19.2) depends on iso8601 (>=1.0.2,<2.0.0)
   1: fact: tortoise-orm (0.19.2) depends on pypika-tortoise (>=0.1.6,<0.2.0)
   1: fact: tortoise-orm (0.19.2) depends on pytz (*)
   1: selecting tortoise-orm (0.19.2)
Source (PyPI): 1 packages found for pypika-tortoise >=0.1.6,<0.2.0
   1: selecting pypika-tortoise (0.1.6)
Source (PyPI): 1 packages found for iso8601 >=1.0.2,<2.0.0
   1: selecting iso8601 (1.0.2)
Source (PyPI): 1 packages found for fastapi-users 10.1.3
   1: fact: fastapi-users (10.1.3) depends on fastapi (>=0.65.2)
   1: fact: fastapi-users (10.1.3) depends on passlib (1.7.4)
   1: fact: fastapi-users (10.1.3) depends on email-validator (>=1.1.0,<1.3)
   1: fact: fastapi-users (10.1.3) depends on pyjwt (2.4.0)
   1: fact: fastapi-users (10.1.3) depends on python-multipart (0.0.5)
   1: fact: fastapi-users (10.1.3) depends on makefun (>=1.11.2,<1.14)
   1: selecting fastapi-users (10.1.3)
Source (PyPI): 6 packages found for makefun >=1.11.2,<1.14
   1: selecting makefun (1.13.1)
Source (PyPI): 1 packages found for python-multipart 0.0.5
   1: fact: python-multipart (0.0.5) depends on six (>=1.4.0)
   1: selecting python-multipart (0.0.5)
Source (PyPI): 6 packages found for email-validator >=1.1.0,<1.3
   1: fact: email-validator (1.2.1) depends on idna (>=2.0.0)
   1: fact: email-validator (1.2.1) depends on dnspython (>=1.15.0)
   1: selecting email-validator (1.2.1)
   1: derived: dnspython (>=1.15.0)
Source (PyPI): 1 packages found for passlib 1.7.4
   1: fact: passlib (1.7.4) depends on passlib (1.7.4)
   1: fact: passlib (1.7.4) depends on bcrypt (>=3.1.0)
   1: selecting passlib[bcrypt] (1.7.4)
   1: derived: bcrypt (>=3.1.0)
Source (PyPI): 20 packages found for deprecated *
   1: fact: deprecated (1.2.13) depends on wrapt (>=1.10,<2)
   1: selecting deprecated (1.2.13)
   1: derived: wrapt (>=1.10,<2)
Source (PyPI): 3 packages found for httpcore >=0.14.5,<0.15.0
   1: fact: httpcore (0.14.7) depends on h11 (>=0.11,<0.13)
   1: fact: httpcore (0.14.7) depends on sniffio (>=1.0.0,<2.0.0)
   1: fact: httpcore (0.14.7) depends on anyio (>=3.0.0,<4.0.0)
   1: fact: httpcore (0.14.7) depends on certifi (*)
   1: selecting httpcore (0.14.7)
   1: derived: anyio (>=3.0.0,<4.0.0)
   1: derived: sniffio (>=1.0.0,<2.0.0)
   1: derived: h11 (>=0.11,<0.13)
Source (PyPI): No release information found for rfc3986-0.0.0, skipping
Source (PyPI): 5 packages found for rfc3986 >=1.3,<2
   1: fact: rfc3986 (1.5.0) depends on rfc3986 (1.5.0)
   1: fact: rfc3986 (1.5.0) depends on idna (*)
   1: selecting rfc3986[idna2008] (1.5.0)
   1: derived: rfc3986 (==1.5.0)
Source (PyPI): 4 packages found for sniffio >=1.0.0,<2.0.0
   1: selecting sniffio (1.3.0)
Source (PyPI): 15 packages found for charset-normalizer >=2,<3
   1: selecting charset-normalizer (2.1.1)
Source (PyPI): No release information found for certifi-0, skipping
Source (PyPI): 25 packages found for certifi >=2017.4.17
   1: selecting certifi (2022.6.15.1)
Source (PyPI): 1 packages found for starlette 0.17.1
   1: fact: starlette (0.17.1) depends on anyio (>=3.0.0,<4)
   1: selecting starlette (0.17.1)
Source (PyPI): 3 packages found for brotli >=1.0.7
   1: selecting brotli (1.0.9)
Source (PyPI): 6 packages found for wsproto >=0.14.0
   1: fact: wsproto (1.2.0) depends on h11 (>=0.9.0,<1)
   1: selecting wsproto (1.2.0)
Source (PyPI): No release information found for priority-0.0.1, skipping
Source (PyPI): 8 packages found for priority *
   1: selecting priority (2.0.0)
Source (PyPI): No release information found for h2-0.1.0, skipping
Source (PyPI): 5 packages found for h2 >=3.1.0
   1: fact: h2 (4.1.0) depends on hyperframe (>=6.0,<7)
   1: fact: h2 (4.1.0) depends on hpack (>=4.0,<5)
   1: selecting h2 (4.1.0)
   1: derived: hpack (>=4.0,<5)
   1: derived: hyperframe (>=6.0,<7)
Source (PyPI): No release information found for h11-0.0.1, skipping
Source (PyPI): 2 packages found for h11 >=0.11,<0.13
   1: selecting h11 (0.12.0)
Source (PyPI): 6 packages found for geomet >=0.1,<0.3
   1: fact: geomet (0.2.1.post1) depends on click (*)
   1: fact: geomet (0.2.1.post1) depends on six (*)
   1: selecting geomet (0.2.1.post1)
Source (PyPI): No release information found for pyparsing-1.1.2, skipping
Source (PyPI): No release information found for pyparsing-1.2, skipping
Source (PyPI): No release information found for pyparsing-1.3.3, skipping
Source (PyPI): 39 packages found for pyparsing >=2.0.2,<3.0.5 || >3.0.5
   1: selecting pyparsing (3.0.9)
Source (PyPI): No release information found for pyflakes-0.2.0, skipping
Source (PyPI): No release information found for pyflakes-0.2.1, skipping
Source (PyPI): 1 packages found for pyflakes >=2.4.0,<2.5.0
   1: selecting pyflakes (2.4.0)
Source (PyPI): No release information found for pycodestyle-0.0.0, skipping
Source (PyPI): 1 packages found for pycodestyle >=2.8.0,<2.9.0
   1: selecting pycodestyle (2.8.0)
Source (PyPI): No release information found for mccabe-0.0.0, skipping
Source (PyPI): 2 packages found for mccabe >=0.6.0,<0.7.0
   1: selecting mccabe (0.6.1)
Source (PyPI): No release information found for idna-0.1, skipping
Source (PyPI): 10 packages found for idna >=2.5,<4
   1: selecting idna (3.3)
Source (PyPI): 115 packages found for prompt-toolkit *
   1: fact: prompt-toolkit (3.0.31) depends on wcwidth (*)
   1: selecting prompt-toolkit (3.0.31)
   1: derived: wcwidth
Source (PyPI): No release information found for amqp-0.0.1, skipping
Source (PyPI): 1 packages found for amqp >=5.1.1,<6.0.0
   1: fact: amqp (5.1.1) depends on vine (>=5.0.0)
   1: selecting amqp (5.1.1)
Source (PyPI): No release information found for dnspython-1.0.0, skipping
Source (PyPI): No release information found for dnspython-1.1.0, skipping
Source (PyPI): No release information found for dnspython-1.10.0, skipping
Source (PyPI): No release information found for dnspython-1.2.0, skipping
Source (PyPI): No release information found for dnspython-1.3.0, skipping
Source (PyPI): No release information found for dnspython-1.3.1, skipping
Source (PyPI): No release information found for dnspython-1.3.2, skipping
Source (PyPI): No release information found for dnspython-1.3.3, skipping
Source (PyPI): No release information found for dnspython-1.3.4, skipping
Source (PyPI): No release information found for dnspython-1.3.5, skipping
Source (PyPI): No release information found for dnspython-1.4.0, skipping
Source (PyPI): No release information found for dnspython-1.5.0, skipping
Source (PyPI): No release information found for dnspython-1.6.0, skipping
Source (PyPI): No release information found for dnspython-1.7.1, skipping
Source (PyPI): No release information found for dnspython-1.8.0, skipping
Source (PyPI): No release information found for dnspython-1.9.0, skipping
Source (PyPI): No release information found for dnspython-1.9.1, skipping
Source (PyPI): No release information found for dnspython-1.9.2, skipping
Source (PyPI): No release information found for dnspython-1.9.3, skipping
Source (PyPI): No release information found for dnspython-1.9.4, skipping
Source (PyPI): 6 packages found for dnspython >=1.15.0
   1: selecting dnspython (2.2.1)
Source (PyPI): No release information found for wrapt-0.0.0, skipping
Source (PyPI): No release information found for wrapt-1.10.3, skipping
Source (PyPI): 20 packages found for wrapt >=1.10,<2
   1: selecting wrapt (1.14.1)
Source (PyPI): 14 packages found for anyio >=3.0.0,<4.0.0
   1: fact: anyio (3.6.1) depends on idna (>=2.8)
   1: fact: anyio (3.6.1) depends on sniffio (>=1.1)
   1: selecting anyio (3.6.1)
Source (PyPI): No release information found for rfc3986-0.0.0, skipping
Source (PyPI): 1 packages found for rfc3986 1.5.0
   1: selecting rfc3986 (1.5.0)
Source (PyPI): 1 packages found for hpack >=4.0,<5
   1: selecting hpack (4.0.0)
Source (PyPI): 2 packages found for hyperframe >=6.0,<7
   1: selecting hyperframe (6.0.1)
Source (PyPI): 17 packages found for wcwidth *
   1: selecting wcwidth (0.2.5)
Source (PyPI): 42 packages found for colorama *
   1: selecting colorama (0.4.5)
Source (PyPI): No release information found for pywin32-210, skipping
Source (PyPI): No release information found for pywin32-214, skipping
Source (PyPI): 1 packages found for pywin32 227
   1: selecting pywin32 (227)
Source (PyPI): 6 packages found for redis >=4.2.2
   1: fact: redis (4.3.4) depends on deprecated (>=1.2.3)
   1: fact: redis (4.3.4) depends on packaging (>=20.4)
   1: fact: redis (4.3.4) depends on async-timeout (>=4.0.2)
   1: selecting redis (4.3.4)
   1: derived: async-timeout (>=4.0.2)
Source (PyPI): 1 packages found for async-timeout >=4.0.2
   1: selecting async-timeout (4.0.2)
Source (PyPI): 1 packages found for celery 5.3.0b1
   1: fact: celery (5.3.0b1) depends on pytz (>=2021.3)
   1: fact: celery (5.3.0b1) depends on billiard (>=3.6.4.0,<5.0)
   1: fact: celery (5.3.0b1) depends on kombu (>=5.3.0b1,<6.0)
   1: fact: celery (5.3.0b1) depends on vine (>=5.0.0,<6.0)
   1: fact: celery (5.3.0b1) depends on click (>=8.1.2,<9.0)
   1: fact: celery (5.3.0b1) depends on click-didyoumean (>=0.3.0)
   1: fact: celery (5.3.0b1) depends on click-repl (>=0.2.0)
   1: fact: celery (5.3.0b1) depends on click-plugins (>=1.1.1)
   1: selecting celery (5.3.0b1)
Source (PyPI): 1 packages found for ruamel-yaml-clib >=0.2.6
   1: selecting ruamel-yaml-clib (0.2.6)
Source (PyPI): 11 packages found for pyhcl >=0.3.10
   1: selecting pyhcl (0.4.4)
Source (PyPI): No release information found for hvac-0.2.11, skipping
Source (PyPI): 1 packages found for hvac 0.11.2
   1: fact: hvac (0.11.2) depends on requests (>=2.21.0)
   1: fact: hvac (0.11.2) depends on six (>=1.5.0)
   1: selecting hvac (0.11.2)
Source (PyPI): 21 packages found for cryptography >=3.3.1
   1: fact: cryptography (38.0.1) depends on cffi (>=1.12)
   1: selecting cryptography (38.0.1)
   1: derived: cffi (>=1.12)
Source (PyPI): 16 packages found for cffi >=1.12
   1: fact: cffi (1.15.1) depends on pycparser (*)
   1: selecting cffi (1.15.1)
   1: derived: pycparser
Source (PyPI): 21 packages found for pycparser *
   1: selecting pycparser (2.21)
Source (PyPI): 1 packages found for pyjwt 2.4.0
   1: selecting pyjwt (2.4.0)
Source (PyPI): 8 packages found for argon2-cffi >=18.2.0
   1: fact: argon2-cffi (21.3.0) depends on argon2-cffi-bindings (*)
   1: selecting argon2-cffi (21.3.0)
   1: derived: argon2-cffi-bindings
Source (PyPI): 2 packages found for argon2-cffi-bindings *
   1: fact: argon2-cffi-bindings (21.2.0) depends on cffi (>=1.0.1)
   1: selecting argon2-cffi-bindings (21.2.0)
Source (PyPI): 6 packages found for librabbitmq >=1.5.0
   1: fact: librabbitmq (2.0.0) depends on amqp (>=1.4.6)
   1: fact: librabbitmq (2.0.0) depends on six (>=1.0.0)
   1: selecting librabbitmq (2.0.0)
Source (PyPI): 37 packages found for asyncpg *
   1: selecting asyncpg (0.26.0)
Source (PyPI): 6 packages found for httpx-oauth >=0.4,<=0.7
   1: fact: httpx-oauth (0.7.0) depends on httpx (>=0.18,<0.24)
   1: selecting httpx-oauth (0.7.0)
Source (PyPI): 12 packages found for bcrypt >=3.1.0
   1: selecting bcrypt (4.0.0)
   1: Version solving took 0.932 seconds.
   1: Tried 1 solutions.

Finding the necessary packages for the current system
Source (poetry-repo): 1 packages found for pytest-env >=0.6.2,<0.7.0
Source (poetry-repo): 1 packages found for pytest-asyncio *
Source (poetry-repo): 1 packages found for pytest >=6.1.0
Source (poetry-repo): 1 packages found for flakeheaven >=0.11.1,<0.12.0
Source (poetry-repo): 1 packages found for isort *
Source (poetry-repo): 1 packages found for black *
Source (poetry-repo): 1 packages found for aiosqlite >=0.17.0,<0.18.0
Source (poetry-repo): 1 packages found for docker >=5.0.3,<6.0.0
Source (poetry-repo): 1 packages found for celery 5.3.0b1
Source (poetry-repo): 1 packages found for ruamel-yaml >=0.17.21,<0.18.0
Source (poetry-repo): 0 packages found for syndb-cassandra >=2.0.1
Falling back to installed packages to discover metadata for syndb-cassandra[driver]
Found 0 compatible packages for syndb-cassandra[driver]

  Stack trace:

  4  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/puzzle/solver.py:151 in _solve
      149│ 
      150│         try:
    → 151│             result = resolve_version(
      152│                 self._package, self._provider, locked=locked, use_latest=use_latest
      153│             )

  3  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/mixology/__init__.py:24 in resolve_version
       22│     solver = VersionSolver(root, provider, locked=locked, use_latest=use_latest)
       23│ 
    →  24│     return solver.solve()
       25│ 

  2  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/mixology/version_solver.py:126 in solve
      124│             next: str | None = self._root.name
      125│             while next is not None:
    → 126│                 self._propagate(next)
      127│                 next = self._choose_package_version()
      128│ 

  1  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/mixology/version_solver.py:165 in _propagate
      163│                     # where that incompatibility will allow us to derive new assignments
      164│                     # that avoid the conflict.
    → 165│                     root_cause = self._resolve_conflict(incompatibility)
      166│ 
      167│                     # Back jumping erases all the assignments we did at the previous

  SolveFailure

  Because syndb-api depends on syndb-cassandra (>=2.0.1) which doesn't match any versions, version solving failed.

  at ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/mixology/version_solver.py:364 in _resolve_conflict
      360│             )
      361│             self._log(f'! which is caused by "{most_recent_satisfier.cause}"')
      362│             self._log(f"! thus: {incompatibility}")
      363│ 
    → 364│         raise SolveFailure(incompatibility)
      365│ 
      366│     def _choose_package_version(self) -> str | None:
      367│         """
      368│         Tries to select a version of a required package.

The following error occurred when trying to handle this error:

  Stack trace:

  11  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/cleo/application.py:329 in run
       327│ 
       328│             try:
     → 329│                 exit_code = self._run(io)
       330│             except Exception as e:
       331│                 if not self._catch_exceptions:

  10  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/console/application.py:185 in _run
       183│         self._load_plugins(io)
       184│ 
     → 185│         exit_code: int = super()._run(io)
       186│         return exit_code
       187│ 

   9  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/cleo/application.py:423 in _run
       421│             io.input.set_stream(stream)
       422│ 
     → 423│         exit_code = self._run_command(command, io)
       424│         self._running_command = None
       425│ 

   8  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/cleo/application.py:465 in _run_command
       463│ 
       464│         if error is not None:
     → 465│             raise error
       466│ 
       467│         return event.exit_code

   7  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/cleo/application.py:449 in _run_command
       447│ 
       448│             if event.command_should_run():
     → 449│                 exit_code = command.run(io)
       450│             else:
       451│                 exit_code = ConsoleCommandEvent.RETURN_CODE_DISABLED

   6  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/cleo/commands/base_command.py:119 in run
       117│         io.input.validate()
       118│ 
     → 119│         status_code = self.execute(io)
       120│ 
       121│         if status_code is None:

   5  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/cleo/commands/command.py:83 in execute
        81│ 
        82│         try:
     →  83│             return self.handle()
        84│         except KeyboardInterrupt:
        85│             return 1

   4  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/console/commands/update.py:54 in handle
        52│         self.installer.update(True)
        53│ 
     →  54│         return self.installer.run()
        55│ 

   3  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/installation/installer.py:111 in run
       109│             self._execute_operations = False
       110│ 
     → 111│         return self._do_install()
       112│ 
       113│     def dry_run(self, dry_run: bool = True) -> Installer:

   2  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/installation/installer.py:313 in _do_install
       311│ 
       312│         with solver.use_environment(self._env):
     → 313│             ops = solver.solve(use_latest=self._whitelist).calculate_operations(
       314│                 with_uninstalls=self._requires_synchronization,
       315│                 synchronize=self._requires_synchronization,

   1  ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/puzzle/solver.py:73 in solve
        71│         with self._provider.progress():
        72│             start = time.time()
     →  73│             packages, depths = self._solve(use_latest=use_latest)
        74│             end = time.time()
        75│ 

  SolverProblemError

  Because syndb-api depends on syndb-cassandra (>=2.0.1) which doesn't match any versions, version solving failed.

  at ~/.local/pipx/venvs/poetry/lib/python3.10/site-packages/poetry/puzzle/solver.py:159 in _solve
      155│             packages = result.packages
      156│         except OverrideNeeded as e:
      157│             return self.solve_in_compatibility_mode(e.overrides, use_latest=use_latest)
      158│         except SolveFailure as e:
    → 159│             raise SolverProblemError(e)
      160│ 
      161│         combined_nodes = depth_first_search(PackageNode(self._package, packages))
      162│         results = dict(aggregate_package_nodes(nodes) for nodes in combined_nodes)
      163│ 

System and OS info

╰─λ garuda-inxi
System:
Kernel: 5.19.7-zen2-1-zen arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=cd218c4a-cd87-436a-a31d-1f94c11b73ca rw rootflags=subvol=@
quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
resume=UUID=9a65ace2-c064-49fe-a16d-7da701bbdb7d loglevel=3 ibt=off
systemd.unified_cgroup_hierarchy=1
Desktop: KDE Plasma v: 5.25.5 tk: Qt v: 5.15.6 info: latte-dock
wm: kwin_x11 vt: 1 dm: SDDM Distro: Garuda Linux base: Arch Linux
Machine:
Type: Desktop Mobo: ASUSTeK model: ROG STRIX B350-F GAMING v: Rev X.0x
serial: <superuser required> UEFI: American Megatrends v: 6042
date: 04/28/2022
CPU:
Info: model: AMD Ryzen 7 1700 bits: 64 type: MT MCP arch: Zen
built: 2017-19 process: GF 14nm family: 0x17 (23) model-id: 1 stepping: 1
microcode: 0x8001138
Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
L1: 768 KiB desc: d-8x32 KiB; i-8x64 KiB L2: 4 MiB desc: 8x512 KiB
L3: 16 MiB desc: 2x8 MiB
Speed (MHz): avg: 2783 high: 3110 min/max: 1550/3000 boost: enabled
scaling: driver: acpi-cpufreq governor: performance cores: 1: 2926 2: 3000
3: 2674 4: 2556 5: 2539 6: 3110 7: 2565 8: 3000 9: 2556 10: 2556 11: 2733
12: 3000 13: 3000 14: 2830 15: 2718 16: 2771 bogomips: 95816
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities:
Type: itlb_multihit status: Not affected
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: mmio_stale_data status: Not affected
Type: retbleed mitigation: untrained return thunk; SMT vulnerable
Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
prctl
Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
sanitization
Type: spectre_v2 mitigation: Retpolines, IBPB: conditional, STIBP:
disabled, RSB filling, PBRSB-eIBRS: Not affected
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: NVIDIA GP102 [GeForce GTX 1080 Ti] vendor: eVga.com.
driver: nvidia v: 515.65.01 alternate: nouveau,nvidia_drm non-free: 515.xx+
status: current (as of 2022-07) arch: Pascal code: GP10x
process: TSMC 16nm built: 2016-21 pcie: gen: 3 speed: 8 GT/s lanes: 16
bus-ID: 07:00.0 chip-ID: 10de:1b06 class-ID: 0300
Display: x11 server: X.Org v: 21.1.4 with: Xwayland v: 22.1.3
compositor: kwin_x11 driver: X: loaded: nvidia gpu: nvidia display-ID: :0
screens: 1
Screen-1: 0 s-res: 3440x1440 s-dpi: 109 s-size: 802x333mm (31.57x13.11")
s-diag: 868mm (34.19")
Monitor-1: DP-2 res: 3440x1440 dpi: 109 size: 800x330mm (31.5x12.99")
diag: 865mm (34.07") modes: N/A
OpenGL: renderer: NVIDIA GeForce GTX 1080 Ti/PCIe/SSE2 v: 4.6.0 NVIDIA
515.65.01 direct render: Yes
Audio:
Device-1: NVIDIA GP102 HDMI Audio vendor: eVga.com. driver: snd_hda_intel
v: kernel bus-ID: 3-3:2 chip-ID: 262a:1048 pcie: class-ID: 0102 gen: 3
speed: 8 GT/s lanes: 16 bus-ID: 07:00.1 chip-ID: 10de:10ef class-ID: 0403
Device-2: AMD Family 17h HD Audio vendor: ASUSTeK driver: snd_hda_intel
v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16 bus-ID: 09:00.3
chip-ID: 1022:1457 class-ID: 0403
Device-3: SAVITECH JDS Labs Element DAC type: USB
driver: hid-generic,snd-usb-audio,usbhid
Sound Server-1: ALSA v: k5.19.7-zen2-1-zen running: yes
Sound Server-2: PulseAudio v: 16.1 running: no
Sound Server-3: PipeWire v: 0.3.57 running: yes
Network:
Device-1: Intel I211 Gigabit Network vendor: ASUSTeK driver: igb v: kernel
pcie: gen: 1 speed: 2.5 GT/s lanes: 1 port: d000 bus-ID: 04:00.0
chip-ID: 8086:1539 class-ID: 0200
IF: enp4s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
IF-ID-1: br-e102d34c0b28 state: up speed: 10000 Mbps duplex: unknown
mac: <filter>
IF-ID-2: docker0 state: up speed: 10000 Mbps duplex: unknown
mac: <filter>
IF-ID-3: veth215f9c5 state: up speed: 10000 Mbps duplex: full
mac: <filter>
IF-ID-4: veth32ecb08 state: up speed: 10000 Mbps duplex: full
mac: <filter>
IF-ID-5: veth559bb37 state: up speed: 10000 Mbps duplex: full
mac: <filter>
IF-ID-6: veth99d4f48 state: up speed: 10000 Mbps duplex: full
mac: <filter>
IF-ID-7: vethcb0d53a state: up speed: 10000 Mbps duplex: full
mac: <filter>
IF-ID-8: vethf54691f state: up speed: 10000 Mbps duplex: full
mac: <filter>
IF-ID-9: vethffb5750 state: up speed: 10000 Mbps duplex: full
mac: <filter>
IF-ID-10: virbr0 state: down mac: <filter>
IF-ID-11: virbr1 state: down mac: <filter>
RAID:
Supported mdraid levels: raid0
Device-1: md0 maj-min: 9:0 type: mdraid level: raid-0 status: active
size: 849.75 GiB
Info: report: N/A blocks: 891025408 chunk-size: 512k super-blocks: 1.2
Components: Online:
0: sdb1 maj-min: 8:17 size: 425 GiB
1: sdc1 maj-min: 8:33 size: 425 GiB
Drives:
Local Storage: total: 2.54 TiB used: 990.53 GiB (38.2%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 950 PRO
512GB size: 476.94 GiB block-size: physical: 512 B logical: 512 B
speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> rev: 2B0QBXX7
temp: 51.9 C scheme: GPT
ID-2: /dev/nvme1n1 maj-min: 259:9 vendor: Samsung model: SSD 960 EVO 1TB
size: 931.51 GiB block-size: physical: 512 B logical: 512 B
speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> rev: 3B7QCXE7
temp: 27.9 C scheme: GPT
ID-3: /dev/sda maj-min: 8:0 vendor: Samsung model: SSD 850 EVO 250GB
size: 232.89 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
type: SSD serial: <filter> rev: 2B6Q scheme: GPT
ID-4: /dev/sdb maj-min: 8:16 vendor: Crucial model: CT525MX300SSD1
size: 489.05 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
type: SSD serial: <filter> rev: R060 scheme: GPT
ID-5: /dev/sdc maj-min: 8:32 vendor: Samsung model: SSD 860 EVO 500GB
size: 465.76 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
type: SSD serial: <filter> rev: 4B6Q scheme: GPT
Partition:
ID-1: / raw-size: 121.64 GiB size: 121.64 GiB (100.00%) used: 97.3 GiB
(80.0%) fs: btrfs dev: /dev/nvme0n1p6 maj-min: 259:6
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%) used: 596 KiB
(0.2%) fs: vfat dev: /dev/nvme0n1p8 maj-min: 259:8
ID-3: /home raw-size: 250.86 GiB size: 250.86 GiB (100.00%) used: 66.99
GiB (26.7%) fs: btrfs dev: /dev/nvme0n1p7 maj-min: 259:7
ID-4: /var/log raw-size: 121.64 GiB size: 121.64 GiB (100.00%) used: 97.3
GiB (80.0%) fs: btrfs dev: /dev/nvme0n1p6 maj-min: 259:6
ID-5: /var/tmp raw-size: 121.64 GiB size: 121.64 GiB (100.00%) used: 97.3
GiB (80.0%) fs: btrfs dev: /dev/nvme0n1p6 maj-min: 259:6
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 15.53 GiB used: 4.92 GiB (31.7%)
priority: 100 dev: /dev/zram0
ID-2: swap-2 type: partition size: 7.91 GiB used: 0 KiB (0.0%)
priority: -2 dev: /dev/nvme0n1p5 maj-min: 259:5
Sensors:
System Temperatures: cpu: 40.4 C mobo: 40.0 C gpu: nvidia temp: 58 C
Fan Speeds (RPM): cpu: 452 fan-1: 503 fan-3: 463 fan-4: 484 fan-6: 0
gpu: nvidia fan: 41%
Power: 12v: N/A 5v: N/A 3.3v: 3.29 vbat: 3.25
Info:
Processes: 571 Uptime: 5h 22m wakeups: 0 Memory: 15.53 GiB used: 8.88 GiB
(57.2%) Init: systemd v: 251 default: graphical tool: systemctl
Compilers: gcc: 12.2.0 clang: 14.0.6 Packages: pacman: 2070 lib: 557
Shell: fish v: 3.5.1 default: Bash v: 5.1.16 running-in: konsole
inxi: 3.3.20
Garuda (2.6.7-1):
System install date:     2022-04-08
Last full system update: 2022-09-11 ↻
Is partially upgraded:   No
Relevant software:       NetworkManager
Windows dual boot:       Probably (Run as root to verify)
Snapshots:               Snapper
Failed units:
clintonroy commented 2 years ago

There's not much actual poetry debug log here to work with.

When I add syndb-cassandra i get version 2.0.1, which appears to be the latest version available.

It sounds like a caching issue, have you tried with --no-cache?

caniko commented 2 years ago

@clintonroy did you use my method to reproduce? Please write in a way that makes it clear that you have read the issue, it looks like you haven't. :pray:

Nevertheless, I should've included a verbose output. Adding this.

--no-cache does not work. I'll add this to the main post, thanks.

dimbleby commented 2 years ago

your log shows you depending on syndb-cassandra >=2.1.0, pypi shows that the most recent release of that project - half an hour ago at time of writing - is 2.0.1.

Not only poetry cannot find version 2.1.0, no-one can.

caniko commented 2 years ago

I made this pyproject.toml as a dummy during debug. My bad that I added wrong version. You are also answering as if you haven't read the main post. People, make an effort please. I'd prefer help from ~poetry maintainers~ those willing to put in the effort to reproduce the issue.

@dimbleby you need to follow the reproduce guide. Updated the version nevertheless.

Edit: Unfair to discriminate based on rank, apologies for this. Good Sunday.

dimbleby commented 2 years ago

All the best but I'm out: some people just don't want to be helped.

caniko commented 2 years ago

All the best but I'm out: some people just don't want to be helped.

Lets not degenerate, please. I do want help and actually make poetry better. Just not help from you, who doesn't put in the effort to reproduce the issue (wasting everybody's time), thank you.

mkniewallner commented 2 years ago

Side note first: Please be respectful of people that take some of their time to help you, even if in the end it doesn't fix your issue. Remember that people do that on their free time, like everybody that is involved in this project, and that they don't owe you anything specifically, so please be considerate of that the next time you comment or create an issue, especially if you used a non-reproducible example to begin with that only added to the confusion behind the issue.


Poetry uses PyPI's JSON API to retrieve the available versions, while pip uses the legacy API, so it may at least explain why you notice a different behaviour.

It happened multiple times in the past that the JSON API had a bit of delay before listing newer versions (which seems to not happen, or at a lesser rate, on the legacy API). Not saying this is the cause for sure here, but a possible one.

What may help find the root cause would be to check, next time you reproduce the issue (or right now, if you still have the issue with 2.0.1), if the latest version of the library you depend on is listed in the JSON API in both:

This would help figure out if the issue is related to the JSON API or not.

caniko commented 2 years ago

I think respect goes both ways here. I am fine with a workaround instead of making an issue, I put in effort for the communities benefit too. Either put in the time to reproduce and ask followups or don't bother—you are wasting everybodies time.

It is triggering when someone rebutes your entire issue because of elements unrelated to the issue. Please, let us move forward. I just want to make poetry better.

As mentioned, you can reproduce the issue yourself.

I'll keep it in mind, and keep you posted unless someone else does it before me. Update @mkniewallner days have past still the same issue on the same envrionment that has the previous version in its .lock file.

caniko commented 2 years ago

Closing because of the degeneration.

caniko commented 2 years ago

OK, we can continiue here.

Days go past, and I still don't get the latest when I update, as captured by the reproduce method. None of the replies tried to reproduce the issue, or wasn't explicit about it. I found it fitting because of the beforementioned, and the negativity to move on in a new issue.

Note that I closed it today when this was clear, and not the day of the negativity.

brasie commented 2 years ago

FWIW I am also facing this issue currently with Poetry 1.2.0 when trying to get mypy 0.981 which was just released and can be found on PyPi and via pip, but poetry is not currently picking it up.

I also can see 0.981 at the json endpoints https://pypi.org/pypi/mypy/json and https://pypi.org/pypi/mypy/0.981/json

Attached are the results from those endpoints and the -vvv output of a poetry update with mypy pinned to *.

poetry-update.log mypy-0.981.json.txt mypy.json.txt

neersighted commented 2 years ago

This is interestingly some sort of caching issue with PyPI's CDN and the JSON endpoints. Completely removing all caching from the Poetry 1.2.1 tag does not resolve it, and likewise, a clean browser profile still pulls up the old JSON (while curl does not):

image

Interestingly, https://github.com/python-poetry/poetry/pull/6081 resolves this by not getting versions from the JSON API anymore (for unrelated reasons mostly relating to upstream technical debt).

Pinging @dstufft to take a look as they have helped investigate Poetry issues from the warehouse side before.

neersighted commented 2 years ago

Closing for now as PyPI is tracking the issue upstream, and we've merged use of the Simple API for this -- we no longer get version information from the JSON API.

github-actions[bot] commented 8 months ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.