# CHANGES

## 4.10.0

- zuul: Use openstack-python3-next-jobs template

- pre-commit: Bump versions

- Do not install code to build release notes

- Remove Python 3.10 support

- tox: Use new constraints option

- Remove eventlet from the requirements

- rw_handles: fix NFC hang with urllib3 >= 2.0

- Update master for stable/2026.1

## 4.9.0

- Remove eventlet timeout from image_transfer

## 4.8.0

- Remove unused PCRE packages

- Delay string interpolations at logging calls

- Remove reference to tag framework

- [test]Mock time.sleep instead of greenthread.sleep

- Use oslo.service loopingcall

- reno: Update master for unmaintained/2024.1

- Bump pyupgrade target to 3.10+

- Migrate bandit options to pyproject.toml

- pre-commit: Bump dependencies

- Migrate setup configuration to pyproject.toml

- Drop Python 3.9 support

- Update master for stable/2025.2

## 4.7.0

- Remove unused dependencies

- Use common utility to escape ipv6

- add pyproject.toml to support pip 23.1

- Update master for stable/2025.1

## 4.6.0

- Skip installation to speed up pep8

- Run pyupgrade to clean up Python 2 syntaxes

- Replace deprecated defusedxml.lxml

- reno: Update master for unmaintained/2023.1

- pre-commit: Bump versions

- Add note about requirements lower bounds

- Remove Python 3.8 support

- Declare Python 3.12 support

- Fix wrong tox minversion

- Update master for stable/2024.2

## 4.5.0

- reno: Update master for unmaintained/zed

- Update master for stable/2024.1

- reno: Update master for unmaintained/xena

- reno: Update master for unmaintained/wallaby

- reno: Update master for unmaintained/victoria

## 4.4.0

- reno: Update master for unmaintained/yoga

- Update python classifier in setup.cfg

## 4.3.0

- Imported Translations from Zanata

- Add PBM WSDL for vSphere 8.0

- Update master for stable/2023.2

## 4.2.0

- Bump bandit and make oslo.messaging compatible with latest rules

- Imported Translations from Zanata

- Revert “Moves supported python runtimes from version 3.8 to 3.10”

- Moves supported python runtimes from version 3.8 to 3.10

- Update master for stable/2023.1

## 4.1.1

- Fix issues related to tox4

## 4.1.0

- Add Python3 antelope unit tests

- Update master for stable/zed

- remove unicode literal from code

## 4.0.1

- remove unicode literal from code

- Imported Translations from Zanata

- Imported Translations from Zanata

- Fix formatting of release list

## 4.0.0

- Download ISO in more simple way

- Drop python3.6/3.7 support in testing runtime

- Add Python3 zed unit tests

- Update master for stable/yoga

## 3.10.0

- Replace suds-jurko with suds-community

- Don’t use ‘requests.PreparedRequest’

- Add Python3 yoga unit tests

- Update master for stable/xena

## 3.9.1

- setup.cfg: Replace dashes with underscores

## 3.9.0

- Ignore already deleted lease

- Remove lower-constraints remnants

- Add serialize_object() helper function

- Move flake8 as a pre-commit local target

- Add Python3 xena unit tests

- Update master for stable/wallaby

## 3.8.0

- Add PBM WSDL for vSphere 7.0

- Use TOX_CONSTRAINTS_FILE

- Use py3 as the default runtime for tox

- Imported Translations from Zanata

- Add Python3 wallaby unit tests

- Update master for stable/victoria

- Adding pre-commit

## 3.7.0

- [goal] Migrate testing to ubuntu focal

- Bump bandit version

## 3.6.0

- Add backend-independent access to cookiejar

## 3.5.0

- Add moref helper functions

## 3.4.0

- Validation of VMDK upload completion

- Fix hacking min version to 3.0.1

- Imported Translations from Zanata

- Switch to newer openstackdocstheme and reno versions

- Remove the unused coding style modules

- Remove translation sections from setup.cfg

- Align contributing doc with oslo’s policy

- Bump default tox env from py37 to py38

- Add py38 package metadata

- Add release notes links to doc index

- Add Python3 victoria unit tests

- Update master for stable/ussuri

## 3.3.1

- Use unittest.mock instead of third party mock

- Document disable flake8/hacking warnings

