From 1b84c160ff750d1f55a4a35ffc2e26752f7f4e1c Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Sun, 18 May 2025 23:14:44 -0400 Subject: [PATCH 01/22] Refs #265. Initial attempt at using GH actions for tests --- .github/workflows/ci.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..40711ddd --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,23 @@ +name: CI + +on: + push: + +jobs: + test: + runs-on: ubuntu-latest + + strategy: + matrix: + python-version: [2.7, 3.6, 3.7] + + steps: + - uses: actions/checkout@v4 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: pip install --requirement requirements/testing.txt + - name: Run tests + run: nosetests --with-doctest [] From c677ab99a153411129de89f6d52486749aad098d Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Sun, 18 May 2025 23:20:57 -0400 Subject: [PATCH 02/22] Refs #265. Try using docker images for legacy pythons --- .github/workflows/ci.yml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 40711ddd..8c38e0bc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,11 +6,17 @@ on: jobs: test: runs-on: ubuntu-latest - strategy: - matrix: - python-version: [2.7, 3.6, 3.7] - + matrix: + include: + - python-version: 2.7 + image: python:2.7-slim + - python-version: 3.6 + image: python:3.6-slim + - python-version: 3.7 + image: python:3.7-slim + container: + image: python:${{ matrix.python-version }}-slim steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} From d42198e0c3b89191ac0f46ab4d6fd914af2ff66a Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Sun, 18 May 2025 23:22:27 -0400 Subject: [PATCH 03/22] Refs 265. No need to setup python now --- .github/workflows/ci.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8c38e0bc..63d86bac 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,10 +19,8 @@ jobs: image: python:${{ matrix.python-version }}-slim steps: - uses: actions/checkout@v4 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 - with: - python-version: ${{ matrix.python-version }} + - name: Check python version + run: python --version - name: Install dependencies run: pip install --requirement requirements/testing.txt - name: Run tests From 802bfea1dc5d0e5366f80d7187d3a8e484369c3d Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Sun, 18 May 2025 23:24:47 -0400 Subject: [PATCH 04/22] Refs #265. Another try --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 63d86bac..406328b8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,4 +24,4 @@ jobs: - name: Install dependencies run: pip install --requirement requirements/testing.txt - name: Run tests - run: nosetests --with-doctest [] + run: nosetests --with-doctest From 5ee065997e0189f442357abbe2c7ea9db269b863 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Sun, 18 May 2025 23:32:43 -0400 Subject: [PATCH 05/22] Refs #265. Install pydocx --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 406328b8..1d31e7c2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,5 +23,7 @@ jobs: run: python --version - name: Install dependencies run: pip install --requirement requirements/testing.txt + - name: Install PyDocX + run: pip install -e .[dev] # editable install so CLI entry points are available - name: Run tests run: nosetests --with-doctest From 16e512e8b1bc1d505e7c4dc2e0ef10e1aa7fba1c Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Sun, 18 May 2025 23:41:46 -0400 Subject: [PATCH 06/22] Refs #265. Include defusedxml --- .github/workflows/ci.yml | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1d31e7c2..555e2ade 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,25 +4,38 @@ on: push: jobs: - test: + legacy: runs-on: ubuntu-latest strategy: - matrix: - include: - - python-version: 2.7 - image: python:2.7-slim - - python-version: 3.6 - image: python:3.6-slim - - python-version: 3.7 - image: python:3.7-slim + matrix: + python: [2.6, 2.7, 3.3, 3.4, 3.6, 3.7] + defusedxml: [none, 0.4.1] + include: + - python: 2.6 + image: python:2.6-slim + - python: 2.7 + image: python:2.7-slim + - python: 3.3 + image: python:3.3-slim + - python: 3.4 + image: python:3.4-slim + - python: 3.6 + image: python:3.6-slim + - python: 3.7 + image: python:3.7-slim + container: - image: python:${{ matrix.python-version }}-slim + image: ${{ matrix.image }} + steps: - uses: actions/checkout@v4 - name: Check python version run: python --version - name: Install dependencies run: pip install --requirement requirements/testing.txt + - name: Install defusedxml if specified + if: ${{ matrix.defusedxml != 'none' }} + run: pip install defusedxml==${{ matrix.defusedxml }} - name: Install PyDocX run: pip install -e .[dev] # editable install so CLI entry points are available - name: Run tests From 235eeb39191b4a9366d0d13d37af73e5ba56b274 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Sun, 18 May 2025 23:46:27 -0400 Subject: [PATCH 07/22] Refs #265. Can't test on python 2.6 for now --- .github/workflows/ci.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 555e2ade..4c8af894 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,11 +8,9 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python: [2.6, 2.7, 3.3, 3.4, 3.6, 3.7] + python: [2.7, 3.3, 3.4, 3.6, 3.7] defusedxml: [none, 0.4.1] include: - - python: 2.6 - image: python:2.6-slim - python: 2.7 image: python:2.7-slim - python: 3.3 From 95158fd6e2df317f7feae1322addf4c92ed83a79 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 10:22:45 -0400 Subject: [PATCH 08/22] Try again with continue-on-error set and additional pythons to determine which ones work --- .github/workflows/ci.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4c8af894..d6512bfc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,10 +6,11 @@ on: jobs: legacy: runs-on: ubuntu-latest + continue-on-error: true strategy: matrix: - python: [2.7, 3.3, 3.4, 3.6, 3.7] - defusedxml: [none, 0.4.1] + python: [2.7, 3.3, 3.4, 3.6, 3.7, 3.8, 3.10] + defusedxml: [none] include: - python: 2.7 image: python:2.7-slim @@ -21,6 +22,10 @@ jobs: image: python:3.6-slim - python: 3.7 image: python:3.7-slim + - python: 3.8 + image: python:3.8-slim + - python: 3.10 + image: python:3.10-slim container: image: ${{ matrix.image }} From 4cc0190ed72a3f824cb9d32ced2dbebd479ae0b1 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 10:45:16 -0400 Subject: [PATCH 09/22] Drop 3.10 for now --- .github/workflows/ci.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d6512bfc..a191fab9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,7 +9,7 @@ jobs: continue-on-error: true strategy: matrix: - python: [2.7, 3.3, 3.4, 3.6, 3.7, 3.8, 3.10] + python: [2.7, 3.3, 3.4, 3.6, 3.7, 3.8] defusedxml: [none] include: - python: 2.7 @@ -24,8 +24,6 @@ jobs: image: python:3.7-slim - python: 3.8 image: python:3.8-slim - - python: 3.10 - image: python:3.10-slim container: image: ${{ matrix.image }} From 498dace518108f3545f6c4343ecf5e61eaf699b6 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 10:46:24 -0400 Subject: [PATCH 10/22] Drop 3.3 and 3.4 and add back defusedxml --- .github/workflows/ci.yml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a191fab9..e2bffe86 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,15 +9,11 @@ jobs: continue-on-error: true strategy: matrix: - python: [2.7, 3.3, 3.4, 3.6, 3.7, 3.8] - defusedxml: [none] + python: [2.7, 3.6, 3.7, 3.8] + defusedxml: [none, 0.4.1] include: - python: 2.7 image: python:2.7-slim - - python: 3.3 - image: python:3.3-slim - - python: 3.4 - image: python:3.4-slim - python: 3.6 image: python:3.6-slim - python: 3.7 From b64a394ef8d332c45ca2fd02dcb4520d1230d4e5 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 11:46:43 -0400 Subject: [PATCH 11/22] Refs #265. Try to test against python 2.7, 3.3 and 3.4 --- .github/workflows/ci.yml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e2bffe86..91bdf9f7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,6 +4,36 @@ on: push: jobs: + superlegacy: + runs-on: ubuntu-latest + + strategy: + matrix: + python-version: [2.6, 3.3, 3.4] + include: + - python-version: 2.6 + image: cronosmobi/python2.6 + - python-version: 3.3 + image: python:3.3-slim + - python-version: 3.4 + image: python:3.4-slim + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Run tests in Python ${{ matrix.python-version }} + uses: addnab/docker-run-action@v3 + with: + image: ${{ matrix.image }} + options: -v ${{ github.workspace }}:/workspace + run: | + cd /workspace + python --version + pip install -r requirements.txt + pip install -e . + nosetests --with-doctest + legacy: runs-on: ubuntu-latest continue-on-error: true From 6ca639492fb995f92577d54d12c5ca9aae374473 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 11:47:00 -0400 Subject: [PATCH 12/22] Refs #265. Drop the defusedxml tests for now --- .github/workflows/ci.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 91bdf9f7..839d2444 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -40,7 +40,6 @@ jobs: strategy: matrix: python: [2.7, 3.6, 3.7, 3.8] - defusedxml: [none, 0.4.1] include: - python: 2.7 image: python:2.7-slim @@ -60,9 +59,6 @@ jobs: run: python --version - name: Install dependencies run: pip install --requirement requirements/testing.txt - - name: Install defusedxml if specified - if: ${{ matrix.defusedxml != 'none' }} - run: pip install defusedxml==${{ matrix.defusedxml }} - name: Install PyDocX run: pip install -e .[dev] # editable install so CLI entry points are available - name: Run tests From 959f5dc72a50ed1460d317aabb6565a9cc09afb3 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 12:39:25 -0400 Subject: [PATCH 13/22] Refs #265. Fix typo --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 839d2444..d2fc4dcb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,7 +30,7 @@ jobs: run: | cd /workspace python --version - pip install -r requirements.txt + pip install --requirement requirements/testing.txt pip install -e . nosetests --with-doctest From 7ecbefafd42f10abaf93cc039b8c14895e7872cd Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 12:47:16 -0400 Subject: [PATCH 14/22] Refs #265. continue on error so I can see how they all fail --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d2fc4dcb..ec4161c1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,7 +6,7 @@ on: jobs: superlegacy: runs-on: ubuntu-latest - + continue-on-error: true strategy: matrix: python-version: [2.6, 3.3, 3.4] From ab0e8b3ecf9c546c54dd1a30788649a7f1a3be36 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 12:55:02 -0400 Subject: [PATCH 15/22] Refs #265. Explicitly pin older packages compatible with these legacy pythons --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ec4161c1..c6a58da5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,7 +30,7 @@ jobs: run: | cd /workspace python --version - pip install --requirement requirements/testing.txt + pip install Jinja2==2.10 MarkupSafe<2.0 coverage==3.6 nose==1.30 flake8==2.6.2 pip install -e . nosetests --with-doctest From 6f4d2e5e758f28d0a0bee2c8cf801953df8d098f Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 12:55:25 -0400 Subject: [PATCH 16/22] Refs #265. Pin flake8 to the version that was supported in Feb 2017 --- requirements/testing.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/testing.txt b/requirements/testing.txt index 77421ff8..e9a0d28b 100644 --- a/requirements/testing.txt +++ b/requirements/testing.txt @@ -1,4 +1,4 @@ Jinja2>=2.0 coverage==3.6 nose==1.3.0 -flake8 +flake8==3.3.0 From 22d5261185858a19032e2ea52e0957d625de3557 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 12:57:53 -0400 Subject: [PATCH 17/22] Refs #265. quote all the things --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c6a58da5..f24da100 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,7 +30,7 @@ jobs: run: | cd /workspace python --version - pip install Jinja2==2.10 MarkupSafe<2.0 coverage==3.6 nose==1.30 flake8==2.6.2 + pip install "Jinja2==2.10" "MarkupSafe<2.0" "coverage==3.6" "nose==1.30" "flake8==2.6.2" pip install -e . nosetests --with-doctest From 2e6fd059ace55e3207209a7892aecaad14152df2 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 13:00:02 -0400 Subject: [PATCH 18/22] Refs #265. try using trusted host --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f24da100..84d0fff9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,7 +30,7 @@ jobs: run: | cd /workspace python --version - pip install "Jinja2==2.10" "MarkupSafe<2.0" "coverage==3.6" "nose==1.30" "flake8==2.6.2" + pip install --trusted-host pypi.org --index-url=http://pypi.org/simple "Jinja2==2.10" "MarkupSafe<2.0" "coverage==3.6" "nose==1.30" "flake8==2.6.2" pip install -e . nosetests --with-doctest From 6b71feb41168f941e94c692829d3712b87f0aef2 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 13:24:43 -0400 Subject: [PATCH 19/22] Refs #265. install all the testing deps manually since we cannot use pypi with old pip --- .github/workflows/ci.yml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 84d0fff9..645997da 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,8 +30,17 @@ jobs: run: | cd /workspace python --version - pip install --trusted-host pypi.org --index-url=http://pypi.org/simple "Jinja2==2.10" "MarkupSafe<2.0" "coverage==3.6" "nose==1.30" "flake8==2.6.2" - pip install -e . + wget \ + https://files.pythonhosted.org/packages/65/e0/eb35e762802015cab1ccee04e8a277b03f1d8e53da3ec3106882ec42558b/Jinja2-2.10.3-py2.py3-none-any.whl \ + https://files.pythonhosted.org/packages/4d/de/32d741db316d8fdb7680822dd37001ef7a448255de9699ab4bfcbdf4172b/MarkupSafe-1.0.tar.gz \ + https://files.pythonhosted.org/packages/d2/2d/e15d38b0a34a3e88e3c164a7ec04ed43f45869c20304db13875b24002506/coverage-3.6.tar.gz \ + https://files.pythonhosted.org/packages/79/61/6b0f82f55dd2307439ae89a92550458633221a652d75b49608a77071c2be/nose-1.3.4-py2-none-any.whl \ + https://files.pythonhosted.org/packages/70/a9/9b66f22d038de51e05f92d5e677fd89d8f9c980db0b8a130621baad052f5/flake8-2.6.2-py2.py3-none-any.whl \ + https://files.pythonhosted.org/packages/69/be/9c322ed286263a93e5ee0ff575662d0709fc73ee906522e7cfa72b08b946/mccabe-0.5.3-py2.py3-none-any.whl \ + https://files.pythonhosted.org/packages/05/00/2867f51e4c2526fd8524176520aecfcd1562033cc5f7110673012294fcc7/pyflakes-1.1.0-py2.py3-none-any.whl \ + https://files.pythonhosted.org/packages/73/31/136a79364c1681a3c276796d1f5090833bd03461b78a1b037638d1a2c484/pycodestyle-2.0.0-py2.py3-none-any.whl + pip install --no-index *.whl *.tar.gz + pip install --no-index -e . nosetests --with-doctest legacy: From 1c400d2733157f60194c5d835d550c470c265591 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 13:37:51 -0400 Subject: [PATCH 20/22] Refs #265. download and install importlib specifically for 2.6 --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 645997da..608826b1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,6 +39,7 @@ jobs: https://files.pythonhosted.org/packages/69/be/9c322ed286263a93e5ee0ff575662d0709fc73ee906522e7cfa72b08b946/mccabe-0.5.3-py2.py3-none-any.whl \ https://files.pythonhosted.org/packages/05/00/2867f51e4c2526fd8524176520aecfcd1562033cc5f7110673012294fcc7/pyflakes-1.1.0-py2.py3-none-any.whl \ https://files.pythonhosted.org/packages/73/31/136a79364c1681a3c276796d1f5090833bd03461b78a1b037638d1a2c484/pycodestyle-2.0.0-py2.py3-none-any.whl + test "${{ matrix.python-version}}" = "2.6" && wget https://files.pythonhosted.org/packages/31/77/3781f65cafe55480b56914def99022a5d2965a4bb269655c89ef2f1de3cd/importlib-1.0.4.zip && pip install --no-index importlib-1.0.4.zip pip install --no-index *.whl *.tar.gz pip install --no-index -e . nosetests --with-doctest From 2547104d3998634e53cc47d3e9f7e959ba87008a Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 13:54:33 -0400 Subject: [PATCH 21/22] Refs #265. use non-slim for 3.3 and 3.4 because we need wget --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 608826b1..d5044ad9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,9 +14,9 @@ jobs: - python-version: 2.6 image: cronosmobi/python2.6 - python-version: 3.3 - image: python:3.3-slim + image: python:3.3 - python-version: 3.4 - image: python:3.4-slim + image: python:3.4 steps: - name: Checkout code From da0161c36e34d43e4d567428bb55bb9feb97bbb7 Mon Sep 17 00:00:00 2001 From: Kyle Gibson Date: Mon, 19 May 2025 13:59:00 -0400 Subject: [PATCH 22/22] Refs #265. Use sdist for nose 1.3.0 so we can install the same version in py2 and py3 --- .github/workflows/ci.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d5044ad9..36634d5f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,12 +34,14 @@ jobs: https://files.pythonhosted.org/packages/65/e0/eb35e762802015cab1ccee04e8a277b03f1d8e53da3ec3106882ec42558b/Jinja2-2.10.3-py2.py3-none-any.whl \ https://files.pythonhosted.org/packages/4d/de/32d741db316d8fdb7680822dd37001ef7a448255de9699ab4bfcbdf4172b/MarkupSafe-1.0.tar.gz \ https://files.pythonhosted.org/packages/d2/2d/e15d38b0a34a3e88e3c164a7ec04ed43f45869c20304db13875b24002506/coverage-3.6.tar.gz \ - https://files.pythonhosted.org/packages/79/61/6b0f82f55dd2307439ae89a92550458633221a652d75b49608a77071c2be/nose-1.3.4-py2-none-any.whl \ + https://files.pythonhosted.org/packages/de/f4/b205776cf5cbddbc1e2c3223fa29c0d05f18a9b8afad8cfa23438c217434/nose-1.3.0.tar.gz \ https://files.pythonhosted.org/packages/70/a9/9b66f22d038de51e05f92d5e677fd89d8f9c980db0b8a130621baad052f5/flake8-2.6.2-py2.py3-none-any.whl \ https://files.pythonhosted.org/packages/69/be/9c322ed286263a93e5ee0ff575662d0709fc73ee906522e7cfa72b08b946/mccabe-0.5.3-py2.py3-none-any.whl \ https://files.pythonhosted.org/packages/05/00/2867f51e4c2526fd8524176520aecfcd1562033cc5f7110673012294fcc7/pyflakes-1.1.0-py2.py3-none-any.whl \ https://files.pythonhosted.org/packages/73/31/136a79364c1681a3c276796d1f5090833bd03461b78a1b037638d1a2c484/pycodestyle-2.0.0-py2.py3-none-any.whl - test "${{ matrix.python-version}}" = "2.6" && wget https://files.pythonhosted.org/packages/31/77/3781f65cafe55480b56914def99022a5d2965a4bb269655c89ef2f1de3cd/importlib-1.0.4.zip && pip install --no-index importlib-1.0.4.zip + test "${{ matrix.python-version}}" = "2.6" && \ + wget https://files.pythonhosted.org/packages/31/77/3781f65cafe55480b56914def99022a5d2965a4bb269655c89ef2f1de3cd/importlib-1.0.4.zip && \ + pip install --no-index importlib-1.0.4.zip pip install --no-index *.whl *.tar.gz pip install --no-index -e . nosetests --with-doctest