Mini Shell
Version 1.8
- Breaking transports.Transport.request() into smaller pieces
- Added factories for the transport classes in the Server object
- Fixed a bug in File.__del__ (if close is called twice, it tried to call
None)
- Fixed a bug in SSL.read() (on an open stream, read() would block instead of
returning with the amount of data available).
- The previous fix in SSL.read uncovered a nastier bug in httplib:
http://python.org/sf/988120
Fixed it in our HTTPResponse subclass
- The internal _httplib did not have a _read_chunked
(http://bugzilla.redhat.com/128008)
Version 1.7
- Renamed _xmlrpclib.py to _internal_xmlrpclib.py to avoid _xmlrpclib from
self-importing (bug #119876)
- Added a User-Agent header for CONNECTION tunnels.
- Fixed lookupEncoding
Version 1.6
- GET methods have empty bodies, so rpclib.GETServer._req_body should return
empty string not None
- Properly convert chunk sizes in python 1.5.2
Version 1.5
- Added iterator for the UserDictCase objects. Easier than subclassing
IterableUserDict since the code has to work with python 1.5.2.
- rhn/transports.py: one can pass to an Input object a stream that doesn't
have a close() method.
- rpclib exposes File now too
- rhn/transports.py: the Output object now sets Content-Length
(which will be cleared when sent upstream)
Version 1.3
- work on HTTP/HTTPS redirection support at the Server class level in
rhnlib.py:
- new data in the instance to keep setting made to the underlying transport
- new methods to control and check redirection: allow_redirect() and
redirected() which returns the redirected URL or None
- separated the initialization code to provide a default transport as an
new method default_transport()
- added redirection handling in _request() with some associated checking
like https->http redirection being forbidden
- at the transport level, request() checks redirection, position a
redirection flag and returns None if redirected.
- Added some flexibility on the way to specify proxy informations, the
get_proxy_info() function of rhnlib.py is used to extract host, port,
username and password information from the proxy URL or old host:port
format.
- Fixed an error related to decoding the tuples that XMLRPC returns back.
Version 1.2
- Changed the ugly way of passing around InputStream as an exception
- The transport flags are now more generic, allowing for future extensibility
- Added a transport flag 'allow_partial_content' which will prevent the
transport from raising an exception if a 206 status code is received
- New Server methods: get_response_headers, get_response_status and
get_response_reason; you can now inspect the headers even for successful
connections
- Changed the GETServer method calls to accept offset and amount
- Added get_content_range, to parse the interesting values out of the HTTP
headers
- Added accept_ranges, a function that returns true if the server accepts
ranges. Note that even though the server doesn't advertise itself as
accepting ranges, it's still possible for the client to issue a range
request; depending on the response status code, the client can see if the
server supports ranges (206) or not (200)
- set_header and add_header are now different and doing what they are
supposed to do
- added get_transport_flags() as a Server method
- fixed an instance when Input.io was not rewound
Version 1.1
- Minor bugfixes
- Building the rpm with distutils is too painful; switching to a
human-maintained spec file instead.
Version 1.0
- More or less 0.9 for public consumption
Version 0.9
- SSL.py: use load_verify_locations multiple times. This function seems to do
more than my poor method of getting the cert store and adding certs by
hand, probably because load_certificate from a buffer can only handle one
certificate at the time.
- With the addition of SmartIO, the memory usage should be limited to 16k,
after which the objects will be dumped on the disk in temporary files.
- Fixed yet another file descriptor leak (and still in SSL).
Version 0.8
- User-Agent, X-Info and X-Client-Version were not present in the HTTP
headers; fixed
- Completely deprecating rhnHTTPlib: swallowed reportError
- Fixed stupid typo introduced when fixing the previous bug.
- Fixed #69518 (up2date seems to never properly reauthenticate after a auth
timeout)
- Fixed #69311 (leaking file descriptors over SSL connections).
- Fixed #68911 (and some other bugs that were related to this one).
- Fixed a proxy related bug. Thanks to Gil Chilton <Gil.Chilton@capitalone.com>
for helping me discover and test it.
Version 0.7
- More careful distutils packaging.
Zerion Mini Shell 1.0