-
Notifications
You must be signed in to change notification settings - Fork 6
feat(python): workflow to build and upload the pypi package #9
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
Conversation
e964cce to
dbb937b
Compare
dbb937b to
383a13c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a complete Python packaging workflow for the SQLite AI extension, enabling automated distribution of prebuilt binaries via PyPI. The workflow downloads platform-specific binaries from GitHub releases, packages them as Python wheels, and publishes them to PyPI using trusted publishing.
- Adds Python package configuration with setup.py and pyproject.toml for building wheels
- Implements binary artifact downloading and packaging for multiple platforms (Linux, Windows, macOS)
- Creates GitHub Actions workflow for automated PyPI publishing with platform-specific matrix builds
Reviewed Changes
Copilot reviewed 9 out of 10 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| python-package/setup.py | Main setup configuration for building Python wheels with platform-specific binary inclusion |
| python-package/pyproject.toml | Modern Python project metadata and build system configuration |
| python-package/download_artifacts.py | Script to download and organize platform-specific binaries from GitHub releases |
| python-package/README.md | Documentation for package usage and platform support |
| python-package/requirements-dev.txt | Development dependencies for package building |
| python-package/MANIFEST.in | Packaging manifest to include necessary files in distribution |
| python-package/.gitignore | Git ignore rules for Python package artifacts |
| .github/workflows/python-package.yml | GitHub Actions workflow for automated PyPI publishing |
| .github/workflows/main.yml | Minor workflow name update for consistency |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
383a13c to
f533c52
Compare
Gioee
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would suggest to put the python-package folder inside packages/python, so if in the future we have packages for other languages the source tree would be cleaner.
5bff7b1 to
bf4edf0
Compare
bf4edf0 to
184c22f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a complete Python package build and publishing workflow for SQLite AI. The package provides prebuilt binaries for multiple platforms and architectures, enabling easy installation via PyPI.
- Creates Python package structure with setup.py, pyproject.toml, and supporting files
- Implements artifact download script to fetch platform-specific binaries from GitHub releases
- Updates GitHub workflow to build and publish packages to PyPI with trusted publishing
Reviewed Changes
Copilot reviewed 10 out of 20 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| packages/python/setup.py | Main setup script for building wheels with platform-specific configurations |
| packages/python/pyproject.toml | Project metadata and build system configuration |
| packages/python/download_artifacts.py | Script to download and extract platform-specific binaries from releases |
| packages/python/README.md | Documentation for the Python package usage and installation |
| packages/python/requirements-dev.txt | Development dependencies for package building |
| packages/python/MANIFEST.in | Package manifest for including additional files |
| packages/python/.gitignore | Git ignore rules for Python package artifacts |
| .github/workflows/python-package.yml | GitHub workflow for building and publishing PyPI packages |
| .github/workflows/main.yml | Minor title update for main workflow |
| README.md | Added Python package installation section |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| ) | ||
| sys.exit(1) | ||
|
|
||
| print(BINARIES_DIR) |
Copilot
AI
Aug 27, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This debug print statement should be removed or replaced with proper logging. It doesn't provide meaningful information to users and clutters the output.
| print(BINARIES_DIR) |
No description provided.