Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions .github/workflows/Dockerfile.install-toolchain-free
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Verifies that `pip install` for this package resolves purely to prebuilt
# wheels, with no source build required. Mirrors restricted runtimes such as
# the AWS Lambda Python base images, which don't ship a C toolchain.
FROM python:3.14-slim

WORKDIR /app
COPY . .

RUN pip install --no-cache-dir --only-binary=:all: .

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Medium - Install check cannot pass because pytricia has no wheel

The image uses Python 3.14 on Linux, where the package's required pytricia dependency is selected, but the repository lock records version 1.3.0 with only a source tarball. Because --only-binary=:all: forbids that distribution and the slim image has no compiler to build it, every run reaches pip's resolution error before installing the project, leaving this new workflow permanently red rather than providing a usable toolchain-free install check.

Show fix

Provide and select a Linux/Python 3.14 wheel-capable replacement or release wheels for the required pytricia dependency before enforcing this check. If source builds are intentionally supported instead, remove the all-binary restriction and explicitly install the required build toolchain; otherwise use a dependency set that is actually satisfiable in the restricted image.

More info - Reply on this comment to give feedback or ignore the issue.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, that is why we add a test for it. We will wait with merging this until we can enforce it.

17 changes: 17 additions & 0 deletions .github/workflows/install-toolchain-free.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: 📦 Install without build toolchain
on: [push]
permissions:
contents: read

jobs:
install:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Checkout code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false

- name: Install dependencies in a container without a build toolchain
run: docker build -f .github/workflows/Dockerfile.install-toolchain-free -t aikido-zen-install-toolchain-free .
Loading