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.1-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f7d9fa3fe404059a238974f7e4dcf851fc8efb8664057791b8c9989e25baa04 |
|
MD5 | b5a047d9089d6b62925a8a06e8e2dad0 |
|
BLAKE2b-256 | 26fca01576f433b4a8659134d6a6f9ca9b46f5ff4692f1099445aa1f011a591e |
Hashes for cornflakes-3.3.1-cp311-cp311-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 92cdd6e11f46ec2f316b46362732aef3637186a10d27fbfe48cf7c6eff5621e9 |
|
MD5 | 7a57ef8f4aa7a0d62d34377f20a9d602 |
|
BLAKE2b-256 | 7a80fd3f179f629a42e9788511ab68616394ac9a12cff6c95cd874ec7307337b |
Hashes for cornflakes-3.3.1-cp311-cp311-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 57a1b299e372aa61c9985c45b0f5382e1c8cd15b6a805f0f819fcc1fd584b39c |
|
MD5 | cbd5927d6f2d33ca5dc296de9e75fad4 |
|
BLAKE2b-256 | f012f63505c1efb02d5ddb140868150a1b701c19a6afc000c8bb1c95d53df9c3 |
Hashes for cornflakes-3.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aafbf03b9e6a5f6dbacbf874919b0e00f5ef02631283f646e45761bc13113a44 |
|
MD5 | 35efcd5640c9e08e4f2b7a535f03e96d |
|
BLAKE2b-256 | 27e94890c37c0f7cbed543b7bb815b8ad4877b4694fbee780bf6fc51bf1fd0c9 |
Hashes for cornflakes-3.3.1-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b841f0365543cffc3fe5354c5c679982a41603b67ec01bf7fc830e3886a8232 |
|
MD5 | e36c0ecedcc086998a8e57b3f7bcb09f |
|
BLAKE2b-256 | 32e393b64aced5ad917e5fc076ef8b25bb3fbdf819cb176335825ba23b4e2391 |
Hashes for cornflakes-3.3.1-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 895bad7d04ed23e6e1ad6a408fb3fd42cb33223c48bb809f84ba6c54aa95cb78 |
|
MD5 | 76c4a2679bbdccb61c86b210be3df50c |
|
BLAKE2b-256 | 4521745df2f5b1fdcf0a0914c960e7b33c451b6a32f28c4217e58c83ab68be28 |
Hashes for cornflakes-3.3.1-cp310-cp310-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6227c015dea292e3aa721b56486bc2fd33cd043c598f0f40a31962a8e42db7dd |
|
MD5 | 64e3f45fb24c59c368eb629f18e6ebc5 |
|
BLAKE2b-256 | c4eac85730537e6673f140f95f317f281cc4a9b42b5eab08431d223048d04111 |
Hashes for cornflakes-3.3.1-cp310-cp310-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a5dace90db7073e0061be6c4a85900fcc743c7344e57535276547439b481117b |
|
MD5 | aacdbcc43d5bca3b8d4297f8f558c378 |
|
BLAKE2b-256 | 8b8b68522f394332d488b82e247653d3b3879238c1ac526c8b19bde45358bc5a |
Hashes for cornflakes-3.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d3f3eb7a6d8c0d3a35f25410bed2ea356d64ab1ddf2a989b0ca95cf484315e06 |
|
MD5 | 3a810162c28850f1e4b00fea15c63d7a |
|
BLAKE2b-256 | f34f7ed02f69589a3d103c5c43ec1a046bade6794c7edbed375eddec95b4183b |
Hashes for cornflakes-3.3.1-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0d979bca0ddb8c10715616dbd437e494eb930cd57d6ee6ceb709971b50fc08ea |
|
MD5 | 04dcdd7d331f49b97f061147002d59c6 |
|
BLAKE2b-256 | 3266dc8c1735f61de1c1090135d0b415d1b3c4496cc3bcdb38ca8ebcb2d58d3f |
Hashes for cornflakes-3.3.1-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a013fb3189d09d9d194da56e514af2f93c9d579b7404f47f020cec9966bd300d |
|
MD5 | c0b53e39e108b77d2ada72918cd79226 |
|
BLAKE2b-256 | 937bb18fa95313ed2e23da548d6a5215bc2bb37812e8fa33535e05d8e3983403 |
Hashes for cornflakes-3.3.1-cp39-cp39-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca470ee1ef47d677f8289dcf0d645ca3bf0ce3195d7676d9bdd60c10829818c7 |
|
MD5 | 81cc381e683787411eacf47ebb1a56b3 |
|
BLAKE2b-256 | ce8b13f2059a1e6773efb0129a77e6f4e262ba07af9aa49099e5255788c95e74 |
Hashes for cornflakes-3.3.1-cp39-cp39-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66d87b1ff1c8c1d051246fa6bab35321b9b017e8a4b05e1c7efb6fea89426d37 |
|
MD5 | f3d79daa94d87299b097b076df6835c0 |
|
BLAKE2b-256 | 8e6bc2694147dbe49b2de87eb7a445227713da23aeb7e37fbf00ab0d810aa603 |
Hashes for cornflakes-3.3.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f7c4565f6e39b4644e2b26ffe4e1b50a6d33a0fcf5556cd26d881881bed24c15 |
|
MD5 | 8cdd35dba81b94473c51a609fb4fc9fd |
|
BLAKE2b-256 | b8b77e12421b016e97cc3da81bdbe1c96539762c6401b0ec6cb6f9e986f9d537 |
Hashes for cornflakes-3.3.1-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d8dcf4e92c8bd5746ffde89b20efa6dcb3dd9e639a5cef91205ceea58b212d02 |
|
MD5 | bf0ef1d09d7eab5658bacb40e22a1248 |
|
BLAKE2b-256 | 65a503ca1e0dc335b9121fe4002cdbdd38f9334c372a70b02cf2774fe49b9a3e |
Hashes for cornflakes-3.3.1-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8cd36cdc7e0b0fa2bbc79bbc74633bc4e0937b4cd6cbdb52f5c33bc58a2b0880 |
|
MD5 | 86ac02415d456d70575db30977c18e19 |
|
BLAKE2b-256 | 704723538f885e5f996b498f8a32a791c7bee117fc6728666e5620409d6fda7b |
Hashes for cornflakes-3.3.1-cp38-cp38-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 502901bfc9c74de2a8e3c33f496ef2a8928ada8320dab061e6958a7e445f948d |
|
MD5 | 72c4a594b953dac93ed0e363edb863d0 |
|
BLAKE2b-256 | 928c7fcd067c527b1b96bda129c6159e6ce39692356c25125ff158c0e86f9f78 |
Hashes for cornflakes-3.3.1-cp38-cp38-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b197640ab5f93a4f632fa00249ace0b1a1123af7edb54e6f86b5e97fe661fc4 |
|
MD5 | cde7e003e5d6b83909256489744212e6 |
|
BLAKE2b-256 | 5122566f63a3d173c97f2ea909a1f5680699fbe79af703a1a9c7ea22474d17bc |
Hashes for cornflakes-3.3.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 087361d5e47847c3846b6513de7276b322c1f1ae7bea1b1368d913e6ea6e06e8 |
|
MD5 | e98772ffb5aed936d3a8af32ea4479bd |
|
BLAKE2b-256 | 821234367587de955bc986d3675f8910f4d350db9e93b50b00f8532bdacee934 |
Hashes for cornflakes-3.3.1-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0dca770c41efd7d346540553bc2b7c2c6e4b731f2c4048ecf5d26e0c641e460b |
|
MD5 | f1ce81f040220bd9779bf76f67ca5b7c |
|
BLAKE2b-256 | 72eee63b64b14cf32eca2b61349784170c6ebb78462c6db8b4617d977194f70f |