Skip to content
Latchkey

pip "--config-settings" Ignored or Rejected by Build Backend

--config-settings KEY=VALUE forwards a build-time option to the PEP 517 backend. If pip is too old to support the flag, the key name is wrong, or the backend ignores unknown keys, your setting silently does nothing - or pip rejects it.

What this error means

A build proceeds but your --config-settings had no effect (e.g. an editable mode flag is ignored), or pip errors that the option is unknown. Often seen passing setuptools editable strategy or a backend-specific flag.

pip output
pip install -e . --config-settings editable_mode=strict
# ...but the install is not strict - the backend ignored the key, or:
Usage: pip install [options] ...
no such option: --config-settings

Common causes

pip too old for --config-settings

--config-settings replaced the legacy --global-option/--install-option and needs a reasonably modern pip. An older pip rejects the flag outright.

Wrong key or a backend that ignores it

Each backend reads its own keys (setuptools editable_mode, others use namespaced keys). A misspelled or unsupported key is silently dropped by the backend.

How to fix it

Upgrade pip and use the documented key

Update pip, then pass the exact key your backend documents.

Terminal
python -m pip install --upgrade pip
# setuptools strict editable install
pip install -e . --config-settings editable_mode=strict

Verify the backend honored it

  1. Run pip install -v and look for the backend echoing the config setting.
  2. Check the backend’s docs for the precise key name and accepted values.
  3. Replace any legacy --global-option/--install-option with --config-settings.

How to prevent it

  • Keep pip current so --config-settings is available.
  • Use the exact backend-documented key; do not guess.
  • Verify with -v that the setting reached the backend.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →