Create generic any easy way to manage Configs for your project
Project description
pip install cornflakes
pip install git+https://github.com/semmjon/cornflakes
Information
This package was created by starting C ++ methods to incorporate into my python implementations. To make things easier for me, lightweight public libraries were included (especially to carry out string operations):
hash-library
strtk
rapidjson
Features:
- The following features have currently been implemented:
- config management system
based on dataclass
alternative Implementation for pydantic (BaseSettings)
ini support files by a lightweight and fast parser (-> ini_load)
yaml support (based on PyYAML)
environment variables
(future) support json (based on orjson)
- command line interface management
method: click_cli (decorator)
based on click and rich
easy to use and start with
- eval_type
method to parse strings in python-types e.g. int | bool | timestamp
- simple_hmac
vectorized c++ hmac implementation
- default_ca_path
python function to find a default ssl / ca certificate path
Currently, the package is tested for Linux, Mac and Windows
Development
Prerequisites
A compiler with C++17 support
Pip 10+ or CMake >= 3.4 (or 3.8+ on Windows, which was the first version to support VS 2015)
Python 3.8+
doxygen
cppcheck
clang-tools-extra or clang-tidy
Commands
Just clone this repository and pip install. Note the --recursive option which is needed for the pybind11 submodule:
git clone --recursive https://gitlab.blubblub.tech/sgeist/cornflakes.git
Install the package using makefiles:
make install
Build dist using makefiles:
make dist
Run tests (pytest) using makefiles:
make test
Run all tests using makefiles:
make test-all
Run lint using makefiles:
make lint
Create dev venv:
python -m venv .venv
source .venv/bin/activate
pip install cookietemple ninja pre-commit poetry
Bump Version using cookietemple:
cookietemple bump-version "<version(e.g 0.0.1)>"
Run lint using cookietemple:
cookietemple lint .
Install pre-commit:
pre-commit install
Update pre-commit:
pre-commit update -a
Run pre-commit:
pre-commit run -a
Publish
Its not recommended publish manually (use git-ci or github workflows instead).
make publish
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 Distributions
Hashes for cornflakes-3.1.3-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd44e7d88fa7fa4f6ea6d0460947119809864f8ef469ba53169539679ec3ba2d |
|
MD5 | e87e75049ca4bde4523056efc5b73516 |
|
BLAKE2b-256 | f963564d46a735e197776282000509900425f1d25b0a6a8de8ac06153da9c04a |
Hashes for cornflakes-3.1.3-cp311-cp311-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8994b2005967a40b0f078af16acbdebfdb31d4ed521e81e4491b54ffdb317a0b |
|
MD5 | ef89175a4b0ce8808b969e6451173814 |
|
BLAKE2b-256 | 53cfb911f93e97134a336ddd7ffa2c11503d312ddb59f76628870fa0c1bba3ac |
Hashes for cornflakes-3.1.3-cp311-cp311-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 235060268242536297f9f85705e4bddc399b3b186880d15a254c76ced85c7868 |
|
MD5 | 470684e6554d736c373b8841aba8c6c7 |
|
BLAKE2b-256 | f05b3266291b99c05229d63d8337b498da3961fb32b5ffdfe82557fedc234b1d |
Hashes for cornflakes-3.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a07740e1a3c260599dae4c26b1c32f096d970d223f9a1c8d2f025ae5b8f924b7 |
|
MD5 | 8832ccd402ebc7150c73c4b3643e1981 |
|
BLAKE2b-256 | 4bcd03defd1f912c802712a0f0e8ed72a47cfa04f92f1058b0798fd51990648f |
Hashes for cornflakes-3.1.3-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 197f4321ab982fd1d18683703c4b50e84686c75b2dd697ba82a9807849f8c5c4 |
|
MD5 | e36ced0c2adc8cf3f506f12428c915fe |
|
BLAKE2b-256 | 07d3e93634944f622a674e7476828668ead7f049c98b0eb8d93d428264aef4b3 |
Hashes for cornflakes-3.1.3-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f5971061fe26546642ce89f10dbd72a36687bad0ae452a9d2188bb939d94ac5d |
|
MD5 | 4db7ce8cec5c2addcaed7b8e9d87e409 |
|
BLAKE2b-256 | 51da96fddf46bce3e2a0bcfd1f1a60ed62b57e46cc988a33f773771c86c77c94 |
Hashes for cornflakes-3.1.3-cp310-cp310-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8cb54450e5b07d0666c4850a99d19a4f56527ba96799fd24a5ccea141a835136 |
|
MD5 | 9f111cd6a17a872a71fb1b16595e4098 |
|
BLAKE2b-256 | e3a14350594bd14010026947602c01fc1f30701057faa6512121a3b4cd861da6 |
Hashes for cornflakes-3.1.3-cp310-cp310-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9f1851daee0ae7afcf7b7fb5f29569cd0e17e1c2618221a186f1fa2d853cfeba |
|
MD5 | 722f27d465748ecdb013cfd2d0ccb809 |
|
BLAKE2b-256 | 4f52eaddf47a892e01cddfe2aaec29d27d87292d72babf4ba0c7fdb6c3c2cba6 |
Hashes for cornflakes-3.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 68ef8f0efffc8c600679b76993f74145b23400de656445a776c68bd9c9a0ba61 |
|
MD5 | e3e9361c92d99a75bce10d4124a1b298 |
|
BLAKE2b-256 | 5c3c48a9db4825db1103bed1a38b3857edf0e22fa05de6af058b0715252ca3ac |
Hashes for cornflakes-3.1.3-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 12a8de6529de21ae77c040e54b35cbd11793b0a2a4a96faaac0beacdbbaf94c3 |
|
MD5 | c5898e9a2d3ff723aa8467e7f2047507 |
|
BLAKE2b-256 | 18f1ae331e5ef709c9af5d819658f6f372f82c44673c97c0569c2d047efa6cb8 |
Hashes for cornflakes-3.1.3-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1859e514b4470a91a3d7c120f87ab2d92d2dc280f1cf105efad352ba889c2be6 |
|
MD5 | d1161b7ee1d837c60a19c8f4d9480cf9 |
|
BLAKE2b-256 | d2bcd4e3414c26c68523d80a8e49e0fb926bc553b9959fbef922aaf991f1f161 |
Hashes for cornflakes-3.1.3-cp39-cp39-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dd1e0933d6ce764616eca39764822d8e61ca9488fe3148103eca0b983448ab4a |
|
MD5 | 8321fce76e674e184e2a27a4ab405604 |
|
BLAKE2b-256 | be57ae086078ed730a21cc8ba9bcb647677ca32ac15ae41e7a95772d6bf4cc92 |
Hashes for cornflakes-3.1.3-cp39-cp39-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3d408aa943497d8c3ca114b3ae4093956871a32a257a55d36fbd2b5c6df9d55d |
|
MD5 | 2b539f664103d478571e2d1ce6b6b1c8 |
|
BLAKE2b-256 | c7049f74e25eced35686bc7857b1f1cf83e9125f07fae99ac00c93f86cb3d4dd |
Hashes for cornflakes-3.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4727007d00ba71fa84e4de73fd52669b5106dc51c18742b228a048e427826d98 |
|
MD5 | 29e09812427dfb5dd6a93e82c0512945 |
|
BLAKE2b-256 | 3bb76135f96d6647c57b60310379651422450282badcd7e96f7e3168380b3924 |
Hashes for cornflakes-3.1.3-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | de2e9879c699f92300bfdd1c8f3640b408f38116d5d3a9ef79c18ad56b2eaed6 |
|
MD5 | 349269641a255a06ed91032fdae28dec |
|
BLAKE2b-256 | 782ff8f470642d876f108034c4c5aa7177c6146052dba95a982eeeeceecc6ae7 |
Hashes for cornflakes-3.1.3-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 00f15acba70ed43592b917508bc3a9cabdb19a251a9da0a002de56558029ad7f |
|
MD5 | 33146045eef2d9a5b796f269ac67830f |
|
BLAKE2b-256 | be264da26f8bb6965216ccfa4d4de837af65d5424f331883a729981f1901e7e0 |
Hashes for cornflakes-3.1.3-cp38-cp38-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3d41c590bf1ef27351a5fce57d8e7d7c0702ac3f35756289a02003ea80a2aa3b |
|
MD5 | 8d56327519f48f28792348c2191e3430 |
|
BLAKE2b-256 | 9500e6ec2e41055bd421131d847fe1c6caebed736336165b6d40fc9dc7491235 |
Hashes for cornflakes-3.1.3-cp38-cp38-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e010d0f4b7392d3a3d7a4e2883749616bf2f68caaed9fe4e9a6818e1f1d5d001 |
|
MD5 | 4053996b612d6492137e9c74d3707cd0 |
|
BLAKE2b-256 | 30e0d6bfd02d38472d6d4ab47b4bcf445f54ba3f1afdb47db7d0e54d68aeeaf5 |
Hashes for cornflakes-3.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1105f96f710acd0ba1ac5d05d858eae70c8f8de417ff36b98f510399d2da214 |
|
MD5 | 470474bc74f51b1090ea16bbe91ec0f4 |
|
BLAKE2b-256 | 83db9ad762a8d87fd980935bcd09feecaeb6306e104852a9f19bada81e0ca68f |
Hashes for cornflakes-3.1.3-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3cb3ccb3b471b86ead7cc47edbf27d11f083845118ca24a39be59225b8e06360 |
|
MD5 | 28116cb7e72ae3a1612296a96108bb8c |
|
BLAKE2b-256 | 0c79b8f0d0521d10937ca621e800edacdaef2d89b2a28270885d5994fb1a514b |