Skip to content

Commit 15a1417

Browse files
committed
Merge branch 'fix-distribution'
* fix-distribution: ci: Automatically upload wheels to PyPi when publishing a tag ci: Disable Python 3.7 not yet available in appveyor image ci: Fix python 3.4 windows build updating version of setuptools tests: Attempt to fix test_source_distribution flake8: Accept line up to 120 chars, exclude ninja/ninja_syntax.py circleci: Support building Python 3.7 distributions gitignore: exclude ninja/ninja_syntax.py gitignore: Add pytest_cache sdist: Simplify distribution building style: Add comment in CMakeLists, display configuration summary Fix building of source distribution and add test_distribution circleci: Remove python 3.3 support and switch to CircleCI 2.0 appveyor/travis: Remove python 3.3 support, add support for python 3.7 cmake: Fix dependency between build_ninja and download_ninja_source ci: Simplify configuration of macOS platform test: Fix execution of tests from source tree using latest scikit-build setup.py: Fix install using pip >= 10 removing using of parse_requirements
2 parents b533d36 + 67cc509 commit 15a1417

18 files changed

+388
-186
lines changed

.circleci-matrix.yml

Lines changed: 0 additions & 19 deletions
This file was deleted.

.circleci/config.yml

Lines changed: 172 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,172 @@
1+
version: 2
2+
3+
references:
4+
5+
ci_steps: &ci_steps
6+
working_directory: /work
7+
steps:
8+
- checkout
9+
- run:
10+
name: Run CI
11+
command: |
12+
#
13+
# Set UPLOAD_SDIST environment variable
14+
#
15+
export UPLOAD_SDIST=$(echo ${CIRCLE_JOB} | cut -d"_" -f3)
16+
echo "UPLOAD_SDIST [${UPLOAD_SDIST}]"
17+
#
18+
# Run CI
19+
#
20+
export MANYLINUX_PYTHON=$(echo ${CIRCLE_JOB} | cut -d"_" -f2)
21+
echo "MANYLINUX_PYTHON [${MANYLINUX_PYTHON}]"
22+
/opt/python/${MANYLINUX_PYTHON}/bin/pip install scikit-ci
23+
/opt/python/${MANYLINUX_PYTHON}/bin/ci
24+
- persist_to_workspace:
25+
root: ./
26+
paths:
27+
- dist
28+
29+
x64_build_job: &x64_build_job
30+
docker:
31+
- image: dockcross/manylinux-x64
32+
<<: *ci_steps
33+
34+
x86_build_job: &x86_build_job
35+
docker:
36+
- image: dockcross/manylinux-x86
37+
<<: *ci_steps
38+
39+
no_filters: &no_filters
40+
filters:
41+
tags:
42+
only: /.*/
43+
44+
jobs:
45+
46+
# x64
47+
manylinux-x64_cp27-cp27m:
48+
<<: *x64_build_job
49+
manylinux-x64_cp27-cp27mu:
50+
<<: *x64_build_job
51+
manylinux-x64_cp34-cp34m:
52+
<<: *x64_build_job
53+
manylinux-x64_cp35-cp35m:
54+
<<: *x64_build_job
55+
manylinux-x64_cp36-cp36m:
56+
<<: *x64_build_job
57+
manylinux-x64_cp37-cp37m_upload-sdist:
58+
<<: *x64_build_job
59+
60+
# x86
61+
manylinux-x86_cp27-cp27m:
62+
<<: *x86_build_job
63+
manylinux-x86_cp27-cp27mu:
64+
<<: *x86_build_job
65+
manylinux-x86_cp34-cp34m:
66+
<<: *x86_build_job
67+
manylinux-x86_cp35-cp35m:
68+
<<: *x86_build_job
69+
manylinux-x86_cp36-cp36m:
70+
<<: *x86_build_job
71+
manylinux-x86_cp37-cp37m:
72+
<<: *x86_build_job
73+
74+
deploy-master:
75+
docker:
76+
- image: circleci/python:3.7.0-stretch
77+
steps:
78+
- attach_workspace:
79+
at: ./
80+
- run:
81+
name: Deploy master
82+
command: |
83+
echo "Deploy master (not implemented)"
84+
85+
deploy-release:
86+
docker:
87+
- image: circleci/python:3.7.0-stretch
88+
steps:
89+
- attach_workspace:
90+
at: ./
91+
- run:
92+
name: Deploy release
93+
command: |
94+
echo "Deploy release"
95+
python -m venv ../venv
96+
. ../venv/bin/activate
97+
pip install twine
98+
ls dist
99+
twine upload -u $PYPI_USER -p $PYPI_PASSWORD --skip-existing dist/*
100+
101+
workflows:
102+
version: 2
103+
build-test-deploy:
104+
jobs:
105+
# x64
106+
- manylinux-x64_cp27-cp27m:
107+
<<: *no_filters
108+
- manylinux-x64_cp27-cp27mu:
109+
<<: *no_filters
110+
- manylinux-x64_cp34-cp34m:
111+
<<: *no_filters
112+
- manylinux-x64_cp35-cp35m:
113+
<<: *no_filters
114+
- manylinux-x64_cp36-cp36m:
115+
<<: *no_filters
116+
- manylinux-x64_cp37-cp37m_upload-sdist:
117+
<<: *no_filters
118+
# x86
119+
- manylinux-x86_cp27-cp27m:
120+
<<: *no_filters
121+
- manylinux-x86_cp27-cp27mu:
122+
<<: *no_filters
123+
- manylinux-x86_cp34-cp34m:
124+
<<: *no_filters
125+
- manylinux-x86_cp35-cp35m:
126+
<<: *no_filters
127+
- manylinux-x86_cp36-cp36m:
128+
<<: *no_filters
129+
- manylinux-x86_cp37-cp37m:
130+
<<: *no_filters
131+
132+
- deploy-master:
133+
requires:
134+
# x64
135+
- manylinux-x64_cp27-cp27m
136+
- manylinux-x64_cp27-cp27mu
137+
- manylinux-x64_cp34-cp34m
138+
- manylinux-x64_cp35-cp35m
139+
- manylinux-x64_cp36-cp36m
140+
- manylinux-x64_cp37-cp37m_upload-sdist
141+
# x86
142+
- manylinux-x86_cp27-cp27m
143+
- manylinux-x86_cp27-cp27mu
144+
- manylinux-x86_cp34-cp34m
145+
- manylinux-x86_cp35-cp35m
146+
- manylinux-x86_cp36-cp36m
147+
- manylinux-x86_cp37-cp37m
148+
filters:
149+
branches:
150+
only: master
151+
- deploy-release:
152+
requires:
153+
# x64
154+
- manylinux-x64_cp27-cp27m
155+
- manylinux-x64_cp27-cp27mu
156+
- manylinux-x64_cp34-cp34m
157+
- manylinux-x64_cp35-cp35m
158+
- manylinux-x64_cp36-cp36m
159+
- manylinux-x64_cp37-cp37m_upload-sdist
160+
# x86
161+
- manylinux-x86_cp27-cp27m
162+
- manylinux-x86_cp27-cp27mu
163+
- manylinux-x86_cp34-cp34m
164+
- manylinux-x86_cp35-cp35m
165+
- manylinux-x86_cp36-cp36m
166+
- manylinux-x86_cp37-cp37m
167+
filters:
168+
tags:
169+
only: /^[0-9]+(\.[0-9]+)*(\.post[0-9]+)?$/
170+
branches:
171+
ignore: /.*/
172+

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# This project
22
src
33
archive-cache
4+
ninja/ninja_syntax.py
5+
ninja/data/*
46
_skbuild
57
MANIFEST
68

@@ -33,6 +35,7 @@ pip-log.txt
3335
# Unit test / coverage reports
3436
.cache
3537
.coverage
38+
.pytest_cache
3639
.tox
3740
coverage.xml
3841
htmlcov

.travis.yml

Lines changed: 35 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
21
branches:
32
only:
43
- master
4+
- /^[0-9]+(\.[0-9]+)*(\.post[0-9]+)?$/
55

66
language: python
77

@@ -11,40 +11,41 @@ matrix:
1111
- os: osx
1212
language: generic
1313
env:
14-
- PYTHON_VERSION=3.6.1
14+
- PYTHON_VERSION=3.7.0
1515

1616
- os: osx
1717
language: generic
1818
env:
19-
- PYTHON_VERSION=3.5.2
19+
- PYTHON_VERSION=3.6.5
2020

2121
- os: osx
2222
language: generic
2323
env:
24-
- PYTHON_VERSION=3.4.5
24+
- PYTHON_VERSION=3.5.5
2525

2626
- os: osx
2727
language: generic
2828
env:
29-
- PYTHON_VERSION=3.3.6
29+
- PYTHON_VERSION=3.4.8
3030

3131
- os: osx
3232
language: generic
3333
env:
34-
- PYTHON_VERSION=2.7.12
34+
- PYTHON_VERSION=2.7.15
3535

3636
cache:
3737
directories:
38-
- $HOME/.pyenv/versions/3.6.1
39-
- $HOME/.pyenv/versions/3.5.2
40-
- $HOME/.pyenv/versions/3.4.5
41-
- $HOME/.pyenv/versions/3.3.6
42-
- $HOME/.pyenv/versions/2.7.12
38+
- $HOME/.pyenv/versions/3.7.0
39+
- $HOME/.pyenv/versions/3.6.5
40+
- $HOME/.pyenv/versions/3.5.5
41+
- $HOME/.pyenv/versions/3.4.8
42+
- $HOME/.pyenv/versions/2.7.15
4343
- $HOME/downloads
4444

4545
before_install:
46-
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then mkdir $HOME/bin; ln -s $(which pip2) $HOME/bin/pip; fi
47-
- pip install scikit-ci==0.13.0 scikit-ci-addons==0.11.0
46+
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then mkdir $HOME/bin; ln -s $(which pip2) $HOME/bin/pip; ln -s $(which python2) $HOME/bin/python; fi
47+
- python -m pip install --disable-pip-version-check --upgrade pip
48+
- pip install -U scikit-ci scikit-ci-addons
4849
- ci_addons --install ../addons
4950

5051
install:
@@ -55,6 +56,26 @@ script:
5556

5657
after_success:
5758
- ci after_test
59+
60+
deploy:
61+
# deploy-release
62+
- provider: script
63+
script: pwd && ls dist;echo "deploy-release" && ~/.pyenv/versions/${PYTHON_VERSION}/bin/twine -u $PYPI_USER -p $PYPI_PASSWORD --skip-existing dist/*
64+
skip_cleanup: true
65+
on:
66+
repo: ${TRAVIS_REPO_SLUG}
67+
tags: true
68+
# deploy-master
69+
- provider: script
70+
script: pwd && ls dist;echo "deploy-master" && echo "not implemented"
71+
skip_cleanup: true
72+
on:
73+
repo: ${TRAVIS_REPO_SLUG}
74+
branch: master
75+
5876
env:
5977
global:
60-
secure: sgcVf6bqGdG6xg0wNKzYPbFekcW5O5y0TBGki+NPh3OtdFiQGkTEVaY/hAhjxsl5UEVIuOItj0RHz99CcKUzdGjQkC7AielE7/6yNrXJDXjXhpXqJhnrDmkLS4VZUdLu+h3uzum5mU+jrGn8yvpuFctTvHI7r2GYGyreBtX6iwNXPP+MgVpb5OX6TH70knu2hSfnG7464tAKk77zFZc13hARWma4cO1Ax6iuKetEOL39raVqskGvMnzMzh98DmWYqkMwCzPNpV30C16j8yXNjQ9JKExvHv90lrZCC/ZI5xJkjO9VLR5onYVz/lYwMWB2lO6zBh66I4r9K39hCk15BPalINah3oryONCAEmjNpU5mOZfRlqqXMl/1vVlJf/wHwdqN851JpTgdyQ+iTiPvC1Je16SbK74dSm9T7nlMQkCIZJmIDiSpljDlBzpGZtiXBKEXYcCJSn5hEAeW34SP4h5kgFeFF4W0hLgZWjBOj+0WEwrIy0hobJ/UxhXkZkDcB7Q26QeCFz52K+la9qjh1zyUV5iHpIDlUhOEJ8pMGSmVmOw6k5h0+V4hNei3Hbi4KQu+GfYpmNNVfx1Dxx+/In1F02nT5s662CsrdgBPwzqsFtJBGylcEkiDUuKZ6Q7l5AjMK6bhbLh6dg5ejWaw2d+pCT/5orZk0HP006jwdF0=
78+
# PYPI_USER
79+
- secure: "Xejg5qGnAyo3G+/TaaAr1uHzDv9GLo3mxi6Aw/hZc9gF9lYix1TvkfE6GEBKdPgSLJSqF9NJrwKTt37XH1DjSRLG+qw6Bt1goi5Bkugdk+SC5qmMkvAoG0EKyD119WS4ObrpzqAFcOQqG+4F6iDkSuJLA+dzA3yAzTME4pkhr/2dn0krOSqIcTlgifPwhEaMgo//WRT2dEBM5dWoehXsEMD7VMOUyC0DlV15lKTPKSzTrDEUPU7UFnXgIqZM/brEPbWPQr5Jzgu7BeBk6bmPiiYeh28Cq2juzOzA+JWcGgJmXOfsImYwYuAWZrf0pkE0uQjLySvIBKT7phJv05eNqIxmv/wHK1BPcyMV+2IgFR4+f5ty6C4VUV0hT0HvHr3pMa/8A/5wSNCShEAMTHrwPM5VPWFJtUKTtS5+wwNQDI39MLk/vr9ZTo+y3WJHPaRR0nRpbA3nXFHSqoJJunoMyeI8x9cXZvJ9IENMxGuo3CfBT5RGZamfqSTgn6NjL51ArIMKpvUfm3tXTtlvCHenED1ZQeJI1nWZEalxl8pTyAZoA8S1+h8wraZrUPzhM0QuVpw7vZQeOYu2VSdHO46yxUWoQyb+JWrDTN7EC8vOl7QQzIQlqOWJB5uDJD7UlKKtneTHJrdfXvGxS/hf+Y+hFZK7r+/PDPS6aQjSNDyy+js="
80+
# PYPI_PASSWORD
81+
- secure: "iEHYaOC/yivDupsbRzohWYCwFMZbCfT2hYOM96akQtOfd1d37rqFCFjDKr3BNyvHyHzj+uNQ7IblynWAqu3cax2Z8b9YuIFXFAslD76IIgeIhxmi8jPtamMK0NBXam/LEL49EIVXUnwVZrWjnLcJxVaBHGS/9Ft3zWP5Gspa4G1yAJDhNfs+jrFipxO4DOBie9mGI2jFdbFRgcCYoY6Jo4y95zxUG1YF5e+8sUobLoBgVqyaJP4SP/Zu/4CEWMfJev8EjLBzzkoPwOU+hC09qwf2FQCvBXFrudpjPpY23WDFeKf+LcMoW9tIoUmP6UJcQibqHeidimrbo9jST0+wTo1NYjrvriKrlMho/QS4iYkd5N6DGUrhSXEMSiqfdMjVGDZ00wvCsT3DwqE9eG7K+Kw09enchjcZcggZIt9crqZPJg3GMdSwPYTlRpf2OQmE4OHL3pN5dSH5Es/sb0X1G6JQgB/2Ia9Aks2ywYEdzUZhbMqfLVx75bVS4bLfYMAMhE/j7NxpYaUlVkFhz3srLhnrYyAcvCQ6XF4cSeFfxD1ie62/qFIF/QH5u76t91uURHygvNdyJCNHhVJnnWgN9kPsJxfyfdOC2Dnrz/jJcw5irsgQVO2/K4iyGyBVoOqwwpymjoCkxB8capEoLRNLcwyQqCTBnMtGykyRYF2I7FA="

0 commit comments

Comments
 (0)