From 474172d6644fbb4812877ad5f2c2c1a41bd20738 Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 16:22:19 -0700
Subject: [PATCH 01/13] move from travis to github actions

---
 .github/workflows/deploy.yml | 26 ++++++++++++++++++++
 .github/workflows/lint.yml   | 22 +++++++++++++++++
 .github/workflows/tests.yml  | 28 +++++++++++++++++++++
 .travis.yml                  | 47 ------------------------------------
 tox.ini                      | 19 ++++++++++++++-
 5 files changed, 94 insertions(+), 48 deletions(-)
 create mode 100644 .github/workflows/deploy.yml
 create mode 100644 .github/workflows/lint.yml
 create mode 100644 .github/workflows/tests.yml
 delete mode 100644 .travis.yml

diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
new file mode 100644
index 00000000..50ffc6ad
--- /dev/null
+++ b/.github/workflows/deploy.yml
@@ -0,0 +1,26 @@
+name: 🚀 Deploy to PyPI
+
+on:
+  push:
+    tags:
+      - 'v*'
+
+jobs:
+  build:
+    runs-on: ubuntu-latest
+
+    steps:
+    - uses: actions/checkout@v2
+    - name: Set up Python 3.9
+      uses: actions/setup-python@v2
+      with:
+        python-version: 3.9
+    - name: Build wheel and source tarball
+      run: |
+        pip install wheel
+        python setup.py sdist bdist_wheel
+    - name: Publish a Python distribution to PyPI
+      uses: pypa/gh-action-pypi-publish@v1.1.0
+      with:
+        user: __token__
+        password: ${{ secrets.PYPI_API_TOKEN }}
\ No newline at end of file
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
new file mode 100644
index 00000000..3fc35f9d
--- /dev/null
+++ b/.github/workflows/lint.yml
@@ -0,0 +1,22 @@
+name: Lint
+
+on: [push, pull_request]
+
+jobs:
+  build:
+    runs-on: ubuntu-latest
+
+    steps:
+    - uses: actions/checkout@v2
+    - name: Set up Python 3.9
+      uses: actions/setup-python@v2
+      with:
+        python-version: 3.9
+    - name: Install dependencies
+      run: |
+        python -m pip install --upgrade pip
+        pip install tox
+    - name: Run lint 💅
+      run: tox
+      env:
+        TOXENV: flake8
\ No newline at end of file
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
new file mode 100644
index 00000000..abc58f73
--- /dev/null
+++ b/.github/workflows/tests.yml
@@ -0,0 +1,28 @@
+name: Tests
+
+on: [push, pull_request]
+
+jobs:
+  build:
+    runs-on: ubuntu-latest
+    strategy:
+      max-parallel: 4
+      matrix:
+        sql-alchemy: ["1.1", "1.2", "1.3", "1.4"]
+        python-version: ["3.6", "3.7", "3.8", "3.9"]
+
+    steps:
+    - uses: actions/checkout@v2
+    - name: Set up Python ${{ matrix.python-version }}
+      uses: actions/setup-python@v2
+      with:
+        python-version: ${{ matrix.python-version }}
+    - name: Install dependencies
+      run: |
+        python -m pip install --upgrade pip
+        pip install tox tox-gh-actions
+    - name: Test with tox
+      run: tox
+      env:
+        SQLALCHEMY: ${{ matrix.sql-alchemy }}
+        TOXENV: ${{ matrix.toxenv }}
\ No newline at end of file
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 5a988428..00000000
--- a/.travis.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-language: python
-matrix:
-  include:
-    # Python 2.7
-    - env: TOXENV=py27
-      python: 2.7
-    # Python 3.5
-    - env: TOXENV=py35
-      python: 3.5
-    # Python 3.6
-    - env: TOXENV=py36
-      python: 3.6
-    # Python 3.7
-    - env: TOXENV=py37
-      python: 3.7
-      dist: xenial
-    # SQLAlchemy 1.1
-    - env: TOXENV=py37-sql11
-      python: 3.7
-      dist: xenial
-    # SQLAlchemy 1.2
-    - env: TOXENV=py37-sql12
-      python: 3.7
-      dist: xenial
-    # SQLAlchemy 1.3
-    - env: TOXENV=py37-sql13
-      python: 3.7
-      dist: xenial
-    # Pre-commit
-    - env: TOXENV=pre-commit
-      python: 3.7
-      dist: xenial
-install: pip install .[dev]
-script: tox
-after_success: coveralls
-cache:
-  directories:
-    - $HOME/.cache/pip
-    - $HOME/.cache/pre-commit
-deploy:
-  provider: pypi
-  user: syrusakbary
-  on:
-    tags: true
-  password:
-    secure: q0ey31cWljGB30l43aEd1KIPuAHRutzmsd2lBb/2zvD79ReBrzvCdFAkH2xcyo4Volk3aazQQTNUIurnTuvBxmtqja0e+gUaO5LdOcokVdOGyLABXh7qhd2kdvbTDWgSwA4EWneLGXn/SjXSe0f3pCcrwc6WDcLAHxtffMvO9gulpYQtUoOqXfMipMOkRD9iDWTJBsSo3trL70X1FHOVr6Yqi0mfkX2Y/imxn6wlTWRz28Ru94xrj27OmUnCv7qcG0taO8LNlUCquNFAr2sZ+l+U/GkQrrM1y+ehPz3pmI0cCCd7SX/7+EG9ViZ07BZ31nk4pgnqjmj3nFwqnCE/4IApGnduqtrMDF63C9TnB1TU8oJmbbUCu4ODwRpBPZMnwzaHsLnrpdrB89/98NtTfujdrh3U5bVB+t33yxrXVh+FjgLYj9PVeDixpFDn6V/Xcnv4BbRMNOhXIQT7a7/5b99RiXBjCk6KRu+Jdu5DZ+3G4Nbr4oim3kZFPUHa555qbzTlwAfkrQxKv3C3OdVJR7eGc9ADsbHyEJbdPNAh/T+xblXTXLS3hPYDvgM+WEGy3CytBDG3JVcXm25ZP96EDWjweJ7MyfylubhuKj/iR1Y1wiHeIsYq9CqRrFQUWL8gFJBfmgjs96xRXXXnvyLtKUKpKw3wFg5cR/6FnLeYZ8k=
-  distributions: "sdist bdist_wheel"
diff --git a/tox.ini b/tox.ini
index 562da2dc..c213a98c 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,14 +1,31 @@
 [tox]
