maturin
Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages
maturin.toml
Validate
Check your file against this schema
Opens the validator with this schema already loaded. Paste your
maturin.toml and it validates in your browser — nothing is uploaded.
Reference
Fields
Generated directly from the schema, following local
$refs, to two levels of nesting.
| Field | Type | Description |
|---|---|---|
all-features | boolean | null | Activate all available features |
auditwheel | anyOf | Audit wheel mode |
bindings | string | null | Bindings type |
compatibility | anyOf | Platform compatibility |
config | array | null | Override a configuration value (unstable) |
data | string | null | Path to the wheel directory, defaults to `<module_name>.data` |
editable-profile | string | null | Same as `profile` but for "editable" builds |
exclude | array | null | Exclude files matching the given glob pattern(s). Patterns are resolved relative to the directory containing `pyproject.toml`. |
features | array | null | List of features to activate. Each entry can be a plain feature name string, or a conditional object with `feature` and `python-version` keys. |
frozen | boolean | null | Require Cargo.lock and cache are up to date |
generate-ci | anyOf | CI generation configuration |
include | array | null | Include files matching the given glob pattern(s). Patterns are resolved relative to the directory containing `pyproject.toml`. When `python-source` is configured, patterns are also tried relative to that directory if no matches are found. |
include-import-lib | boolean | Include the import library (.dll.lib) in the wheel on Windows default: false |
locked | boolean | null | Require Cargo.lock is up to date |
manifest-path | string | null | Path to Cargo.toml |
module-name | string | null | Module name, accepts setuptools style import name like `foo.bar` |
no-default-features | boolean | null | Do not activate the `default` feature |
profile | string | null | Build artifacts with the specified Cargo profile |
python-packages | array | null | Python packages to include |
python-source | string | null | The directory with python module, contains `<module_name>/__init__.py` |
rustc-args | array | null | Additional rustc arguments |
sbom | anyOf | SBOM configuration |
sdist-generator | oneOf | Source distribution generator |
skip-auditwheel | boolean | Skip audit wheel default: false |
strip | boolean | Strip the final binary default: false |
target | object | Target configuration default: {} |
targets | array | null | Cargo compile targets |
unstable-flags | array | null | Unstable (nightly-only) flags to Cargo, see 'cargo -Z help' for details |
use-base-python | boolean | Use base Python executable instead of venv Python executable in PEP 517 build. default: false |
Audit
What we found in this schema
- Declared draft: draft-07
- Validates cleanly against its own meta-schema.
- Has 1 place(s) where keywords sit beside
$ref. Under draft-07 those keywords are silently ignored by every conforming validator — first at#/properties/sdist-generator. - 80 properties, 97% carrying a description, max nesting depth 9.
Standards
Specification sections for the keywords in this schema
| Keyword | Document | Section |
|---|---|---|
$defs | JSON Schema Core, draft 2020-12 | §8.2.4 — Schema Re-Use With "$defs" |
$id | JSON Schema Core, draft 2020-12 | §8.2.1 — The "$id" Keyword |
$ref | JSON Schema Core, draft 2020-12 | §8.2.3.1 — Direct References with "$ref" |
$schema | JSON Schema Core, draft 2020-12 | §8.1.1 — "$schema" |
additionalProperties | JSON Schema Core, draft 2020-12 | §10.3.2.3 — "additionalProperties" |
anyOf | JSON Schema Core, draft 2020-12 | §10.2.1.2 — "anyOf" |
const | JSON Schema Validation, draft 2020-12 | §6.1.3 — "const" |
default | JSON Schema Validation, draft 2020-12 | §9.2 — "default" |
description | JSON Schema Validation, draft 2020-12 | §9.1 — "title" and "description" |
format | JSON Schema Validation, draft 2020-12 | §7 — Vocabularies for Semantic Content With "format" |
items | JSON Schema Core, draft 2020-12 | §10.3.1.2 — "items" |
maximum | JSON Schema Validation, draft 2020-12 | §6.2.2 — "maximum" |
minimum | JSON Schema Validation, draft 2020-12 | §6.2.4 — "minimum" |
oneOf | JSON Schema Core, draft 2020-12 | §10.2.1.3 — "oneOf" |
properties | JSON Schema Core, draft 2020-12 | §10.3.2.1 — "properties" |
required | JSON Schema Validation, draft 2020-12 | §6.5.3 — "required" |
type | JSON Schema Validation, draft 2020-12 | §6.1.1 — "type" |
Documents
- JSON Schema Core, draft 2020-12 — JSON Schema: A Media Type for Describing JSON Documents, A. Wright, H. Andrews, B. Hutton, G. Dennis, Eds., 2022. draft-bhutton-json-schema-01. An expired Internet-Draft with no formal standing in the IETF standards process; it is nonetheless the specification of record for JSON Schema 2020-12, published by json-schema.org.
- JSON Schema Validation, draft 2020-12 — JSON Schema Validation: A Vocabulary for Structural Validation of JSON, A. Wright, H. Andrews, B. Hutton, Eds., 2022.
- RFC 8259 (STD 90) — The JavaScript Object Notation (JSON) Data Interchange Format, T. Bray, Ed., 2017. The format a schema describes.
- RFC 6901 — JavaScript Object Notation (JSON) Pointer. Defines the pointer syntax used by $ref fragments and the ~0 / ~1 escapes.
Source
Attribution
This schema comes from SchemaStore, distributed under the Apache License 2.0. Copyright 2015–present Mads Kristensen and contributors. View the original file. The field table and audit on this page are generated by JSONTools.tools; the schema itself is unmodified.