ingestr v1.0.30 - CI uv Setup Fix for Release Pipeline

bruin-data published ingestr v1.0.30 on June 10, 2026. The release is a CI hotfix: commit 2886fa23bb480bebf7c26a02d17cfee97fa4b3f2 swaps pip based uv installation for astral-sh/setup-uv@v8 so macOS release runners stop failing under PEP 668.

The full release notes and downloads are on the GitHub release page.

Why v1.0.29 release builds failed

The immediate trigger was a broken release workflow on tag v1.0.29. The macOS runner uses an externally managed Python environment from Homebrew. When the workflow tried python3 -m pip install --user uv, PEP 668 blocked the install before any tests ran.

That failure mode is specific to the build pipeline, not to ingestr runtime behavior. Operators running ingestr ingest with existing binaries or pip installs are unaffected. The problem only surfaced when the project tried to ship a new tagged release and the test job could not bootstrap uv on macOS.

Pull request #785 documents the root cause and the failed run at commit 4eec6fc6535043dd8f7864093dcde13377067357.

setup uv action replaces pip bootstrap

The fix in PR #785 removes the manual pip install path and installs uv through the official GitHub Action astral-sh/setup-uv@v8. That action downloads a pinned uv binary directly, sidestepping the system Python package manager entirely.

For a project that ships both a Go CLI and a Python SDK, uv is the dependency resolver behind pyproject.toml and uv.lock. CI jobs need uv available before make test can exercise Python connector code. A broken bootstrap step blocks the entire release gate even when application code is unchanged.

The setup action also pins uv to a known version on each runner. Pip based installs can drift between workflow runs depending on what PyPI serves that day. For release automation, that repeatability matters more than saving one workflow step.

CI and release workflow alignment

The change applies to both CI and release workflows, not just the failing macOS job. PR and release test jobs now share the same uv installation path. That reduces the chance that a pull request passes on Linux while a tagged release fails on macOS for the same bootstrap reason.

Validation listed in the PR covers make format, make lint, and make test. No connector logic, source adapters, or destination handlers changed in this tag. The v1.0.30 release page changelog contains only this single CI entry.

What operators should expect

There is no new CLI flag, connector, or ingestion mode in v1.0.30. If you already run ingestr from a prior release, this tag does not require a migration step or config change.

The practical value is restored release artifact production. Teams that pin to tagged releases and verify checksums from GitHub Actions output can treat v1.0.30 as the first tag after the PEP 668 fix landed. Anyone who attempted to download v1.0.29 artifacts from a failed workflow run should pull from v1.0.30 instead.

One caveat from the PR notes: re running the v1.0.29 tag workflow will still use the workflow file baked into that tag. Only a new tag, or a moved tag, picks up the setup action change. v1.0.30 is that new tag.

Where to get it