-
-
Notifications
You must be signed in to change notification settings - Fork 37
/
CHANGES
147 lines (85 loc) · 3.85 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# CHANGES
## 0.3.23
* Raise minimum Python version to 3.6.
* Handle FileNotFoundError when using subprocess on Python >= 3.8.
## 0.3.22
* Fix: default connect timeout was not being set correctly.
## 0.3.21
* Add close() method to shells, behaving the same as __exit__().
## 0.3.20
* SshShell: passing None as the port argument will cause port 22 to be used.
* Raise CouldNotChangeDirectoryError when failing to change directory to the cwd
argument.
## 0.3.19
* Allow spur to be used with Paramiko 2. To quote the Paramiko changelog [1]:
Replace PyCrypto with the Python Cryptographic Authority (PyCA)
‘Cryptography’ library suite. This improves security, installability, and
performance; adds PyPy support; and much more.
This should only affect installation requirements for Paramiko: see the
changelog for more information. Since the API of Paramiko remains unchanged,
spur should remain compatible with both Paramiko 1 and Paramiko 2.
Note that Python 3.2 is not compatible with Paramiko 2: you can continue to
use spur with Python 3.2 and Paramiko 1, although upgrading is recommended.
[1]: http://www.paramiko.org/changelog.html#2.0.0
## 0.3.18
* Add sock argument to SshShell.
## 0.3.17
* When encoding argument is set, decode output before writing to stdout and
stderr arguments. This changes the behaviour to match the documented
behaviour: previously, only the output on the result object was decoded.
## 0.3.16
* Remove non-ASCII character from README.rst.
## 0.3.15
* Add encoding argument to spawn and run.
* SshShell: add load_system_host_keys argument.
* LocalShell: don't raise NoSuchCommandError when cwd does not exist.
## 0.3.14
* Raise spur.CommandInitializationError when SshShell fails to read integers
from stdout before the command is actually run.
## 0.3.13
* Add look_for_private_keys argument to SshShell to allow searching for private
keys to be disabled.
## 0.3.12
* Add shell_type argument to SshShell to allow better support for minimal
shells, such as those found on embedded systems.
* Open files in text mode by default. When opening files over SSH, this means
that files are decoded using the encoding returned by
locale.getpreferredencoding().
## 0.3.11
* Add support for platforms that don't support the pty module, such as Windows.
## 0.3.10
* SshShell: Use "which" if "command -v" is not available. Fixes GitHub issue #15:
https://github.com/mwilliamson/spur.py/issues/15
## 0.3.9
* Treat output as bytes rather than attempting to decode to string when
generating RunProcessError.message. Fixes GitHub issue #13:
https://github.com/mwilliamson/spur.py/pull/13
* Support unicode commands over SSH.
## 0.3.8
* Add full support for Python 3.
## 0.3.7
* Handle buffering more consistently across different Python versions.
## 0.3.6
* LocalShell: Add support for Python 3. Since paramiko is currently unsupported
on Python 3, use the package "spur.local" rather than "spur".
## 0.3.5
* SshShell: Use "command -v" instead of "which" for better POSIX compliance.
* SshShell: Skip blank lines when expecting echoed return code.
## 0.3.4
* LocalShell: Use Popen.wait instead of Popen.poll to get return code of local
process to ensure process has exited.
## 0.3.3
* Make username argument to SshShell optional. Closes GitHub issue #4.
## 0.3.2
* Include original error and original traceback on spur.ssh.ConnectionError
* Add experimental use_pty argument for run and spawn. Use at your own risk!
## 0.3.1
* spur.NoSuchCommandError is now raised if the command passed to run
or spawn doesn't exist
## 0.3.0
* Change default behaviour to raise an error when a host key is missing.
* Allow selection of behaviour when a host key is missing by adding
host_key_missing argument to SshShell constructor.
## 0.2.4
* Catch EOFError and wrap it in spur.ssh.ConnectionError when opening SSH
session