Checklist
What happened?
This appears to be related to the stale #5571
If my recipe says:
build:
noarch: python
#number: 37
string: dst_h{{ PKG_HASH }}_{{ PKG_BUILDNUM }}
run_exports:
- {{ pin_subpackage (name, exact=True) }}
then conda render reports both the build string and the run_exports with a dummy PKG_HASH value:
$conda render {feedstock}
...
build:
noarch: python
string: dst_h1234567_0
run_exports:
- distro-smoke-test-conda-build 0.1 dst_h1234567_0
...
which might be fine.
conda-build generates a useable PKG_HASH for the build but not for the run_exports:
$conda build {feedstock}
...
INFO :: The inputs making up the hashes for the built packages are as follows:
{
"distro-smoke-test-conda-build-0.1-dst_hd3eb1b0_0.conda": {
"recipe": {
"channel_targets": "defaults"
}
}
}
poking about:
$tar xf .../conda-bld/noarch/distro-smoke-test-conda-build-0.1-dst_hd3eb1b0_0.tar.bz2 -O info/run_exports.json | jq .
{
"weak": [
"distro-smoke-test-conda-build 0.1 dst_h1234567_0"
]
}
where dst_h1234567_0 is not going to be found by the solver.
If I comment out my explicit setting of string (which would lead to a PKG_HASH of pyhd3eb1b0) and set number to 37 then it feels somewhat worse as run_exports is revealed to be:
$tar xf .../conda-bld/noarch/distro-smoke-test-conda-build-0.1-pyhd3eb1b0_37.tar.bz2 -O info/run_exports.json | jq .
{
"weak": [
"distro-smoke-test-conda-build 0.1 37"
]
}
No PKG_HASH at all?
Conda Info
active environment : base
active env location : /Users/ifitchet/mc1
shell level : 1
user config file : /Users/ifitchet/.condarc
populated config files : /Users/ifitchet/mc1/condarc.d/anaconda-auth.yml
/Users/ifitchet/mc1/condarc.d/registration.yml
/Users/ifitchet/.condarc
conda version : 26.5.3
conda-build version : 26.5.0
python version : 3.10.20.final.0
solver : libmamba (default)
virtual packages : __archspec=1=m2
__conda=26.5.3=0
__osx=26.5.1=0
__unix=0=0
base environment : /Users/ifitchet/mc1 (writable)
conda av data dir : /Users/ifitchet/mc1/etc/conda
conda av metadata url : None
channel URLs : https://repo.anaconda.com/pkgs/main/osx-arm64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/osx-arm64
https://repo.anaconda.com/pkgs/r/noarch
package cache : /Users/ifitchet/mc1/pkgs
/Users/ifitchet/.conda/pkgs
envs directories : /Users/ifitchet/mc1/envs
/Users/ifitchet/.conda/envs
temporary directory : /var/folders/mg/frr99xbs2cbg4dt01s1r5gmh0000gp/T
platform : osx-arm64
user-agent : conda/26.5.3 requests/2.34.2 CPython/3.10.20 Darwin/25.5.0 OSX/26.5.1 solver/libmamba conda-libmamba-solver/26.7.0 libmambapy/2.3.2 aau/0.8.1 c/. s/. e/. a/. o/.
UID:GID : 502:20
netrc file : None
offline mode : False
Conda Config
==> /Users/ifitchet/mc1/condarc.d/anaconda-auth.yml <==
channel_settings:
- channel: https://repo.anaconda.cloud/*
auth: anaconda-auth
==> /Users/ifitchet/mc1/condarc.d/registration.yml <==
anaconda_anon_usage: True
==> /Users/ifitchet/.condarc <==
changeps1: True
pkgs_dirs: []
channel_alias: https://conda.anaconda.org
channels:
- defaults
conda_build:
matrix_base_dir: /Users/ifitchet/src/onboarding/automated-build/c3i_configurations/anaconda_public
==> envvars <==
allow_softlinks: False
Conda list
# packages in environment at /Users/ifitchet/mc1:
#
# Name Version Build Channel
anaconda-anon-usage 0.8.1 pyhb46e38b_100 defaults
anaconda-auth 0.15.1 py310hca03da5_0 defaults
anaconda-cli-base 0.9.1 py310hca03da5_0 defaults
anaconda-registration 1.0 hd3eb1b0_0 https://repo.anaconda.cloud/repo/anaconda-tools
annotated-doc 0.0.4 py310hca03da5_0 defaults
annotated-types 0.7.0 py310hca03da5_0 defaults
anyio 4.12.1 py310hca03da5_0 defaults
archspec 0.2.6 py310hca03da5_0 defaults
asttokens 3.0.1 py310hca03da5_0 defaults
attrs 26.1.0 py310h0d18f5d_0 defaults
backports 1.1 pyhd3eb1b0_1 defaults
backports.functools_lru_cache 1.6.4 pyhd3eb1b0_0 defaults
backports.tarfile 1.2.0 py310hca03da5_0 defaults
backports.tempfile 1.0 pyhd3eb1b0_1 defaults
backports.weakref 1.0.post1 py_1 defaults
backports.zstd 1.3.0 py310hb3cf4b8_0 defaults
beautifulsoup4 4.15.0 py310hca03da5_0 defaults
black 26.5.1 py310hca03da5_0 defaults
boltons 25.0.0 py310hca03da5_0 defaults
brotlicffi 1.2.0.0 py310h50f4ffc_0 defaults
bzip2 1.0.8 h80987f9_6 defaults
c-ares 1.34.7 hfe05a68_0 defaults
ca-certificates 2026.7.16 hca03da5_0 defaults
cctools 1030.6.3 h0aecbd0_1 defaults
certifi 2026.7.22 py310hca03da5_0 defaults
cffi 2.1.0 py310h73c2a22_0 defaults
cfgv 3.5.0 py310hca03da5_0 defaults
chardet 5.2.0 py310hca03da5_0 defaults
charset-normalizer 3.4.7 py310hca03da5_0 defaults
click 8.4.1 py310hca03da5_0 defaults
conda 26.5.3 py310hca03da5_0 defaults
conda-anaconda-telemetry 0.3.0 pyhd3eb1b0_1 https://repo.anaconda.cloud/repo/anaconda-tools
conda-build 26.5.0 py310h4f616cb_0 defaults
conda-content-trust 0.3.2 py310hca03da5_0 defaults
conda-index 0.12.1 py310hca03da5_0 defaults
conda-libmamba-solver 26.7.0 pyh3785b3c_0 defaults
conda-lockfiles 0.2.1 py310hca03da5_0 defaults
conda-package-handling 2.5.0 py310hca03da5_0 defaults
conda-package-streaming 0.13.0 py310hca03da5_0 defaults
conda-pypi 0.11.0 py310hca03da5_0 defaults
conda-rattler-solver 0.1.1 py310hca03da5_0 defaults
conda-self 0.2.1 py310hca03da5_0 defaults
conda-verify 3.4.2 py_1 defaults
cpp-expected 1.1.0 h48ca7d4_0 defaults
cryptography 49.0.0 py310h482b559_0 defaults
curl 8.21.0 h4db5624_0 defaults
decorator 5.3.1 py310hca03da5_0 defaults
defusedxml 0.7.1 pyhd3eb1b0_0 defaults
distlib 0.4.3 py310haa24f5a_0 defaults
distro 1.9.0 py310hca03da5_0 defaults
evalidate 2.1.4 py310hca03da5_0 defaults
exceptiongroup 1.3.1 py310hca03da5_0 defaults
executing 2.2.1 py310hca03da5_0 defaults
filelock 3.29.4 py310hca03da5_0 defaults
flake8 7.3.0 py310hca03da5_0 defaults
fmt 12.1.0 hc20ec9e_0 defaults
frozendict 2.4.7 py310haa24f5a_0 defaults
future 1.0.0 py310hca03da5_0 defaults
gettext 0.25.1 h0087489_2 defaults
gettext-tools 0.25.1 h47834f4_2 defaults
glob2 0.7 pyhd3eb1b0_0 defaults
h11 0.16.0 py310hca03da5_1 defaults
httpcore 1.0.9 py310hca03da5_0 defaults
httpx 0.28.1 py310hca03da5_1 defaults
icu 78.3 hb5f10ac_1 defaults
identify 2.6.19 py310hca03da5_0 defaults
idna 3.18 py310hca03da5_0 defaults
importlib-metadata 9.0.0 py310hca03da5_0 defaults
ipython 8.30.0 py310hca03da5_0 defaults
jansson 2.15.0 h9db958f_0 defaults
jaraco.classes 3.4.0 py310hca03da5_0 defaults
jaraco.context 6.1.0 py310hca03da5_0 defaults
jaraco.functools 4.4.0 py310hca03da5_0 defaults
jedi 0.20.0 py310hca03da5_0 defaults
jinja2 3.1.6 py310hca03da5_0 defaults
jira 3.10.5 pyhd3eb1b0_0 defaults
jsonpatch 1.33 py310hca03da5_1 defaults
jsonpointer 3.1.1 py310hca03da5_0 defaults
jsonschema 4.19.0 pypi_0 pypi
jsonschema-specifications 2025.9.1 py310hca03da5_0 defaults
keyring 25.7.0 py310hca03da5_0 defaults
ld64 956.6 haf59c80_1 defaults
libarchive 3.8.8 h2304516_1 defaults
libasprintf 0.25.1 hcc4682f_2 defaults
libasprintf-devel 0.25.1 hcc4682f_2 defaults
libbrotlicommon 1.2.0 hbd7815e_0 defaults
libbrotlidec 1.2.0 h1e834b2_0 defaults
libbrotlienc 1.2.0 h5439a07_0 defaults
libcurl 8.21.0 h033922a_0 defaults
libcxx 22.1.2 hf894667_0 defaults
libev 4.33 h1a28f6b_1 defaults
libexpat 2.8.2 h50f4ffc_1 defaults
libffi 3.4.8 h4a3ca97_3 defaults
libgettextpo 0.25.1 hd3943a6_2 defaults
libgettextpo-devel 0.25.1 hd3943a6_2 defaults
libiconv 1.18 h92f5915_0 defaults
libidn2 2.3.8 h9681e36_0 defaults
libintl 0.25.1 h55097f8_2 defaults
libintl-devel 0.25.1 h55097f8_2 defaults
libkrb5 1.22.2 hbbdc3aa_0 defaults
liblief 0.17.5 h35ee89b_0 defaults
libllvm22 22.1.2 h61cb577_3 defaults
libmamba 2.3.2 h4b9b42c_3 defaults
libmambapy 2.3.2 py310h678a34b_3 defaults
libnghttp2 1.69.0 h04a03c9_1 defaults
libsodium 1.0.21 h58dafb5_1 defaults
libsolv 0.7.39 h01d500d_0 defaults
libssh2 1.11.1 h3e2b118_0 defaults
libunistring 1.4.2 hd80fe18_0 defaults
libxml2 2.15.3 h9e20a13_0 defaults
libzlib 1.3.2 hb4cf58c_0 defaults
lmdb 1.0.0 hdceb957_0 defaults
lz4-c 1.9.4 hd7fd590_5 defaults
markdown-it-py 4.0.0 py310hca03da5_2 defaults
markupsafe 3.0.3 py310haa24f5a_0 defaults
matplotlib-inline 0.2.2 py310hca03da5_0 defaults
mbedtls 3.5.1 h313beb8_1 defaults
mccabe 0.7.0 pyhd3eb1b0_0 defaults
mdurl 0.1.2 py310hca03da5_0 defaults
menuinst 2.5.2 py310hca03da5_0 defaults
more-itertools 11.0.2 py310hca03da5_0 defaults
msgpack-python 1.2.1 py310h50f4ffc_0 defaults
mypy_extensions 1.1.0 py310hca03da5_0 defaults
ncurses 6.5 hee39554_0 defaults
networkx 3.4.2 py310hca03da5_0 defaults
nlohmann_json 3.11.2 h313beb8_0 defaults
nodeenv 1.10.0 py310hca03da5_0 defaults
oauthlib 3.3.1 py310hca03da5_0 defaults
openssl 3.5.7 ha0b305a_0 defaults
packaging 26.0 py310hca03da5_0 defaults
parso 0.8.7 py310hca03da5_0 defaults
patch 2.8 h79febb2_0 defaults
pathspec 1.0.4 py310hca03da5_0 defaults
pcre2 10.46 h1dacb4a_0 defaults
pexpect 4.9.0 py310hca03da5_1 defaults
pip 26.1.2 pyhc872135_0 defaults
pkce 1.0.3 py310hca03da5_0 defaults
pkginfo 1.12.1.2 py310hca03da5_0 defaults
platformdirs 4.11.0 py310hca03da5_0 defaults
pluggy 1.6.0 py310hca03da5_0 defaults
pre-commit 4.6.0 py310hca03da5_0 defaults
prompt-toolkit 3.0.53 py310hca03da5_0 defaults
prompt_toolkit 3.0.53 hd3eb1b0_0 defaults
psutil 7.2.2 py310haa24f5a_0 defaults
ptyprocess 0.7.0 pyhd3eb1b0_3 defaults
pure_eval 0.2.3 py310hca03da5_0 defaults
py-lief 0.17.5 py310h35ee89b_0 defaults
py-rattler 0.25.0 py310h482b559_0 defaults
py-rattler-build 0.65.1 py310h482b559_0 defaults
pybind11-abi 4 hd3eb1b0_1 defaults
pycodestyle 2.14.0 py310hca03da5_0 defaults
pycosat 0.6.6 py310h80987f9_2 defaults
pycparser 3.0 py310hca03da5_0 defaults
pydantic 2.13.4 py310hca03da5_0 defaults
pydantic-core 2.46.4 py310h3983f12_0 defaults
pydantic-settings 2.14.2 py310hca03da5_0 defaults
pyflakes 3.4.0 py310hca03da5_0 defaults
pygithub 2.9.1 py310hca03da5_0 defaults
pygments 2.20.0 py310hca03da5_0 defaults
pyjwt 2.13.0 py310hca03da5_0 defaults
pynacl 1.6.2 py310h58dafb5_1 defaults
pyproject_hooks 1.2.0 py310hca03da5_1 defaults
python 3.10.20 h478e877_1 defaults
python-build 1.5.1 py310hca03da5_0 defaults
python-discovery 1.4.2 pyhd3eb1b0_0 defaults
python-dotenv 1.2.1 py310hca03da5_0 defaults
python-installer 1.0.1 py310hca03da5_0 defaults
python-libarchive-c 5.3 py310hca03da5_0 defaults
python.app 3 py310h80987f9_2 defaults
pytokens 0.4.1 py310haa24f5a_0 defaults
pyyaml 6.0.3 py310h091b9d3_0 defaults
rattler-build 0.55.1 h02d9002_0 defaults
readchar 4.2.2 py310hca03da5_0 defaults
readline 8.3 h0b18652_0 defaults
referencing 0.37.0 py310hca03da5_0 defaults
reproc 14.2.7 h279499b_0 defaults
reproc-cpp 14.2.7 h279499b_0 defaults
requests 2.34.2 py310hca03da5_0 defaults
requests-oauthlib 2.0.0 py310hca03da5_0 defaults
requests-toolbelt 1.0.0 py310hca03da5_0 defaults
rich 15.0.0 py310hca03da5_0 defaults
ruamel.yaml 0.18.16 py310h091b9d3_0 defaults
ruamel.yaml.clib 0.2.14 py310h091b9d3_0 defaults
semver 3.0.4 py310hca03da5_0 defaults
setuptools 83.0.0 py310hca03da5_0 defaults
shellingham 1.5.4 py310hca03da5_0 defaults
simdjson 3.10.1 h48ca7d4_0 defaults
six 1.17.0 py310hca03da5_0 defaults
soupsieve 2.8.4 py310hca03da5_0 defaults
sqlite 3.53.2 h1cce5ff_0 defaults
stack_data 0.6.3 py310hca03da5_0 defaults
tapi 1100.0.11 h8754e6a_1 defaults
tk 8.6.15 hcd8a7d5_0 defaults
tomli 2.4.0 py310hca03da5_0 defaults
tomli-w 1.2.0 pyhd3eb1b0_0 defaults
tomlkit 0.15.1 py310hca03da5_0 defaults
tqdm 4.68.2 py310h7eb115d_0 defaults
traitlets 5.15.0 py310hca03da5_0 defaults
truststore 0.10.4 py310hca03da5_0 defaults
typer 0.25.1 py310hca03da5_0 defaults
typing-extensions 4.16.0 py310hca03da5_0 defaults
typing-inspection 0.4.2 py310hca03da5_0 defaults
typing_extensions 4.16.0 py310hca03da5_0 defaults
tzdata 2026c he532380_0 defaults
ukkonen 1.1.0 py310haeee614_0 defaults
unearth 0.18.2 py310hca03da5_0 defaults
urllib3 2.7.0 py310hca03da5_0 defaults
virtualenv 21.5.1 py310hca03da5_0 defaults
wcwidth 0.8.2 py310hca03da5_0 defaults
wheel 0.47.0 py310hca03da5_0 defaults
xz 5.8.2 h8bbcb1d_0 defaults
yaml 0.2.5 h1a28f6b_0 defaults
yaml-cpp 0.9.0 h9fe17f6_1 defaults
zipp 3.23.0 py310hca03da5_0 defaults
zlib 1.3.2 hb4cf58c_0 defaults
zstandard 0.24.0 py310hbc14757_0 defaults
zstd 1.5.7 h817c040_0 defaults
Additional Context
No response
Checklist
What happened?
This appears to be related to the stale #5571
If my recipe says:
then
conda renderreports both the buildstringand therun_exportswith a dummyPKG_HASHvalue:which might be fine.
conda-buildgenerates a useablePKG_HASHfor the build but not for therun_exports:poking about:
where
dst_h1234567_0is not going to be found by the solver.If I comment out my explicit setting of
string(which would lead to aPKG_HASHofpyhd3eb1b0) and setnumberto37then it feels somewhat worse asrun_exportsis revealed to be:No
PKG_HASHat all?Conda Info
Conda Config
Conda list
Additional Context
No response