llvm / llvm/llvm-project

Migrate clang python bindings PyPI package to LLVM monorepo

Open
#168,235 0 comments 1 reaction 0 assignees View on GitHub
clang:as-a-library metaissue
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

This is an issue to track the things that need to happen to move the [clang PyPI package](https://pypi.org/project/clang/) into the LLVM monorepo from its current home at https://github.com/trolldbois/python-clang

- [x] Add a pyproject.toml file to the LLVM monorepo for building a sdist and wheel equivalent to what is built by [pyproject.toml](https://github.com/trolldbois/python-clang/blob/master/pyproject.toml) in trolldbois/python-clang (#125806)
- [ ] Add a CI workflow to build the clang python bindings package and upload it to PyPI using trusted publishing, similar to [release.yml](https://github.com/trolldbois/python-clang/blob/master/.github/workflows/release.yml) in trolldbois/python-clang (#168234)
- [x] @trolldbois transfer ownership of the clang PyPI package to @boomanaiden154 or @tstellar so they can add it to the [LLVM PyPI org](https://pypi.org/org/LLVM/)
- [ ] Set up trusted publishing for the clang PyPI package to use the release-clang-pypi.yml file in the LLVM monorepo (@tstellar or @boomanaiden154)
- [ ] Add a workflow call to the release-clang-pypi.yml file in [release-tasks.yml](https://github.com/llvm/llvm-project/blob/main/.github/workflows/release-tasks.yml) (this change shouldn't get merged until everything else is set up)

Some discussion about transferring PyPI packages to the LLVM org on PyPI can be found at: https://discourse.llvm.org/t/moving-projects-into-the-llvm-org-on-pypi/88868

Contributor guide

Open the contributing guide

Research direction

Start by comparing the referenced .github/workflows/release-tasks.yml and release-clang-pypi.yml with trolldbois/python-clang's .github/workflows/release.yml. Confirm the remaining workflow, trusted-publishing, and release-task integration steps, then verify that the clang package can be built and published through the LLVM release process. External PyPI ownership and organization setup must also be completed before the migration is done.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, python
Domain
build-system, ci-cd, release
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.