fix: narrow acceptable RSA versions to maintain Python 2 compatability (#528)

* Narrow acceptable RSA versions to maintain Python 2 compat

* Update setup.py

Co-authored-by: Kamil Breguła <mik-laj@users.noreply.github.com>

* Use a more specific pin to support new versions that may support python 2.

* Update setup.py

Co-authored-by: Bu Sun Kim <8822365+busunkim96@users.noreply.github.com>

* how many commits to get the format correct?

Co-authored-by: Kamil Breguła <mik-laj@users.noreply.github.com>
Co-authored-by: Bu Sun Kim <8822365+busunkim96@users.noreply.github.com>
diff --git a/setup.py b/setup.py
index f518ec1..0762da8 100644
--- a/setup.py
+++ b/setup.py
@@ -21,7 +21,9 @@
 DEPENDENCIES = (
     "cachetools>=2.0.0,<5.0",
     "pyasn1-modules>=0.2.1",
-    "rsa>=3.1.4,<5.0",
+    # rsa 4.1, 4.1.1, 4.2 are broken on Py2: https://github.com/sybrenstuvel/python-rsa/issues/152
+    'rsa>=3.1.4,!=4.1,!=4.1.1,!=4.2,<5; python_version < "3"',
+    'rsa>=3.1.4,<5; python_version >= "3"',
     "setuptools>=40.3.0",
     "six>=1.9.0",
 )