-envlist = pre-commit,py{27,35,36,37}-sql{11,12,13}
+envlist = pre-commit,py{27,35,36,37,38,39}-sql{11,12,13,14}
 skipsdist = true
 minversion = 3.7.0
 
+[gh-actions]
+python =
+    2.7: py27
+    3.5: py35
+    3.6: py36
+    3.7: py37
+    3.8: py38
+    3.9: py39
+
+[gh-actions:env]
+SQLALCHEMY =
+    1.1: sql11
+    1.2: sql12
+    1.3: sql13
+    1.4: sql14
+
 [testenv]
 deps =
     .[test]
     sql11: sqlalchemy>=1.1,<1.2
     sql12: sqlalchemy>=1.2,<1.3
     sql13: sqlalchemy>=1.3,<1.4
+    sql14: sqlalchemy>=1.4,<1.5
 commands =
     pytest graphene_sqlalchemy --cov=graphene_sqlalchemy {posargs}
 

From a8466ae43d860d96bf302b700ad7b8b016d4d83f Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 16:27:54 -0700
Subject: [PATCH 02/13] add flake8 to tox

---
 tox.ini | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/tox.ini b/tox.ini
index c213a98c..2e176639 100644
--- a/tox.ini
+++ b/tox.ini
@@ -30,8 +30,14 @@ commands =
     pytest graphene_sqlalchemy --cov=graphene_sqlalchemy {posargs}
 
 [testenv:pre-commit]
-basepython=python3.7
+basepython=python3.9
 deps =
     .[dev]
 commands =
     pre-commit {posargs:run --all-files}
+
+[testenv:flake8]
+basepython = python3.9
+deps = -e.[dev]
+commands =
+    flake8 --exclude setup.py docs examples tests
\ No newline at end of file

From 47e9b2787f9fe538f76952570598998bc4d52d94 Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 16:30:05 -0700
Subject: [PATCH 03/13] add flake8 as env in tox

---
 tox.ini | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tox.ini b/tox.ini
index 2e176639..81031e48 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
 [tox]
