Size: 1195
Comment:
|
← Revision 6 as of 2025-05-22 07:18:42 ⇥
Size: 2110
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
== HOCON == | == HOCON (Human-Optimized Config Object Notation) == |
Line 3: | Line 3: |
* [[https://blog.ometer.com/2015/09/07/json-like-config-a-spectrum-of-underoverengineering/|Introduction]], with comparison to other formats | |
Line 6: | Line 7: |
* [[https://www.puppet.com/docs/pe/2019.8/config_files.html|Writing HOCON from Puppet's documentation]] * Parsing into dataclasses * pyhocon + pydantic: https://gist.github.com/martin1keogh/2817e338fb06ad3573cffcfb8e713ac7 * another pyhocon + pydantic: https://gist.github.com/GreyElaina/d851e9c9304085f7101d45725d378f68 * [[https://github.com/chimpler/pyhocon/|pyhocon]]: Provides CLI tool for conversion between formats * Dataclasses for configuration management * [[https://github.com/zifeo/dataconf|dataconf]]: HOCON output by default * [[https://github.com/stasharrofi/pytyped/tree/master/pytyped-hocon|pytyped-hocon]] |
|
Line 11: | Line 20: |
* [[https://doc.dovecot.org/2.4.1/core/settings/syntax.html|Dovecot config syntax]] |
HOCON (Human-Optimized Config Object Notation)
Introduction, with comparison to other formats
- Examples
- Parsing into dataclasses
pyhocon + pydantic: https://gist.github.com/martin1keogh/2817e338fb06ad3573cffcfb8e713ac7
another pyhocon + pydantic: https://gist.github.com/GreyElaina/d851e9c9304085f7101d45725d378f68
pyhocon: Provides CLI tool for conversion between formats
- Dataclasses for configuration management
dataconf: HOCON output by default
Others
- HConfig
- Dhall
HCL
TOML
YAML
crdoconnor/strictyaml: Type-safe parser and validator, subset of YAML 2.0
Hjson
ucl (Universal Configuration Language)
- Used by FreeBSD, very similar to nginx
- Seems best, similar to HOCON, but no modern Python package?
Install python bindings from libucl git repo: https://github.com/vstakhov/libucl/issues/202
nginx conf
crossplane-ng / [[https://github.com/nginxinc/crossplane|crossplane] parses nginx conf in Python