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.9-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b4614d1507623823693c0b52220d8283e302b643121a83a82b78030b1d28cffb |
|
MD5 | 54cd70974b4c4e40dbfc0bb0467280ce |
|
BLAKE2b-256 | 1c1e4f00c11872a44ba4bb9d25f0c462594a27ec4f7b056bc6ab9f2637d2eb8d |
Hashes for cornflakes-3.1.9-cp311-cp311-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 10a875dfd3cb91ea2e832d2d144c5994510e459440925f281fb609f32b071c73 |
|
MD5 | 1123e7cd4ae82d1ec5e844e8a6f7a050 |
|
BLAKE2b-256 | 3b1262cc3b10134c9f06c4efa943a1d50f865f67a604ee3ae9aa825a8ed5e89f |
Hashes for cornflakes-3.1.9-cp311-cp311-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bc2aa8781c19f0e65cde9989cb01ceaad047a53b84e7edc1da1f17112cf014ed |
|
MD5 | ecd45ed1fa237041e7d6f4099a055e82 |
|
BLAKE2b-256 | d4fe4773aac77af3b27980d8f8e5f12d4e6e7b39f7c509fd9a4e50c6e1a2035a |
Hashes for cornflakes-3.1.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c6164732f886fb40e352294fa6105d8bd50347b4258237aede63df0fc365178a |
|
MD5 | d3c737f6f8a1e75d143dbebc765839f3 |
|
BLAKE2b-256 | 443c45842bcef25d0fae7f759773f27ce56466e0f414b5de720d648685fb8649 |
Hashes for cornflakes-3.1.9-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58c60e5a0663fc81ef4c18534b9d5d37dcef62a5e2c3955b79d35d91637c874b |
|
MD5 | 66329992f70e1acbf0203820e4676a71 |
|
BLAKE2b-256 | 0ed8ea3c46fd0c6e54277e2fa6b2ac6366b074489619bd97431948701c73e706 |
Hashes for cornflakes-3.1.9-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 59556c73f4194690a9ff03f9739fda88b1ae843b4b45ea166ec91e70a96719e2 |
|
MD5 | 4c12c199988cc8e2dfa62a9e8adbe157 |
|
BLAKE2b-256 | 679814c782476eedcc6928af05ead69eb9a9305b3d2d9228f5bde283e68132e8 |
Hashes for cornflakes-3.1.9-cp310-cp310-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7929d3418b2b8b639d2b4fa5a1e8568c564b5437621af1436a443218fc79a302 |
|
MD5 | b79f7ee6547d7db678166d534404be01 |
|
BLAKE2b-256 | 9585d99091c8524b6bf2ea63b91e63cd000f7b141ea0e0d2cf2e785b472731fe |
Hashes for cornflakes-3.1.9-cp310-cp310-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cefaa63cd6d8c06f4d4a874f34ddf2181044dcaf1e15295b9c0545d65b2f4c19 |
|
MD5 | e1ee5aae0ec404acb2fc461234dbcc09 |
|
BLAKE2b-256 | ac9bdc46f3e4e367cf6ed6f004f74ee8949050d243ac5661b81b18ad86f5aabe |
Hashes for cornflakes-3.1.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2d936ea851c53afe756cfff03140cd6ab353364044ec4d44897518dbd2a48098 |
|
MD5 | d97dccdb943ded86349b4f01330b5e7a |
|
BLAKE2b-256 | 5b412b05b7d2e170b3fe206ed60d57390eee705d5bc8394e3d8e39e995f41493 |
Hashes for cornflakes-3.1.9-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c159194d29c2afd3381af1155acaecd6f9dc1b1e786d7482eb014f14a8fd336a |
|
MD5 | 38f0e34d7df7a3e478c8619711a5679a |
|
BLAKE2b-256 | a29ce1c71661d42f855dac22861001736e8f483c26d74ca6a99585ba75de5b17 |
Hashes for cornflakes-3.1.9-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d9d9f1c793b8bc06b94adb06e5c8c6dfd8c7900a98043635a01c7b805efd7356 |
|
MD5 | d535e15ad16734e47f26dd915ac743e2 |
|
BLAKE2b-256 | 21a83ee0a58484be4b46955a4298cfb1b44c4ef6e121d2ddff11af3176c0dfb9 |
Hashes for cornflakes-3.1.9-cp39-cp39-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 82d246d2bd46072eab76d3825f785421c8eadb8a4edbb6ca02e56e15a024a6fd |
|
MD5 | a9ea65d7300e981da64c315d850c29c9 |
|
BLAKE2b-256 | 6bb7509a0ad5677154034ed520c26d1a216e47f58d06bca4007456b42d241bb1 |
Hashes for cornflakes-3.1.9-cp39-cp39-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | edee1532ac76ba4a928bd21a631f1c71c1de7cd84ab67569d75bf2b4ea66b6a5 |
|
MD5 | 187c942f3759219eff678073305608d4 |
|
BLAKE2b-256 | fd19e3a5f2a7a05cc5d5637858dda8f64eb07892308f714fa912b2e79f125c83 |
Hashes for cornflakes-3.1.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0196bcc2f28bb2a989b5cf2795a36df75606d18da24942ba51ad931a6c16d288 |
|
MD5 | 208f152899f370a857fa0449fb04dae9 |
|
BLAKE2b-256 | 2dabaf818035b29a23d779146d0846bca2f0430a06a6d363b3b5ff9b10217c1d |
Hashes for cornflakes-3.1.9-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 160cd93bfc03994d820cea1f157e988ca9fae200702657730292e6c28fecb083 |
|
MD5 | 76aa321c79f937452fb0370918390405 |
|
BLAKE2b-256 | 98aa82fe2da46d60681b9f4833c4730d153cf25083f3655810366a20e866d1e8 |
Hashes for cornflakes-3.1.9-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 47262b5e9be2b6b3b29e03a38253437e91e51d6f1ac6adb8b267784a0a7af9c9 |
|
MD5 | 8dc6d02464a62cf4cf2fdd1f654f06d2 |
|
BLAKE2b-256 | 0ee49c32448c425f91ee13832932d1cdcc3cdd8c14a9dc8fa2b4ea92615a3cf0 |
Hashes for cornflakes-3.1.9-cp38-cp38-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 032db6a7539ca3c08016cda7a6cf5426f1b57b55721c1722f4cdc29ecf860191 |
|
MD5 | e7455d1fd06033b11451a91a70b3c240 |
|
BLAKE2b-256 | f1899f7c75b4edabf3acf21a6f6bdb2d1e5fae77abdb1cb5695c277750fa132b |
Hashes for cornflakes-3.1.9-cp38-cp38-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c73423cd95e448deef8d4e95319f265c559e3a905bb7644c46077ffc94d49810 |
|
MD5 | c1111016a6817d3010e130fb8416522c |
|
BLAKE2b-256 | 86b416df0a05684dc08f67f266bc804f4fba869c6891802184b0703553975263 |
Hashes for cornflakes-3.1.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1856cc6898bd5f29984f80793bdef61ec686d437e9cd4f4fbc74666f70b78ec8 |
|
MD5 | 078a29208ebd4766315cf4e2fd4e88a3 |
|
BLAKE2b-256 | 89d6afedb91687c11595fbbabb07e0250814b4a844f6b7a6a89a9756028258d2 |
Hashes for cornflakes-3.1.9-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ddaba630f787ce83e5e606f997eb38f54f28435bd9332c518ed32653254b2e7 |
|
MD5 | 3962bf78fb3d581eff8dd948f7519ef4 |
|
BLAKE2b-256 | 9542e79531e100bd804de914af7b69a0d59bbf69f3764850a3612de965039059 |