mirror of
https://github.com/lancedb/lancedb.git
synced 2025-12-27 15:12:53 +00:00
This changes `lancedb` from a "pure python" setuptools project to a maturin project and adds a rust lancedb dependency. The async python client is extremely minimal (only `connect` and `Connection.table_names` are supported). The purpose of this PR is to get the infrastructure in place for building out the rest of the async client. Although this is not technically a breaking change (no APIs are changing) it is still a considerable change in the way the wheels are built because they now include the native shared library.
34 lines
1012 B
YAML
34 lines
1012 B
YAML
# We create a composite action to be re-used both for testing and for releasing
|
|
name: build_wheel
|
|
description: "Build a lance wheel"
|
|
inputs:
|
|
python-minor-version:
|
|
description: "8, 9, 10, 11"
|
|
required: true
|
|
args:
|
|
description: "--release"
|
|
required: false
|
|
default: ""
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- name: Install Protoc v21.12
|
|
working-directory: C:\
|
|
run: |
|
|
New-Item -Path 'C:\protoc' -ItemType Directory
|
|
Set-Location C:\protoc
|
|
Invoke-WebRequest https://github.com/protocolbuffers/protobuf/releases/download/v21.12/protoc-21.12-win64.zip -OutFile C:\protoc\protoc.zip
|
|
7z x protoc.zip
|
|
Add-Content $env:GITHUB_PATH "C:\protoc\bin"
|
|
shell: powershell
|
|
- name: Build wheel
|
|
uses: PyO3/maturin-action@v1
|
|
with:
|
|
command: build
|
|
args: ${{ inputs.args }}
|
|
working-directory: python
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: windows-wheels
|
|
path: python\target\wheels
|