The pybwem project
released pywbem version 0.13.0 Saturday 23 Feb. 2019.
This version
is now available on PyPi
and from the pywbem
gihub respository as github branch_0.13
The documentation for this release is available on ReadTheDocs:
https://pywbem.readthedocs.io/en/stable/
This is a minor release and is backward compatible with the previous pywbem release (0.12) except for compatibility exceptions noted in the pywbem changes documentation.
There are a significant number of changes in this release. The
following is an overview of some of the important changes that
users should take notice of. For more information please see the
detailed changes list at :
https://pywbem.readthedocs.io/en/stable/changes.html#version-0-13-0.
The most significant enhancements include:
- You should now be able to install and use the pywbem
development environment in a native windows environment. We
improved pywbem installation both from PyPi and github clone
installation and in particular Windows. We extended the
installation of both pip pywbem and the use of the pywbem
development environment through git clone of pywbem to native
windows. In previous versions we had limited the installation of
the development environment on windows platforms to platforms such
as cygwin installed because of development tools (ex. GNU make) .
- You should be able to use the pywbem method WBEMServer.get_scoping_instances()
to access scoping and central instances on a WBEM server. We
corrected issues in both pywbem and the SNIA SMI-S specification
(the specification changes are reflected in version 1.8 of the
SMI-S specification) to this method and use registered profiles in
the WBEM server as the means to access central and scoping
instances of profiles defined for a particular server.
- Extended the pywbem_mock environment to handle namespaces
and to create mock environments from the DMTF CIM schema.
- Added a end-to-end, multiple WBEM server test environment
so that tests can be run in the pywbem development environment
against a collection of predefined real WBEM servers.
- Extended the operation response processing to more gracefully handle WBEM server issues like model incompatibilities and invalid XML in the returned responses.
- Extended the MOFWBEMConnection
class to use the capability of the MOF compiler to search the
defined search path for dependent classes. This means that the
compiler can be used to compile complete class repositories by
defining only the leaf classes to be compiled.
- Extended pywbem error handling to better handle WBEM server errors including:
* Extend the operation response processing to more gracefully handle WBEM server issues like model incompatibilities and invalid XML in the returned responses.
* Extend pywbem warnings and exceptions to avoid multiple
exceptions if the parameters cannot be properly processed (ex.
invalid unicode).
- Extended a number of the pywbem classes to add new methods and extend existing methods that testing and usage demonstrated could be useful:
* ValueMapping class to handle non-decimal integers,
* CIMInstance static method (from_class) to build an instance from a CIMClass,
* Added support for manipulating namespaces a the WBEM
server with new methods WBEMServer.create_namepace()
and WBEMServer.delete_namespace(),
* Extended support for the WBEM URI format (a string
representation of a CIMInstanceName with an optional
format ("canonical") that normalizes the strings. This was
important because it makes comparing CIMInstanceName
strings and lists of strings much simpler.
- Extended WBEM server error handling by adding an 'instances' property to the CIMError exception class so that any CIMError instances provided by the WBEM server as part of an error are passed to the pywbem caller.
- Added support for python 3.7
- Modified the use of some of the diagnostic data returned with the responses to WBEM requests (last_raw_request and last_raw_reply) to always be available to the caller and not be dependent on the WBEMConnection debug attribute.
- Added another notebook to the pywbem documentation tutorials.
Bug fixes
Corrected about 30
issues in the pywbem code.
See the detailed changes documentation in the on line documentation:
Added functionality to execute end-to-end tests against a predefined set of WBEM servers defined by a configuration file. We added specific tests for the pywbem WBEMServer class and specifically registered profiles both general and specific tests for smis servers and for the WBEMServer.get_central_instances() method . This capability is part of the pywbem test environment and is available only when pywbem is cloned from github.
Modified the test environment to:
* Extended the pywbem testsuite,
* Completely reorganize the test directories,
Overall test coverage for pywbem grew to 84% for this release
Incompatible changes
There were 6 changes in this version that should be considered
incompatibilities. In general they should not affect users but,
please see the heading "Incompatible changes:" in :
https://pywbem.readthedocs.io/en/stable/changes.html#version-0-13-0
for a detailed list.
Next steps with
pywbem
1. Release version 0.14.0 specifically because of some issues that we want to incorporate rapidly.
2. After 0.14.0 we
expect that the following version will be version 1.0.0. That
version of pywbem should be considered incompatible and will
remove support for Python 2.6 (currently deprecated)
We thank our users for
the continued use of and support of pywbem. Please feel free to
pass this mail on to anybody interested in pywbem or SMI-S.
-- ================ Karl Schopmeyer email: k.scho...@swbell.net, k.scho...@opengroup.org tel: 972-814-5581