mirror of https://github.com/explosion/spaCy.git
134 lines
3.5 KiB
YAML
134 lines
3.5 KiB
YAML
trigger:
|
|
batch: true
|
|
branches:
|
|
include:
|
|
- '*'
|
|
exclude:
|
|
- 'spacy.io'
|
|
paths:
|
|
exclude:
|
|
- 'website/*'
|
|
- '*.md'
|
|
pr:
|
|
paths:
|
|
exclude:
|
|
- 'website/*'
|
|
- '*.md'
|
|
|
|
jobs:
|
|
|
|
# Perform basic checks for most important errors (syntax etc.) Uses the config
|
|
# defined in .flake8 and overwrites the selected codes.
|
|
- job: 'Validate'
|
|
pool:
|
|
vmImage: 'ubuntu-16.04'
|
|
steps:
|
|
- task: UsePythonVersion@0
|
|
inputs:
|
|
versionSpec: '3.7'
|
|
- script: |
|
|
pip install flake8
|
|
python -m flake8 spacy --count --select=E901,E999,F821,F822,F823 --show-source --statistics
|
|
displayName: 'flake8'
|
|
|
|
- job: 'Test'
|
|
dependsOn: 'Validate'
|
|
strategy:
|
|
matrix:
|
|
Python35Linux:
|
|
imageName: 'ubuntu-16.04'
|
|
python.version: '3.5'
|
|
os: linux
|
|
Python35Windows:
|
|
imageName: 'vs2017-win2016'
|
|
python.version: '3.5'
|
|
# Test on one OS per python 3.6/3.7/3.8 to speed up CI
|
|
Python36Linux:
|
|
imageName: 'ubuntu-16.04'
|
|
python.version: '3.6'
|
|
# Python36Windows:
|
|
# imageName: 'vs2017-win2016'
|
|
# python.version: '3.6'
|
|
# Python36Mac:
|
|
# imageName: 'macos-10.14'
|
|
# python.version: '3.6'
|
|
# Python37Linux:
|
|
# imageName: 'ubuntu-16.04'
|
|
# python.version: '3.7'
|
|
Python37Windows:
|
|
imageName: 'vs2017-win2016'
|
|
python.version: '3.7'
|
|
# Python37Mac:
|
|
# imageName: 'macos-10.14'
|
|
# python.version: '3.7'
|
|
# Python38Linux:
|
|
# imageName: 'ubuntu-16.04'
|
|
# python.version: '3.8'
|
|
# Python38Windows:
|
|
# imageName: 'vs2017-win2016'
|
|
# python.version: '3.8'
|
|
Python38Mac:
|
|
imageName: 'macos-10.14'
|
|
python.version: '3.8'
|
|
Python39Linux:
|
|
imageName: 'ubuntu-16.04'
|
|
python.version: '3.9'
|
|
Python39Windows:
|
|
imageName: 'vs2017-win2016'
|
|
python.version: '3.9'
|
|
Python39Mac:
|
|
imageName: 'macos-10.14'
|
|
python.version: '3.9'
|
|
maxParallel: 4
|
|
pool:
|
|
vmImage: $(imageName)
|
|
|
|
steps:
|
|
- task: UsePythonVersion@0
|
|
inputs:
|
|
versionSpec: '$(python.version)'
|
|
architecture: 'x64'
|
|
|
|
- script: python -m pip install -U pip setuptools
|
|
displayName: 'Update pip'
|
|
|
|
- script: pip install -r requirements.txt --prefer-binary
|
|
displayName: 'Install dependencies (python 3.5: prefer binary)'
|
|
condition: eq(variables['python.version'], '3.5')
|
|
|
|
- script: pip install -r requirements.txt
|
|
displayName: 'Install dependencies'
|
|
condition: not(eq(variables['python.version'], '3.5'))
|
|
|
|
- script: |
|
|
python setup.py build_ext --inplace -j 2
|
|
python setup.py sdist --formats=gztar
|
|
displayName: 'Compile and build sdist'
|
|
|
|
- task: DeleteFiles@1
|
|
inputs:
|
|
contents: 'spacy'
|
|
displayName: 'Delete source directory'
|
|
|
|
- script: |
|
|
pip freeze > installed.txt
|
|
pip uninstall -y -r installed.txt
|
|
displayName: 'Uninstall all packages'
|
|
|
|
- bash: |
|
|
SDIST=$(python -c "import os;print(os.listdir('./dist')[-1])" 2>&1)
|
|
pip install dist/$SDIST --prefer-binary
|
|
displayName: 'Install from sdist (python 3.5: prefer binary)'
|
|
condition: eq(variables['python.version'], '3.5')
|
|
|
|
- bash: |
|
|
SDIST=$(python -c "import os;print(os.listdir('./dist')[-1])" 2>&1)
|
|
pip install dist/$SDIST
|
|
displayName: 'Install from sdist'
|
|
condition: not(eq(variables['python.version'], '3.5'))
|
|
|
|
- script: |
|
|
pip install -r requirements.txt --prefer-binary
|
|
python -m pytest --pyargs spacy
|
|
displayName: 'Run tests'
|