Zhmcclient

Latest version: v1.16.2

Safety actively analyzes 640747 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 8

1.10.0

^^^^^^^^^^^^^^

This version contains all fixes up to version 1.9.1.

Released: 2023-08-04

**Bug fixes:**

* Fixed issue with PyYAML 5.4 installation on Python>=3.10 that fails since
the recent release of Cython 3.

* Fixed example mocked environments to be useable in end2end test.

**Enhancements:**

* Added support for upgrading the HMC and SE to a new bundle level via new
zhmcclient.Console.single_step_install() and
zhmcclient.Cpc.single_step_install() methods. (issue 1219)

* Added resource class and name to HMC log entries. (issue 1058)

* Test: Added pytest fixtures for mocking at the HTTP level for unit tests
in cases where zhmcclient mock support is not implemented.

* Added support for LPAR Load from FTP via a new Lpar.load_from_ftp()
method. (issue 1048)

* Added support for STP configuration of CPCs via new operations of
zhmcclient.Cpc: swap_current_time_server(), set_stp_config(),
change_stp_id(), join_ctn(), leave_ctn(). (issue 750)

**Cleanup:**

* Fixed new issue reported by flake8 6.1.0.

* Converted all the percent-style string usages to format style except
the logging calls. Logging will continue to use percent-style. (issue 663)

1.9.0

^^^^^^^^^^^^^

This version contains all fixes up to version 1.8.2.

Released: 2023-07-14

**Incompatible changes:**

* Renamed the `Session.resource_updater` property to `auto_updater` and the
`zhmcclient.ResourceUpdater` class to `AutoUpdater` to take into account that
the class and property now represent auto-updated manager objects in addition
to auto-updated resource objects. Note that the property and class are
still experimental in this version.

**Deprecations:**

* Deprecated the 'verify' parameter of 'Session.logoff()'. Its use with
verify=True caused an invalid session to first be renewed and then deleted
again. It is no longer used.

**Bug fixes:**

* Fixed and improved session creation, deletion and automatic renewal.
Fixed the arguments passed to the retried HTTP operations in case the session
gets renewed.
Added the ability to log off sessions properly in case the session ID is
invalid, by adding a 'renew_session' flag to Session.get/post/delete() (this
ability is needed for zhmccli to address its issue 421).
Fixed Session.is_logon(verify=True) which would log on in certain cases.
Optimized Session.logoff(verify=True) which had logged on and then off again
in case the session was already invalid.
Improved and fixed the descriptions of Session.logon(), logoff(), is_logon()
and session_id.

* In addition to 403.5 (session ID invalid), 403.4 (no session ID provided) is
now also automatically handled by the zhmcclient in the same way, i.e. by
performing a logon to the HMC and a retry of the HMC operation.

* Circumvented the removal of Python 2.7 from the Github Actions plugin
setup-python, by using the Docker container python:2.7.18-buster instead.

* Addressed safety issues from 6+7/2023, by increasing 'requests' to 2.31.0
on Python >=3.7, and by increasing other packages only needed for development.

* Fixed the handling of HTTP status 202 with empty response content: The
old code tested the content for '' but the content is always a binary string.
In Python 3.x, that check results in False and subsequently in an attempt
to parse the empty string using JSON, which failed with a ParseError.
Fixed by comparing the empty string against b''.

* Improved the handling of logoff: It now also tolerates a ConnectionError,
which may be raised when the console.restart() method is used and the
HMC quickly enough becomes unavailable.

* Fixed the bug issue template by correcting the command to display debug data.

**Enhancements:**

* Reworked export_dpm_configuration() to avoid using the "cpc" category when
doing the initial GET Inventory call. This reduces the likelihood of running
into problems during export due to problems with any of the CPCs managed by
the HMC.

* Improved performance of metrics retrieval and processing for NIC and partition
related metrics for CPCs in DPM mode.

* Added optimized lookup by name in list() methods of the following resource
classes: `LdapServerDefinition`, `PasswordRule`, `Task`, `User`,
`UserPattern`, `UserRole`,

* Added support for auto-updated resource managers. An auto-updated resource
manager has its list of resources automatically updated as resources are
created and deleted on the HMC, based on HMC notifications. (issue 1055)

Added an example script examples/show_auto_updated_partition_manager.py
to demonstrate an auto-updating enabled partition manager.

Renamed the existing example script show_auto_update.py to
show_auto_updated_partition.py, for clarity.

* Docs: In the description of the list() methods of the resource manager
classes, described the optimized lookup behavior for auto-updated managers
and optimized access via the name-to-URI cache.

* In the NotificationReceiver class, added support for managing subscriptions
for topics dynamically with new methods 'subscribe()', 'unsubscribe()',
'is_subscribed()' and 'get_subscription()'.

1.8.0

^^^^^^^^^^^^^

This version contains all fixes up to version 1.7.3.

Released: 2023-05-16

**Incompatible changes:**

* The default value for the 'full_properties' parameter of the 'list()' method
of some zhmcclient resource types (Console, LDAPServerDefinition,
PasswordRule, User, UserPattern, UserRole, Task) has been changed from 'True'
to 'False' in order to improve performance. This change also affects the
set of properties of resources returned by 'find()' and 'findall()'.

In many cases, this is not an incompatible change since property access by
methods such as 'get_property()' or 'prop()' causes resource property
retrieval under the covers if the full set of properties had not been
retrieved in 'list()'.

However, there are also cases where this change is incompatible, for example
when accessing the resource properties via the 'properties' property. In such
cases, you need to change the call to 'list()' by specifying
'full_properties=True'. In cases where you had used 'find()' or 'findall()',
that parameter cannot be specified, and you need to fall back to using
'list()'.

**Bug fixes:**

* Addressed safety issues by increasing minimum versions of packages, where
possible.

* Changed use of 'method_whitelist' in urllib3.Retry to 'allowed_methods'.
The old method was deprecated in urllib3 1.26.0 and removed in 2.0.0.
Related to that, increased the minimum versions of urllib3 to 1.26.5 and of
requests to 2.25.0. Added urllib3 to the dependencies for installing zhmcclient,
because the indirect depndency of requests is not sufficient. (issue 1145)

* Fixed RTD docs build issue with OpenSSL version by providing a .readthedocs.yaml
file that specifies Ubuntu 22.04 as the build OS.

* Added trouble shooting info for urllib3 2.0 ImportError requiring
OpenSSL 1.1.1+.

* Increased dependent package jsonschema to >=3.0.1 to resolve dependency
issue with jupyter. (issue 1165)

**Enhancements:**

* Disabled the default retrieval of the full set of properties in list()
methods that was enabled by default, for the following resource types:
Console, LDAPServerDefinition, PasswordRule, User, UserPattern, UserRole,
Task. This provides a performance boost in cases where find() or findall()
is used with filters that can be handled by the HMC, because in such cases
the resource properties do not need to be retrieved.

* Added a 'pull_properties()' method to zhmcclient resource classes, that
performs a "Get Properties" HMC operation with the 'properties' query
parameter defined. This can be used to speed up certain property retrieval
operations, for example on the Console or on CPCs. (issue 862)

* Added a 'list_sibling_adapters()' method to the zhmcclient.Adapter class
that lists the other Adapter objects on the same physical adapter card.
Added end2end testcases for the new method.

* Test: Added end2end testcases for property retrieval.

* Added zhmcclient.GroupManager and zhmcclient.Group to support Group resources.
Group resources represent user-defined groups of resources; they can be used
for example in User Role permissions. Added zhmcclient mock support for
Group resources. Added testcases for both of that. (issue 1017)

* Enhanced export_dpm_configuration() to include Certificate objects.

* Introduced Certificate objects as new category of resources and added new
methods to assign/unassign Certificate objects to/from DPM mode partitions and
classic mode LPARs and activation profiles.

* Added two new methods Console.list_api_features() and
Cpc.list_api_features() and accompanying documentation to support the
new "API features" concept.

**Cleanup:**

* So far, the `Partition.hbas` property was set to `None` for CPCs that have the
"dpm-storage-management" feature enabled (i.e. starting with z14), because
HBAs are then represented as Virtual Storage Resource objects. For
consistency, this property was changed to provide an `HbaManager` object.
Since that property uses lazy initialization, there is no change at runtime
unless the property is actually accessed.

1.7.0

^^^^^^^^^^^^^

Released: 2023-03-26

**Incompatible changes:**

* export_dpm_configuration(): the default behavior when exporting the DPM
configuration has been changed to only include those adapters that are
referenced by other elements of the exported configuration data.
Old behavior is available by passing a new parameter to the function. (1115)

**Bug fixes:**

* Added the missing dependent packages for using the 'zhmcclient.testutils'
sub-package by adding a Paython package extra named 'testutils'. This is
only needed when performing end2end tests, or when using the example scripts.
The extra can be installed with 'pip install zhmcclient[testutils]'.

* Fixed incorrect list of managers in 'managers' attribute of zhmcclient
exception 'MetricsResourceNotFound' when a CPC was not found. (issue 1120)

**Enhancements:**

* Added missing test environments (Python >=3.6 on MacOS and Windows) to the
weekly full tests.

* Addressed issues reported by safety by increasing package versions. (1103)

* Test: Added more tools to missing requirements checking.

* export_dpm_configuration(): sorting result lists for more stable output

1.6.0

^^^^^^^^^^^^^

Released: 2023-03-02

**Bug fixes:**

* Accommodated use of Ubuntu 22.04 in Github Actions as the default ubuntu.

* Fixed install error of twine -> keyring dependency pywin32-ctypes on Windows
with Python 3.8 and higher. (issue 1078)

**Enhancements:**

* Simplified release process by adding a new GitHub Actions workflow publish.yml
to build and publish to PyPI.

* Enhanced method Cpc.export_dpm_configuration() to support Partition Link
objects (introduced with Z16).

* Docs: Added a section "Setting up firewalls or proxies" that provides
information which ports to open for accessing the HMC. (issue 1088)

**Cleanup:**

* Addressed issues in test workflow reported by Github Actions. (issue 1091)

1.5.0

^^^^^^^^^^^^^

This version contains all fixes up to version 1.4.1.

Released: 2022-10-25

**Bug fixes:**

* Fixed a flake8 AttributeError when using importlib-metadata 5.0.0 on
Python >=3.7, by pinning importlib-metadata to <5.0.0 on these Python versions.

* Fixed an AttributeError in the VirtualStorageResource.adapter_port property.
(issue 1059)

**Enhancements:**

* Added a new method Adapter.list_assigned_partitions() that performs the
HMC operation "Get Partitions Assigned to Adapter".

* Added a new method Lpar.reset_normal() that performs the HMC operation
"Reset Normal" on Logical Partitions (in classic mode).

* Added an optional 'os_ipl_token' parameter to the Lpar.reset_clear()
method.

Page 2 of 8

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.