Skip to content

Prepapre version 0.9.2.3 #61

Prepapre version 0.9.2.3

Prepapre version 0.9.2.3 #61

Workflow file for this run

name: Wheel build
on:
push:
branches: ["main"]
tags:
- "v*.*.*"
pull_request:
branches: ["main"]
jobs:
sdist:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Install Python dependencies
run: python -m pip install -U pip setuptools wheel
- name: Build docs and sdist
run: make sdist
env: { STATIC_DEPS: false }
- name: Upload sdist
uses: actions/upload-artifact@v4
with:
name: sdist
path: dist/*.tar.gz
Linux:
runs-on: ubuntu-latest
strategy:
# Allows for matrix sub-jobs to fail without canceling the rest
fail-fast: false
matrix:
image:
# see
# * https://github.com/pypa/manylinux#docker-images
# * https://quay.io/organization/pypa
# * manylinux1: https://github.com/pypa/manylinux/issues/994#issuecomment-787013983
- manylinux2014_x86_64
- manylinux2014_i686
- manylinux2014_aarch64
- manylinux1_x86_64
- manylinux1_i686
- musllinux_1_1_x86_64
- musllinux_1_1_i686
- musllinux_1_1_aarch64
- musllinux_1_2_armv7l
pyversion: ["*"]
exclude:
- image: manylinux2014_aarch64
pyversion: "*"
- image: musllinux_1_1_aarch64
pyversion: "*"
include:
- image: manylinux2014_aarch64
pyversion: "cp39*"
- image: manylinux2014_aarch64
pyversion: "cp310*"
- image: manylinux2014_aarch64
pyversion: "cp311*"
- image: manylinux2014_aarch64
pyversion: "cp312*"
- image: manylinux2014_aarch64
pyversion: "cp313*"
- image: musllinux_1_1_aarch64
pyversion: "cp39*"
- image: musllinux_1_1_aarch64
pyversion: "cp310*"
- image: musllinux_1_1_aarch64
pyversion: "cp311*"
- image: musllinux_1_1_aarch64
pyversion: "cp312*"
- image: musllinux_1_1_aarch64
pyversion: "cp313*"
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Install dependencies
run: python -m pip install .
- name: Build Linux wheels
run: make sdist wheel_${{ matrix.image }}
env: { STATIC_DEPS: true, PYTHON_BUILD_VERSION: "${{ matrix.pyversion }}" }
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: wheels-${{ matrix.image }}
path: wheelhouse/*/*-m*linux*.whl # manylinux / musllinux
if-no-files-found: ignore
non-Linux:
strategy:
# Allows for matrix sub-jobs to fail without canceling the rest
fail-fast: false
matrix:
os: [macos-latest, windows-2019]
python_version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
runs-on: ${{ matrix.os }}
env: { MACOSX_DEPLOYMENT_TARGET: 10.15 }
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python_version }}
- name: Install MacOS dependencies
if: startsWith(matrix.os, 'mac')
run: |
brew install automake libtool
ln -s /usr/local/bin/glibtoolize /usr/local/bin/libtoolize
- name: Build wheels
run: make sdist wheel
env: { STATIC_DEPS: true }
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
name: wheels-${{ matrix.os }}
path: dist/fasttext_predict-*.whl
if-no-files-found: ignore
release:
name: Release
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/')
needs: [ sdist, Linux, non-Linux ]
steps:
- uses: actions/download-artifact@v4
with:
path: artifacts
- uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Display structure of downloaded files
run: |
ls -R
mkdir dist
mv artifacts/sdist/*.tar.gz dist
mv artifacts/*/*/*.whl dist
mv artifacts/*/*.whl dist
- name: Publish to PyPi
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
run: |
pip install --upgrade wheel pip setuptools twine
twine upload --skip-existing dist/*
- name: Release
uses: softprops/action-gh-release@v2
with:
files: dist/*