Skip to content

BUG: conda-build rattler implementation errors on conda_build.root-dir setting #6043

Description

@shinkyoukai

Checklist

  • I added a descriptive title
  • I searched open reports and couldn't find a duplicate

What happened?

If the .condarc setting conda_build.root-dir is set and recipe.yaml is present, Conda will exit with an error. Ideally, this would either translate to the --output-dir setting or output a warning without causing a Conda error. Adding the setting manually to VALID_ARGS.build in compat.py allows the build to proceed. Error below:


# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "/opt/conda/lib/python3.14/site-packages/conda/exception_handler.py", line 30, in __call__
        return func(*args, **kwargs)
      File "/opt/conda/lib/python3.14/site-packages/conda/cli/main.py", line 53, in main_subshell
        exit_code = do_call(args, parser)
      File "/opt/conda/lib/python3.14/site-packages/conda/cli/conda_argparse.py", line 180, in do_call
        result = plugin_subcommand.action(getattr(args, "_args", args))
      File "/opt/conda/lib/python3.14/site-packages/conda_build/plugin.py", line 18, in build
        return execute(args)
      File "/opt/conda/lib/python3.14/site-packages/conda_build/cli/main_build.py", line 583, in execute
        check_arguments_rattler(command, parsed, parsed_only_recipe)
        ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/opt/conda/lib/python3.14/site-packages/conda_build/_rattler_build/compat.py", line 142, in check_arguments_rattler
        raise ValueError(
            f"Invalid condarc settings for conda-{command}: {', '.join(sorted(unsupported_condarc_keys))}"
        )
    ValueError: Invalid condarc settings for conda-build: root-dir

`$ /opt/conda/bin/conda build .`

  environment variables:
                 CIO_TEST=<not set>
    CONDA_ALLOW_SOFTLINKS=false
                CONDA_EXE=/opt/conda/bin/conda
         CONDA_PYTHON_EXE=/opt/conda/bin/python
               CONDA_ROOT=/opt/conda
              CONDA_SHLVL=0
           CURL_CA_BUNDLE=<not set>
               LD_PRELOAD=<not set>
                     PATH=/opt/conda/condabin:/home/sysadmin/.rbenv/shims:/home/sysadmin/.rbenv/
                          bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/
                          games:/usr/local/games:/usr/lib/wsl/lib:/mnt/c/Program Files/Alacritty
                          /:/mnt/c/Windows/system32:/mnt/c/Windows:/mnt/c/Windows/System32/Wbem:
                          /mnt/c/Windows/System32/WindowsPowerShell/v1.0/:/mnt/c/Windows/System3
                          2/OpenSSH/:/mnt/c/Program Files/dotnet/:/mnt/c/Program Files
                          (x86)/NVIDIA Corporation/PhysX/Common:/mnt/c/Program Files/Git/cmd:/mn
                          t/c/WINDOWS/system32:/mnt/c/WINDOWS:/mnt/c/WINDOWS/System32/Wbem:/mnt/
                          c/WINDOWS/System32/WindowsPowerShell/v1.0/:/mnt/c/WINDOWS/System32/Ope
                          nSSH/:/mnt/c/Program Files/NVIDIA Corporation/NVIDIA
                          App/NvDLISR:/mnt/c/Program Files/PowerToys/DSCModules/:/mnt/c/Users/sy
                          sadmin/AppData/Local/Microsoft/WindowsApps:/mnt/c/Users/sysadmin/AppDa
                          ta/Local/Programs/Microsoft VS
                          Code/bin:/mnt/c/Users/sysadmin/AppData/Roaming/nvm:/mnt/c/Program
                          Files/nodejs:/snap/bin
       REQUESTS_CA_BUNDLE=<not set>
            SSL_CERT_FILE=<not set>

     active environment : None
            shell level : 0
       user config file : /home/sysadmin/.condarc
 populated config files : /opt/conda/.condarc
                          /opt/conda/condarc.d/anaconda-auth.yml
                          /home/sysadmin/.condarc
          conda version : 26.5.3
    conda-build version : 26.5.0
         python version : 3.14.6.final.0
                 solver : libmamba (default)
       virtual packages : __archspec=1=skylake
                          __conda=26.5.3=0
                          __cuda=13.2=0
                          __glibc=2.31=0
                          __linux=6.18.33.2=0
                          __unix=0=0
       base environment : /opt/conda  (read only)
      conda av data dir : /opt/conda/etc/conda
  conda av metadata url : None
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://conda.anaconda.org/nodefaults/linux-64
                          https://conda.anaconda.org/nodefaults/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /opt/conda/pkgs
                          /home/sysadmin/.conda/pkgs
       envs directories : /home/sysadmin/.conda/envs
                          /opt/conda/envs
    temporary directory : /tmp
               platform : linux-64
             user-agent : conda/26.5.3 requests/2.34.2 CPython/3.14.6 Linux/6.18.33.2-microsoft-standard-WSL2 ubuntu/20.04.6 glibc/2.31 solver/libmamba conda-libmamba-solver/26.6.0 libmambapy/2.3.2 aau/0.8.1 c/. s/. e/.
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False


