Compare commits
No commits in common. 'master' and 'v0.1.0' have entirely different histories.
12 changed files with 336 additions and 90 deletions
@ -0,0 +1,26 @@ |
|||||||
|
version: '{build}' |
||||||
|
image: Visual Studio 2015 |
||||||
|
platform: |
||||||
|
- x86 |
||||||
|
- x64 |
||||||
|
environment: |
||||||
|
global: |
||||||
|
DISTUTILS_USE_SDK: 1 |
||||||
|
PYTHONWARNINGS: ignore:DEPRECATION |
||||||
|
MSSdk: 1 |
||||||
|
matrix: |
||||||
|
- PYTHON: 36 |
||||||
|
install: |
||||||
|
- cmd: '"%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" %PLATFORM%' |
||||||
|
- ps: | |
||||||
|
if ($env:PLATFORM -eq "x64") { $env:PYTHON = "$env:PYTHON-x64" } |
||||||
|
$env:PATH = "C:\Python$env:PYTHON\;C:\Python$env:PYTHON\Scripts\;$env:PATH" |
||||||
|
python -m pip install --disable-pip-version-check --upgrade --no-warn-script-location pip build virtualenv |
||||||
|
build_script: |
||||||
|
- ps: | |
||||||
|
python -m build -s |
||||||
|
cd dist |
||||||
|
python -m pip install --verbose python_example-0.0.1.tar.gz |
||||||
|
cd .. |
||||||
|
test_script: |
||||||
|
- ps: python tests\test.py |
@ -0,0 +1,16 @@ |
|||||||
|
version: 2 |
||||||
|
updates: |
||||||
|
# Maintain dependencies for GitHub Actions |
||||||
|
- package-ecosystem: "github-actions" |
||||||
|
directory: "/" |
||||||
|
schedule: |
||||||
|
interval: "daily" |
||||||
|
ignore: |
||||||
|
# Official actions have moving tags like v1 |
||||||
|
# that are used, so they don't need updates here |
||||||
|
- dependency-name: "actions/checkout" |
||||||
|
- dependency-name: "actions/setup-python" |
||||||
|
- dependency-name: "actions/cache" |
||||||
|
- dependency-name: "actions/upload-artifact" |
||||||
|
- dependency-name: "actions/download-artifact" |
||||||
|
- dependency-name: "actions/labeler" |
@ -0,0 +1,44 @@ |
|||||||
|
name: Conda |
||||||
|
|
||||||
|
on: |
||||||
|
workflow_dispatch: |
||||||
|
push: |
||||||
|
branches: |
||||||
|
- master |
||||||
|
pull_request: |
||||||
|
|
||||||
|
jobs: |
||||||
|
build: |
||||||
|
strategy: |
||||||
|
fail-fast: false |
||||||
|
matrix: |
||||||
|
platform: [ubuntu-latest, windows-latest, macos-latest] |
||||||
|
python-version: ["3.6", "3.8"] |
||||||
|
|
||||||
|
runs-on: ${{ matrix.platform }} |
||||||
|
|
||||||
|
# The setup-miniconda action needs this to activate miniconda |
||||||
|
defaults: |
||||||
|
run: |
||||||
|
shell: "bash -l {0}" |
||||||
|
|
||||||
|
steps: |
||||||
|
- uses: actions/checkout@v2 |
||||||
|
|
||||||
|
- name: Get conda |
||||||
|
uses: conda-incubator/setup-miniconda@v2.1.1 |
||||||
|
with: |
||||||
|
python-version: ${{ matrix.python-version }} |
||||||
|
channels: conda-forge |
||||||
|
|
||||||
|
- name: Prepare |
||||||
|
run: conda install conda-build conda-verify |
||||||
|
|
||||||
|
- name: Build |
||||||
|
run: conda build conda.recipe |
||||||
|
|
||||||
|
- name: Install |
||||||
|
run: conda install -c ${CONDA_PREFIX}/conda-bld/ python_example |
||||||
|
|
||||||
|
- name: Test |
||||||
|
run: python tests/test.py |
@ -0,0 +1,66 @@ |
|||||||
|
name: Pip |
||||||
|
|
||||||
|
on: |
||||||
|
workflow_dispatch: |
||||||
|
pull_request: |
||||||
|
push: |
||||||
|
branches: |
||||||
|
- master |
||||||
|
|
||||||
|
jobs: |
||||||
|
build: |
||||||
|
strategy: |
||||||
|
fail-fast: false |
||||||
|
matrix: |
||||||
|
platform: [windows-latest, macos-latest, ubuntu-latest] |
||||||
|
python-version: ["3.6", "3.10"] |
||||||
|
|
||||||
|
runs-on: ${{ matrix.platform }} |
||||||
|
|
||||||
|
steps: |
||||||
|
- uses: actions/checkout@v2 |
||||||
|
|
||||||
|
- uses: actions/setup-python@v2 |
||||||
|
with: |
||||||
|
python-version: ${{ matrix.python-version }} |
||||||
|
|
||||||
|
- name: Add requirements |
||||||
|
run: python -m pip install --upgrade wheel setuptools |
||||||
|
|
||||||
|
- name: Build and install |
||||||
|
run: pip install --verbose . |
||||||
|
|
||||||
|
- name: Test |
||||||
|
run: python tests/test.py |
||||||
|
|
||||||
|
build-mingw64: |
||||||
|
runs-on: windows-latest |
||||||
|
defaults: |
||||||
|
run: |
||||||
|
shell: msys2 {0} |
||||||
|
steps: |
||||||
|
- uses: msys2/setup-msys2@v2 |
||||||
|
with: |
||||||
|
update: true |
||||||
|
install: >- |
||||||
|
mingw-w64-x86_64-gcc |
||||||
|
mingw-w64-x86_64-python-pip |
||||||
|
mingw-w64-x86_64-python-wheel |
||||||
|
|
||||||
|
- uses: actions/checkout@v2 |
||||||
|
|
||||||
|
- name: Install pybind11 |
||||||
|
# This is required because --no-build-isolation disable dependences |
||||||
|
# installation |
||||||
|
run: pip install pybind11 |
||||||
|
|
||||||
|
- name: Build and install |
||||||
|
# --no-build-isolation is required because the vanilla setuptool does not |
||||||
|
# support Mingw64.See patches here: |
||||||
|
# https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-python-setuptools |
||||||
|
# Without those patches build_ext fails with: |
||||||
|
# error: --plat-name must be one of ('win32', 'win-amd64', 'win-arm32', 'win-arm64') |
||||||
|
run: pip install --no-build-isolation . |
||||||
|
|
||||||
|
- name: Test |
||||||
|
run: python tests/test.py |
@ -0,0 +1,73 @@ |
|||||||
|
name: Wheels |
||||||
|
|
||||||
|
on: |
||||||
|
workflow_dispatch: |
||||||
|
pull_request: |
||||||
|
push: |
||||||
|
branches: |
||||||
|
- master |
||||||
|
release: |
||||||
|
types: |
||||||
|
- published |
||||||
|
|
||||||
|
jobs: |
||||||
|
build_sdist: |
||||||
|
name: Build SDist |
||||||
|
runs-on: ubuntu-latest |
||||||
|
steps: |
||||||
|
- uses: actions/checkout@v2 |
||||||
|
|
||||||
|
- name: Build SDist |
||||||
|
run: pipx run build --sdist |
||||||
|
|
||||||
|
- name: Check metadata |
||||||
|
run: pipx run twine check dist/* |
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v2 |
||||||
|
with: |
||||||
|
path: dist/*.tar.gz |
||||||
|
|
||||||
|
|
||||||
|
build_wheels: |
||||||
|
name: Wheels on ${{ matrix.os }} |
||||||
|
runs-on: ${{ matrix.os }} |
||||||
|
strategy: |
||||||
|
fail-fast: false |
||||||
|
matrix: |
||||||
|
os: [ubuntu-latest, windows-latest, macos-latest] |
||||||
|
|
||||||
|
steps: |
||||||
|
- uses: actions/checkout@v2 |
||||||
|
|
||||||
|
- uses: pypa/cibuildwheel@v2.4.0 |
||||||
|
env: |
||||||
|
CIBW_ARCHS_MACOS: auto universal2 |
||||||
|
|
||||||
|
- name: Verify clean directory |
||||||
|
run: git diff --exit-code |
||||||
|
shell: bash |
||||||
|
|
||||||
|
- name: Upload wheels |
||||||
|
uses: actions/upload-artifact@v2 |
||||||
|
with: |
||||||
|
path: wheelhouse/*.whl |
||||||
|
|
||||||
|
|
||||||
|
upload_all: |
||||||
|
name: Upload if release |
||||||
|
needs: [build_wheels, build_sdist] |
||||||
|
runs-on: ubuntu-latest |
||||||
|
if: github.event_name == 'release' && github.event.action == 'published' |
||||||
|
|
||||||
|
steps: |
||||||
|
- uses: actions/setup-python@v2 |
||||||
|
|
||||||
|
- uses: actions/download-artifact@v2 |
||||||
|
with: |
||||||
|
name: artifact |
||||||
|
path: dist |
||||||
|
|
||||||
|
- uses: pypa/gh-action-pypi-publish@v1.5.0 |
||||||
|
with: |
||||||
|
user: __token__ |
||||||
|
password: ${{ secrets.pypi_password }} |
@ -0,0 +1,66 @@ |
|||||||
|
# To use: |
||||||
|
# |
||||||
|
# pre-commit run -a |
||||||
|
# |
||||||
|
# Or: |
||||||
|
# |
||||||
|
# pre-commit install # (runs every time you commit in git) |
||||||
|
# |
||||||
|
# To update this file: |
||||||
|
# |
||||||
|
# pre-commit autoupdate |
||||||
|
# |
||||||
|
# See https://github.com/pre-commit/pre-commit |
||||||
|
|
||||||
|
ci: |
||||||
|
autoupdate_commit_msg: "chore: update pre-commit hooks" |
||||||
|
autofix_commit_msg: "style: pre-commit fixes" |
||||||
|
|
||||||
|
repos: |
||||||
|
# Standard hooks |
||||||
|
- repo: https://github.com/pre-commit/pre-commit-hooks |
||||||
|
rev: v4.0.1 |
||||||
|
hooks: |
||||||
|
- id: check-added-large-files |
||||||
|
- id: check-case-conflict |
||||||
|
- id: check-merge-conflict |
||||||
|
- id: check-symlinks |
||||||
|
- id: check-yaml |
||||||
|
exclude: ^conda\.recipe/meta\.yaml$ |
||||||
|
- id: debug-statements |
||||||
|
- id: end-of-file-fixer |
||||||
|
- id: mixed-line-ending |
||||||
|
- id: requirements-txt-fixer |
||||||
|
- id: trailing-whitespace |
||||||
|
|
||||||
|
# Black, the code formatter, natively supports pre-commit |
||||||
|
- repo: https://github.com/psf/black |
||||||
|
rev: 21.9b0 |
||||||
|
hooks: |
||||||
|
- id: black |
||||||
|
files: ^(docs) |
||||||
|
|
||||||
|
# Sort your imports in a standard form |
||||||
|
- repo: https://github.com/PyCQA/isort |
||||||
|
rev: 5.9.3 |
||||||
|
hooks: |
||||||
|
- id: isort |
||||||
|
|
||||||
|
# Upgrade older Python syntax |
||||||
|
- repo: https://github.com/asottile/pyupgrade |
||||||
|
rev: v2.29.0 |
||||||
|
hooks: |
||||||
|
- id: pyupgrade |
||||||
|
args: ["--py36-plus"] |
||||||
|
|
||||||
|
# Changes tabs to spaces |
||||||
|
- repo: https://github.com/Lucas-C/pre-commit-hooks |
||||||
|
rev: v1.1.10 |
||||||
|
hooks: |
||||||
|
- id: remove-tabs |
||||||
|
|
||||||
|
# Suggested hook if you add a .clang-format file |
||||||
|
# - repo: https://github.com/pre-commit/mirrors-clang-format |
||||||
|
# rev: v13.0.0 |
||||||
|
# hooks: |
||||||
|
# - id: clang-format |
@ -0,0 +1,36 @@ |
|||||||
|
language: cpp |
||||||
|
dist: trusty |
||||||
|
matrix: |
||||||
|
include: |
||||||
|
- os: linux |
||||||
|
env: PYTHON=3.8 |
||||||
|
- os: linux |
||||||
|
env: CONDA=3.7 |
||||||
|
before_install: |
||||||
|
- | |
||||||
|
export CXX=g++-4.8 CC=gcc-4.8 |
||||||
|
if [ -n "$PYTHON" ]; then |
||||||
|
python -m pip install --user virtualenv |
||||||
|
virtualenv -p python${PYTHON:0:1} venv |
||||||
|
source venv/bin/activate |
||||||
|
elif [ -n "$CONDA" ]; then |
||||||
|
wget -O miniconda.sh https://repo.continuum.io/miniconda/Miniconda${CONDA:0:1}-latest-Linux-x86_64.sh |
||||||
|
bash miniconda.sh -b -p $HOME/miniconda |
||||||
|
export PATH="$HOME/miniconda/bin:$PATH" |
||||||
|
conda config --set always_yes yes --set changeps1 no |
||||||
|
conda config --add channels conda-forge |
||||||
|
conda update -q conda |
||||||
|
conda install -q conda-build |
||||||
|
conda create -q -n test-environment python=$CONDA |
||||||
|
source activate test-environment |
||||||
|
fi |
||||||
|
install: |
||||||
|
- | |
||||||
|
if [ -n "$PYTHON" ]; then |
||||||
|
python -m pip install . |
||||||
|
elif [ -n "$CONDA" ]; then |
||||||
|
conda build conda.recipe --python $CONDA |
||||||
|
conda install --use-local python_example |
||||||
|
fi |
||||||
|
script: |
||||||
|
- python tests/test.py |
Binary file not shown.
Binary file not shown.
Loading…
Reference in new issue