bazel-contrib / bazel-contrib/rules_python

Need a method to build native libraries for pip imports

Open
#48 15 comments 3 reactions 1 assignee Assigned to @lberki View on GitHub
type: feature request untriaged
Dominant language
Starlark
Stars
688
Forks
721
Avg merge
14h 49m
Merged PRs (30d)
81

Description

This is probably a long-term / aspirational wish, though I'd be happy to be shown otherwise.

Packages installed via `pip` often depend on native libraries. As a random example, https://pypi.python.org/pypi/cairocffi is a set of python bindings around the native `cairo` library. The bindings themselves don't include the native library, but they do require it to be installed on the system in a way which can be found by `setuptools` when compiling native code to build the relevant wheel.

It seems like requiring a system-installed library (which could change between builds) would violate hermeticity. We should instead provide a way to specify the dependent libraries required for a given pip import as Bazel targets, which can themselves be build.

This is likely related to bazelbuild/bazel#1475

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.