^^^^^^^^^^^^^^
Released: 2019-08-15
**Incompatible changes:**
* Operations that resulted in HTTP status 403, reason 1 ("The user under which
the API request was authenticated does not have the required authority to
perform the requested action.") so far raised `ServerAuthError`. However,
that exception does not represent that situation properly, because the
login user is actually properly authenticated.
The handling of this case was changed to now raise `HTTPError` instead of
`ServerAuthError`.
This change is only incompatible to users of the zhmcclient API who have
code handling this exception specifically.
**Bug fixes:**
* Fixed LookupError on unknown encoding ISO-5589-1 in test_session.py test
that occurred with latest requests_mock package.
* Increased minimum version of flake8 to 3.7.0 due to difficulties with
recognizing certain 'noqa' statements. This required explicitly specifying
its dependent pycodestyle and pyflakes packages with their minimum versions,
because the dependency management did not work with our minimum
package versions.
* Fixed use of incorrect HTTP method in `Console.get_audit_log()` and
`Console.get_security_log()`. See issue 580.
**Enhancements:**
* Improved end2end test support for zhmcclient and its using projects.
The zhmcclient.testutils package already provides some support for end2end
tests by users of the zhmcclient package. It is also used by the end2end
tests of the zhmcclient package itself. This change improves that support,
mainly from a perspective of projects using zhmcclient.
* Improved the show_os_messages.py example.
* Blanked out the session ID value in the log record for logging off.
* Changed import of 'stomp' module used for notifications from the HMC, to be
lazy, in order to speed up the import of 'zhmcclient' for its users.
The 'stomp' module is now imported when the first
`zhmcclient.NotificationReceiver` object is created. Also, only the class
needed is imported now, instead of the entire module.
* Added timezone support to the utility function
`zhmcclient.datetime_from_timestamp()`. The desired timezone for the returned
object can now be specified as an optional argument, defaulting to UTC for
compatibility. This allows displaying HMC timestamps in local time rather
than just UTC time.
* Added support for specifying multiple notification topics to
`zhmcclient.NotificationReceiver`.