summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJeff Forcier <jeff@bitprophet.org>2017-10-10 17:02:08 -0700
committerJeff Forcier <jeff@bitprophet.org>2017-10-10 17:02:08 -0700
commitc58a5bd649ebeb0439004daf2cc9f442edeb43e7 (patch)
tree0e73e29309dcb267b10bff2854092a50226d0b3f
parenta134694d123c0568353184ec03e0f7767dd59846 (diff)
Update docs, metadata, test references to 2.6/3.3
-rw-r--r--README.rst2
-rw-r--r--setup.py3
-rw-r--r--sites/shared_conf.py2
-rw-r--r--sites/www/index.rst8
-rw-r--r--sites/www/installing.rst4
-rw-r--r--tests/__init__.py6
-rw-r--r--tests/test_client.py13
7 files changed, 16 insertions, 22 deletions
diff --git a/README.rst b/README.rst
index 399dceb9..dd97043e 100644
--- a/README.rst
+++ b/README.rst
@@ -22,7 +22,7 @@ What
----
"Paramiko" is a combination of the Esperanto words for "paranoid" and
-"friend". It's a module for Python 2.6+/3.3+ that implements the SSH2 protocol
+"friend". It's a module for Python 2.7/3.4+ that implements the SSH2 protocol
for secure (encrypted and authenticated) connections to remote machines. Unlike
SSL (aka TLS), SSH2 protocol does not require hierarchical certificates signed
by a powerful central authority. You may know SSH2 as the protocol that
diff --git a/setup.py b/setup.py
index 1234bfa5..6e1f0e0e 100644
--- a/setup.py
+++ b/setup.py
@@ -65,11 +65,8 @@ setup(
'Topic :: Security :: Cryptography',
'Programming Language :: Python',
'Programming Language :: Python :: 2',
- 'Programming Language :: Python :: 2.6',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
- 'Programming Language :: Python :: 3.2',
- 'Programming Language :: Python :: 3.3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
diff --git a/sites/shared_conf.py b/sites/shared_conf.py
index 99fab315..adc89aa1 100644
--- a/sites/shared_conf.py
+++ b/sites/shared_conf.py
@@ -26,7 +26,7 @@ html_sidebars = {
# Everything intersphinx's to Python
intersphinx_mapping = {
- 'python': ('http://docs.python.org/2.6', None),
+ 'python': ('https://docs.python.org/2.7/', None),
}
# Regular settings
diff --git a/sites/www/index.rst b/sites/www/index.rst
index f0a5db8a..26961f24 100644
--- a/sites/www/index.rst
+++ b/sites/www/index.rst
@@ -1,11 +1,11 @@
Welcome to Paramiko!
====================
-Paramiko is a Python (2.6+, 3.3+) implementation of the SSHv2 protocol [#]_,
+Paramiko is a Python (2.7, 3.4+) implementation of the SSHv2 protocol [#]_,
providing both client and server functionality. While it leverages a Python C
-extension for low level cryptography
-(`Cryptography <https://cryptography.io>`_), Paramiko itself is a pure Python
-interface around SSH networking concepts.
+extension for low level cryptography (`Cryptography
+<https://cryptography.io>`_), Paramiko itself is a pure Python interface around
+SSH networking concepts.
This website covers project information for Paramiko such as the changelog,
contribution guidelines, development roadmap, news/blog, and so forth. Detailed
diff --git a/sites/www/installing.rst b/sites/www/installing.rst
index f335a9e7..e6db2dca 100644
--- a/sites/www/installing.rst
+++ b/sites/www/installing.rst
@@ -19,8 +19,8 @@ via `pip <http://pip-installer.org>`_::
$ pip install paramiko
-We currently support **Python 2.6, 2.7, 3.3+, and PyPy**. Users on Python 2.5
-or older (or 3.2 or older) are urged to upgrade.
+We currently support **Python 2.7, 3.4+, and PyPy**. Users on Python 2.6 or
+older (or 3.3 or older) are urged to upgrade.
Paramiko has only one direct hard dependency: the Cryptography library. See
:ref:`cryptography`.
diff --git a/tests/__init__.py b/tests/__init__.py
index 8878f14d..ea571abe 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -28,9 +28,5 @@ from paramiko.py3compat import (
def skipUnlessBuiltin(name):
"""Skip decorated test if builtin name does not exist."""
if getattr(builtins, name, None) is None:
- skip = getattr(unittest, "skip", None)
- if skip is None:
- # Python 2.6 pseudo-skip
- return lambda func: None
- return skip("No builtin " + repr(name))
+ return unittest.skip("No builtin " + repr(name))
return lambda func: func
diff --git a/tests/test_client.py b/tests/test_client.py
index 6105697e..4fe9ef4c 100644
--- a/tests/test_client.py
+++ b/tests/test_client.py
@@ -40,6 +40,10 @@ from paramiko.common import PY2
from paramiko.ssh_exception import SSHException, AuthenticationException
+requires_gss_auth = unittest.skipUnless(
+ paramiko.GSS_AUTH_AVAILABLE, "GSS auth not available"
+)
+
FINGERPRINTS = {
'ssh-dss': b'\x44\x78\xf0\xb9\xa2\x3c\xc5\x18\x20\x09\xff\x75\x5b\xc1\xd2\x6c',
'ssh-rsa': b'\x60\x73\x38\x44\xcb\x51\x86\x65\x7f\xde\xda\xa2\x2b\x5a\x57\xd5',
@@ -450,24 +454,22 @@ class SSHClientTest (unittest.TestCase):
auth_timeout=0.5,
)
+ @requires_gss_auth
def test_10_auth_trickledown_gsskex(self):
"""
Failed gssapi-keyex auth doesn't prevent subsequent key auth from succeeding
"""
- if not paramiko.GSS_AUTH_AVAILABLE:
- return # for python 2.6 lacks skipTest
kwargs = dict(
gss_kex=True,
key_filename=[test_path('test_rsa.key')],
)
self._test_connection(**kwargs)
+ @requires_gss_auth
def test_11_auth_trickledown_gssauth(self):
"""
Failed gssapi-with-mic auth doesn't prevent subsequent key auth from succeeding
"""
- if not paramiko.GSS_AUTH_AVAILABLE:
- return # for python 2.6 lacks skipTest
kwargs = dict(
gss_auth=True,
key_filename=[test_path('test_rsa.key')],
@@ -489,14 +491,13 @@ class SSHClientTest (unittest.TestCase):
password='pygmalion', **self.connect_kwargs
)
+ @requires_gss_auth
def test_13_reject_policy_gsskex(self):
"""
verify that SSHClient's RejectPolicy works,
even if gssapi-keyex was enabled but not used.
"""
# Test for a bug present in paramiko versions released before 2017-08-01
- if not paramiko.GSS_AUTH_AVAILABLE:
- return # for python 2.6 lacks skipTest
threading.Thread(target=self._run).start()
self.tc = paramiko.SSHClient()