- Dropped Python 2.7, 3.6, and 3.7 support, minimum supported version is 3.8
- Migrate to PEP 517 compliant build with a
pyproject.toml
file - Added type annotation
- Added
WSManFaultError
which contains WSManFault specific information when receiving a 500 WSMan fault response- This contains pre-parsed values like the code, subcode, wsman fault code, wmi error code, and raw response
- It can be used by the caller to implement fallback behaviour based on specific error codes
- Added public API
protocol.build_wsman_header
that can create the standard WSMan header used by the protocol- This can be used to craft custom WSMan messages that are not supported in the existing actions
- Added public API
protocol.get_command_output_raw
- This can be used to send a single WSMan receive request and get the output
- Unlike
protocol.get_command_output
, it will not loop until the command is done and will not catch a timeout exception
- Fix invalid regex escape sequences.
- Decoding CLIXML failures for
run_ps
will create aUserWarning
rather than printing the warning. - Remove usage of deprecated Python API to support Python 3.11
- Dropped Python 3.5 from support matrix as it is EOL.
- Remove dependency on
distutils
that is deprecated in Python 3.10.
- HOT FIX: Fixing an issue with
requests_kerberos
not imported correctly from the changes in0.4.0
.
- Ensure
server_cert_validation=ignore
supersedes ca_trust_path/env overrides - Added deprecated warnings if CA trusts defined by environment variables are used.
- Set minimum version of requests-credssp to support Kerberos auth over CredSSP and other changes
- Added
proxy
support where it can be defined within the application, with the ability to specify the proxy within the application - Fix for shell not setting all environment variables.
- Fix session clixml encoding on Python 3
Protocol.close_shell(shell_id)
will now close the session(and TCP connections) to the Windows machine.close_session
option has been added in case of leaving the session alone.- Add a function to send input to a running process.
- Added support for message encryption over HTTP when using NTLM/Kerberos/CredSSP
- Added parameter to disable TLSv1.2 when using CredSSP for Server 2008 support
- Error detail from SOAP fault (if present) is now included with HTTP 500 errors
- Fixed CA path override (incl envvar)
- Fixed Kerberos service override
- Try harder to suppress urllib3 InsecureRequestWarnings on various OSs
- Fixed timeout values to parse correctly if passed as strings
- Various updates to CI/tests
- Added support for CredSSP authenication (via requests-credssp)
- Improved README, see 'Valid transport options' section
- Run unit tests on Linux / Travis CI on Python 2.6-2.7, 3.3-3.6, PyPy2
- Run integration tests on Windows / AppVeyor on Python 2.7, 3.3-3.5
- Drop support for Python 3.0-3.2 due to lack of explicit unicode literal, see pep-0414
- Drop support for Python 2.6 on Windows
- Add support for Python 3.6-dev on Linux
- Minor import bugfix for error "'module' object has no attribute 'util'" when using Kerberos delegation on older Python builds
- Switched core HTTP transport from urllib2 to requests
- Added support for NTLM (via requests_ntlm)
- Added support for kerberos delegation (via requests_kerberos)
- Added support for explicit kerberos principals (in conjuction w/ pykerberos bugfix)
- Timeouts are more configurable
- Force basic auth header to avoid additional HTTP request and reduce latency
- Python 2.7.9+. Allow server cert validation to be ignored using SSLContext.verify_mode
- Tests. Enable Python 3.4 on Travis CI
- Use xmltodict instead of not supported xmlwitch
- Add certificate authentication support
- Setup PyPI classifiers
- Fix. Include UUID when sending request
- Fix. Python 2.6.6/CentOS. Use tuples instead of lists in setup.py
- Fix. Python 2.6. String formatting
- Handle unauthorized response and raise UnauthorizeError
- Convert different forms of short urls into full well-formed endpoint
- Add Session.run_ps() helper to execute PowerShell scripts