## 3.3.0

- Update hacking for Python3

## 3.2.1

- Fix object has no attribute ‘readinto’ in Python3

- Update the tox minversion parameter

- Pass “base_image_ref” to backend when transfer volume to image

- Drop use of six

## 3.2.0

## 3.1.0

- remove outdated header

- Ensure lease polling raises proper exception

- reword releasenote for py27 support dropping

- Adds standard file operation functions

- Add ability to change read chunk size

## 3.0.0

- [ussuri][goal] Drop python 2.7 support and testing

## 2.35.0

- Pass “store_id” to backend when transfer volume to image

- tox: Trivial cleanup

- Switch to Ussuri jobs

- tox: Keeping going with docs

- Update master for stable/train

## 2.34.1

- Follow the new PTI for document build

- Add Python 3 Train unit tests

- Add local bindep.txt

- Sync Sphinx requirement

## 2.34.0

- Dropping the py35 testing

- Ensure that log message with non-ascii code does not raise exception

- Set locale to english

- Update NFC lease progress

- Add nosec to skip bandit check

- Replace git.openstack.org URLs with opendev.org URLs

## 2.33.0

- OpenDev Migration Patch

- When looping call fails do not log the exception trace

- Fix invalid escape sequence warning

- Fix doc build error under Python 3

- Update master for stable/stein

- Return None if no suitable datastore is found

- SDRS recommendation for create VM

## 2.32.2

- add python 3.7 unit test job

- Change python3.5 job to python3.7 job on Stein+

- Use template for lower-constraints

- Change openstack-dev to openstack-discuss

- delete useless indent

- Clean up .gitignore references to personal tools

## 2.32.1

- Add DVS utility methods

- Check if there is a context set before updating the store

- Imported Translations from Zanata

- add lib-forward-testing-python3 test job

- add python 3.6 unit test job

- Set request context when polling vCenter tasks

- import zuul job settings from project-config

- py37: deal with Exception repr changes

- Update reno for stable/rocky

## 2.31.0

- Utility method to check SDRS enabled status

- Add function for getting recommended datastore

- Add utility function for datastore clusters

- Switch to stestr

## 2.30.0

- Add release notes link to README

- Add traversal spec for datastoreFolder

- Fix docstring which breaks doc generation

- fix tox python3 overrides

## 2.29.2

## 2.29.1

- Specify CA store when making secure connections with urllib3

## 2.29.0

- Fix session re-establish failure with PBM APIs

- Refactor _start_transfer

- PBM WSDL for vSphere 6.7

- Remove stale pip-missing-reqs tox test

- fix a typo:s/extention/extension

- Trivial: Update pypi url to new url

- set default python to python3

## 2.28.0

- fix lower constraints and uncap eventlet

- Updated from global requirements

- add lower-constraints job

- pypy is not checked at gate

- Updated from global requirements

## 2.27.0

- Updated from global requirements

- Update links in README

- Updated from global requirements

- Imported Translations from Zanata

- Imported Translations from Zanata

- Update reno for stable/queens

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

## 2.26.0

- Cleanup test-requirements

- Updated from global requirements

- Fix the repeating titles

## 2.25.0

- Remove -U from pip install

- Avoid tox_install.sh for constraints support

- Remove setting of version/release from releasenotes

- Updated from global requirements

- Updated from global requirements

- Imported Translations from Zanata

## 2.24.0

- Updated from global requirements

- Updated from global requirements

- Imported Translations from Zanata

- Updated from global requirements

- Update reno for stable/pike

- Updated from global requirements

## 2.23.0

- Update URLs in documents according to document migration

- rearrange existing documentation to fit the new standard layout

- Switch from oslosphinx to openstackdocstheme

- Enable warning-is-error in doc build

- Use request_handler() for ExtensionManager APIs

- Improving cover testenv

## 2.22.1

- Add hacking rule to prevent log translations

## 2.22.0

- Updated from global requirements

## 2.21.0

- Do not prune some special XML elements which are empty

- Updated from global requirements

## 2.20.0

- Updated from global requirements

- Wrong member variable name in class Datastore

- Make sure host in maintenance mode excluded from image upload

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

## 2.19.0

- Trivial: Remove testscenarios from test-requirements.txt

- Remove log translations

## 2.18.0

- Updated from global requirements

- [Fix gate]Update test requirement

- Updated from global requirements

- Make the mock call in MemoryCacheTest forward-compatible

- Updated from global requirements

- Updated from global requirements

- Improve unit test coverage

- pbr.version.VersionInfo needs package name (oslo.xyz and not oslo_xyz)

- Add in support for removeKey

- Use https for references to openstack.org

- Update reno for stable/ocata

## 2.17.0

- Fix setting the SOAP headers for remote calls

- Remove references to Python 3.4

- Updated from global requirements

- Remove some useless log messages

- Add operation ID for remote calls

- Fix image meta-data update for Glance v2

- Add Constraints support

- Updated from global requirements

## 2.16.0

- Files with no code must be left completely empty

- Add ‘uncommitted’ field to the ‘Datastore’ class

- Add SPBM WSDL for vSphere 6.5

- Show team and repo badges on README

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Trivial fixes to the usage doc

- Imported Translations from Zanata

- Imported Translations from Zanata

- Updated from global requirements

- Remove mox3 in test-requirement.txt

- [TrivialFix] Replace ‘assertTrue(a in b)’ with ‘assertIn(a, b)’

- Updated from global requirements

## 2.15.0

- Enable release notes translation

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Update home page link in cfg file

- Updated from global requirements

- Set pool size for HTTPS connections

- Update reno for stable/newton

- Improve logging for task updates

## 2.14.0

- Updated from global requirements

- Fix TypeError:six.StringIO(resp.content) must be str or None, not bytes

## 2.13.0

- Method to download file to VMware server

- Pass connection timeout so that invoke_api will not wait forever

## 2.12.0

- Updated from global requirements

- Add http_method to download_stream_optimized_data

- Refactor the image transfer

- Remove discover from test-requirements

- Updated from global requirements

## 2.11.0

- Updated from global requirements

- Add a py35 tox venv for upcoming py35 support

- Updated from global requirements

- Remove unnecessary properties from image-meta

- Updated from global requirements

- Updated from global requirements

## 2.10.0

- Updated from global requirements

## 2.9.0

- Imported Translations from Zanata

## 2.8.0

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Refactor VmdkWriteHandle and VmdkReadHandle

- Updated from global requirements

- Add reno for release notes management

- Support download of virtual disk in ova container

- Updated from global requirements

- Updated from global requirements

## 2.7.0

- Updated from global requirements

- Trivial: ignore openstack/common in flake8 exclude list

## 2.6.0

- Updated from global requirements

- Imported Translations from Zanata

- Updated from global requirements

- Updated from global requirements

- Should not raise Exception before connection close

- Remove explicit use of asserts

- Move bandit into pep8

## 2.5.0

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

## 2.4.0

- Updated from global requirements

## 2.3.0

- Remove bandit.yaml in favor of defaults

- Updated from global requirements

- Update translation setup

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Imported Translations from Zanata

- Updated from global requirements

- Use oslo_utils reflection to get function name

## 2.2.1

- Python 3 deprecated the logger.warn method in favor of warning

- Put py34 first in the env order of tox

- assertIsNone(val) instead of assertEqual(None,val)

## 2.2.0

- isoformat instead of deprecated timeutils.strtime

- Overwrite VMwareDriverException message

- Updated from global requirements

- Updated from global requirements

- Clean requirements

- Trival: Remove ‘MANIFEST.in’

## 2.1.0

- Updated from global requirements

## 2.0.0

- Updated from global requirements

- Updated from global requirements

- Remove python 2.6 classifier

- Remove python 2.6 and cleanup tox.ini

- Imported Translations from Zanata

- Updated from global requirements

## 1.23.0

- Updated from global requirements

## 1.22.0

- Updated from global requirements

- Fix coverage configuration and execution

- No need for Oslo Incubator Sync

- Add support for SSL thumbprint when using FileWriteHandle

- Define WithRetrieval context

- Imported Translations from Zanata

- Add shields.io version/downloads links/badges into README.rst

- docs - Set pbr ‘warnerrors’ option for doc build

- clean up auto-doc api build

- do not show the full release history in the main table of contents

- clean up readme and documentation titles

- Change ignore-errors to ignore_errors

- Updated from global requirements

- Add support for using HTTP POST in VmdkWriteHandle

