Releases: fidelity/spock
Spock v2.0.0
Spock v2.0.0 Release Notes
- About
- Key Improvements
- Backwards Incompatible Changes
About
The Spock v2.0.0 release consists mainly of the removal of the legacy API and backend which streamlines code and makes new feature support much easier. Includes a few bugfixes and changes.
Key Improvements
Major Changes
- Dropped dataclasses backend and attrs shim for legacy typed args (#37)
Minor Changes
- Fixed Tuples to be length enforced unlike lists (#37)
- Updated markdown save call to support advanced types so that saved configurations are again valid
spock
config input files (#37) - Additional information added to extra info (git commit date, machine fqdn, python exec path, python version, python script, run in/as Docker container or k8s) -- should help with reproducibility (#37)
- Fixed bug that didn't recurse parent dirs to find git info (#37)
- Updated versioneer which now gets correct tags for the spock version (#37)
Backwards Incompatible Changes
v2.0.0 does not include legacy API and backend support. We recommend refactoring your code to the new API and backend as legacy versions will be missing recent features, bugfixes, and hotfixes.
Spock v1.2.1
Config Print Fix removed aliases in YAML dump which prevented the overloaded __repr__ class from printing pretty. Same change to the YAML save handler on file write (#34) Signed-off-by: Nicholas Cilfone <[email protected]>
Spock v1.2.0
Spock v1.2.0 Release Notes
- About
- Key Improvements
- Backwards Incompatible Changes
About
The Spock v1.2.0 release consists mainly of issue resolves plus one additional feature.
Key Improvements
Advanced Types
Others
- Checks for circular dependencies in composed config files (#23)
- Added unit tests for building against Python 3.9 (#26)
- Pickle support for dynamically created spock classes (#25)
Backwards Incompatible Changes
None!
Spock v1.1.2
Changes
Bugfixes
Fixed issue with tuple conversion causing dictionary overwrites with local parameter definitions.
Spock v1.1.1
Hotfix that fixes requirements error that was pulling in the wrong package.
Spock v1.1.0
Spock v1.1.0 Release Notes
- About
- Key Improvements
- Backwards Incompatible Changes
About
The Spock v1.1.0 release consists mainly of a backend overhaul to allow for Python 3.6 support. Dataclasses were phased out and its functionality was replaced using the attr library. This makes managing the code base moving forward much easier as the attr library provides a cleaner backend for most of the custom work using dataclass that spock
was handling. In addition, it allowed for a cleaner API for static type definitions which is now the suggested interface. v1.1.0 maintains full backwards compatibility with the old dataclass API interface. Full merge (#15)
Key Improvements
Python 3.6 Support
- Switched backend from dataclasses to attr (#10)
- Phased out dataclass backend with API adapter for backwards compatibility(#11)
New Typing API
- Simplified API with addition of the new attr backend (#10)
Command Line Overrides
- Added the ability to command line override parameter values from configuration files(#12)
Others
- Documentation updates and code style cleanup (#14)
Backwards Incompatible Changes
None!
Spock v1.0
About
Initial open-source release with support for distribution via PyPi.
Key Features
- Simple Declaration: Parameters are defined within a
@spock_config
decorated class. Supports types, 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.
- Immutable: All classes are frozen preventing any misuse or accidental overwrites.
- Tractability and Reproducibility: Save currently running parameter configuration with a single chained command.
Initial Commit
Initial open-source release of spock