Skip to main content

Common base classes for Keboola Python components

Project description

keboola-python

Shared utility code for Keboola Python components.


🛠️ Setup for Developers

Follow these steps to get up and running:

1. Clone the repo

git clone https://github.com/emfoundation/keboola-python.git
cd keboola-python

2. Create and activate a virtual environment

python3 -m venv .venv
source .venv/bin/activate

3. Install dev dependencies

pip install -r requirements-dev.txt

This will install tools like:

  • black (auto-formatting)
  • flake8 (linting)
  • pre-commit (to run checks before each commit)
  • pytest (for tests)

🧪 Pre-Commit Hook Setup

We use pre-commit to run formatting and linting checks automatically on every commit.

Install the hook, from within your virtual environment (one-time setup)

pre-commit install

Try it out

Make a code change and run:

git add .
git commit -m "Trigger pre-commit"

You'll see black and flake8 run before the commit is saved.

🏷️ Publishing a new version to PyPI

To publish a new version of the package to PyPI:

  1. Bump the version in pyproject.toml, for example:

    version = "0.1.2"
    
  2. Commit the version bump:

    git commit -am "Bump version to 0.1.2"
    
  3. Create and push a git tag:

    git tag v0.1.2
    git push origin v0.1.2
    

This will trigger the GitHub Actions workflow to build and publish the package to PyPI.

⚠️ You cannot reuse a version once it's published — always increment the version number.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

keboola_python-0.1.3.tar.gz (3.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

keboola_python-0.1.3-py3-none-any.whl (3.4 kB view details)

Uploaded Python 3

File details

Details for the file keboola_python-0.1.3.tar.gz.

File metadata

  • Download URL: keboola_python-0.1.3.tar.gz
  • Upload date:
  • Size: 3.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for keboola_python-0.1.3.tar.gz
Algorithm Hash digest
SHA256 af8289c68dc83fb37ed6bc507cc77fc55488cf9265d1799ee20a3df51221cf75
MD5 9910475826104eb15fcda50667ada563
BLAKE2b-256 b7eb64242421bb28666ccad3f567e0b1a716e7cc827b1806fce7832c94d559d6

See more details on using hashes here.

File details

Details for the file keboola_python-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: keboola_python-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 3.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for keboola_python-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e96858a88b60e51ec9d55dbe98d8d38d1c5fca7137289a1e91b783a7d19b6f5f
MD5 6eca5ba636558bef9764418f00a3fa85
BLAKE2b-256 b8ab0367010709dfad1735ba111bc9b83a4727eedc7d5a13a19b02f93df677dd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page