{ "$schema": "http://json-schema.org/draft-07/schema", "$id": "https://github.com/pypa/cibuildwheel/blob/main/cibuildwheel/resources/cibuildwheel.schema.json", "$defs": { "inherit": { "enum": [ "none", "prepend", "append" ], "default": "none", "description": "How to inherit the parent's value." }, "enable": { "enum": [ "cpython-freethreading", "cpython-prerelease", "pypy" ] }, "description": "A Python version or flavor to enable." }, "additionalProperties": false, "description": "cibuildwheel's settings.", "type": "object", "properties": { "archs": { "description": "Change the architectures built on your machine by default.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_ARCHS" }, "before-all": { "description": "Execute a shell command on the build system before any wheels are built.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_BEFORE_ALL" }, "before-build": { "description": "Execute a shell command preparing each wheel's build.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_BEFORE_BUILD" }, "before-test": { "description": "Execute a shell command before testing each wheel.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_BEFORE_TEST" }, "build": { "default": [ "*" ], "description": "Choose the Python versions to build.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_BUILD" }, "build-frontend": { "default": "default", "description": "Set the tool to use to build, either \"pip\" (default for now), \"build\", or \"build[uv]\"", "oneOf": [ { "enum": [ "pip", "build", "build[uv]", "default" ] }, { "type": "string", "pattern": "^pip; ?args:" }, { "type": "string", "pattern": "^build; ?args:" }, { "type": "string", "pattern": "^build\\[uv\\]; ?args:" }, { "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "name": { "enum": [ "pip", "build", "build[uv]" ] }, "args": { "type": "array", "items": { "type": "string" } } } } ], "title": "CIBW_BUILD_FRONTEND" }, "build-verbosity": { "type": "integer", "minimum": -3, "maximum": 3, "default": 0, "description": "Increase/decrease the output of pip wheel.", "title": "CIBW_BUILD_VERBOSITY" }, "config-settings": { "description": "Specify config-settings for the build backend.", "oneOf": [ { "type": "string" }, { "type": "object", "additionalProperties": false, "patternProperties": { ".+": { "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ] } } } ], "title": "CIBW_CONFIG_SETTINGS" }, "container-engine": { "oneOf": [ { "enum": [ "docker", "podman" ] }, { "type": "string", "pattern": "^docker; ?(create_args|disable_host_mount):" }, { "type": "string", "pattern": "^podman; ?(create_args|disable_host_mount):" }, { "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "name": { "enum": [ "docker", "podman" ] }, "create-args": { "type": "array", "items": { "type": "string" } }, "disable-host-mount": { "type": "boolean" } } } ], "title": "CIBW_CONTAINER_ENGINE" }, "dependency-versions": { "default": "pinned", "description": "Specify how cibuildwheel controls the versions of the tools it uses", "oneOf": [ { "enum": [ "pinned", "latest" ] }, { "type": "string", "description": "Path to a file containing dependency versions, or inline package specifications, starting with \"packages:\"", "not": { "enum": [ "pinned", "latest" ] } }, { "type": "object", "additionalProperties": false, "properties": { "file": { "type": "string" } } }, { "type": "object", "additionalProperties": false, "properties": { "packages": { "type": "array", "items": { "type": "string" } } } } ], "title": "CIBW_DEPENDENCY_VERSIONS" }, "enable": { "description": "Enable or disable certain builds.", "oneOf": [ { "$ref": "#/$defs/enable" }, { "type": "array", "items": { "$ref": "#/$defs/enable" } } ], "title": "CIBW_ENABLE" }, "environment": { "description": "Set environment variables needed during the build.", "oneOf": [ { "type": "string" }, { "type": "object", "additionalProperties": false, "patternProperties": { ".+": { "type": "string" } } } ], "title": "CIBW_ENVIRONMENT" }, "environment-pass": { "description": "Set environment variables on the host to pass-through to the container during the build.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_ENVIRONMENT_PASS" }, "manylinux-aarch64-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MANYLINUX_AARCH64_IMAGE" }, "manylinux-armv7l-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MANYLINUX_ARMV7L_IMAGE" }, "manylinux-i686-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MANYLINUX_I686_IMAGE" }, "manylinux-ppc64le-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MANYLINUX_PPC64LE_IMAGE" }, "manylinux-pypy_aarch64-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MANYLINUX_PYPY_AARCH64_IMAGE" }, "manylinux-pypy_i686-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MANYLINUX_PYPY_I686_IMAGE" }, "manylinux-pypy_x86_64-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MANYLINUX_PYPY_X86_64_IMAGE" }, "manylinux-s390x-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MANYLINUX_S390X_IMAGE" }, "manylinux-x86_64-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MANYLINUX_X86_64_IMAGE" }, "musllinux-aarch64-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MUSLLINUX_AARCH64_IMAGE" }, "musllinux-armv7l-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MUSLLINUX_ARMV7L_IMAGE" }, "musllinux-i686-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MUSLLINUX_I686_IMAGE" }, "musllinux-ppc64le-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MUSLLINUX_PPC64LE_IMAGE" }, "musllinux-s390x-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MUSLLINUX_S390X_IMAGE" }, "musllinux-x86_64-image": { "type": "string", "description": "Specify alternative manylinux / musllinux container images", "title": "CIBW_MUSLLINUX_X86_64_IMAGE" }, "repair-wheel-command": { "description": "Execute a shell command to repair each built wheel.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_REPAIR_WHEEL_COMMAND" }, "skip": { "description": "Choose the Python versions to skip.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_SKIP" }, "test-command": { "description": "Execute a shell command to test each built wheel.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_TEST_COMMAND" }, "test-extras": { "description": "Install your wheel for testing using `extras_require`", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_TEST_EXTRAS" }, "test-sources": { "description": "Test files that are required by the test environment", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_TEST_SOURCES" }, "test-groups": { "description": "Install extra groups when testing", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_TEST_GROUPS" }, "test-requires": { "description": "Install Python dependencies before running the tests", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_TEST_REQUIRES" }, "test-skip": { "description": "Skip running tests on some builds.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_TEST_SKIP" }, "overrides": { "type": "array", "description": "An overrides array", "items": { "type": "object", "required": [ "select" ], "minProperties": 2, "additionalProperties": false, "properties": { "select": { "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ] }, "inherit": { "type": "object", "additionalProperties": false, "properties": { "before-all": { "$ref": "#/$defs/inherit" }, "before-build": { "$ref": "#/$defs/inherit" }, "before-test": { "$ref": "#/$defs/inherit" }, "config-settings": { "$ref": "#/$defs/inherit" }, "container-engine": { "$ref": "#/$defs/inherit" }, "environment": { "$ref": "#/$defs/inherit" }, "environment-pass": { "$ref": "#/$defs/inherit" }, "repair-wheel-command": { "$ref": "#/$defs/inherit" }, "test-command": { "$ref": "#/$defs/inherit" }, "test-extras": { "$ref": "#/$defs/inherit" }, "test-sources": { "$ref": "#/$defs/inherit" }, "test-requires": { "$ref": "#/$defs/inherit" } } }, "before-all": { "$ref": "#/properties/before-all" }, "before-build": { "$ref": "#/properties/before-build" }, "before-test": { "$ref": "#/properties/before-test" }, "build-frontend": { "$ref": "#/properties/build-frontend" }, "build-verbosity": { "$ref": "#/properties/build-verbosity" }, "config-settings": { "$ref": "#/properties/config-settings" }, "container-engine": { "$ref": "#/properties/container-engine" }, "dependency-versions": { "$ref": "#/properties/dependency-versions" }, "environment": { "$ref": "#/properties/environment" }, "environment-pass": { "$ref": "#/properties/environment-pass" }, "manylinux-aarch64-image": { "$ref": "#/properties/manylinux-aarch64-image" }, "manylinux-armv7l-image": { "$ref": "#/properties/manylinux-armv7l-image" }, "manylinux-i686-image": { "$ref": "#/properties/manylinux-i686-image" }, "manylinux-ppc64le-image": { "$ref": "#/properties/manylinux-ppc64le-image" }, "manylinux-pypy_aarch64-image": { "$ref": "#/properties/manylinux-pypy_aarch64-image" }, "manylinux-pypy_i686-image": { "$ref": "#/properties/manylinux-pypy_i686-image" }, "manylinux-pypy_x86_64-image": { "$ref": "#/properties/manylinux-pypy_x86_64-image" }, "manylinux-s390x-image": { "$ref": "#/properties/manylinux-s390x-image" }, "manylinux-x86_64-image": { "$ref": "#/properties/manylinux-x86_64-image" }, "musllinux-aarch64-image": { "$ref": "#/properties/musllinux-aarch64-image" }, "musllinux-armv7l-image": { "$ref": "#/properties/musllinux-armv7l-image" }, "musllinux-i686-image": { "$ref": "#/properties/musllinux-i686-image" }, "musllinux-ppc64le-image": { "$ref": "#/properties/musllinux-ppc64le-image" }, "musllinux-s390x-image": { "$ref": "#/properties/musllinux-s390x-image" }, "musllinux-x86_64-image": { "$ref": "#/properties/musllinux-x86_64-image" }, "repair-wheel-command": { "$ref": "#/properties/repair-wheel-command" }, "test-command": { "$ref": "#/properties/test-command" }, "test-extras": { "$ref": "#/properties/test-extras" }, "test-sources": { "$ref": "#/properties/test-sources" }, "test-groups": { "$ref": "#/properties/test-groups" }, "test-requires": { "$ref": "#/properties/test-requires" } } } }, "linux": { "type": "object", "additionalProperties": false, "properties": { "archs": { "$ref": "#/properties/archs" }, "before-all": { "$ref": "#/properties/before-all" }, "before-build": { "$ref": "#/properties/before-build" }, "before-test": { "$ref": "#/properties/before-test" }, "build-frontend": { "$ref": "#/properties/build-frontend" }, "build-verbosity": { "$ref": "#/properties/build-verbosity" }, "config-settings": { "$ref": "#/properties/config-settings" }, "container-engine": { "$ref": "#/properties/container-engine" }, "environment": { "$ref": "#/properties/environment" }, "environment-pass": { "$ref": "#/properties/environment-pass" }, "manylinux-aarch64-image": { "$ref": "#/properties/manylinux-aarch64-image" }, "manylinux-armv7l-image": { "$ref": "#/properties/manylinux-armv7l-image" }, "manylinux-i686-image": { "$ref": "#/properties/manylinux-i686-image" }, "manylinux-ppc64le-image": { "$ref": "#/properties/manylinux-ppc64le-image" }, "manylinux-pypy_aarch64-image": { "$ref": "#/properties/manylinux-pypy_aarch64-image" }, "manylinux-pypy_i686-image": { "$ref": "#/properties/manylinux-pypy_i686-image" }, "manylinux-pypy_x86_64-image": { "$ref": "#/properties/manylinux-pypy_x86_64-image" }, "manylinux-s390x-image": { "$ref": "#/properties/manylinux-s390x-image" }, "manylinux-x86_64-image": { "$ref": "#/properties/manylinux-x86_64-image" }, "musllinux-aarch64-image": { "$ref": "#/properties/musllinux-aarch64-image" }, "musllinux-armv7l-image": { "$ref": "#/properties/musllinux-armv7l-image" }, "musllinux-i686-image": { "$ref": "#/properties/musllinux-i686-image" }, "musllinux-ppc64le-image": { "$ref": "#/properties/musllinux-ppc64le-image" }, "musllinux-s390x-image": { "$ref": "#/properties/musllinux-s390x-image" }, "musllinux-x86_64-image": { "$ref": "#/properties/musllinux-x86_64-image" }, "repair-wheel-command": { "description": "Execute a shell command to repair each built wheel.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_REPAIR_WHEEL_COMMAND", "default": "auditwheel repair -w {dest_dir} {wheel}" }, "test-command": { "$ref": "#/properties/test-command" }, "test-extras": { "$ref": "#/properties/test-extras" }, "test-sources": { "$ref": "#/properties/test-sources" }, "test-groups": { "$ref": "#/properties/test-groups" }, "test-requires": { "$ref": "#/properties/test-requires" } } }, "windows": { "type": "object", "additionalProperties": false, "properties": { "archs": { "$ref": "#/properties/archs" }, "before-all": { "$ref": "#/properties/before-all" }, "before-build": { "$ref": "#/properties/before-build" }, "before-test": { "$ref": "#/properties/before-test" }, "build-frontend": { "$ref": "#/properties/build-frontend" }, "build-verbosity": { "$ref": "#/properties/build-verbosity" }, "config-settings": { "$ref": "#/properties/config-settings" }, "dependency-versions": { "$ref": "#/properties/dependency-versions" }, "environment": { "$ref": "#/properties/environment" }, "repair-wheel-command": { "$ref": "#/properties/repair-wheel-command" }, "test-command": { "$ref": "#/properties/test-command" }, "test-extras": { "$ref": "#/properties/test-extras" }, "test-sources": { "$ref": "#/properties/test-sources" }, "test-groups": { "$ref": "#/properties/test-groups" }, "test-requires": { "$ref": "#/properties/test-requires" } } }, "macos": { "type": "object", "additionalProperties": false, "properties": { "archs": { "$ref": "#/properties/archs" }, "before-all": { "$ref": "#/properties/before-all" }, "before-build": { "$ref": "#/properties/before-build" }, "before-test": { "$ref": "#/properties/before-test" }, "build-frontend": { "$ref": "#/properties/build-frontend" }, "build-verbosity": { "$ref": "#/properties/build-verbosity" }, "config-settings": { "$ref": "#/properties/config-settings" }, "dependency-versions": { "$ref": "#/properties/dependency-versions" }, "environment": { "$ref": "#/properties/environment" }, "repair-wheel-command": { "description": "Execute a shell command to repair each built wheel.", "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "title": "CIBW_REPAIR_WHEEL_COMMAND", "default": "delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}" }, "test-command": { "$ref": "#/properties/test-command" }, "test-extras": { "$ref": "#/properties/test-extras" }, "test-sources": { "$ref": "#/properties/test-sources" }, "test-groups": { "$ref": "#/properties/test-groups" }, "test-requires": { "$ref": "#/properties/test-requires" } } }, "pyodide": { "type": "object", "additionalProperties": false, "properties": { "archs": { "$ref": "#/properties/archs" }, "before-all": { "$ref": "#/properties/before-all" }, "before-build": { "$ref": "#/properties/before-build" }, "before-test": { "$ref": "#/properties/before-test" }, "build-frontend": { "$ref": "#/properties/build-frontend" }, "build-verbosity": { "$ref": "#/properties/build-verbosity" }, "config-settings": { "$ref": "#/properties/config-settings" }, "dependency-versions": { "$ref": "#/properties/dependency-versions" }, "environment": { "$ref": "#/properties/environment" }, "repair-wheel-command": { "$ref": "#/properties/repair-wheel-command" }, "test-command": { "$ref": "#/properties/test-command" }, "test-extras": { "$ref": "#/properties/test-extras" }, "test-sources": { "$ref": "#/properties/test-sources" }, "test-groups": { "$ref": "#/properties/test-groups" }, "test-requires": { "$ref": "#/properties/test-requires" } } } } }