Skip to main content

Another Config lib for python, basically load config/yaml/toml/... files and add some features like relative import and templating.

Project description

yaconfiglib

Another Configuration Parser library for python.

Goal was to not worry about the format and being able to load and merge multiple configs in different formats.

Currently implemented backends for toml, yaml as a starting point, really easy to add more.

Wanted the option to generate a config with jinja and then load the config from the generate template.

Wanted a function like hiera in puppet to reference values already declared in the document, and expanded it to support basic functions allowed in a single jinja {%do %} statement. While preserving the type of the produced value.

Wanted the ability to merge multiple configs into one with user configurable methods.

Wanted to load files from any arbitrary path that didnt need to be local filesystem path, but liked the api of pathlib.Path so ended up also writing another package: pathlib_next to extend pathlib to work with custom Path implementation like URI/SFTP/HTTP etc. WIP

Based on the following libraries

Heavily modified but based on the work of the following libraries. I was using them to load configs but had to modify them to fit my needs and ended up writing my own.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yaconfiglib-0.3.2.tar.gz (22.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yaconfiglib-0.3.2-py3-none-any.whl (26.4 kB view details)

Uploaded Python 3

File details

Details for the file yaconfiglib-0.3.2.tar.gz.

File metadata

  • Download URL: yaconfiglib-0.3.2.tar.gz
  • Upload date:
  • Size: 22.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for yaconfiglib-0.3.2.tar.gz
Algorithm Hash digest
SHA256 b02fc9805366790606a82714e8e85a9d6968da96959b78781c86a2f49098851d
MD5 20b92e9f23f1d372b3e741a00c9915fc
BLAKE2b-256 b83fc3c142169b9aa2f5db463632227706b33cc8014fc977bfe37c62578b14f7

See more details on using hashes here.

File details

Details for the file yaconfiglib-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: yaconfiglib-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 26.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for yaconfiglib-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 99e5321f4bc2418c44a735cce8ea34740845d3b5ad5b69a3ceaae518cd71db64
MD5 d14c70980471ff6cd15146a57edda4c5
BLAKE2b-256 b11e64129ad9c002f1f6ec3a1fdf54445bb09df04d32ad7b5432f29e782a911f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page