Skip to main content

configuration toolkit based on YAML

Project description

FORK from https://github.com/andreypopp/configure

ORGINAL AUTHOR Andrey Popp @andreypopp

YAML configuration library which provides:

  • interpolation for string configuration values

  • configuration inheritance

  • configuration composition

  • object level configuration (like construct this object by calling some function with some arguments)

Installation

$ pip install configure-fork

Changelog

0.6.1

  • Fix imports in newer Python versions. Thx @TheAbhijeet.

  • Added default value for environment variables resolvers (use ?= after variable name).

    config_field_1:!envvar MY_ENV_VAR_1?=1
    config_field_2: ENV:MY_ENV_VAR_2?="my value"
    config_field_3: ENV:MY_ENV_VAR_3?="with \"escaped\" chars \\"
  • Github Actions to check PR and publish packages.

  • Development version publishing.

  • Tests for bytesize and regex resolvers.

  • Refactor of directory resolver.

0.6.0

  • Added ENVVAR resolver in order to allow to use environment variables.

    config_field:!envvar PYTHON_PATH
  • Added implicit resover for ENVVAR resolver:

    config_field: ENV:PYTHON_PATH
  • Modified concat resolver to allow to use environment variables:

    config_field: ENV:HOME "/app/" ENV:OTHER_VAR var.in.python
  • Changed name in order to allow to publish on pypi

0.5.1

  • Python3 (Python2 no compatible any more).

  • Concatenate variables on configuration:

    config_field:!concat var.in.python "/relative/path"
  • Support for implicit resolvers from PyYaml.

  • Added concat implicit resolver:

    config_field: var.in.python "/relative/path"

0.5

  • constructors and multi constructors now can be registered via Configuration.add_constructor and Configuration.add_multi_constructor decorators

  • fix serious bug with factory and obj directives: previously they dropped away nested objects such as lists and/or mappings

  • configure_logging call now can be made inside config via !logging constructor

  • Configuration.configure() now called inside Configuration.{from_file,from_string,from_dict}() class methods, controlled via configure=True keyword argument

0.4.8

  • handle kwargs in factory directive

0.4.7

  • coerce filename to abs path

  • directory — check if it exists and create if not

  • interpolate config before YAML parsing

0.4.6

  • bytesize

0.4.5

  • bugfix release

0.4.4

  • add PyYAML to requirements

0.4.3

  • fix factories w/o args

0.4.2

  • fix configuration of values inside sequences (lists)

0.4.1

  • fix configure_logging formatters configuration

0.4

  • remove configure.module – it was a bad idea to synthesize new Python modules on a fly

0.3.4

  • added configure.module module which allows exposing configuration as synthesized Python module.

Development takes place at https://github.com/alfred82santa/configure

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

configure_fork-0.6.2-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file configure_fork-0.6.2-py3-none-any.whl.

File metadata

File hashes

Hashes for configure_fork-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 cd84acec539e006f9abda01af16fa6f59901acea6ab5fa06bae89e199e019ec3
MD5 4898aa2f3809ce9784547c4625467371
BLAKE2b-256 c5427237c134573b21a0b509642078ddb5d07b97ba86ff91ad7f0cf1939972c8

See more details on using hashes here.

Supported by

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