Shared functionality for the calcipy-ecosystem
Project description
corallium
CLI utility functions extracted from Calcipy.
Installation
-
poetry add corallium -
Take advantage of the logger or other common functionality
form corallium.log import LOGGER LOGGER.info('Hello!')
Usage
-
log: Configure and use the global logger
from corallium.log import LOGGER, configure_logger import logging configure_logger(log_level=logging.INFO) LOGGER.info('Processing started', item_count=42)
-
pretty_process: Run parallel tasks with progress bars
from corallium.pretty_process import pretty_process def task(task_id, shared_progress, data): for item in data: process(item) shared_progress[task_id] += 1 return len(data) results = pretty_process(task, data=items, num_workers=4)
-
shell: Execute shell commands with output capture
from corallium.shell import capture_shell output = capture_shell('git status', timeout=30)
-
file_helpers: File utilities and project configuration
from corallium.file_helpers import find_in_parents, read_pyproject pyproject = read_pyproject() lock_path = find_in_parents(name='uv.lock')
-
tomllib: Backport wrapper for TOML parsing (Python <3.11 compatibility)
from corallium.tomllib import tomllib data = tomllib.loads(content)
-
dot_dict: Wrapper for dotted-dictionary access via Python-Box
from corallium.dot_dict import ddict config = ddict({'nested': {'value': 42}}) print(config.nested.value)
For more example code, see the scripts directory or the tests.
Project Status
See the Open Issues and/or the CODE_TAG_SUMMARY. For release history, see the CHANGELOG.
Contributing
We welcome pull requests! For your pull request to be accepted smoothly, we suggest that you first open a GitHub issue to discuss your idea. For resources on getting started with the code base, see the below documentation:
Code of Conduct
We follow the Contributor Covenant Code of Conduct.
Open Source Status
We try to reasonably meet most aspects of the "OpenSSF scorecard" from Open Source Insights
Responsible Disclosure
If you have any security issue to report, please contact the project maintainers privately. You can reach us at dev.act.kyle@gmail.com.
License
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 Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file corallium-2.3.0rc1.tar.gz.
File metadata
- Download URL: corallium-2.3.0rc1.tar.gz
- Upload date:
- Size: 29.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
082b1190f582265fa23c67aa1bbdbf2e554ced35e540c5dcfecf0e2aab09f290
|
|
| MD5 |
aa3ff0d58078fad090cd170c00c717c0
|
|
| BLAKE2b-256 |
95f890cab6bff9d8ef185360de137fff2152d2f9e911082ad0a7d0b8943e7554
|
Provenance
The following attestation bundles were made for corallium-2.3.0rc1.tar.gz:
Publisher:
publish.yml on KyleKing/corallium
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
corallium-2.3.0rc1.tar.gz -
Subject digest:
082b1190f582265fa23c67aa1bbdbf2e554ced35e540c5dcfecf0e2aab09f290 - Sigstore transparency entry: 872205395
- Sigstore integration time:
-
Permalink:
KyleKing/corallium@3ad0f75a48ef0d3164f79527ec1111f5ce4ecdd8 -
Branch / Tag:
refs/tags/2.3.0rc1 - Owner: https://github.com/KyleKing
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3ad0f75a48ef0d3164f79527ec1111f5ce4ecdd8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file corallium-2.3.0rc1-py3-none-any.whl.
File metadata
- Download URL: corallium-2.3.0rc1-py3-none-any.whl
- Upload date:
- Size: 35.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e0f74ad68620855ed9711f3e26a3972f6e822a0b0b45d3e1eff72defe0895887
|
|
| MD5 |
674b7c5c90e82c8e4f575cae077f6bcf
|
|
| BLAKE2b-256 |
b5fb2444decbcbb57ad4b2bd7bb05aba212fdabb1c670c6c0ca9df00fde45c3f
|
Provenance
The following attestation bundles were made for corallium-2.3.0rc1-py3-none-any.whl:
Publisher:
publish.yml on KyleKing/corallium
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
corallium-2.3.0rc1-py3-none-any.whl -
Subject digest:
e0f74ad68620855ed9711f3e26a3972f6e822a0b0b45d3e1eff72defe0895887 - Sigstore transparency entry: 872205399
- Sigstore integration time:
-
Permalink:
KyleKing/corallium@3ad0f75a48ef0d3164f79527ec1111f5ce4ecdd8 -
Branch / Tag:
refs/tags/2.3.0rc1 - Owner: https://github.com/KyleKing
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3ad0f75a48ef0d3164f79527ec1111f5ce4ecdd8 -
Trigger Event:
push
-
Statement type: