pyVmomi SDK 8.0 Release Notes
This document contains the following sections
Introduction
pyVmomi SDK vSphere 8.0 Update 3 | 25 June 2024 Last document update 27 June 2024 Check for additions and updates to these release notes. |
Maintenance Patch 1 for 8.0U3
Resolved Issues
The maintenance patch release resolved the following issue.
- Due to a dependency issue in thesetup.pyscript, the greenfield installation of pyVmomi fails.This issue is resolved in this release. See thee4fd849commit.
vSphere 8.0 Update 3
What's New
With vSphere 8.0 Update 3, pyVmomi offers the following improvements:
- Support is added for the vSAN Health APIs.
- The bindings with support for the vSphere 8.0 Update 3 APIs are updated. For more information, see the vSphere Web Services API reference documentation.
- Support for the new vSphere Automation APIs provided with vSphere 8.0 Update 3 is included in the vSphere Automation SDK for Python.
- Type stubs are added for vSAN APIs.
- All type stubs are refactored.
- Stub adapters allow the usage of an existing session. See the 35f2743 commit.
- pyVmomi version is added in theUser-Agentrequest header. See the 5ad215f commit.
- Project wide variables are added to hold the current pyVmomi version -version_infoandversion_info_str. See the 5ad215f commit.
- The following functions are added to VmomiSupport.py to list all types -ListManagedTypes(),ListDataTypes(), andListEnumTypes(). See the 9e303c1 and e43a287commits.
- The CHANGELOG file is updated.
- The dependency onpywin32is removed. See the 4bc1f52 commit.
- The non-remote ManagedObject and DataObject methods are documented. See the 472bdfc commit.
- The support statement now reflects the Broadcom support policy. See the c68913e commit.
- The copyright is updated. See the 10c3732 commit.
Compatibility
- As of vSphere 8.0 Update 3, the pyVmomi client is compatible with Python 3.12. For more information, see Python 3.12 compatibility (44d7b9f).
Deprecated
Support Notices
Future pyVmomi releases will be compatible with the Supported versions of Python at the time of the release. The list of supported Python versions is documented in the Python Support section of the pyVmomi Readme file. With the next major pyVmomi release, pyVmomi will no longer support Python 2 and all versions earlier than 3.9.
In a future pyVmomi release, VMware intends to discontinue the following features:
- pyVmomi
- All pyVmomi settings defined in the will be removed -allowGetSet,allowCapitalizedNames,binaryIsBytearray,legacyThumbprintException.
- The Feature.py script will be removed along with the pyVmomi feature states logic.
- ThepublicVersionsanddottedVersionsversion aliases will be removed from the script. Instead, use theltsVersionsallias.
- pyVmomi.VmomiSupport.VmomiJSONEncoderwill be removed. Instead, use VmomiJSONEncoder.
- pyVmomi.VmomiSupport.templateOf()will be removed. Instead, use VmomiJSONEncoder.templateOf().
- _legacyThumbprintExceptionin the SoapAdapter.py will be removed. Instead, use theThumbprintMismatchExceptionclass in Security.py.
- pyVim
- b64tokenandmechanismwill be removed. Instead, usetokenandtokenType.
- __GetElementTreeFromUrl()will be removed. Instead, use__GetElementTree().
- OpenUrlWithBasicAuth()will be removed.
- OpenPathWithStub()will be removed.
Maintenance Patch 1 for 8.0U2
Released 17 Nov 2023
What's New
Added PyPI classifiers for Python 3.10 and Python 3.11. Support for both versions is verified.
Resolved Issues
Fixed: #978 and #1053 - Fix SmartConnect()'s handling of IPv6 address with square brackets
vSphere 8.0U2 Release
Released 28 Sep 2023
What' New
- Updated bindings and type hints with support for vSphere 8.0U2. Includes updates to VIM, PBM, EAM, SMS and VSLM namespaces. For details, refer “What’s New in vSphere API 8.0U2?” section in the API reference guide: https://developer.vmware.com/apis/1720/vsphere
- New features of vSphere 8.0U2 based on REST APIs are available via the vSphere Automation SDK for Python https://github.com/vmware/vsphere-automation-sdk-python
Maintenance Patch 2 for 8.0U1
Released 19 Jul 2023
What's New
Added bindings and type hints for Virtual Storage Lifecycle Management for vSphere 8.0U1 - VSLM namespace.
Resolved Issues
- Fixed: #1021 - Switch to static imports for type info modules
- Fixed: #1022 - Support proxy authentication
- Add custom HTTP headers support to connect.SmartStubAdapter()
- Missing filters are no longer treated as task failures
- Various small fixes for docstrings and linter checks
- Type hints fixes:
- Fixed: #1026 - Use the "from Y import X as X" format to re-export submodules
- Fixed: #1030 - Use a fully qualified name when the type is from another namespace/package
- Tests
- vcrpydependency is updated to the latest version with Python 2 support
- testtoolsdependency is removed
- Travis CI is no longer used
- Various test updates and fixes. All tests are enabled.
Maintenance Patch 1 for 8.0U1
Released 25 May 2023
Resolved Issues
- Added missing VMODL1 classes to the type hints
- Enum values now match the letter case of the values fromtypeinfofiles
- Fixed: #1115 - Syntax error invim/__init__pyi
- Fixed: #1117 - Type stubs: Writable properties are marked as read-only
- Fixed: #1118 - Type stubs: Missingvim.fault.*andvmodl.fault.*types
- Fixed: #1119 - Type stubs: Enum fields should also acceptLiteral[] strtype
- Fixed: #1120 - Typestubs: Exceptiontypes must inherit from(Base)Exception
vSphere 8.0U1 Release
Released 6 May 2023
What's New
- Updated bindings with support for vSphere 8.0U1. Includes updates to VIM, PBM, EAM and SMS namespaces. For details, refer “What’s New in vSphere API 8.0U1?” section in the API reference guide: https://developer.vmware.com/apis/1639/vsphere
- New features of vSphere 8.0U1 based on REST APIs are available via the vSphere Automation SDK for Python https://github.com/vmware/vsphere-automation-sdk-python
- Added support for type hints
- #892 - Allow passing ssl_context when login in with a token
Resolved Issues
- Fixed: #750 - Bumped vcrpy tests dependency to 2.1
- Fixed: #812 - Fix exception leaks
- Fixed: #1004 - Fix SmartConnect()'s SOAP and OAuth token login
Maintenance Patch 2 for 8.0
Released 18 Jan 2023
What's New
- This release restores the legacy behavior when retrieving managed properties and array of instances of ManagedObject
Resolved Issues
- Fixed: #995 - 8.0.0.1 breaks Ansible vmware_content_deploy_ovf_template folder lookup
Maintenance Patch 1 for 8.0
Released 16 Dec 2022
What's New
- Replace publicVersions with ltsVersions
- Updated VIM namespace for the next vSphere 8.0 patch release
Resolved Issues
- Fixed: #993 - WaitForTask broken on version >8.0.0
- Fixed: #994 - Pyvomi module failing in connect method
vSphere 8.0 Release
Released 24 Nov 2022
What's New
- Bindings
- Updated bindings with support for vSphere 8.0. Includes updates to VIM, PBM, EAM, SMS and QUERY namespaces. For details, refer “What’s New in vSphere API 8.0.0.1?” section in the API reference guide: https://developer.vmware.com/apis/1355/vsphere
- New features of vSphere 8.0 based on REST APIs are available via the vSphere Automation SDK for Python https://github.com/vmware/vsphere-automation-sdk-python
- Breaking Changes
- Minimum Python 2 requirement is 2.7.9
- DynamicTypeManagerHelper.pyis removed
- ManagedMethodExecutorHelper.pyis removed
- connect.ConnectNoSSL()andconnect.SmartConnectNoSSL()are removed. Useconnect.Connect(disableSslCertValidation=True)andconnect.SmartConnect(disableSslCertValidation=True)
- VmomiSupport.UncallableManagedMethodis renamed toVmomiSupport.UnknownManagedMethod
- New Modules
- Security.pyA new module is added to handle thumbprint verification. There is a predefined set of available crypto functions to verify the certificate thumbprints. Its possible to configure during runtime which of the available crypto functions are allowed.
- Feature.pyA new module related to pyVmomi development within VMware.
- VmomiJSONEncoder.pyTheVmomiJSONEncoderis moved into a dedicated module.
- Miscellaneous
- A newbinaryIsBytearraysetting is added to select the base type for the binary type. By default, the binary type isstrfor Python 2 andbytesfor Python 3. IfbinaryIsBytearrayisTrue, the binary type for Python 2 is set tobytearray. Required forVmomiJSONEncoderto work properly.
- The license note is removed from the Python files.LICENSE.txtholds the Apache 2 license note.
- pyVmomi now uses relative imports
- Dependency on “requests” is removed
- Added support for SAML token authentication
- Added timeout for HTTP requests
- Added option to set the maximum amount of time a task is allowed to run. On timeout, an exception is generated ifraiseOnErrorisTrue.
- Add option to get all updates for the task.
- Add option to use a logger instead of the standard output
- Various bug fixes
- Code style improvements
Deprecated
- connect.OpenUrlWithBasicAuth()
- connect.OpenPathWithStub()