-envlist = pre-commit,py{27,35,36,37,38,39}-sql{11,12,13,14}
+envlist = pre-commit,py{27,35,36,37,38,39}-sql{11,12,13,14},flake8
 skipsdist = true
 minversion = 3.7.0
 

From 3d8f6d59dc90a89e7018c2bc5294562190470ca0 Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 16:33:09 -0700
Subject: [PATCH 04/13] add flake8 to setup

---
 setup.py | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/setup.py b/setup.py
index 7b350c39..8e5e4550 100644
--- a/setup.py
+++ b/setup.py
@@ -62,6 +62,9 @@
             "tox==3.7.0",  # Should be kept in sync with tox.ini
             "coveralls==1.10.0",
             "pre-commit==1.14.4",
+            "flake8==3.7.9",
+            "flake8-black==0.1.1",
+            "flake8-bugbear==20.1.4",
         ],
         "test": tests_require,
     },

From e1caa376d0ac2a66e5997c4d9ca8655a772cc701 Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 16:36:09 -0700
Subject: [PATCH 05/13] remove sqlalchemy 1.1 in tests

---
 tox.ini | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/tox.ini b/tox.ini
index 81031e48..baded8f8 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
 [tox]
-envlist = pre-commit,py{27,35,36,37,38,39}-sql{11,12,13,14},flake8
+envlist = pre-commit,py{27,35,36,37,38,39}-sql{12,13,14},flake8
 skipsdist = true
 minversion = 3.7.0
 
@@ -14,7 +14,6 @@ python =
 
 [gh-actions:env]
 SQLALCHEMY =
-    1.1: sql11
     1.2: sql12
     1.3: sql13
     1.4: sql14
@@ -22,7 +21,6 @@ SQLALCHEMY =
 [testenv]
 deps =
     .[test]
-    sql11: sqlalchemy>=1.1,<1.2
     sql12: sqlalchemy>=1.2,<1.3
     sql13: sqlalchemy>=1.3,<1.4
     sql14: sqlalchemy>=1.4,<1.5

From d5e17f28e5a599ced1d6cc96cd23786052b6b3b3 Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 16:39:38 -0700
Subject: [PATCH 06/13] fix flake8 exclude

---
 tox.ini | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/tox.ini b/tox.ini
index baded8f8..b82ca1bc 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
 [tox]
-envlist = pre-commit,py{27,35,36,37,38,39}-sql{12,13,14},flake8
+envlist = pre-commit,py{27,35,36,37,38,39}-sql{12,13},flake8
 skipsdist = true
 minversion = 3.7.0
 
@@ -16,14 +16,12 @@ python =
 SQLALCHEMY =
     1.2: sql12
     1.3: sql13
-    1.4: sql14
 
 [testenv]
 deps =
     .[test]
     sql12: sqlalchemy>=1.2,<1.3
     sql13: sqlalchemy>=1.3,<1.4
-    sql14: sqlalchemy>=1.4,<1.5
 commands =
     pytest graphene_sqlalchemy --cov=graphene_sqlalchemy {posargs}
 
@@ -38,4 +36,4 @@ commands =
 basepython = python3.9
 deps = -e.[dev]
 commands =
-    flake8 --exclude setup.py docs examples tests
\ No newline at end of file
+    flake8 --exclude setup.py,docs,examples,tests
\ No newline at end of file

From edf90121b1524424d03dd3ea1061d879cea8e075 Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 16:54:09 -0700
Subject: [PATCH 07/13] move coveralls to github action

---
 .github/workflows/tests.yml | 14 ++++++++++++--
 setup.py                    |  2 --
 tox.ini                     |  2 +-
 3 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index abc58f73..367b3b5c 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -3,7 +3,7 @@ name: Tests
 on: [push, pull_request]
 
 jobs:
-  build:
+  test:
     runs-on: ubuntu-latest
     strategy:
       max-parallel: 4
@@ -25,4 +25,14 @@ jobs:
       run: tox
       env:
         SQLALCHEMY: ${{ matrix.sql-alchemy }}
-        TOXENV: ${{ matrix.toxenv }}
\ No newline at end of file
+        TOXENV: ${{ matrix.toxenv }}
+  
+  finish:
+    needs: test
+    runs-on: ubuntu-latest
+    steps:
+    - name: Coveralls Finished
+      uses: coverallsapp/github-action@master
+      with:
+        github-token: ${{ secrets.GITHUB_TOKEN }}
+        parallel-finished: true
\ No newline at end of file
diff --git a/setup.py b/setup.py
index 8e5e4550..4544800a 100644
--- a/setup.py
+++ b/setup.py
@@ -63,8 +63,6 @@
             "coveralls==1.10.0",
             "pre-commit==1.14.4",
             "flake8==3.7.9",
