DataHub Python Builds

These prebuilt wheel files can be used to install our Python packages as of a specific commit.

Build context

Built at 2026-06-11T17:08:05.014712+00:00.

{
  "timestamp": "2026-06-11T17:08:05.014712+00:00",
  "branch": "claude/optimistic-albattani-k19c77",
  "commit": {
    "hash": "89ff3e2e6bee14c242884de8ee05bd438ca9fa50",
    "message": "refactor(ingestion): use generics for WorkunitProcessor report typing\n\nImplement proper generic typing for WorkunitProcessor using the established\ncodebase pattern (same as Sink class). This provides type-safe report access\nwithout boilerplate while extracting report types at runtime.\n\nBenefits:\n- self.report is properly typed throughout processor methods\n- No need for _report property casting\n- No redundant report_class attribute\n- Single source of truth: WorkunitProcessor[MyReport]\n- Uses existing get_class_from_annotation() utility (robust, tested)\n\nChanges:\n- Made WorkunitProcessor generic over _ReportT\n- Created empty report classes for all 14 processors\n- Updated create() to extract report class via get_class_from_annotation()\n- Removed _report properties from ValidateInputFieldsProcessor and EnsureAspectSizeProcessor\n- Replaced all self._report with self.report (now properly typed)\n\nAll processors now follow consistent pattern:\n    @dataclass\n    class MyProcessorReport(WorkunitProcessorReport):\n        num_processed: int = 0\n\n    class MyProcessor(WorkunitProcessor[MyProcessorReport]):\n        def process(self, stream):\n            self.report.num_processed += 1  # \u2713 Properly typed!\n\nCo-Authored-By: Claude Sonnet 4.5 "
  },
  "base": {
    "hash": "bb025609ac33b427266b42d9eff5955a2652b6bd",
    "message": "ci(playwright): increase job timeout to 60 minutes (#17864)"
  },
  "pr": {
    "number": 17852,
    "title": "refactor(ingestion): workunit processors",
    "url": "https://github.com/datahub-project/datahub/pull/17852"
  }
}

Usage

Current base URL: unknown

Package Size Install command
acryl-datahub 4.113 MB uv pip install 'acryl-datahub @ <base-url>/artifacts/wheels/acryl_datahub-0.0.0.dev1-py3-none-any.whl'
acryl-datahub-actions 0.118 MB uv pip install 'acryl-datahub-actions @ <base-url>/artifacts/wheels/acryl_datahub_actions-0.0.0.dev1-py3-none-any.whl'
acryl-datahub-airflow-plugin 0.067 MB uv pip install 'acryl-datahub-airflow-plugin @ <base-url>/artifacts/wheels/acryl_datahub_airflow_plugin-0.0.0.dev1-py3-none-any.whl'
acryl-datahub-dagster-plugin 0.020 MB uv pip install 'acryl-datahub-dagster-plugin @ <base-url>/artifacts/wheels/acryl_datahub_dagster_plugin-0.0.0.dev1-py3-none-any.whl'
acryl-datahub-gx-plugin 0.011 MB uv pip install 'acryl-datahub-gx-plugin @ <base-url>/artifacts/wheels/acryl_datahub_gx_plugin-0.0.0.dev1-py3-none-any.whl'
prefect-datahub 0.012 MB uv pip install 'prefect-datahub @ <base-url>/artifacts/wheels/prefect_datahub-0.0.0.dev1-py3-none-any.whl'