Skip to content

Commit dbd2143

Browse files
aenglanderbporter125
authored andcommitted
Refactor for locking the requirements. (#52)
* Refactor for locking the requirements. Move to Pipfile for requirements. Only seperate full CI suite using Python 3.6. Remove requirements installation of pieces no longer needed. * Add forgotten 2.7 to Travis * Update the README
1 parent af0268e commit dbd2143

8 files changed

+421
-60
lines changed

.travis.yml

+12-13
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,22 @@
1-
language: python
21
dist: xenial
2+
3+
language: python
34
python:
5+
- "2.7"
46
- "3.4"
57
- "3.5"
68
- "3.5-dev"
79
- "3.6"
810
- "3.6-dev"
911
- "3.7"
1012
- "3.7-dev"
13+
- "3.8-dev"
14+
- "nightly"
1115
- "pypy3.5"
16+
1217
env:
13-
- MAKE_RUN=ci
18+
- MAKE_RUN=test
19+
1420
matrix:
1521
fast_finish: true
1622
allow_failures:
@@ -21,21 +27,14 @@ matrix:
2127
- python: nightly
2228

2329
include:
24-
- python: 2.7
25-
env:
26-
- MAKE_RUN=ci-py27
27-
- python: 3.8-dev
30+
- name: CI
31+
python: "3.6"
2832
env:
29-
- MAKE_RUN=ci-py38
30-
- python: nightly
31-
env:
32-
- MAKE_RUN=ci-py38
33+
- MAKE_RUN=ci PIPENV_IGNORE_VIRTUALENVS=1
3334

3435
notifications:
3536
email:
3637
recipients:
3738
- secure: "bdFDE8d50zWO9XWc1gQ4OPDrbvjZXOum1AIchDqwYXr8C7iluJcS2q+z5mczdvHlW3XflcjALl+x81hekdBk+8L6AJuAj5MhTF+HvjFL2EkY7q0V+seLTltYhoqnnlf0BlYGwoILBbDX2p/GYHNUOqWvCtGlJGMpy0qM3R8t5Vw="
38-
install:
39-
- pip install -U 'setuptools>=32.2.0'
40-
- pip install .
39+
4140
script: make ${MAKE_RUN}

Makefile

+19-30
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,38 @@
1-
ci-py27: ci-py2
1+
ci-py27: test
22

3-
ci-pypy: ci-py2
3+
ci-pypy: test
44

5-
ci-py34: ci
5+
ci-py34: test
66

7-
ci-py35: ci
7+
ci-py35: test
88

99
ci-py36: ci
1010

11-
ci-py37: ci
11+
ci-py37: test
1212

13-
ci-py38: tests-py3
13+
ci-py38: test
1414

15-
ci-pypy3: ci
15+
ci-pypy3: test
1616

1717

18-
19-
ci: dependencies-py3 tests-py3 flake8-py3 pylint-py3
20-
21-
ci-py2: tests-py2 flake8-py2 pylint-py2
22-
23-
dependencies-py3:
24-
pip install -r test_requirements.txt
25-
26-
dependencies-py2:
27-
pip install -r test_requirements_py2.txt
18+
ci: dependencies coverage flake8 pylint deps-check
2819

2920
test:
30-
coverage run --source="launchkey" setup.py nosetests
31-
coverage report --fail-under=100
21+
python setup.py test
3222

33-
tests-py2: dependencies-py2 test
23+
dependencies:
24+
pip install --upgrade pipenv
25+
pipenv install --three --dev
3426

35-
tests-py3: dependencies-py3 test
27+
coverage:
28+
pipenv run coverage run --source="launchkey" setup.py nosetests
29+
pipenv run coverage report --fail-under=100
3630

3731
flake8:
38-
flake8 launchkey
39-
40-
flake8-py2: dependencies-py2 flake8
41-
42-
flake8-py3: dependencies-py3 flake8
32+
pipenv run flake8 launchkey
4333

4434
pylint:
45-
pylint launchkey
46-
47-
pylint-py2: dependencies-py2 pylint
35+
pipenv run pylint launchkey
4836

49-
pylint-py3: dependencies-py3 pylint
37+
deps-check:
38+
pipenv check

Pipfile

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
[[source]]
2+
name = "pypi"
3+
url = "https://pypi.org/simple"
4+
verify_ssl = true
5+
6+
[packages]
7+
launchkey = {path = ".", editable = true}
8+
9+
[dev-packages]
10+
# From setup.py tests_require to lock testing requirements
11+
nose = ">= 1.3.0, < 2.0.0"
12+
nose-exclude = ">= 0.5.0, < 1.0.0"
13+
mock = ">= 2.0.0, < 3.0.0"
14+
ddt = ">= 1.1.1, < 2.0.0"
15+
16+
# Tools for static analysis
17+
flake8 = "~=3.6.0"
18+
pylint = "~=2.2.2"
19+
coverage = "~=4.5.2"
20+
astroid = "~=2.1.0" # Remove after pylint is updated to 2.3.0+
21+
22+
# Tools for multi-environment testing before sending to CI
23+
tox = "~=3.7.0"
24+
25+
[requires]
26+
python = "~=3.4"

0 commit comments

Comments
 (0)