mirror of https://github.com/fail2ban/fail2ban
62 lines
1.8 KiB
Diff
62 lines
1.8 KiB
Diff
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
|
|
index 7a1d31df3d..262448c2da 100644
|
|
--- a/.github/workflows/main.yml
|
|
+++ b/.github/workflows/main.yml
|
|
@@ -22,7 +22,7 @@ jobs:
|
|
runs-on: ubuntu-20.04
|
|
strategy:
|
|
matrix:
|
|
- python-version: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9, pypy2, pypy3]
|
|
+ python-version: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9, '3.10.0-alpha.5', pypy2, pypy3]
|
|
fail-fast: false
|
|
# Steps represent a sequence of tasks that will be executed as part of the job
|
|
steps:
|
|
diff --git a/fail2ban/server/action.py b/fail2ban/server/action.py
|
|
index 3bc48fe046..f0f1e6f59a 100644
|
|
--- a/fail2ban/server/action.py
|
|
+++ b/fail2ban/server/action.py
|
|
@@ -30,7 +30,10 @@
|
|
import threading
|
|
import time
|
|
from abc import ABCMeta
|
|
-from collections import MutableMapping
|
|
+try:
|
|
+ from collections.abc import MutableMapping
|
|
+except ImportError:
|
|
+ from collections import MutableMapping
|
|
|
|
from .failregex import mapTag2Opt
|
|
from .ipdns import DNSUtils
|
|
diff --git a/fail2ban/server/actions.py b/fail2ban/server/actions.py
|
|
index b7b95b445a..897d907c1a 100644
|
|
--- a/fail2ban/server/actions.py
|
|
+++ b/fail2ban/server/actions.py
|
|
@@ -28,7 +28,10 @@
|
|
import os
|
|
import sys
|
|
import time
|
|
-from collections import Mapping
|
|
+try:
|
|
+ from collections.abc import Mapping
|
|
+except ImportError:
|
|
+ from collections import Mapping
|
|
try:
|
|
from collections import OrderedDict
|
|
except ImportError:
|
|
diff --git a/fail2ban/server/jails.py b/fail2ban/server/jails.py
|
|
index 972a8c4bd2..27e12ddf65 100644
|
|
--- a/fail2ban/server/jails.py
|
|
+++ b/fail2ban/server/jails.py
|
|
@@ -22,7 +22,10 @@
|
|
__license__ = "GPL"
|
|
|
|
from threading import Lock
|
|
-from collections import Mapping
|
|
+try:
|
|
+ from collections.abc import Mapping
|
|
+except ImportError:
|
|
+ from collections import Mapping
|
|
|
|
from ..exceptions import DuplicateJailException, UnknownJailException
|
|
from .jail import Jail
|