Skip to main content

next-generation package manager for universal data

Project description

QuiltCore

QuiltCore is a library for building and running Quilt data packages. It is designed to leverage standard open source technology and YAML configuration files so that it can easily be ported to other languages and platforms.

This initial implementation is in Python.

Key Technologies

  • Apache Arrow for reading, writing, and representing manifests
    • PyArrow for Python bindings to Arrow
  • fsspec filesystems for reading and writing files from various sources
  • PyYAML for reading and writing YAML configuration files

Example

poetry install
from quiltcore import CoreRegistry
from tempfile import TemporaryDirectory
from upath import UPath

TEST_BKT = "s3://quilt-example"
TEST_PKG = "akarve/amazon-reviews"
TEST_TAG = "1570503102"
TEST_HASH = "ffe323137d0a84a9d1d6f200cecd616f434e121b3f53a8891a5c8d70f82244c2"
TEST_KEY = "camera-reviews"

Get Manifest

registry = CoreRegistry(UPath(TEST_BKT))
named_package = registry.get(TEST_PKG)
manifest = named_package.get(TEST_TAG)
blob = manifest.get(TEST_KEY)

Get Object

with TemporaryDirectory() as tmpdirname:
  dest = UPath(tmpdirname) / TEST_KEY
  local = blob.put(dest)
  print(local)
  assert local.exists()
  local_bytes = local.read_bytes()
  assert blob.verify(local_bytes)

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

quiltcore-0.1.1.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

quiltcore-0.1.1-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file quiltcore-0.1.1.tar.gz.

File metadata

  • Download URL: quiltcore-0.1.1.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.0 CPython/3.10.11 Darwin/22.5.0

File hashes

Hashes for quiltcore-0.1.1.tar.gz
Algorithm Hash digest
SHA256 e648da33344a68aab417d80ea87791bbab97d12d769ce860b3bbda32fc65ac27
MD5 43bfabbb02fa0297adcdc6a37cb06c64
BLAKE2b-256 ebe53546921443ca77759f6a70aabf409b15871d4586fdaa2e50a10e17d36d5c

See more details on using hashes here.

File details

Details for the file quiltcore-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: quiltcore-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 11.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.0 CPython/3.10.11 Darwin/22.5.0

File hashes

Hashes for quiltcore-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3e8a430efdd36fd5d5c0df94e7f976123b248cc904ea0c55a41b663311075216
MD5 2cf8b861b670da2de7d723eeb8c798f6
BLAKE2b-256 a4ff38f3c9d0a07cc795e08e608db9b60f1f7e28b7cf6543f47fa9dacca40663

See more details on using hashes here.

Supported by

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