Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using pybind_bazel and build wheels for Linux/macOS(Python 3.7, 3.8, 3.9) #530

Merged
merged 4 commits into from
Jun 1, 2021

Conversation

patrickhart
Copy link
Collaborator

@patrickhart patrickhart commented May 19, 2021

Requiring a local virtual environment folder restricts platform independence and hinders building BARK for multiple Python versions. The majority of Python users now use Python 3.8 (https://www.jetbrains.com/lp/python-developers-survey-2020/) which BARK should be compatible for.

In this pull request:

  • Using pybind_bazel avoids defining a local virtual python environment for building the python wrappings.
  • Extended setup.py using Bazelisk making building BARK easy even without having installed Bazel
  • Integrated GitHub Actions wheel builds that build BARK for Python3.7, 3.8, and 3.9 on Linux and macOS making it possible to easily use BARK using pip install bark-simulator
  • wheels are only built and pushed when a git tag is pushed on the CI
  • cleanup of the build structure; for some reason BARK required BARK itself as dependency; etc.
  • removed manylinux CI build
  • added MANIFEST.in to only include required files (reduces wheel size)
  • generated wheels can be found here: https://pypi.org/project/bark-simulator/#files

Current problems not easily fixable:

  • macOS runners reach rate limit on http request (error 403) on Bazelisk call. seems to be a more common problem. did not find a fix. results in arbitrary passing/failing of the macOS wheel builds

bark/benchmark/BUILD Show resolved Hide resolved
tools/deps.bzl Outdated Show resolved Hide resolved
bark/world/tests/evaluation/BUILD Show resolved Hide resolved
@patrickhart patrickhart force-pushed the pybind_bazel branch 4 times, most recently from 06430c0 to 6db2f90 Compare May 26, 2021 22:09
@patrickhart patrickhart changed the title Using pybind_bazel to avoid using defining local virtualenv Using pybind_bazel and build wheels for Linux/macOS(Python 3.7, 3.8, 3.9) May 27, 2021
@patrickhart patrickhart merged commit 580a27b into master Jun 1, 2021
@patrickhart patrickhart deleted the pybind_bazel branch July 9, 2021 09:33
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.

2 participants