summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Thiel <sebastian.thiel@icloud.com>2023-01-17 08:16:35 +0100
committerGitHub <noreply@github.com>2023-01-17 08:16:35 +0100
commitf594266acf09896608234947611fb3af356130dd (patch)
treeb76039d9ebb1b0789449b51dfea93b41a9259ae1
parent3901d4ccdbd7c2450ff6faadebf2d33e2b246a7b (diff)
parent8a8047438ef9c3a7ec4ea1fff34ffa3e497c9a06 (diff)
downloadgitpython-f594266acf09896608234947611fb3af356130dd.tar.gz
Merge pull request #1541 from hugovk/add-3.11
Declare support for Python 3.11
-rw-r--r--.github/workflows/cygwin-test.yml15
-rw-r--r--.github/workflows/lint.yml14
-rw-r--r--.github/workflows/pythonpackage.yml12
-rw-r--r--.pre-commit-config.yaml19
-rw-r--r--README.md2
-rwxr-xr-xsetup.py7
-rw-r--r--test-requirements.txt5
7 files changed, 44 insertions, 30 deletions
diff --git a/.github/workflows/cygwin-test.yml b/.github/workflows/cygwin-test.yml
index 16b42f89..0018e7df 100644
--- a/.github/workflows/cygwin-test.yml
+++ b/.github/workflows/cygwin-test.yml
@@ -1,16 +1,12 @@
name: test-cygwin
-on:
- push:
- branches:
- main
- pull_request:
- branches:
- main
+on: [push, pull_request, workflow_dispatch]
jobs:
build:
runs-on: windows-latest
+ strategy:
+ fail-fast: false
env:
CHERE_INVOKING: 1
SHELLOPTS: igncr
@@ -47,11 +43,6 @@ jobs:
# If we rewrite the user's config by accident, we will mess it up
# and cause subsequent tests to fail
cat test/fixtures/.gitconfig >> ~/.gitconfig
- - name: Lint with flake8
- shell: bash.exe -eo pipefail -o igncr "{0}"
- run: |
- set -x
- /usr/bin/python -m flake8
- name: Test with pytest
shell: bash.exe -eo pipefail -o igncr "{0}"
run: |
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
new file mode 100644
index 00000000..c78a4053
--- /dev/null
+++ b/.github/workflows/lint.yml
@@ -0,0 +1,14 @@
+name: Lint
+
+on: [push, pull_request, workflow_dispatch]
+
+jobs:
+ lint:
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v3
+ - uses: actions/setup-python@v4
+ with:
+ python-version: "3.x"
+ - uses: pre-commit/action@v3.0.0
diff --git a/.github/workflows/pythonpackage.yml b/.github/workflows/pythonpackage.yml
index 5373dace..6d6c6795 100644
--- a/.github/workflows/pythonpackage.yml
+++ b/.github/workflows/pythonpackage.yml
@@ -3,11 +3,7 @@
name: Python package
-on:
- push:
- branches: [ main ]
- pull_request:
- branches: [ main ]
+on: [push, pull_request, workflow_dispatch]
permissions:
contents: read
@@ -17,6 +13,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
+ fail-fast: false
matrix:
python-version: [3.7, 3.8, 3.9, "3.10", "3.11"]
@@ -47,11 +44,6 @@ jobs:
# and cause subsequent tests to fail
cat test/fixtures/.gitconfig >> ~/.gitconfig
- - name: Lint with flake8
- run: |
- set -x
- flake8
-
- name: Check types with mypy
# With new versions of pypi new issues might arise. This is a problem if there is nobody able to fix them,
# so we have to ignore errors until that changes.
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
new file mode 100644
index 00000000..581cb69b
--- /dev/null
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,19 @@
+repos:
+ - repo: https://github.com/PyCQA/flake8
+ rev: 6.0.0
+ hooks:
+ - id: flake8
+ additional_dependencies:
+ [
+ flake8-bugbear==22.12.6,
+ flake8-comprehensions==3.10.1,
+ flake8-typing-imports==1.14.0,
+ ]
+ exclude: ^doc|^git/ext/|^test/
+
+ - repo: https://github.com/pre-commit/pre-commit-hooks
+ rev: v4.4.0
+ hooks:
+ - id: check-merge-conflict
+ - id: check-toml
+ - id: check-yaml
diff --git a/README.md b/README.md
index 54a735e5..82c5c9e0 100644
--- a/README.md
+++ b/README.md
@@ -107,7 +107,7 @@ with MINGW's.
Ensure testing libraries are installed.
In the root directory, run: `pip install -r test-requirements.txt`
-To lint, run: `flake8`
+To lint, run: `pre-commit run --all-files`
To typecheck, run: `mypy -p git`
diff --git a/setup.py b/setup.py
index daad454d..81ae0132 100755
--- a/setup.py
+++ b/setup.py
@@ -44,7 +44,7 @@ class sdist(_sdist):
def _stamp_version(filename: str) -> None:
found, out = False, []
try:
- with open(filename, "r") as f:
+ with open(filename) as f:
for line in f:
if "__version__ =" in line:
line = line.replace("\"git\"", "'%s'" % VERSION)
@@ -82,7 +82,7 @@ setup(
name="GitPython",
cmdclass={"build_py": build_py, "sdist": sdist},
version=VERSION,
- description="""GitPython is a python library used to interact with Git repositories""",
+ description="GitPython is a Python library used to interact with Git repositories",
author="Sebastian Thiel, Michael Trier",
author_email="byronimo@gmail.com, mtrier@gmail.com",
license="BSD",
@@ -95,7 +95,7 @@ setup(
install_requires=requirements,
tests_require=requirements + test_requirements,
zip_safe=False,
- long_description="""GitPython is a python library used to interact with Git repositories""",
+ long_description="""GitPython is a Python library used to interact with Git repositories""",
long_description_content_type="text/markdown",
classifiers=[
# Picked from
@@ -121,5 +121,6 @@ setup(
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
+ "Programming Language :: Python :: 3.11",
],
)
diff --git a/test-requirements.txt b/test-requirements.txt
index 6549f0fa..6c6d5706 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -3,10 +3,7 @@ mypy
black
-flake8
-flake8-bugbear
-flake8-comprehensions
-flake8-typing-imports
+pre-commit
virtualenv