An unexpected error has occurred. Conda has prepared the above report.
If you suspect this error is being caused by a malfunctioning plugin,
consider using the --no-plugins option to turn off plugins.

Example: conda --no-plugins install <package>

Alternatively, you can set the CONDA_NO_PLUGINS environment variable on
the command line to run the command without plugins enabled.

Example: CONDA_NO_PLUGINS=true conda install <package>

Conda Info

active environment : None
            shell level : 0
       user config file : /home/sysadmin/.condarc
 populated config files : /opt/conda/.condarc
                          /opt/conda/condarc.d/anaconda-auth.yml
                          /home/sysadmin/.condarc
          conda version : 26.5.3
    conda-build version : 26.5.0
         python version : 3.14.6.final.0
                 solver : libmamba (default)
       virtual packages : __archspec=1=skylake
                          __conda=26.5.3=0
                          __cuda=13.2=0
                          __glibc=2.31=0
                          __linux=6.18.33.2=0
                          __unix=0=0
       base environment : /opt/conda  (read only)
      conda av data dir : /opt/conda/etc/conda
  conda av metadata url : None
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://conda.anaconda.org/nodefaults/linux-64
                          https://conda.anaconda.org/nodefaults/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /opt/conda/pkgs
                          /home/sysadmin/.conda/pkgs
       envs directories : /home/sysadmin/.conda/envs
                          /opt/conda/envs
    temporary directory : /tmp
               platform : linux-64
             user-agent : conda/26.5.3 requests/2.34.2 CPython/3.14.6 Linux/6.18.33.2-microsoft-standard-WSL2 ubuntu/20.04.6 glibc/2.31 solver/libmamba conda-libmamba-solver/26.6.0 libmambapy/2.3.2 aau/0.8.1 c/. s/. e/.
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False

Conda Config

==> /opt/conda/.condarc <==
channels:
  - defaults

==> /opt/conda/condarc.d/anaconda-auth.yml <==
channel_settings:
  - channel: https://repo.anaconda.cloud/*
    auth: anaconda-auth

==> /home/sysadmin/.condarc <==
channels:
  - conda-forge
  - nodefaults
conda_build:
  root-dir: /home/sysadmin/conda-bld

==> envvars <==
allow_softlinks: False

Conda list

