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.2-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9446e50877c681d0b939a487a2615c3837528307a5c0fc24ebccc747ff40084e |
|
MD5 | 9246fac14a23d7682c7263c114b1c202 |
|
BLAKE2b-256 | 4923d69cddb22bfc243b4f5019e3349c0ec3cdb72ec03f5e121911556604513b |
Hashes for cornflakes-3.3.2-cp311-cp311-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7f347620ba1c03a615cedf4def46472e94ca35c4f156bb31756126122b166299 |
|
MD5 | 8a2017dfc0492c5f0281cf4b09b59c9a |
|
BLAKE2b-256 | 60bfb51212456ae572ef5180bf0188269105893c8e3c4c6b2bb01b1ef29d9f53 |
Hashes for cornflakes-3.3.2-cp311-cp311-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1adceeec67c6c2cf425fce80f74c4f4885b13df776da8365bc6aaeb0d55087d |
|
MD5 | f06a5b352c9698df64211fea84e6dc20 |
|
BLAKE2b-256 | 2a57addfc17b1bf84da057605abbbdbaf217ea3af571be956efefe20873cec41 |
Hashes for cornflakes-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfda4b9aeacfd979bf4e8a4228bc6347e3b453264ae44ad89b44b45a0453b76d |
|
MD5 | cab6b5f2655d770958eef52139df08fd |
|
BLAKE2b-256 | c77686c8dea9753b7decab1abffb37d8e98419489f9c8fda045b860365d5a2ff |
Hashes for cornflakes-3.3.2-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 608bf07b6f17b3308c7c81c3c4010fddeb35c726babd8089a13956520f1e4a68 |
|
MD5 | c369d682e673f208e8dbacf7adf68da9 |
|
BLAKE2b-256 | 99c3190dd3916d63e3e2b855b8e5b29632f02cbde21b5189fba0b5b5bf745822 |
Hashes for cornflakes-3.3.2-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 22c34e0ecce61b4cdcdc7de5c78e659ce1751912d2ee3e4c72a7b5625f860634 |
|
MD5 | a119c6e8d25d6a257b3698ac4b32a693 |
|
BLAKE2b-256 | 856ef239e9d3ab2c95de4887419dcaa893b61780d19595b54b1b536e15813493 |
Hashes for cornflakes-3.3.2-cp310-cp310-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7ea3fbd14d0d96745565a0e12694d3faa9778e2e6df96c4d1d21d28166125a6 |
|
MD5 | 7e00227c494d1419b13ce0a19f26f721 |
|
BLAKE2b-256 | 79ee04928cbd6724d98e860b949d13c2a5c090082054fd9d93d62f18b60e74aa |
Hashes for cornflakes-3.3.2-cp310-cp310-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6631018192ba58875555526c4da0586e2f81c917f64fa5fed0d2b48e29e77d3e |
|
MD5 | 7a59734e60d2efbcc4e129382c9a27fb |
|
BLAKE2b-256 | 1ee70f621ad775b2120de20f2eefe7f2a4346ead4d244fdb55688768060cca60 |
Hashes for cornflakes-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 04291edc553e229fb002c1a17605dbd6edf0cd332456bc814f5476197bf6066b |
|
MD5 | 2c78a42879c2d718ea737016030315b2 |
|
BLAKE2b-256 | 7f7eac4de2c98b4ebb27141be348bbd92a7c92383a1f14b23b991ed4e0e5b46d |
Hashes for cornflakes-3.3.2-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 93c2d2be1f5cf9c85a4c2f1770aace1f7f4b14f3eb987f7a5dad1bae4ce01139 |
|
MD5 | ce7535feedfa8caa01c1c6ff551f3ccd |
|
BLAKE2b-256 | 0068efdde708195def882c4b2ae2f0e60b64a434950685fdf7449161a3cd6b03 |
Hashes for cornflakes-3.3.2-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d97903524fef0d51c055cf20c5b47c062a56f8228c328759c085b0464a4fa0ee |
|
MD5 | 0eefde02f7f2eb93cd3b1fb390c9b579 |
|
BLAKE2b-256 | ef7d40c7cd9fe69f527c88b776d5972591f2105f90e0f42da5ae6bf2b353aa09 |
Hashes for cornflakes-3.3.2-cp39-cp39-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 71827c9a2f8bfc0e647e508484872ef1c6b2097e02267725de8714a2b6d86fc2 |
|
MD5 | 64c4fa735fe8fd1ac9fa20e74d03beb7 |
|
BLAKE2b-256 | 72f1eef048ca3fea553debc2dbf450db63c05564dafc8d91e13167de37a69529 |
Hashes for cornflakes-3.3.2-cp39-cp39-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b78abb7c286b0ab58c3c682a3a85560de2a9aefcca5373752f89df730c79c8f8 |
|
MD5 | 82338a33b251979636ae4f0e66ec5253 |
|
BLAKE2b-256 | 1920a7e608596cc58f4c8ef546e981a711185f9419d6d6b0bb1d4e41984c54a0 |
Hashes for cornflakes-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6fd9507614bfd21bcbe5adc2774fc5bf708ab5fa55c995fe3443c8a28b7b3b5a |
|
MD5 | 94a21d57404440aa796e71775723e6dc |
|
BLAKE2b-256 | 774cae5266cd8ba5bfca9ea2115a52173d36c174f0cd1c0625b0902766f7b1f0 |
Hashes for cornflakes-3.3.2-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 165f6c5cf3e22eae9bf73ea710d30902608df0a3a71bdb82f8fa09fc157a1d20 |
|
MD5 | c49227c5c1008f3ac4a351e99387507a |
|
BLAKE2b-256 | 097ccbbb95f0fab2789b614e85494d4b285cc57b56fa401364f02ab83a313928 |
Hashes for cornflakes-3.3.2-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8844b9d8497c662eb1347aea5eee1bf3820060a4b66680b2b2cdf0f28bd02fb7 |
|
MD5 | d0306aad90706b53b38e58a8153ca1d9 |
|
BLAKE2b-256 | ed43ce6ff8be59d3fc5a211ea5c006b36f6888358543d5853fdfbc3ee7be12d8 |
Hashes for cornflakes-3.3.2-cp38-cp38-manylinux_2_35_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 82d1f88eefec4a545ed1832bec688a51c7d641b11e8926600f85c0ca5eee0997 |
|
MD5 | 9af7e5fd2fc5e1f8c00b2b83871f5f96 |
|
BLAKE2b-256 | 83e144ee44f61d05c8ca8096c2d494028928685caadbecdb8c9d054eb4f0755a |
Hashes for cornflakes-3.3.2-cp38-cp38-manylinux_2_28_x86_64.manylinux_2_24_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | afa5fa6dbec8b40de8add312370415c7cd7e48e7f2cf65473d1d4bf123da1a0f |
|
MD5 | 0ada8109fb890a0f87cf3e999f0a6fdc |
|
BLAKE2b-256 | 49e6e7399d6f9af090cde1d586e0e445a48d921fb00f834d87ed3a12bf97232b |
Hashes for cornflakes-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 175a297543c24f315a6cbb29e36137975f358973e1e9092a80a37d7e4b48a503 |
|
MD5 | fadff400da02a7f0688d5630c135c7c7 |
|
BLAKE2b-256 | d5879740dbb263f3d898d039aed6e0ecc3b07788a25fcd13e51f1d332ed1b52d |
Hashes for cornflakes-3.3.2-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d66270a82d738c1a93121b763975d851892f01be6673b6902ef1f5456df8a952 |
|
MD5 | a48b812ec79f76f749d3f7d378bbaf77 |
|
BLAKE2b-256 | 59a1254fb42ea1d1f81d7c65913d96ec959141b5ffbc464680f576d89cd95d0a |