Spock is a framework designed to help manage complex parameter configurations for Python applications
Project description
Managing complex configurations any other way would be highly illogical...
About
spock
is a framework that helps manage complex parameter configurations during research and development of Python
applications. spock
let's you focus on the code you need to write instead of re-implementing boilerplate code like
creating ArgParsers, reading configuration files, implementing traceability etc.
In short, spock
configurations are defined by simple and familiar class-based structures. This allows spock
to
support inheritance, read from multiple markdown formats, and allow hierarchical configuration by composition.
Quick Install
Supports Python 3.6+
pip install spock-config
Documentation
Current documentation and more information can be found here.
Example spock
usage is located here.
Key Features
- Simple Declaration: Type checked parameters are defined within a
@spock
decorated class. Supports required/optional and automatic defaults. - Easily Managed Parameter Groups: Each class automatically generates its own object within a single namespace.
- Parameter Inheritance: Classes support inheritance allowing for complex configurations derived from a common base set of parameters.
- Multiple Configuration File Types: Configurations are specified from YAML, TOML, or JSON files.
- Hierarchical Configuration: Composed from multiple configuration files via simple include statements.
- Command-Line Overrides: Quickly experiment by overriding a value with automatically generated command line arguments
- Immutable: All classes are frozen preventing any misuse or accidental overwrites.
- Tractability and Reproducibility: Save currently running parameter configuration with a single chained command.
Main Contributors
Nicholas Cilfone, Siddharth Narayanan
spock
is developed and maintained by the Artificial Intelligence Center of Excellence at Fidelity Investments.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for spock_config-1.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccb7d1d98c047ab714d3c549026f65d5da608e1ca629b9a0ca85eb4fb447f9fa |
|
MD5 | b0f911e6f0c91723269e0928c480282b |
|
BLAKE2b-256 | cf9944a8a9ff96975c104820043e34007a6741d03d77d38024d1fa2ed2a7d050 |