Sparkles ✨
Just utilities made by Jim Vogel - commonly used Python functions to avoid rewriting.
Installation
pip install sparkles
Development
This project uses uv for dependency management.
# Install dependencies
uv sync --all-extras
# Run tests
uv run pytest -v
# Run linter
uv run ruff check sparkles/
# Format code
uv run ruff format sparkles/
CI/CD Setup
Setting up PyPI Publishing (One-time setup)
-
Create a PyPI API token:
- Go to https://pypi.org/manage/account/token/
- Create a new project-scoped token for "sparkles"
- Copy the token (starts with
pypi-)
-
Add token to GitHub Secrets:
- Go to your GitHub repository → Settings → Secrets and variables → Actions
- Click "New repository secret"
- Name:
PYPI_API_TOKEN - Value: Paste your PyPI token
- Click "Add secret"
How to Release a New Version (Git-Ops Style)
Just push a tag with the bump type you want:
# For a patch release (0.2.0 → 0.2.1)
git tag release-patch
git push origin release-patch
# For a minor release (0.2.0 → 0.3.0)
git tag release-minor
git push origin release-minor
# For a major release (0.2.0 → 1.0.0)
git tag release-major
git push origin release-major
What happens automatically:
- GitHub Actions detects the
release-*tag - Bumps the version in code and commits it
- Creates a proper version tag (e.g.,
v0.2.1) - Builds the package
- Creates a GitHub Release with release notes
- Publishes to PyPI
That's it! No manual builds, version edits, or uploads needed.
Features
- Date/time utilities with timezone support
- Data parsing and transformation helpers
- Google Sheets integration
- MongoDB tools
- Slack notification helpers
- General Python utility functions
License
MIT
Release files for sparkles 0.2.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sparkles-0.2.3.tar.gz | 61.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sparkles-0.2.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 73.8 kB
Release files / sparkles-0.2.3.tar.gz
| Download URL | sparkles-0.2.3.tar.gz |
|---|---|
| Size | 61.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
dfb2a51c5dfa77e17a370e989d309b68c528fdbe03e81fe0a474bf74349b2881
|
|
BLAKE2b-256 checksum How to use checksums |
6cb60258172b401408f970c10d4d4f389958b94cb8d172286f0f414989419802
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / sparkles-0.2.3-py3-none-any.whl
| Download URL | sparkles-0.2.3-py3-none-any.whl |
|---|---|
| Size | 11.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c0932d3f4636fdad236ff3e3acb50bb8ff79a73c5a0b6f8b4430b70c841def12
|
|
BLAKE2b-256 checksum How to use checksums |
1bcd9d5c6032f26fbeb4f994ecf28dd8a4c041ae9121e5239b5fd160f2626d37
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|