Skip to main content

A package that integrates with Pydantic to be able to export Apache Iceberg table schemas.

Project description

Icedantic

A package that integrates with your Pydantic models and enables you to export Apache Iceberg table schemas.

Installing

You can install directly from PyPI using e.g.

uv add icedantic

or

pip install icedantic

or you can install locally from file using:

uv pip install -e <location_on_disk>

Developing

This repo provides a devcontainer to easily develop the package. It assumes you have uv and fish installed on your host system. This cannot be made optional because these assumptions involve bind mounts.

Install the package locally (symlinked) within the venv created by uv using:

uv pip install -e .

Pre-commit

We use pre-commit to run a few hooks to ensure code quality and stuff like that. Please use the devcontainer, all this is taken care for you if you do so.

Running tests

We use tox for bothing running the tests as well as running pre-commit. Please run tox to run your tests.

Contributing

Please see CONTRIBUTING.md.

Issues

If you discover bugs or other issues, please create an issue with a stack trace and code to reproduce. We have no predefined format for issues, just make sure there is enough info to reproduce.

Why?

AFAIK there is nothing "ready to go" that offers the same functionality, bar doing the mapping yourself. Because I needed to do this in a neat way, might as well open source it.

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

icedantic-0.0.3.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

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

icedantic-0.0.3-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file icedantic-0.0.3.tar.gz.

File metadata

  • Download URL: icedantic-0.0.3.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for icedantic-0.0.3.tar.gz
Algorithm Hash digest
SHA256 869931862218af8138c7a43ad0a1884514a3d5fa6926537f239511d071ede292
MD5 370711bc7b983791d74da16d1fdd1860
BLAKE2b-256 ab15167cc0971f243c773cb4d4d98e4befe6caa887ff99386fc8c32741dc26e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for icedantic-0.0.3.tar.gz:

Publisher: publish.yml on riccardo92/icedantic

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file icedantic-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: icedantic-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for icedantic-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f24b4d480b01cb21a60c0e71c624cdf9f01f6928125324d8cd79c74aadc48cf5
MD5 0734e18e43e8d5433eb18d5386c8b0af
BLAKE2b-256 295ab09d9a9af9bb4cb623e9a176d9c977a7f4e2ef97df4ab18a70cb89954b7e

See more details on using hashes here.

Provenance

The following attestation bundles were made for icedantic-0.0.3-py3-none-any.whl:

Publisher: publish.yml on riccardo92/icedantic

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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