# packages in environment at /opt/conda:
#
# Name                       Version          Build               Channel
_libgcc_mutex                0.1              main                defaults
_openmp_mutex                5.1              52_gnu              defaults
anaconda-anon-usage          0.8.1            pyhb46e38b_100      defaults
anaconda-auth                0.15.1           py314h06a4308_0     defaults
anaconda-channel-guide       0.1.1            py314h06a4308_0     defaults
anaconda-cli-base            0.9.1            py314h06a4308_0     defaults
annotated-doc                0.0.4            py314h06a4308_0     defaults
annotated-types              0.6.0            py314h06a4308_1     defaults
anyio                        4.12.1           py314h06a4308_0     defaults
archspec                     0.2.6            py314h06a4308_0     defaults
attrs                        26.1.0           py314h0c820a0_0     defaults
beautifulsoup4               4.15.0           py314h06a4308_0     defaults
boltons                      25.0.0           py314h06a4308_0     defaults
brotlicffi                   1.2.0.0          py314h7354ed3_0     defaults
bzip2                        1.0.8            h5eee18b_6          defaults
c-ares                       1.34.7           hd44998d_0          defaults
ca-certificates              2026.5.14        h06a4308_0          defaults
certifi                      2026.6.17        py314h06a4308_0     defaults
cffi                         2.0.0            py314h4eded50_1     defaults
chardet                      5.2.0            py314h06a4308_0     defaults
charset-normalizer           3.4.7            py314h06a4308_0     defaults
click                        8.4.1            py314h06a4308_0     defaults
conda                        26.5.3           py314h06a4308_0     defaults
conda-anaconda-telemetry     0.3.0            pyhd3eb1b0_1        defaults
conda-anaconda-tos           0.2.2            py314h06a4308_1     defaults
conda-build                  26.5.0           py314h945cf10_0     defaults
conda-content-trust          0.3.2            py314h06a4308_0     defaults
conda-index                  0.12.1           py314h06a4308_0     defaults
conda-libmamba-solver        26.6.0           pyh3785b3c_0        defaults
conda-lockfiles              0.2.0            py314h06a4308_0     defaults
conda-package-handling       2.5.0            py314h06a4308_0     defaults
conda-package-streaming      0.13.0           py314h06a4308_0     defaults
conda-pypi                   0.11.0           py314h06a4308_0     defaults
conda-rattler-solver         0.1.1            py314h06a4308_0     defaults
conda-self                   0.2.0            py314h06a4308_0     defaults
cpp-expected                 1.1.0            hdb19cb5_0          defaults
cryptography                 49.0.0           py314hef7b95b_0     defaults
dbus                         1.16.2           h5bd4931_0          defaults
distro                       1.9.0            py314h06a4308_0     defaults
evalidate                    2.1.4            py314h06a4308_0     defaults
expat                        2.8.2            h7354ed3_1          defaults
filelock                     3.29.4           py314h06a4308_0     defaults
fmt                          12.1.0           h44f220b_0          defaults
frozendict                   2.4.7            py314h47b2149_0     defaults
gettext                      0.25.1           h92eb808_0          defaults
gettext-tools                0.25.1           h6a67909_0          defaults
h11                          0.16.0           py314h06a4308_1     defaults
httpcore                     1.0.9            py314h06a4308_0     defaults
httpx                        0.28.1           py314h06a4308_1     defaults
icu                          78.3             h53478e7_1          defaults
idna                         3.18             py314h06a4308_0     defaults
jansson                      2.15.0           hbcba0ee_0          defaults
jaraco.classes               3.4.0            py314h06a4308_0     defaults
jaraco.context               6.1.0            py314h06a4308_0     defaults
jaraco.functools             4.4.0            py314h06a4308_0     defaults
jeepney                      0.7.1            pyhd3eb1b0_0        defaults
jinja2                       3.1.6            py314h06a4308_0     defaults
jsonpatch                    1.33             py314h06a4308_1     defaults
jsonpointer                  3.1.1            py314h06a4308_0     defaults
jsonschema                   4.25.1           py314h06a4308_0     defaults
jsonschema-specifications    2025.9.1         py314h06a4308_0     defaults
keyring                      25.7.0           py314h06a4308_0     defaults
ld_impl_linux-64             2.44             h9e0c5a2_3          defaults
libarchive                   3.8.7            hb3cce40_0          defaults
libasprintf                  0.25.1           hf2ab22a_0          defaults
libasprintf-devel            0.25.1           hf2ab22a_0          defaults
libbrotlicommon              1.2.0            h32cd6e7_0          defaults
libbrotlidec                 1.2.0            ha2c5f68_0          defaults
libbrotlienc                 1.2.0            h2e96acb_0          defaults
libcurl                      8.20.0           hd8fa685_1          defaults
libev                        4.33             h7f8727e_1          defaults
libexpat                     2.8.2            h7354ed3_1          defaults
libffi                       3.4.8            h06d3fd0_3          defaults
libgcc                       15.2.0           h69a1729_8          defaults
libgcc-ng                    15.2.0           h166f726_8          defaults
libgettextpo                 0.25.1           hf2ab22a_0          defaults
libgettextpo-devel           0.25.1           hf2ab22a_0          defaults
libiconv                     1.18             h75a1612_0          defaults
libidn2                      2.3.8            hf80d704_0          defaults
libkrb5                      1.22.2           hbd13c29_0          defaults
liblief                      0.17.5           hadaebfa_0          defaults
libmamba                     2.3.2            he97f470_3          defaults
libmambapy                   2.3.2            py314heb26620_3     defaults
libmpdec                     4.0.1            h47b2149_0          defaults
libnghttp2                   1.69.0           hc59f8b6_0          defaults
libsolv                      0.7.39           h04d0c11_0          defaults
libssh2                      1.11.1           h251f7ec_0          defaults
libstdcxx                    15.2.0           h39759b7_8          defaults
libstdcxx-ng                 15.2.0           hc03a8fd_8          defaults
libunistring                 1.4.2            h34b0ebb_0          defaults
libuuid                      1.41.5           h5eee18b_0          defaults
libxcb                       1.17.0           h9b100fa_0          defaults
libxml2                      2.14.6           hf2a51f9_1          defaults
libzlib                      1.3.2            h47b2149_0          defaults
lmdb                         0.9.31           hb25bd0a_0          defaults
lz4-c                        1.9.4            h7354ed3_5          defaults
markdown-it-py               4.0.0            py314h06a4308_2     defaults
markupsafe                   3.0.3            py314h47b2149_0     defaults
mbedtls                      3.5.1            h6a678d5_1          defaults
mdurl                        0.1.2            py314h06a4308_0     defaults
menuinst                     2.5.1            py314h06a4308_0     defaults
more-itertools               11.0.2           py314h06a4308_0     defaults
msgpack-python               1.2.1            py314h7354ed3_0     defaults
ncurses                      6.5              h7934f7d_0          defaults
nlohmann_json                3.11.2           h6a678d5_0          defaults
openssl                      3.5.7            h1b28b03_0          defaults
packaging                    26.0             py314h06a4308_0     defaults
patch                        2.8              hb25bd0a_0          defaults
patchelf                     0.17.2           h6a678d5_0          defaults
pcre2                        10.46            hf426167_0          defaults
pip                          26.1.2           pyh0d26453_0        defaults
pkce                         1.0.3            py314h06a4308_0     defaults
pkginfo                      1.12.1.2         py314h06a4308_0     defaults
platformdirs                 4.9.4            py314h06a4308_0     defaults
pluggy                       1.6.0            py314h06a4308_0     defaults
psutil                       7.0.0            py314hee96239_1     defaults
pthread-stubs                0.3              h0ce48e5_1          defaults
py-lief                      0.17.5           py314hadaebfa_0     defaults
py-rattler                   0.25.0           py314hef7b95b_0     defaults
py-rattler-build             0.65.1           py314hef7b95b_0     defaults
pybind11-abi                 5                hd3eb1b0_0          defaults
pycosat                      0.6.6            py314h5eee18b_2     defaults
pycparser                    3.0              py314h06a4308_0     defaults
pydantic                     2.13.4           py314h06a4308_0     defaults
pydantic-core                2.46.4           py314h6e1b9ff_0     defaults
pydantic-settings            2.14.2           py314h06a4308_0     defaults
pygments                     2.20.0           py314h06a4308_0     defaults
pyjwt                        2.13.0           py314h06a4308_0     defaults
pyproject_hooks              1.2.0            py314h06a4308_1     defaults
pysocks                      1.7.1            py314h06a4308_1     defaults
python                       3.14.6           h4bdf6f9_100_cp314  defaults
python-build                 1.3.0            py314h06a4308_1     defaults
python-dotenv                1.2.1            py314h06a4308_0     defaults
python-installer             1.0.0            pyhd3eb1b0_0        defaults
python-libarchive-c          5.1              pyhd3eb1b0_0        defaults
python_abi                   3.14             4_cp314             defaults
pyyaml                       6.0.3            py314h591646f_0     defaults
rattler-build                0.55.1           h300ab14_0          defaults
readchar                     4.2.2            py314h06a4308_0     defaults
readline                     8.3              hc2a1206_0          defaults
referencing                  0.37.0           py314h06a4308_0     defaults
reproc                       14.2.7           h7bdf020_0          defaults
reproc-cpp                   14.2.7           h7bdf020_0          defaults
requests                     2.34.2           py314h06a4308_0     defaults
rich                         15.0.0           py314h06a4308_0     defaults
rpds-py                      0.28.0           py314h498d7c9_0     defaults
ruamel.yaml                  0.18.16          py314h4aee224_0     defaults
ruamel.yaml.clib             0.2.14           py314h4aee224_0     defaults
secretstorage                3.5.0            py314h3e8c6aa_0     defaults
semver                       3.0.4            py314h06a4308_0     defaults
setuptools                   82.0.1           py314h06a4308_0     defaults
shellingham                  1.5.4            py314h06a4308_0     defaults
simdjson                     3.10.1           hdb19cb5_0          defaults
soupsieve                    2.8.4            py314h06a4308_0     defaults
sqlite                       3.53.2           h795bf6d_0          defaults
tk                           8.6.15           h54e0aa7_0          defaults
tomli                        2.4.0            py314h06a4308_0     defaults
tomli-w                      1.2.0            pyhd3eb1b0_0        defaults
tomlkit                      0.13.3           py314h06a4308_0     defaults
tqdm                         4.68.2           py314h6fa48dc_0     defaults
truststore                   0.10.4           py314h06a4308_0     defaults
typer                        0.25.1           py314h06a4308_0     defaults
typing-extensions            4.15.0           py314h06a4308_0     defaults
typing-inspection            0.4.2            py314h06a4308_0     defaults
typing_extensions            4.15.0           py314h06a4308_0     defaults
tzdata                       2026b            he532380_0          defaults
unearth                      0.18.2           py314h06a4308_0     defaults
urllib3                      2.7.0            py314h06a4308_0     defaults
wheel                        0.47.0           py314h06a4308_0     defaults
xorg-libx11                  1.8.12           h9b100fa_1          defaults
xorg-libxau                  1.0.12           h9b100fa_0          defaults
xorg-libxdmcp                1.1.5            h9b100fa_0          defaults
xorg-xorgproto               2024.1           h47b2149_2          defaults
xz                           5.8.2            h448239c_0          defaults
yaml                         0.2.5            h7b6447c_0          defaults
yaml-cpp                     0.9.0            he852c71_1          defaults
zlib                         1.3.2            h47b2149_0          defaults
zstandard                    0.25.0           py314h89db63a_0     defaults
zstd                         1.5.7            h11fc155_0          defaults

Additional Context

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

type::bugdescribes erroneous operation, use severity::* to classify the type

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions