TOML (Tom's Obvious Minimal Language)
TOML est un format de fichier de configuration conçu pour la clarté et la simplicité. Il se mappe de manière non ambiguë vers une table de hachage et est facile à lire et écrire pour les humains. TOML est le format standard pour le Cargo.toml de Rust et le pyproject.toml de Python.
Type MIME
application/toml
Type
Texte
Compression
Sans perte
Avantages
- + Unambiguous — no implicit type coercion unlike YAML
- + Native datetime support without quoting
- + Simple, flat structure that maps directly to hash tables
- + Standard in Rust and Python ecosystems
Inconvénients
- − Deeply nested data structures become verbose
- − Less widespread tool support compared to JSON and YAML
- − No standard way to represent null values
Quand utiliser .TOML
Utilisez TOML pour les fichiers de configuration — en particulier dans les écosystèmes Rust (Cargo.toml) et Python (pyproject.toml). Idéal quand le parsing non ambigu est important.
Détails techniques
TOML utilise des paires clé-valeur, des tables (sections entre crochets), des tableaux de tables (doubles crochets) et des valeurs nativement typées incluant datetime, entiers, flottants, booléens et chaînes. L'indentation n'est pas significative.
Historique
Tom Preston-Werner (cofondateur de GitHub) a créé TOML en 2013 comme alternative minimale à YAML et JSON pour les fichiers de configuration. TOML 1.0 a été publié en janvier 2021 après d'importants retours de la communauté.