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
Short Term RoadMap:
Enrich json methods
Fix / Test the to_<file-format> Methods
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.3.0-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6610751980a2d32c298a74dfaa372617c080820734a58202815665f5eff86ab |
|
MD5 | 6014568af31f5d2a7e6c47bcd1d42209 |
|
BLAKE2b-256 | 5132c6e26a77fc084ad2ef63d7f3ff17bc5853e045ed578174e21e2b9fb8704b |
Hashes for cornflakes-3.3.0-cp311-cp311-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d7388999fff82f0b86cc74a463db855f72eacf9ed3a813e4ae8fe24cf4946eb8 |
|
MD5 | ab77801d642c874360e93a26ac4d3815 |
|
BLAKE2b-256 | a69ed7dd430c7242ea7efbf2e618b96c0f251ce82a3a1a26f0b0f41215de3467 |
Hashes for cornflakes-3.3.0-cp311-cp311-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 98ea97e796970b4028a4e19016a321fa8be932a71a73d38d23f6d5068bd848d4 |
|
MD5 | 60d8577a13a88ecd0e0bb63e10332ec4 |
|
BLAKE2b-256 | 7340e7f31051ca30a53b0fe7e6a4acd04edf8b77239655b671706cb2d52f54e6 |
Hashes for cornflakes-3.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77b09acd14149283ac7b6f5a62662f9b9040cbaeaaea161bc10c34812c290da2 |
|
MD5 | 91c9f57949607a8629307b0b044279ef |
|
BLAKE2b-256 | 831ab7e0c15be38568ae32d5106ca24ae9836b33c0570ffa21cd36181103d615 |
Hashes for cornflakes-3.3.0-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16484136513213271679e6441b47a19bde7e1681230e9f577d0cebfbcb90bc14 |
|
MD5 | 38966200a55f92b528efbeb5fc9ad47b |
|
BLAKE2b-256 | ec44c9dc8856d1266f68cd9359f47559f8f632c47f633a84130abb4a42121c5a |
Hashes for cornflakes-3.3.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e029fccb36e02d104437f3eb9c32a62de32204c0ade7f92023a538fbdf494a0d |
|
MD5 | ba8b4e6e771cfb0477820a6ee36f9351 |
|
BLAKE2b-256 | a2a0083fb8e7d847994d9be61fb2bc5df8f31944a8ad8cf4a1888d90430378c3 |
Hashes for cornflakes-3.3.0-cp310-cp310-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 57353a7d32f8682419b176c3fe405ac0278ade32fbabcc897199a69d6bd38b98 |
|
MD5 | d2e6a0220d8dec5a721a64d31e41af46 |
|
BLAKE2b-256 | 31088dc42da0ceebc6c5d835e714c8da204374c5e3355850cdb8dd996c5e0a58 |
Hashes for cornflakes-3.3.0-cp310-cp310-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7301915557b79c9689b6b8fcc8ab2207ec0ac21de5fd0fd9d4b6c92f78101adf |
|
MD5 | 70d55dc0505277bb6d10465d743d16e9 |
|
BLAKE2b-256 | a7c309f851420e76f78aa5ecaf7ca3e5068a0203e111dd32ad812c3e20070ce8 |
Hashes for cornflakes-3.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | de222fad556c08d2c3da1d1325407490ccca5e745064df0b0aba1f98556513f3 |
|
MD5 | d85c51940de31b85755df54ee4d51f59 |
|
BLAKE2b-256 | 69f32b7063fb3a6c261367fbf6f1c1d7bab642d748a7c34fbc930414bf060338 |
Hashes for cornflakes-3.3.0-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec99d5d0aa75faf4a1d230c4751bd60abcd28a028ae80634a32656567816e715 |
|
MD5 | 4c0f1737d7f6345cc7dcec9bb0d1478c |
|
BLAKE2b-256 | 22b7817794315be67a185aa7f6be2dbbfefdf94767e4c07e93d413276fb6ffc0 |
Hashes for cornflakes-3.3.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eea1557136a0a5044be2d77e24ed88f8165b3ed744fc7bbd93ef0daca2040024 |
|
MD5 | c72a5356510f94bee9e6cdbcc369fb21 |
|
BLAKE2b-256 | 616863446d10385f8374e8c5738a97c0571b5d7f9823c7c92396b17ad6fd01d4 |
Hashes for cornflakes-3.3.0-cp39-cp39-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 457d668e67ea7d99fd468bff8432b110b4b0bab63914c65f4698cb7518fad8eb |
|
MD5 | b49608fa950512fb87c0bc08651f1c47 |
|
BLAKE2b-256 | 41a085d7a0a5f2bbcae9ad2aa49193c69e5ede4f197a800ed80dbb773bf8df1d |
Hashes for cornflakes-3.3.0-cp39-cp39-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e11d2f2c15a5b6734f542e450120871f53793a906fd44b91730edbc67cee1156 |
|
MD5 | 8e69a8089496bb02355065ef26531b27 |
|
BLAKE2b-256 | 8b629d7006a556c546081e79507fd904b3ed3da50bea69e54b6e983945c180d6 |
Hashes for cornflakes-3.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 09e82d6b8705712497d65a1d9c00a4b0d0fc61bcb2d34028a6d33aa77467f12a |
|
MD5 | 40708aa8fba0c4f0b990d0496ea7e88e |
|
BLAKE2b-256 | c31e63bd7029999785fe7dbbc18dc1d4b5d8c9653f219370cfdad1ed0ad8cd56 |
Hashes for cornflakes-3.3.0-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90cbaaa1f699429261679eadee56da2d59c495978514bf3625944e4cf3157d50 |
|
MD5 | b39f31fcd90a1485cac0a5221d4777e8 |
|
BLAKE2b-256 | a2f41e88921d4ed1f7a81b78aef44c033fdfb3466a53a10b29ff273b6fe42b28 |
Hashes for cornflakes-3.3.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfef55e76110d2afd31f5dd37df721e4737fcf6e852a52d4ef25779e8aef109d |
|
MD5 | d72d504adec3e1a64e9ad3bc3a6c50bc |
|
BLAKE2b-256 | c8da69a3337202389cfdc9fbc407a41d1d862ccb9c5a5a476a50cd3210fc58cf |
Hashes for cornflakes-3.3.0-cp38-cp38-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e58ce5ee0ef34e33a1d0f57479767beaff91a7100173531df9ffc0abb930d01a |
|
MD5 | 04b6f4d0712cdc7cf4589287957679bb |
|
BLAKE2b-256 | 52158bacc1a3ea5557814e94bd9f1861dffef3c3b6085933dcd45030021b647b |
Hashes for cornflakes-3.3.0-cp38-cp38-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 602d6b66ed9ab3edfa3ebe69875bbe726f498a465648acee22851a4cefafd5fa |
|
MD5 | 04ea97d4543c04413620153ee85e02b6 |
|
BLAKE2b-256 | edc0b7020ceeeee7853385dab16b6d06f6a6b520d86c67b071ce39c71b5a517f |
Hashes for cornflakes-3.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c2255fc1f459eb741d94afbed898e232f0c004c3d8718d7a9b7c145872bf118 |
|
MD5 | 54b4ae4bd35a4ddff51575c8298157a9 |
|
BLAKE2b-256 | 9d1b4e46e03ce23f7e9971c1071c16621de09e7f62dae5fcf68c5ba9ff092104 |
Hashes for cornflakes-3.3.0-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ceca4abb4bcbbfe8b57b14888c6653609019ce56e24c83734f44e881d0516647 |
|
MD5 | 9c9c62e338cf5714b9120c8720c1d84e |
|
BLAKE2b-256 | 187b85409dd9f7e2010f0030bfa4d1baa6d8f7a7d6feccb19267bccf87c4ee7f |