DEBUG uv 0.11.2 (x86_64-unknown-linux-gnu)
TRACE Checking lock for `/home/dnk9255/.cache/uv` at `/home/dnk9255/.cache/uv/.lock`
TRACE Acquired shared lock for `/home/dnk9255/.cache/uv`
DEBUG Found workspace root: `/etc/ecmwf/nfs/dh2_home_b/dnk9255/git/test`
TRACE Cached workspace members for: `/etc/ecmwf/nfs/dh2_home_b/dnk9255/git/test`
DEBUG Reading Python requests from version file at `/etc/ecmwf/nfs/dh2_home_b/dnk9255/git/test/.python-version`
DEBUG Using Python request `3.10` from version file at `.python-version`
DEBUG Checking for Python environment at: `.venv`
DEBUG Using request connect timeout of 10s and read timeout of 30s
DEBUG Searching for Python 3.10 in managed installations or search path
DEBUG Searching for managed installations at `/home/dnk9255/.local/share/uv/python`
TRACE Found `ld` path: /lib64/ld-linux-x86-64.so.2
TRACE stdout output from `ld`: ""
TRACE stderr output from `ld`: "/lib64/ld-linux-x86-64.so.2: missing program name\nTry '/lib64/ld-linux-x86-64.so.2 --help' for more information.\n"
TRACE Tried to find musl version by running `"/lib64/ld-linux-x86-64.so.2"`, but failed: Could not find musl version in output of: `/lib64/ld-linux-x86-64.so.2`
DEBUG Skipping managed installation `cpython-3.13.1-linux-x86_64-gnu`: does not satisfy `3.10`
DEBUG Skipping managed installation `cpython-3.12.8-linux-x86_64-gnu`: does not satisfy `3.10`
DEBUG Skipping managed installation `cpython-3.11.11-linux-x86_64-gnu`: does not satisfy `3.10`
DEBUG Found managed installation `cpython-3.10.0-linux-x86_64-gnu`
TRACE Found cached interpreter info for Python 3.10.0, skipping query of: /home/dnk9255/.local/share/uv/python/cpython-3.10.0-linux-x86_64-gnu/bin/python3.10
DEBUG Found `cpython-3.10.0-linux-x86_64-gnu` at `/home/dnk9255/.local/share/uv/python/cpython-3.10.0-linux-x86_64-gnu/bin/python3.10` (managed installations)
Using CPython 3.10.0
DEBUG Using request connect timeout of 10s and read timeout of 30s
DEBUG Found static `pyproject.toml` for: test @ file:///etc/ecmwf/nfs/dh2_home_b/dnk9255/git/test
DEBUG No workspace root found, using project root
TRACE Performing lookahead for test @ file:///etc/ecmwf/nfs/dh2_home_b/dnk9255/git/test
DEBUG Solving with installed Python version: 3.10
DEBUG Solving with target Python version: >=3.10, <3.12
TRACE Assigned packages:
TRACE Chose package for decision: root. remaining choices:
DEBUG Adding direct dependency: test*
TRACE Assigned packages: root==0a0.dev0
TRACE Chose package for decision: test. remaining choices:
DEBUG Searching for a compatible version of test @ file:///etc/ecmwf/nfs/dh2_home_b/dnk9255/git/test (*)
DEBUG Adding direct dependency: pyfdb>=0.1.2
TRACE Assigned packages: root==0a0.dev0, test==0.1.0
TRACE Chose package for decision: pyfdb. remaining choices:
TRACE Fetching metadata for pyfdb from https://pypi.org/simple/pyfdb/
TRACE Response from https://pypi.org/simple/pyfdb/ is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 600s
DEBUG Found fresh response for: https://pypi.org/simple/pyfdb/
TRACE Received package metadata for: pyfdb
TRACE Selecting candidate for pyfdb with range >=0.1.2 with 7 remote versions
DEBUG Searching for a compatible version of pyfdb (>=0.1.2)
TRACE Selecting candidate for pyfdb with range >=0.1.2 with 7 remote versions
TRACE Found candidate for package pyfdb with range >=0.1.2 after 1 steps: 5.21.0.16 version
TRACE Returning candidate for package pyfdb with range >=0.1.2 after 1 steps
TRACE Found candidate for package pyfdb with range >=0.1.2 after 1 steps: 5.21.0.16 version
TRACE Returning candidate for package pyfdb with range >=0.1.2 after 1 steps
DEBUG Selecting: pyfdb==5.21.0.16 [compatible] (pyfdb-5.21.0.16-cp311-cp311-macosx_13_0_arm64.whl)
TRACE Response from https://files.pythonhosted.org/packages/76/07/3b15edca29944d222be9c80305898f5bb7d4cd33802112e69c7c222d3168/pyfdb-5.21.0.16-cp311-cp311-macosx_13_0_arm64.whl.metadata is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 365000000s
DEBUG Found fresh response for: https://files.pythonhosted.org/packages/76/07/3b15edca29944d222be9c80305898f5bb7d4cd33802112e69c7c222d3168/pyfdb-5.21.0.16-cp311-cp311-macosx_13_0_arm64.whl.metadata
TRACE Received built distribution metadata for: pyfdb==5.21.0.16
DEBUG Adding transitive dependency for pyfdb==5.21.0.16: fdb5lib>=5.21.0.16, <5.21.0.16+
DEBUG Adding transitive dependency for pyfdb==5.21.0.16: findlibs>=0.1.2
DEBUG Adding transitive dependency for pyfdb==5.21.0.16: pyyaml>=6.0.3
TRACE Fetching metadata for fdb5lib from https://pypi.org/simple/fdb5lib/
TRACE Assigned packages: root==0a0.dev0, test==0.1.0, pyfdb==5.21.0.16
TRACE Chose package for decision: fdb5lib. remaining choices: pyyaml, findlibs
TRACE Fetching metadata for findlibs from https://pypi.org/simple/findlibs/
TRACE Fetching metadata for pyyaml from https://pypi.org/simple/pyyaml/
TRACE Response from https://pypi.org/simple/findlibs/ is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 600s
DEBUG Found fresh response for: https://pypi.org/simple/findlibs/
TRACE Received package metadata for: findlibs
TRACE Selecting candidate for findlibs with range >=0.1.2 with 7 remote versions
TRACE Found candidate for package findlibs with range >=0.1.2 after 1 steps: 0.1.2 version
TRACE Returning candidate for package findlibs with range >=0.1.2 after 1 steps
TRACE Response from https://pypi.org/simple/fdb5lib/ is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 600s
DEBUG Found fresh response for: https://pypi.org/simple/fdb5lib/
TRACE Received package metadata for: fdb5lib
TRACE Selecting candidate for fdb5lib with range >=5.21.0.16, <5.21.0.16+ with 15 remote versions
DEBUG Searching for a compatible version of fdb5lib (>=5.21.0.16, <5.21.0.16+)
TRACE Selecting candidate for fdb5lib with range >=5.21.0.16, <5.21.0.16+ with 15 remote versions
TRACE Found candidate for package fdb5lib with range >=5.21.0.16, <5.21.0.16+ after 1 steps: 5.21.0.16 version
TRACE Returning candidate for package fdb5lib with range >=5.21.0.16, <5.21.0.16+ after 1 steps
TRACE Found candidate for package fdb5lib with range >=5.21.0.16, <5.21.0.16+ after 1 steps: 5.21.0.16 version
TRACE Returning candidate for package fdb5lib with range >=5.21.0.16, <5.21.0.16+ after 1 steps
DEBUG Selecting: fdb5lib==5.21.0.16 [compatible] (fdb5lib-5.21.0.16-cp310-cp310-macosx_13_0_arm64.whl)
TRACE Response from https://files.pythonhosted.org/packages/2f/ff/76dd547e129206899e4e26446c3ca7aeaff948c31b05250e9b8690e76883/findlibs-0.1.2-py3-none-any.whl.metadata is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 365000000s
DEBUG Found fresh response for: https://files.pythonhosted.org/packages/2f/ff/76dd547e129206899e4e26446c3ca7aeaff948c31b05250e9b8690e76883/findlibs-0.1.2-py3-none-any.whl.metadata
TRACE Received built distribution metadata for: findlibs==0.1.2
TRACE Response from https://pypi.org/simple/pyyaml/ is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 600s
DEBUG Found fresh response for: https://pypi.org/simple/pyyaml/
TRACE Received package metadata for: pyyaml
TRACE Response from https://files.pythonhosted.org/packages/dd/83/24fb5934a30b1e045a4008dfc54eb8a96c7ee81aa2bb431c37176f2fc494/fdb5lib-5.21.0.16-cp310-cp310-macosx_13_0_arm64.whl.metadata is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 365000000s
DEBUG Found fresh response for: https://files.pythonhosted.org/packages/dd/83/24fb5934a30b1e045a4008dfc54eb8a96c7ee81aa2bb431c37176f2fc494/fdb5lib-5.21.0.16-cp310-cp310-macosx_13_0_arm64.whl.metadata
TRACE Received built distribution metadata for: fdb5lib==5.21.0.16
TRACE Selecting candidate for pyyaml with range >=6.0.3 with 31 remote versions
DEBUG Adding transitive dependency for fdb5lib==5.21.0.16: eccodeslib>=2.46.1.16, <2.46.1.16+
DEBUG Adding transitive dependency for fdb5lib==5.21.0.16: eckitlib>=2.0.6.16, <2.0.6.16+
DEBUG Adding transitive dependency for fdb5lib==5.21.0.16: metkitlib>=1.17.2.16, <1.17.2.16+
TRACE Found candidate for package pyyaml with range >=6.0.3 after 1 steps: 6.0.3 version
TRACE Returning candidate for package pyyaml with range >=6.0.3 after 1 steps
TRACE Assigned packages: root==0a0.dev0, test==0.1.0, pyfdb==5.21.0.16, fdb5lib==5.21.0.16
TRACE Chose package for decision: eccodeslib. remaining choices: pyyaml, findlibs, metkitlib, eckitlib
TRACE Fetching metadata for eccodeslib from https://pypi.org/simple/eccodeslib/
TRACE Fetching metadata for eckitlib from https://pypi.org/simple/eckitlib/
TRACE Fetching metadata for metkitlib from https://pypi.org/simple/metkitlib/
TRACE Response from https://pypi.org/simple/eccodeslib/ is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 600s
DEBUG Found fresh response for: https://pypi.org/simple/eccodeslib/
TRACE Received package metadata for: eccodeslib
TRACE Response from https://files.pythonhosted.org/packages/f4/a0/39350dd17dd6d6c6507025c0e53aef67a9293a6d37d3511f23ea510d5800/pyyaml-6.0.3-cp310-cp310-macosx_10_13_x86_64.whl.metadata is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 365000000s
DEBUG Found fresh response for: https://files.pythonhosted.org/packages/f4/a0/39350dd17dd6d6c6507025c0e53aef67a9293a6d37d3511f23ea510d5800/pyyaml-6.0.3-cp310-cp310-macosx_10_13_x86_64.whl.metadata
DEBUG Searching for a compatible version of eccodeslib (>=2.46.1.16, <2.46.1.16+)
TRACE Selecting candidate for eccodeslib with range >=2.46.1.16, <2.46.1.16+ with 22 remote versions
TRACE Received built distribution metadata for: pyyaml==6.0.3
TRACE Response from https://pypi.org/simple/eckitlib/ is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 600s
DEBUG Found fresh response for: https://pypi.org/simple/eckitlib/
TRACE Found candidate for package eccodeslib with range >=2.46.1.16, <2.46.1.16+ after 1 steps: 2.46.1.16 version
TRACE Returning candidate for package eccodeslib with range >=2.46.1.16, <2.46.1.16+ after 1 steps
DEBUG Selecting: eccodeslib==2.46.1.16 [compatible] (eccodeslib-2.46.1.16-cp310-cp310-macosx_13_0_arm64.whl)
TRACE Received package metadata for: eckitlib
TRACE Selecting candidate for eccodeslib with range >=2.46.1.16, <2.46.1.16+ with 22 remote versions
TRACE Found candidate for package eccodeslib with range >=2.46.1.16, <2.46.1.16+ after 1 steps: 2.46.1.16 version
TRACE Returning candidate for package eccodeslib with range >=2.46.1.16, <2.46.1.16+ after 1 steps
TRACE Selecting candidate for eckitlib with range >=2.0.6.16, <2.0.6.16+ with 26 remote versions
TRACE Found candidate for package eckitlib with range >=2.0.6.16, <2.0.6.16+ after 1 steps: 2.0.6.16 version
TRACE Returning candidate for package eckitlib with range >=2.0.6.16, <2.0.6.16+ after 1 steps
TRACE Response from https://files.pythonhosted.org/packages/8c/0e/20f02d0708c2c0fcc0d489585b6e7ec37dc158c211e21cd67c0861915175/eccodeslib-2.46.1.16-cp310-cp310-macosx_13_0_arm64.whl.metadata is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 365000000s
DEBUG Found fresh response for: https://files.pythonhosted.org/packages/8c/0e/20f02d0708c2c0fcc0d489585b6e7ec37dc158c211e21cd67c0861915175/eccodeslib-2.46.1.16-cp310-cp310-macosx_13_0_arm64.whl.metadata
TRACE Received built distribution metadata for: eccodeslib==2.46.1.16
TRACE Response from https://files.pythonhosted.org/packages/9f/4d/0895b411c58c19aab98bc1e70fe49f1bc1606c1ff3c30e169393778abdc8/eckitlib-2.0.6.16-cp310-cp310-macosx_13_0_arm64.whl.metadata is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 365000000s
DEBUG Found fresh response for: https://files.pythonhosted.org/packages/9f/4d/0895b411c58c19aab98bc1e70fe49f1bc1606c1ff3c30e169393778abdc8/eckitlib-2.0.6.16-cp310-cp310-macosx_13_0_arm64.whl.metadata
TRACE Received built distribution metadata for: eckitlib==2.0.6.16
DEBUG Adding transitive dependency for eccodeslib==2.46.1.16: eckitlib>=2.0.6.16, <2.0.6.16+
TRACE Assigned packages: root==0a0.dev0, test==0.1.0, pyfdb==5.21.0.16, fdb5lib==5.21.0.16, eccodeslib==2.46.1.16
TRACE Chose package for decision: eckitlib. remaining choices: pyyaml, findlibs, metkitlib
DEBUG Searching for a compatible version of eckitlib (>=2.0.6.16, <2.0.6.16+)
TRACE Selecting candidate for eckitlib with range >=2.0.6.16, <2.0.6.16+ with 26 remote versions
TRACE Found candidate for package eckitlib with range >=2.0.6.16, <2.0.6.16+ after 1 steps: 2.0.6.16 version
TRACE Returning candidate for package eckitlib with range >=2.0.6.16, <2.0.6.16+ after 1 steps
DEBUG Selecting: eckitlib==2.0.6.16 [compatible] (eckitlib-2.0.6.16-cp310-cp310-macosx_13_0_arm64.whl)
TRACE Assigned packages: root==0a0.dev0, test==0.1.0, pyfdb==5.21.0.16, fdb5lib==5.21.0.16, eccodeslib==2.46.1.16, eckitlib==2.0.6.16
TRACE Chose package for decision: metkitlib. remaining choices: pyyaml, findlibs
TRACE Response from https://pypi.org/simple/metkitlib/ is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 600s
DEBUG Found fresh response for: https://pypi.org/simple/metkitlib/
TRACE Received package metadata for: metkitlib
TRACE Selecting candidate for metkitlib with range >=1.17.2.16, <1.17.2.16+ with 34 remote versions
DEBUG Searching for a compatible version of metkitlib (>=1.17.2.16, <1.17.2.16+)
TRACE Selecting candidate for metkitlib with range >=1.17.2.16, <1.17.2.16+ with 34 remote versions
TRACE Found candidate for package metkitlib with range >=1.17.2.16, <1.17.2.16+ after 1 steps: 1.17.2.16 version
TRACE Found candidate for package metkitlib with range >=1.17.2.16, <1.17.2.16+ after 1 steps: 1.17.2.16 version
TRACE Returning candidate for package metkitlib with range >=1.17.2.16, <1.17.2.16+ after 1 steps
TRACE Returning candidate for package metkitlib with range >=1.17.2.16, <1.17.2.16+ after 1 steps
DEBUG Selecting: metkitlib==1.17.2.16 [compatible] (metkitlib-1.17.2.16-cp310-cp310-macosx_13_0_arm64.whl)
TRACE Response from https://files.pythonhosted.org/packages/22/57/580671f818bb0394ce24200acd1772b6f6d09c606e1245115d90131d0a11/metkitlib-1.17.2.16-cp310-cp310-macosx_13_0_arm64.whl.metadata is storable because it has a 'public' cache-control directive
TRACE Freshness lifetime found via cache-control max age setting: 365000000s
DEBUG Found fresh response for: https://files.pythonhosted.org/packages/22/57/580671f818bb0394ce24200acd1772b6f6d09c606e1245115d90131d0a11/metkitlib-1.17.2.16-cp310-cp310-macosx_13_0_arm64.whl.metadata
TRACE Received built distribution metadata for: metkitlib==1.17.2.16
DEBUG Adding transitive dependency for metkitlib==1.17.2.16: eccodeslib>=2.46.1.16, <2.46.1.16+
DEBUG Adding transitive dependency for metkitlib==1.17.2.16: eckitlib>=2.0.6.16, <2.0.6.16+
TRACE Assigned packages: root==0a0.dev0, test==0.1.0, pyfdb==5.21.0.16, fdb5lib==5.21.0.16, eccodeslib==2.46.1.16, eckitlib==2.0.6.16, metkitlib==1.17.2.16
TRACE Chose package for decision: findlibs. remaining choices: pyyaml
DEBUG Searching for a compatible version of findlibs (>=0.1.2)
TRACE Selecting candidate for findlibs with range >=0.1.2 with 7 remote versions
TRACE Found candidate for package findlibs with range >=0.1.2 after 1 steps: 0.1.2 version
TRACE Returning candidate for package findlibs with range >=0.1.2 after 1 steps
DEBUG Selecting: findlibs==0.1.2 [compatible] (findlibs-0.1.2-py3-none-any.whl)
TRACE Assigned packages: root==0a0.dev0, test==0.1.0, pyfdb==5.21.0.16, fdb5lib==5.21.0.16, eccodeslib==2.46.1.16, eckitlib==2.0.6.16, metkitlib==1.17.2.16, findlibs==0.1.2
TRACE Chose package for decision: pyyaml. remaining choices:
DEBUG Searching for a compatible version of pyyaml (>=6.0.3)
TRACE Selecting candidate for pyyaml with range >=6.0.3 with 31 remote versions
TRACE Found candidate for package pyyaml with range >=6.0.3 after 1 steps: 6.0.3 version
TRACE Returning candidate for package pyyaml with range >=6.0.3 after 1 steps
DEBUG Selecting: pyyaml==6.0.3 [compatible] (pyyaml-6.0.3-cp310-cp310-macosx_10_13_x86_64.whl)
TRACE Assigned packages: root==0a0.dev0, test==0.1.0, pyfdb==5.21.0.16, fdb5lib==5.21.0.16, eccodeslib==2.46.1.16, eckitlib==2.0.6.16, metkitlib==1.17.2.16, findlibs==0.1.2, pyyaml==6.0.3
DEBUG Tried 8 versions: eccodeslib 1, eckitlib 1, fdb5lib 1, findlibs 1, metkitlib 1, pyfdb 1, pyyaml 1, test 1
DEBUG all marker environments resolution took 0.009s
TRACE Resolution: ResolverEnvironment { kind: Universal { initial_forks: [], markers: true, include: {}, exclude: {} } }
TRACE Resolution edge: ROOT -> test
TRACE Resolution edge: 0a0.dev0 -> 0.1.0
TRACE Resolution edge: fdb5lib -> eccodeslib
TRACE Resolution edge: 5.21.0.16 -> 2.46.1.16
TRACE Resolution edge: fdb5lib -> eckitlib
TRACE Resolution edge: 5.21.0.16 -> 2.0.6.16
TRACE Resolution edge: fdb5lib -> metkitlib
TRACE Resolution edge: 5.21.0.16 -> 1.17.2.16
TRACE Resolution edge: eccodeslib -> eckitlib
TRACE Resolution edge: 2.46.1.16 -> 2.0.6.16
TRACE Resolution edge: pyfdb -> fdb5lib
TRACE Resolution edge: 5.21.0.16 -> 5.21.0.16
TRACE Resolution edge: pyfdb -> findlibs
TRACE Resolution edge: 5.21.0.16 -> 0.1.2
TRACE Resolution edge: pyfdb -> pyyaml
TRACE Resolution edge: 5.21.0.16 -> 6.0.3
TRACE Resolution edge: test -> pyfdb
TRACE Resolution edge: 0.1.0 -> 5.21.0.16
TRACE Resolution edge: metkitlib -> eccodeslib
TRACE Resolution edge: 1.17.2.16 -> 2.46.1.16
TRACE Resolution edge: metkitlib -> eckitlib
TRACE Resolution edge: 1.17.2.16 -> 2.0.6.16
Resolved 8 packages in 12ms
What happened?
uvcannot properly resolve environments withpyfdbfor python 3.10 since version 5.20.114 and 5.21.0.16 are released.uvchecks theRequires-Pythonmetadata for compatibility. See e.g. astral-sh/uv#9425 (comment)It should resolve to
0.1.3which is the latest version supporting python 3.10, but instead tries to use5.21.0.16I am raising this issue here as the issue occurred with pyfdb being released via this repo (ecmwf/pyfdb#64 (comment)) which potentially has altered the release process and caused the lost of metadata.
Inspecting the left column on pypi for pyfdb previously showed

while now all metadata is missing.
Also compare the metadata in the wheels:
vs.
What are the steps to reproduce the bug?
uv fails when locking with:
uv lock -vv
Version
v5.21.0.16
Platform (OS and architecture)
Linux ac6-101.bullx 4.18.0-553.105.1.el8_10.x86_64 #1 SMP Sat Feb 7 00:49:44 EST 2026 x86_64 x86_64 x86_64 GNU/Linux
Relevant log output
Accompanying data
No response
Organisation
@dmidk