Skip to content

build and upload seekdb python wheels#71

Draft
hnwyllmm wants to merge 27 commits intooceanbase:mainfrom
hnwyllmm:main
Draft

build and upload seekdb python wheels#71
hnwyllmm wants to merge 27 commits intooceanbase:mainfrom
hnwyllmm:main

Conversation

@hnwyllmm
Copy link
Member

Summary

support building seekdb embedded packages and uploading python wheels to pypi

Solution Description

When create a tag with name seekdb-python-{tag}-{package-version}, github action will execute release seekdb-pyhton.

Note:

  • tag can be one of github branch, commit id and tag;
  • package-version is the version of python package, for example, 1.0.0.post1, 0.0.1.dev2, 1.0.0.b1

What seekdb-python CI do?

  1. build seekdb packages by cibuildwheel tool;
  2. upload wheels to github artifact;
  3. upload wheels to pypi.org

@hnwyllmm
Copy link
Member Author

@chris-sun-star PTAL

Copy link

Copilot AI left a 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 adds GitHub Actions workflow and Python packaging infrastructure to build and publish seekdb Python wheels to PyPI. When a tag matching seekdb-python-{seekdb-version}-{package-version} is pushed, the workflow automatically builds wheels for multiple Python versions (3.8-3.14) on Linux x86_64 and ARM64 architectures, then publishes them to PyPI.

Key changes:

  • Adds GitHub Actions workflow for automated wheel building and PyPI publishing
  • Implements custom setup.py with CMake-based build process for native library compilation
  • Provides CLI tool for interactive SQL client and test script for validation

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 18 comments.

Show a summary per file
File Description
.github/workflows/release-seekdb-python.yml GitHub Actions workflow that extracts version from tag, builds wheels using cibuildwheel on multiple platforms, and publishes to PyPI
seekdb-python/setup.py Build script that clones seekdb repository, compiles native library, and packages as Python wheel with custom build commands
seekdb-python/init.py Package initialization that dynamically loads the compiled native library and exports its symbols
seekdb-python/README.md Documentation explaining features, installation instructions, and usage examples for the seekdb Python package
seekdb-python/cli.py Interactive SQL command-line client with readline support, special commands, and table formatting
seekdb-python/seekdb_test.py Test script demonstrating vector and full-text search capabilities with hybrid queries

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@hnwyllmm hnwyllmm marked this pull request as draft December 23, 2025 06:16
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