-            "flake8-black==0.1.1",
-            "flake8-bugbear==20.1.4",
         ],
         "test": tests_require,
     },
diff --git a/tox.ini b/tox.ini
index b82ca1bc..f71edf99 100644
--- a/tox.ini
+++ b/tox.ini
@@ -36,4 +36,4 @@ commands =
 basepython = python3.9
 deps = -e.[dev]
 commands =
-    flake8 --exclude setup.py,docs,examples,tests
\ No newline at end of file
+    flake8 --exclude setup.py,docs,examples,tests,.tox --max-line-length 120
\ No newline at end of file

From dcce5dbd7514d0a500c069bfe9d3e87669f8914b Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 17:04:17 -0700
Subject: [PATCH 08/13] fix coverall github action config

---
 .github/workflows/tests.yml | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index 367b3b5c..b02699aa 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -6,7 +6,7 @@ jobs:
   test:
     runs-on: ubuntu-latest
     strategy:
-      max-parallel: 4
+      max-parallel: 10
       matrix:
         sql-alchemy: ["1.1", "1.2", "1.3", "1.4"]
         python-version: ["3.6", "3.7", "3.8", "3.9"]
@@ -26,6 +26,12 @@ jobs:
       env:
         SQLALCHEMY: ${{ matrix.sql-alchemy }}
         TOXENV: ${{ matrix.toxenv }}
+    - name: Coveralls Parallel
+      uses: coverallsapp/github-action@master
+      with:
+        github-token: ${{ secrets.GITHUB_TOKEN }}
+        flag-name: run-${{ matrix.python-version }}-${{ matrix.sql-alchemy }}
+        parallel: true
   
   finish:
     needs: test

From a95fc4268581bae28149a81d897512c08badc69e Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 17:20:10 -0700
Subject: [PATCH 09/13] move coveralls to tox

---
 .github/workflows/tests.yml | 18 +-----------------
 tox.ini                     |  2 ++
 2 files changed, 3 insertions(+), 17 deletions(-)

diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index b02699aa..4dab7c7d 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -25,20 +25,4 @@ jobs:
       run: tox
       env:
         SQLALCHEMY: ${{ matrix.sql-alchemy }}
-        TOXENV: ${{ matrix.toxenv }}
-    - name: Coveralls Parallel
-      uses: coverallsapp/github-action@master
-      with:
-        github-token: ${{ secrets.GITHUB_TOKEN }}
-        flag-name: run-${{ matrix.python-version }}-${{ matrix.sql-alchemy }}
-        parallel: true
-  
-  finish:
-    needs: test
-    runs-on: ubuntu-latest
-    steps:
-    - name: Coveralls Finished
-      uses: coverallsapp/github-action@master
-      with:
-        github-token: ${{ secrets.GITHUB_TOKEN }}
-        parallel-finished: true
\ No newline at end of file
+        TOXENV: ${{ matrix.toxenv }}
\ No newline at end of file
diff --git a/tox.ini b/tox.ini
index f71edf99..1ac82616 100644
--- a/tox.ini
+++ b/tox.ini
@@ -18,12 +18,14 @@ SQLALCHEMY =
     1.3: sql13
 
 [testenv]
+passenv = GITHUB_*
 deps =
     .[test]
     sql12: sqlalchemy>=1.2,<1.3
     sql13: sqlalchemy>=1.3,<1.4
 commands =
     pytest graphene_sqlalchemy --cov=graphene_sqlalchemy {posargs}
+    coveralls
 
 [testenv:pre-commit]
 basepython=python3.9

From fdb88f63e70ffcef3b3bc051d90ba70f6c87ae9d Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 17:23:17 -0700
Subject: [PATCH 10/13] move coveralls dep to test list

---
 setup.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/setup.py b/setup.py
index 4544800a..dcedecb5 100644
--- a/setup.py
+++ b/setup.py
@@ -31,6 +31,7 @@
     "pytest-cov==2.6.1",
     "sqlalchemy_utils==0.33.9",
     "pytest-benchmark==3.2.1",