- Add unit tests for FileHandle._create_connection

- Update the documentation

## 1.21.0

- Updated from global requirements

- Use SSL thumbprints for NFC transfer

- Updated from global requirements

- Update bandit.yaml to the latest

## 1.20.0

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- flake8 - remove unused rules

- Imported Translations from Transifex

- Allow http connection pool size to be configured

## 1.19.0

- Imported Translations from Transifex

- Imported Translations from Transifex

## 1.18.0

- Make usage doc easier to understand for library consumers

- Updated from global requirements

- Imported Translations from Transifex

- Updated from global requirements

- Updated from global requirements

- Remove username from logs

- Updated from global requirements

## 1.17.0

- Update log level of session related logs

- Fix mock calls

- Updated from global requirements

- Mask/truncate vCenter credentials in suds logs

- Imported Translations from Transifex

## 1.16.0

- Add tox target to find missing requirements

- Updated from global requirements

- Fix exception to string in py34

- Updated from global requirements

## 0.15.0

- Updated from global requirements

- Updated from global requirements

- Add in support for ManagedObjectNotFound exception

- Deprecate unused exceptions

- Raise VimFaultException for unknown faults

- Exception hierarchy refactoring

- Updated from global requirements

- Update progress lease every 60 seconds

- Updated from global requirements

- Fix bandit tox environment to properly run

- Updated from global requirements

## 0.14.0

- Remove oslo namespace package

- Port test from Nova

- Imported Translations from Transifex

## 0.13.1

- Imported Translations from Transifex

- Revert “Raise VimFaultException for unknown faults”

## 0.13.0

- Add ToolsUnavailable exception

- Add support for dynamicProperty

- Remove support for Python 3.3

- Updated from global requirements

- Remove run_cross_tests.sh

- Use suds-jurko on Python 2

- Updated from global requirements

- Imported Translations from Transifex

- Updated from global requirements

- Raise VimFaultException for unknown faults

- Imported Translations from Transifex

- Add NoDiskSpaceException

- Add utility function to get profiles by IDs

- Add bandit to tox for security static analysis

- Add SPBM WSDL for vSphere 6.0

## 0.12.0

- Uncap library requirements for liberty

- Cleanup README.rst and setup.cfg

- Update to latest hacking

- Imported Translations from Transifex

- Revert “VMWare NSXv: Common components”

- Updated from global requirements

- Move pylint dependency to tox.ini

- Move exception related tests to new module

## 0.11.1

- Switch to non-namespaced module imports

- Imported Translations from Transifex

- Move missing tests to new oslo_vmware location

## 0.11.0

- Imported Translations from Transifex

- Add get_datastore_by_ref method to oslo.vmware

- Change use of random to random.SystemRandom

## 0.10.0

- Imported Translations from Transifex

- Updated from global requirements

- Handle SPBM SecurityError

- PBM utility method to retrieve profiles of a VM

- Updated from global requirements

- Imported Translations from Transifex

- Add missing links to README

- VMWare NSXv: Common components

## 0.9.0

- Imported Translations from Transifex

- Updated from global requirements

- Correct usage to oslo_vmware

- Fix line wrapping

- Updated from global requirements

- Correct the doc usage example

- Fix missing project name in installation doc

- Imported Translations from Transifex

- Imported Translations from Transifex

- Fix race during session creation

- Make setup.cfg packages include oslo.vmware

- Updated from global requirements

- Move files out of the namespace package

- Use ToggleLazy fixture from oslo.i18n

- Use _is_valid_ipv6 from oslo.utils

- Allow checking api session

- Updated from global requirements

- Updated from global requirements

- Add pbr to installation requirements

- Update urllib3 requirements

- Workflow documentation is now in infra-manual

- Fix re-create session during transient failures

- Imported Translations from Transifex

## 0.8.0

- Switch to use requests/urllib3 and enable cacert validation

- Updated from global requirements

- Updated from global requirements

- Enable support for python 3.x

- Updated from global requirements

## 0.7.0

- Updated from global requirements

- Imported Translations from Transifex

- Activate pep8 check that _ is imported

- Do not log when reraising an exception

- Imported Translations from Transifex

- Updated from global requirements

- Add unit test for VC 5.1 web fault handling

- Fix to get exception detail with vCenter 5.1

