The unearth syntax is like this: usage: unearth [-h] [--verbose] [--index-url URL] [--find-link LOCATION] [--trusted-host HOST] [--no-binary] [--only-binary] [--prefer-binary] [--all] [--link-only] [--download [DIR]] [--python-version PY_VER] [--abis ABIS] [--implementation IMPL] [--platforms PLATFORMS] requirement I want to get the whole list of all wheel files that argostranslate version 1.9.6 is dependent on, because that’s possibly the last version of argos-translate that worked offline. My first attempt: $ unearth --find-link /usr/local/src/argos-translate/wheel_cache/ argostranslate=1.9.6 usage: unearth [-h] [--verbose] [--index-url URL] [--find-link LOCATION] [--trusted-host HOST] [--no-binary PACKAGE] [--only-binary PACKAGE] [--prefer-binary] [--all] [--link-only] [--download [DIR]] requirement unearth: error: argument requirement: invalid Requirement value: 'argostranslate=1.9.6' It does not accept my version constraint, despite examples using that kind of syntax. So I had to do this: $ unearth --all --find-link /usr/local/src/argos-translate/wheel_cache/ argostranslate It dumped metadata on all versions. I picked through the heap of output and found this: { "name": "argostranslate", "version": "1.9.6", "link": { "url": "https://files.pythonhosted.org/packages/01/f9/b472322ea3de4752bbec7fb2f169f057872390a9ff35f72a2142d06392ae/argostranslate-1.9.6-py3-none-any.whl", "comes_from": "https://pypi.org/simple/argostranslate/", "yank_reason": null, "requires_python": ">=3.5", "metadata": null } }, { "name": "argostranslate", "version": "1.9.6", "link": { "url": "https://files.pythonhosted.org/packages/6b/fc/13aa57857bee34f62cb9018c5fd4ec56da714431689b62cca9dce30a8877/argostranslate-1.9.6.tar.gz", "comes_from": "https://pypi.org/simple/argostranslate/", "yank_reason": null, "requires_python": ">=3.5", "metadata": null } }, That just gives the wheel for the app itself, not the wheels it depends on. How can I get the full list of wheels that argostranslate is dependent on using unearth? I should say that I supply the following option because I happen to already have all the wheel files: --find-link /usr/local/src/argos-translate/wheel_cache/ That’s just to feed unearth as well as possible as an experiment. In fact it makes no difference if I omit the --find-link option. The end game is to be able to get this list in the future when I am starting from zero. I might be looking to do something like --verbose --download --dry-run, but there is no --dry-run. My wheel dir (/usr/local/src/argos-translate/wheel_cache/) ::: spoiler currently contains these files annotated_types-0.7.0-py3-none-any.whl argostranslate-1.10.0-py3-none-any.whl blis-1.3.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl catalogue-2.0.10-py3-none-any.whl certifi-2025.11.12-py3-none-any.whl charset_normalizer-3.4.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl click-8.3.1-py3-none-any.whl cloudpathlib-0.23.0-py3-none-any.whl confection-0.1.5-py3-none-any.whl ctranslate2-4.6.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl cymem-2.0.13-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl emoji-2.15.0-py3-none-any.whl filelock-3.20.1-py3-none-any.whl fsspec-2025.12.0-py3-none-any.whl idna-3.11-py3-none-any.whl jinja2-3.1.6-py3-none-any.whl joblib-1.5.3-py3-none-any.whl markupsafe-3.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl mpmath-1.3.0-py3-none-any.whl murmurhash-1.0.15-cp311-cp311-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl networkx-3.6.1-py3-none-any.whl numpy-2.4.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl nvidia_cublas_cu12-12.8.4.1-py3-none-manylinux_2_27_x86_64.whl nvidia_cuda_cupti_cu12-12.8.90-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl nvidia_cuda_nvrtc_cu12-12.8.93-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl nvidia_cuda_runtime_cu12-12.8.90-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl nvidia_cudnn_cu12-9.10.2.21-py3-none-manylinux_2_27_x86_64.whl nvidia_cufft_cu12-11.3.3.83-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl nvidia_cufile_cu12-1.13.1.3-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl nvidia_curand_cu12-10.3.9.90-py3-none-manylinux_2_27_x86_64.whl nvidia_cusolver_cu12-11.7.3.90-py3-none-manylinux_2_27_x86_64.whl nvidia_cusparse_cu12-12.5.8.93-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl nvidia_cusparselt_cu12-0.7.1-py3-none-manylinux2014_x86_64.whl nvidia_nccl_cu12-2.27.5-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl nvidia_nvjitlink_cu12-12.8.93-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl nvidia_nvshmem_cu12-3.3.20-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl nvidia_nvtx_cu12-12.8.90-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl packaging-25.0-py3-none-any.whl preshed-3.0.12-cp311-cp311-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl protobuf-6.33.2-cp39-abi3-manylinux2014_x86_64.whl pydantic-2.12.5-py3-none-any.whl pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl pyyaml-6.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl regex-2025.11.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl requests-2.32.5-py3-none-any.whl sacremoses-0.1.1-py3-none-any.whl sentencepiece-0.2.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl setuptools-80.9.0-py3-none-any.whl smart_open-7.5.0-py3-none-any.whl spacy-3.8.11-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl spacy_legacy-3.0.12-py2.py3-none-any.whl spacy_loggers-1.0.5-py3-none-any.whl srsly-2.5.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl stanza-1.10.1-py3-none-any.whl sympy-1.14.0-py3-none-any.whl thinc-8.3.10-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl torch-2.9.1-cp311-cp311-manylinux_2_28_x86_64.whl tqdm-4.67.1-py3-none-any.whl triton-3.5.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl typer_slim-0.21.0-py3-none-any.whl typing_extensions-4.15.0-py3-none-any.whl typing_inspection-0.4.2-py3-none-any.whl urllib3-2.6.2-py3-none-any.whl wasabi-1.1.3-py3-none-any.whl weasel-0.4.3-py3-none-any.whl wrapt-2.0.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl ___ ::: I can run unearth on the prefixes of each of those – but that’s cheating, because in a future installation starting with nothing I will not know those packages or versions.