Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

PySpark - Fine-grained data provenance - PySpark part

Table of Content (ToC)

Created by gh-md-toc

Overview

Python package in this monorepo for enabling Spark data provenance features in PySpark jobs.

This project is managed with uv.

Quick Start

From the repository root:

cd pyspark-wringlet
make init-uv-python
make init
make check
make test
make run

Project Layout

pyspark-wringlet/
    src/wringlet/
    tests/
    main.py
    pyproject.toml
    Makefile

Common commands

  • make init - Create/refresh lock file and sync dependencies
  • make update - Upgrade dependencies and sync environment
  • make check - Run lint and type checks
  • make test - Run unit tests
  • make build - Build package wheel
  • make publish - Publish package (PyPI)

Development life-cycle

  • In order to switch (bump) to a newer version of the Python package, the following are the main options, ordered by the general probability of occurrence in the development life-cycle, from the highest to the lowest)
    • Increment the dev version (e.g., from 2.4.3.dev5 to 2.4.3.dev6 or from 2.4.3 to 2.4.4.dev0): make increment-dev-version
    • Bump to minor version (e.g., from 2.4.3.dev5 to 2.4.3): make bump-to-minor-version
    • Bump to patch version (e.g., from 2.4.3.dev5 to 2.4.4): make bump-to-patch-version
    • Bump to major version (e.g., from 2.4.3.dev5 to 3.0.0): make bump-to-major-version
  • Then, the version bump has to be cascaded to related files (typically, pyproject.toml)

PyPI package

make publish
  • However, the easiest way to publish the Python wheel is through the CI/CD pipeline, that is, the GitHub Actions Python publishing pipeline.

    • That CI/CD pipeline is automatically triggered when creating a release on the Git repository
    • It may also be triggered manually by contributors of the Git repository
  • Check the versions of the Python wheel on Pypi.org

  • Install the Python wheel locally, in the main/global Python environment (as spark-submit does not seem to work properly with uv):

make install-local
  • For information, that actually install the Python wheel with pip:
python -mpip install -U pyspark-data-provenance
  • Run the PySpark job locally, in the main/global Python environment (as spark-submit does not seem to work properly with uv):
make run-local

CI/CD

Repository-level workflows are provided for:

  • CI: lint, type-check, and tests on pushes/PRs affecting this package
  • Publish: build and publish on release

Metadata

Release files for wringlet 0.0.3.dev6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for wringlet 0.0.3.dev6
File Interpreter ABI Platform
wringlet-0.0.3.dev6-py3-none-any.whl Python 3 none any Details

Release files / wringlet-0.0.3.dev6-py3-none-any.whl

Download URL wringlet-0.0.3.dev6-py3-none-any.whl
Size 6.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f8a8d89f712b506370e86fbfb4a36a265beaa878fafc320d05e67c1924de067d
BLAKE2b-256 checksum
How to use checksums
d726371e6147fac88c1f666191d6b7cad0ca3cccfde7d0c98c5822153d49728e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.15

Security for wringlet 0.0.3.dev6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page