+    "coveralls==1.10.0",
 ]
 
 setup(
@@ -60,7 +61,6 @@
     extras_require={
         "dev": [
             "tox==3.7.0",  # Should be kept in sync with tox.ini
-            "coveralls==1.10.0",
             "pre-commit==1.14.4",
             "flake8==3.7.9",
         ],

From 5462fdca1e69ff6f2239916c023c8929e2771bc0 Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 17:27:46 -0700
Subject: [PATCH 11/13] add coverage command

---
 tox.ini | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tox.ini b/tox.ini
index 1ac82616..80e309a2 100644
--- a/tox.ini
+++ b/tox.ini
@@ -25,6 +25,7 @@ deps =
     sql13: sqlalchemy>=1.3,<1.4
 commands =
     pytest graphene_sqlalchemy --cov=graphene_sqlalchemy {posargs}
+    coverage run --source=graphene_sqlalchemy setup.py test
     coveralls
 
 [testenv:pre-commit]

From 3d7e0299596023bb21814203ef14a476e06c704b Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 17:38:10 -0700
Subject: [PATCH 12/13] move coveralls back into github action

---
 .github/workflows/tests.yml | 14 ++++++++++++--
 setup.py                    |  1 -
 tox.ini                     |  2 --
 3 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index 4dab7c7d..4adb26f6 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -8,7 +8,7 @@ jobs:
     strategy:
       max-parallel: 10
       matrix:
-        sql-alchemy: ["1.1", "1.2", "1.3", "1.4"]
+        sql-alchemy: ["1.2", "1.3"]
         python-version: ["3.6", "3.7", "3.8", "3.9"]
 
     steps:
@@ -25,4 +25,14 @@ jobs:
       run: tox
       env:
         SQLALCHEMY: ${{ matrix.sql-alchemy }}
-        TOXENV: ${{ matrix.toxenv }}
\ No newline at end of file
+        TOXENV: ${{ matrix.toxenv }}
+    - name: Upload coverage.xml
+      if: ${{ matrix.sql-alchemy == '1.3' && matrix.python-version == '3.9' }}
+      uses: actions/upload-artifact@v2
+      with:
+        name: graphene-sqlalchemy-coverage
+        path: coverage.xml
+        if-no-files-found: error
+    - name: Upload coverage.xml to codecov
+      if: ${{ matrix.sql-alchemy == '1.3' && matrix.python-version == '3.9' }}
+      uses: codecov/codecov-action@v1
\ No newline at end of file
diff --git a/setup.py b/setup.py
index dcedecb5..e20a1750 100644
--- a/setup.py
+++ b/setup.py
@@ -31,7 +31,6 @@
     "pytest-cov==2.6.1",
     "sqlalchemy_utils==0.33.9",
     "pytest-benchmark==3.2.1",
-    "coveralls==1.10.0",
 ]
 
 setup(
diff --git a/tox.ini b/tox.ini
index 80e309a2..15dc576a 100644
--- a/tox.ini
+++ b/tox.ini
@@ -25,8 +25,6 @@ deps =
     sql13: sqlalchemy>=1.3,<1.4
 commands =
     pytest graphene_sqlalchemy --cov=graphene_sqlalchemy {posargs}
-    coverage run --source=graphene_sqlalchemy setup.py test
-    coveralls
 
 [testenv:pre-commit]
 basepython=python3.9

From 19c63ff2b3c87dc30481e307a6ef63e4143ce04e Mon Sep 17 00:00:00 2001
From: Mel van Londen <melvanlonden@gmail.com>
Date: Sun, 5 Sep 2021 17:42:13 -0700
Subject: [PATCH 13/13] modify coverage output

---
 tox.ini | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tox.ini b/tox.ini
index 15dc576a..69d84f92 100644
--- a/tox.ini
+++ b/tox.ini
@@ -24,7 +24,7 @@ deps =
     sql12: sqlalchemy>=1.2,<1.3
     sql13: sqlalchemy>=1.3,<1.4
 commands =
-    pytest graphene_sqlalchemy --cov=graphene_sqlalchemy {posargs}
+    pytest graphene_sqlalchemy --cov=graphene_sqlalchemy --cov-report=term --cov-report=xml {posargs}
 
 [testenv:pre-commit]
 basepython=python3.9