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.1.tar.gz (3.2 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.1-py3-none-any.whl (3.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: icedantic-0.0.1.tar.gz
  • Upload date:
  • Size: 3.2 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.1.tar.gz
Algorithm Hash digest
SHA256 368e0acd7868697bc4230ec919b617b59af4bcbfb9925cd6e8bed82a2a6df71d
MD5 4a07beb7ff946e792196e6926b050e5d
BLAKE2b-256 26f6a8548de4e287d00cf02f6ba36718ac60adeee2ec35ed89648f5e1b953996

See more details on using hashes here.

Provenance

The following attestation bundles were made for icedantic-0.0.1.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.1-py3-none-any.whl.

File metadata

  • Download URL: icedantic-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 3.3 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4bd086d9c4a8135c5f7c3acf9ccfaca69952eac5290e47e6122f229b9d464a82
MD5 d7a0c0ffdb07a5382bb186df83e2799c
BLAKE2b-256 a2fa05a8dddff1028eab0e064a50982c762624c5bd5237c84293befda0090a7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for icedantic-0.0.1-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