- Download image API to bypass vCenter

- Updated from global requirements

- Updated from global requirements

- Enable the PBM WSDL to be updated

- Support building wheels (PEP-427)

- Fixup autoindex.rst only if it exists

- Supress error logs when exception is thrown

- Fix handling of fault details

- Fix UnboundLocalError during WebFault handling

- Use faultstring attribute in suds.WebFault.fault

- Imported Translations from Transifex

- Fix the log message for progress

- Add API to get the entity inventory path

- VimExceptions need to support i18n objects

- Switch to using oslo.utils

- Use custom transport adapter for file URLs

- getText can be called only when doc is not None

- Updated from global requirements

- Add unit test for suds cache expiration

- Add a memory based shared cache

## 0.6.0

- Updated from global requirements

- VMware: Enable vCenter SSL certificate validation

- Add DuplicateName exception

- Add ‘details’ property to VMwareDriverException

- Enable oslo.i18n for oslo.vmware

- Add API to enable calling module to register an exception

- Imported Translations from Transifex

- Add docs target and generate api docs

- Updated from global requirements

- Work toward Python 3.4 support and testing

- warn against sorting requirements

- Add exception for TaskInProgress

- Updated from global requirements

- Refactoring to reduce noise in log files

- Imported Translations from Transifex

- Add missing session parameter to get_summary

- Updated from global requirements

- Switch off caching to prevent cache poisoning by local attacker

- Support for copying streamOptimized disk to file

- Add support for the DatastoreURL object

- Add methods to the Datastore objects

- Imported Translations from Transifex

- Add Pylint testenv environment

## 0.5.0

- _trunc_id to check if the session_id is not None

- Port the Datastore and DatastorePath objects

- Log additional details of suds faults

- Enabled hacking check H305

- Imported Translations from Transifex

- Add constant for ESX datacenter path (HTTP access)

- Store PBM wsdl in the oslo.vmware git repository

- Bump hacking to version 0.9.2

- Fix seek and tell in BlockingQueue

- Add support for using extensions

- The ‘result’ variable in RetryDecorator may be undefined

- Imported Translations from Transifex

- Fix docstrings of constructors

- Do not log the full session ID

- Refactor the PBM support

- Fix wrong usage of assertRaises

- Translations: make use of _LE, _LI and _LW

## 0.4.0

- Sync excutils from Oslo

- Updated from global requirements

- Use assertIsNone

- Bump hacking to 0.9.x series

- replace iterator.next() with next(iterator)

- remove definitions of Python Source Code Encoding

- Setup for translation

- Updated from global requirements

- cleaning up index.rst file

- Add networkFolder in the traversal spec

- Ensure port support does not break backward compatibility

- replace string format arguments with function parameters

- Support for IPv6 and Non-standard ports

- Support ‘InvalidPowerState’ exception

- Don’t translate debug level logs in oslo-vmware

- Updated from global requirements

- Sync changes from Nova error_util.py

- Updated from global requirements

- Remove __del__ usage in oslo.vmware driver

- Add a test to oslo.vmware test_image_transfer

- import run_cross_tests.sh from incubator

- Fix vim25:InvalidRequest when no profiles exist

- VMware: treat cases when SOAP reply does not have a body

- Add unittest method “test_download_flat_image”

- Add missing unit tests for VMwareAPISession

## 0.3

- Updated from global requirements

- Fix unit tests running unnecessarily slow

- Enable download of streamOptimized file-like

- Fix docstrings in VMwareAPISession

- Ensure that the pbm is not None

- PBM related utility methods

- Add PBM client for policy based placement

- Updated from global requirements

- Replace unicode() for six.text_type

## 0.2

- Remove dependency on log.py from openstack/common

- Remove vim header

## 0.1

- VMware: raise more specific exceptions

- Move image transfer code in VMware drivers to OSLO

- Move read/write handles in VMware drivers to OSLO

- Move API invocation code in VMware drivers to OSLO

- Move VIM API client code in VMware drivers to OSLO

- Add eventlet requirement

- Move utility methods in VMware drivers to OSLO

- Import necessary files from openstack.common

- Initial checkin for Oslo VMware Library generated using oslo-cookiecutter

this page last updated: 2026-07-15 06:03:43

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.

found an error? report a bug