diff options
author | Jeff Forcier <jeff@bitprophet.org> | 2017-10-10 17:02:08 -0700 |
---|---|---|
committer | Jeff Forcier <jeff@bitprophet.org> | 2017-10-10 17:02:08 -0700 |
commit | c58a5bd649ebeb0439004daf2cc9f442edeb43e7 (patch) | |
tree | 0e73e29309dcb267b10bff2854092a50226d0b3f | |
parent | a134694d123c0568353184ec03e0f7767dd59846 (diff) |
Update docs, metadata, test references to 2.6/3.3
-rw-r--r-- | README.rst | 2 | ||||
-rw-r--r-- | setup.py | 3 | ||||
-rw-r--r-- | sites/shared_conf.py | 2 | ||||
-rw-r--r-- | sites/www/index.rst | 8 | ||||
-rw-r--r-- | sites/www/installing.rst | 4 | ||||
-rw-r--r-- | tests/__init__.py | 6 | ||||
-rw-r--r-- | tests/test_client.py | 13 |
7 files changed, 16 insertions, 22 deletions
@@ -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 @@ -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() |