Skip to content

Fix Linux manylinux wheel builds with Docker sibling deps#35

Merged
madhavajay merged 1 commit intomainfrom
fix/manylinux-docker-build
Jan 7, 2026
Merged

Fix Linux manylinux wheel builds with Docker sibling deps#35
madhavajay merged 1 commit intomainfrom
fix/manylinux-docker-build

Conversation

@madhavajay
Copy link
Copy Markdown
Contributor

Summary

  • Use manylinux: auto for Linux builds (reverts off setting)
  • Mount parent directory in Docker container for sibling dependencies
  • Create symlinks in before-script-linux for ../syft-crypto-core and ../syftbox

Background

PyPI rejects wheels with native Linux platform tags like linux_aarch64. Wheels must have manylinux platform tags like manylinux_2_28_aarch64.

The previous fix disabled Docker to work around sibling dependency access, but this resulted in non-manylinux wheels that PyPI rejects.

Solution

  • Docker container is mounted with parent directory at /parent
  • Symlinks are created at root level: /syft-crypto-core -> /parent/syft-crypto-core
  • Cargo.toml's path = "../syft-crypto-core/protocol" resolves correctly inside Docker

Test plan

  • CI builds manylinux wheels for Linux
  • Wheels uploaded to PyPI successfully

- Use manylinux: auto for Linux builds (not off)
- Mount parent directory in Docker for sibling deps
- Create symlinks in before-script-linux for ../syft-crypto-core and ../syftbox
- PyPI requires manylinux platform tags for Linux wheels
@madhavajay madhavajay merged commit 3ed7c54 into main Jan 7, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant