# CHANGES

## 4.7.0

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

- pre-commit: Bump versions

- Add assertIsSubset helper

- tox: update to newer constraints syntax

- fix setuptools package find syntax

- Drop support for Python 3.10

- Remove oslotest

- Drop unused testrepository

- Deprecate version attribute

- Deprecate version module

- test: Set mock on FakeClientManager.auth_ref

- Update packaging configuration

## 4.6.0

- clientmanager: Add filters for ClientManger.is_service_available

- fix: unbound variable when both values are false

- typing: union-attrs on find_project()

## 4.5.0

- typing: Use objects from typing

- typing: Use objects from collections.abc

- typing: Broaden return type of OpenStackShell.build_option_parser

- ruff: Configure hacking as external linter

- Return list from sort_items

- Update master for stable/2026.1

## 4.4.0

- Fix shell’s __init__

- Make tag help tests robust by setting prog name

- Add typing classifier

## 4.3.0

- typing: Use Mapping, not dict

- Drop redundant target-version option

- Run mypy from tox

- ruff: Enable E5 check

- Add is_uuid_like helper

- typing: Allow use of column subclasses

- typing: More fixups for typed cliff, stevedore

- typing: Fixups for typed cliff, stevedore

- Remove unnecessary import

- ruff: Use more specific name to enable pyupgrade rule

- Add more utilities from OSC

- Deprecate osc_lib.tests.utils module

- Use osc_lib.test module

- Add osc_lib.test module

- pre-commit: Bump versions

- reno: Update master for unmaintained/2024.1

- Update master for stable/2025.2

- pre-commit: Bump versions

- typing: Misc fixes

## 4.2.0

- mypy: Enable strict mode

- Remove duplicate Python version declarations

- Migrate setup configuration to pyproject.toml

## 4.1.0

- typing: Set Command.app type

## 4.0.2

- Bump Python version used for linters to 3.10

- Revert “Use Python 3.8-style type hints”

- Revert “Temporarily revert dependency bumps”

- Drop support for Python 3.8, 3.9 (again)

## 4.0.1

- Temporarily revert dependency bumps

- Use Python 3.8-style type hints

- Temporarily undrop support for Python 3.8, 3.9

- Correct getattr call

- Drop support for Python 3.8, 3.9

- Replace UPPER_CONSTRAINTS_FILE

## 4.0.0

- typing: Enable disallow_subclassing_any

- tests: Resolve TODO

- utils: Deprecate legacy client-specific helpers

- utils: Remove support for legacy format functions

- utils: Group similar utilities together

- utils: Don’t warn for partial formatter classes

- typing: Add typing to osc_lib.utils

- typing: Add typing to osc_lib.command

- clientmanager: Deprecate ClientCache

- typing: Add typing to osc_lib.clientmanager

- typing: Add typing to osc_lib.shell

- typing: Add typing to osc_lib.logs, osc_lib.i18n

- typing: Add typing to osc_lib.cli

- api: Deprecate BaseAPI

- typing: Add typing to osc_lib.api

- Remove unused docs Makefile

- typing: Add typing to osc_lib.exceptions

- pre-commit: Enable mypy

- typing: Fix initial typing issues

- Update master for stable/2025.1

- Add pagination helpers

- pre-commit: Enable ruff S (bandit) checks

- pre-commit: Bump versions

- tests: Use consistent output widths

- reno: Update master for unmaintained/2023.1

## 3.2.0

- ruff: Enable pyupgrade rules

- pre-commit: Migrate from black to ruff format

- pre-commit: Migrate from flake8 to ruff

- parseactions: Use ArgumentError, not ArgumentTypeError

- Update master for stable/2024.2

- Exclude tests directory from coverage calculation

## 3.1.0

- Drop dependency on simplejson

- reno: Update master for unmaintained/zed

- Fix log level, remove unnecessary debug

- Update master for stable/2024.1

- reno: Update master for unmaintained/xena

- reno: Update master for unmaintained/wallaby

- reno: Update master for unmaintained/victoria

- zuul: Use openstack-python3-jobs template

- Fix branch selection in zuul config

## 3.0.1

- reno: Update master for unmaintained/yoga

## 3.0.0

- Remove lower-constraints.txt

- tox: Use pre-commit for style checks

- Ignore black changes

- pre-commit: Integrate black

- Blacken code

## 2.9.0

- Update master for stable/2023.2

- Add pre-commit

- Fix pre-commit issues

- utils: Don’t warn for partial formatter classes

- Drop formal support for Python 3.6, 3.7

## 2.8.1

- Fix comment of auth_config_hook

## 2.8.0

- setup.cfg: Replace dash-separated config

- Add ‘SizeColumn’ formatter

- Update master for stable/2023.1

- tox 4 compatibility

- formatters: Cast *all* columns before outputting

- Revert “Do not output log on bash autocomplete generation”

## 2.7.0

- Remove Python 3 guide in HACKING

- Add Python3 antelope unit tests

- Update master for stable/zed

- remove unicode prefix from code

## 2.6.2

- doc: Comment out language option

## 2.6.1

- Do not output log on bash autocomplete generation

## 2.6.0

- Add Python3 zed unit tests

- Update master for stable/yoga

- Don’t fail on extlinks warnings for reno build

- Fixed test for interface key

## 2.5.0

- Respect ‘interface’ key from clouds.yaml

- Replace allow_get check with allow_fetch

- Fix TestTagHelps for python3.10

- tox: Ignore .venv files for flake8

- Add Python3 yoga unit tests

- Update master for stable/xena

## 2.4.2

- Moving IRC network reference to OFTC

## 2.4.1

- Close session at clean_up if available

- Correct the tox option for skipping sdist generation

- Add check for sdk_connection

## 2.4.0

- Add Python3 xena unit tests

- Update master for stable/wallaby

- parseractions: Make key validation reusable

## 2.3.1

- Fix lower-constraints job

- Add support for SDK auth caching

- Replace ‘assertFalse(a in b)’ with ‘assertNotIn(a, b)’

- Add Python3 wallaby unit tests

## 2.3.0

- tox: Set ‘ignore_basepython_conflict’

- formatters: Cast columns before outputting

- zuul: Stop testing against Tempest

- Fix hacking min version to 3.0.1

- bump py37 to py38 in tox.ini

- Remove install unnecessary packages

- bump py37 to py38 in tox.ini

- Fix l-c testing for ubuntu focal

- Update master for stable/victoria

- requirements: Drop os-testr

## 2.2.1

## 2.2.0

- Fix the misspelling of “argument”

- Remove commandmanager subclass

- Stop configuring install_command in tox and stop use pip

- Add get_osc_show_columns_for_sdk_resource function

- Switch to newer openstackdocstheme and reno versions

## 2.1.0

- Add a couple of release notes

- Remove .testr.conf

- Remove six library from dependencies

- Save the results from the early authentication

- Add pep8 import order check

- Use mock from unittest

- Remove Babel from requirements

- Add Python3 victoria unit tests

- Update master for stable/ussuri

- Cleanup py27 support

- Fix the requirement of keystoneauth1

- Update to hacking 3.0

- Update hacking for Python3

- Revert “Add error message when occurrence Forbidden error”

- Replace assertItemsEqual with assertCountEqual

- Stop using lib-forward-testing

## 2.0.0

- Add a release note for dropping py2

- Drop python 2.7 support and testing

- Add enhance_help kwarg to tags option generators

- Switch to Ussuri jobs

- Add KeyValueAppendAction to osc-lib

- Update the constraints url

## 1.15.0

- Update master for stable/train

## 1.14.1

- format_dict() returns no value for None

- Handle nested dicts in format_dict()

## 1.14.0

- Cleanups to prepare for OSC 4 release

- Fix usage of NotFound exception

- Add error message when occurrence Forbidden error

- Add Python 3 Train unit tests

## 1.13.0

- Corrent using auth_type=none in clouds.yaml

- Add FakeModule from OSC

- Move the _tag module from OSC to osc-lib

- Final switch to stestr

- Dropping the py35 testing

- Updates for OpenDev transition

- OpenDev Migration Patch

- Update master for stable/stein

## 1.12.1

- Add release note for –os-user-id fix

- add python 3.7 unit test job

- Allow use of user-id as well as username for authentication

## 1.12.0

- Use template for lower-constraints

- Change openstack-dev to openstack-discuss

- Default to using public interface for all clients

- Fix formatter handling for python 3.7

- Remove pypy job

- Mask password when specified as an argument with a space

- add lib-forward-testing-python3 test job

- switch documentation job to new PTI

- add python 3.6 unit test job

- import zuul job settings from project-config

- Revert “Fixes a bug with issubclass() being called on an instance”

- Remove PyPI downloads

- Replaced a few references to LP bugs with storyboard

- Update reno for stable/rocky

## 1.11.0

- Fixes a bug with issubclass() being called on an instance

- Stop processing requests verify args

- Replace autodoc with sphinxcontrib-apidoc

- Run OSC unit test tips jobs

- Pass prompt_for_password to OSC_Config constructor

- Fix exception in log warning when no cloud config exists

- Use openstack.config for config and Session objects

- Update sphinx lower-constraint to match test-requirements

- Adding api_version to FakeAPP

- Add release note link in README

- Add cloud to warning about domain related config

- Delete the output in “find_bulk” api

- fix tox python3 overrides

- Add OpenTracing based driver id

- Trivial: Update pypi url to new url

- Rename python-openstacksdk to openstacksdk

- add lower-constraints job

## 1.10.0

- Allow to use the none auth plugin

- Set defaults in ClientManager tests

- Updated from global requirements

- Zuul: Remove project name

- Zuul: Remove project name

- Update reno for stable/queens

- Updated from global requirements

- Updated from global requirements

- Suppress subTest() expected errors

## 1.9.0

- Fix find() interface when attr is not specified

- Relocate utils tests to match the main code

- Add project lookup utils

- Updated from global requirements

- Fix sorting in Python 3

## 1.8.0

- Add utils for better column handling

- Updated from global requirements

- Use converged SDK insead of os-client-config

- Remove -U from pip install

- Avoid tox_install.sh for constraints support

- Util to calculate header and attr names based on parsed_args.columns

- Make -tips job non-voting

- Remove setting of version/release from releasenotes

- Updated from global requirements

- Updated from global requirements

- Consume the devstack functional jobs from OSC

- Migrade legacy jobs into the repo

- Add CLI/ENV options and documentation for keystone-to-keystone

- Updated from global requirements

- –os-profile option suddenly causes trouble in unit tests

- Updates for stestr

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Update reno for stable/pike

- Updated from global requirements

- Update the documentation link for doc migration

- Updated from global requirements

- Updated from global requirements

- Emit warnings to encourage cliff FormattableColumn

## 1.7.0

- Add test methods to compare formattable column values

- Updated from global requirements

- use openstackdocstheme html context

- update links to docs in readme

- switch from oslosphinx to openstackdocstheme

- turn on warning-is-error for sphinx

- rearrange existing documentation to fit the new standard layout

- Optimize find_resource: do not run the same query twice

- Make –os-profile load from environment variables

- Deprecate –profile and remove after Apr 2017

- Updated from global requirements

## 1.6.0

- Fix shell saving OpenStackConfig object

- Follow-up to headers handler to fix find_bulk()

- Updated from global requirements

- Updated from global requirements

## 1.5.1

- Tell ClientManager when auth is required

- Add endpoint hook to BaseAPI

## 1.5.0

- Add token auth test

- Revert “Avoid to authenticate twice”

## 1.4.0

- Add MultiKeyValueCommaAction to osc-lib

- Add more API support

- Add formattable column base classes

- Updated from global requirements

- Updated from global requirements

- Avoid to authenticate twice

- Change noauth strategy for plugin loading

- Nit: Reorder some util methods in alphabetic order

- Using assertIsNone() instead of assertEqual(None)

- Remove log translations

- Fix find_resource exception handling on numeric names with kwargs

- Util methods for column name backward compatibility

- The python 3.5 is added

- Updated from global requirements

- Updated from global requirements

- Pass ssl values through to OCC

- Avoid ‘NoneType’ error when format conversion

- Updated from global requirements

- Update reno for stable/ocata

- Updated from global requirements

- Updated from global requirements

## 1.3.0

- To display image size in human friendly format

- Don’t call formatters on None value

- Include OSC additions 2

- Include OSC additions

- Add deprecated_option_warning() method to Command

- Calls to federated service providers using Keystone-to-Keystone

- Add Constraints support

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Don’t include openstack/common in flake8 exclude list

- Fix version import in releasenotes

- Remove os-client-config hacks for 1.19.x and 1.20.x

- Updated from global requirements

- Updated from global requirements

- Allow passing app_name and app_version for useragent

- Avoid string actions on non-string objects

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

## 1.2.0

- Add release note for security bug 1630822

- Improve output of supported client versions

- Enable release notes translation

- Updated from global requirements

- Mask passwords in debug logs for auth_config_hook

- Updated from global requirements

- Fix a tiny typo in documentation

- Updated from global requirements

- Updated from global requirements

- TrivilalFix: Using assertIsNone() instead of assertEqual(None)

- Updated from global requirements

- Update docstring to match params

- Incorrect usage message when no auth param passed

- standardize release note page ordering

- Update reno for stable/newton

- Updated from global requirements

- Prompt for auth options

## 1.1.0

- Fix default handling for verify option in ClientManager

- Clean imports in code

- TrivialFix: Remove logging import unused

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

## 1.0.2

- Another precedence fix

## 1.0.1

- More hacks to fix broken o-c-c precedence

## 1.0.0

- Fix arguemnt precedence issues with os-client-config

- Do not add user domain options if not needed

- Updated from global requirements

- Decode argv to Unicode on py2

- Prevent null key setting for property

- Add release notes for 1.0 release

- Updated from global requirements

- Updated from global requirements

- Add reno for osc-lib release notes management

- Updated from global requirements

## 0.4.1

- Allow shell class to be overridden in test subclass

- Remove option handling unused code

- Use assertEqual() instead of assertDictEqual()

## 0.4.0

- Add Python 3.5 classifier and venv

- Updated from global requirements

- Fix v2 auth with v3 args present

- trivial whitespace change to kick off docs publishing

- Remove discover from test-requirements

- Remove unused releasenotes infrastructure

- Remove discover from test-reqs

## 0.3.0

- Updated from global requirements

- Generate auth plugin options based on the name

- Remove tempest from test-requirements.txt

- Don’t create a requests.Session for session

- Remove old fakes

- Remove setting project name on clientmanager

- Updated from global requirements

## 0.2.1

- Get VersionInfo of “osc-lib”

- Attempt to find resource by ID, without kwargs

- Make OSC_Config the default

## 0.2.0

- Updated from global requirements

- update the transition docs

- Add OSC_Config os-client-config subclass

- Updated from global requirements

- Backport scope defaults fix (bug 1582774)

- Backport check_valid_auth_options() fix

- Change default auth plugin to ‘password’

- Backport scoped token fixes (bug 1592062)

- Backport i18n fixes (bug 1574965)

- Backport TypeError fix (bug 1575787)

- Move api/auth.py into osc_lib

- Updated from global requirements

- Modify find_resource to support glanceclient HTTPNotFound exception

- Update untils_find_resource to support no unique matches error

- Updated from global requirements

- Update is_ascii to work with py3

- Clean up foundation copyrights

- Add find_min_match()

- Sort utils.py and test_utils.py

- Fix interface arg to url_for()

- Fix missing i18n supports in osc-lib

## 0.1.0

- Backport i18n fixes

- Backport log fix

- Backport –os-beta-command

- Error handling for KeyValueAction class

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Change is_network_endpoint_enabled() to is_service_available()

- Clean up API

- Move api.api and api.utils to osc_lib

- Move shell to osc_lib and begin rework

- Add transition doc

- Rework TLS option handling

- Remove keystoneclient dependency

- Move clientmanager to osc_lib

- Updated from global requirements

- Updated from global requirements

- fix the docs build

- Fix imports in remaining openstackclient modules for testing

- Begin moving bits to osc_lib

- Make remaining tests pass

- Trim requirements.txt and test-requirements.txt

- Rename to osc-lib

- Implement “address scope set” command

- Implement “address scope show” command

- Implement “address scope list” command

- Implement “address scope delete” command

- Implement “address scope create” command

- Updated from global requirements

- Ignore domain related config when using with keystone v2

- Updated from global requirements

- Ignore domain related config when using with keystone v2

- remove assert in favor an if/else

- Replace tempest-lib with tempest.lib

- add a bandit environment to tox

- Support for volume service list

- Updated from global requirements

- Add “server group show” command

- Add “server group list” command

- Add “server group delete” command

- Add “server group create” command

- Fix mutable default arguments in tests

- Rename –profile to –os-profile

- Updated from global requirements

- Updated from global requirements

- Propagate AttributeErrors when lazily loading plugins

- Updated from global requirements

- Move keys() methods in each resource class to FakeResource

- Updated from global requirements

- Updated from global requirements

- Support client certificate/key

- Fix typos in docstrings and comments

- Use fixtures and addCleanup instead of tearDown

- Don’t mask authorization errors

- Remove unused method ‘from_response’

- Refactor security group rule list to use SDK

- Add “aggregate unset” to osc

- Subnet: Add “subnet set” command using SDK

- [Floating IP] Neutron support for “ip floating create” command

- Refactor security group rule create to use SDK

- Add Subnet add/remove support to router

- Add “router remove port” to osc

- Add “router add port” to osc

- Updated from global requirements

- update docs with status of plugins

- Updated from global requirements

- Use assertItemsEqual() instead of assertListEqual()

- Fix dict.keys() compatibility for python 3

- Add “os subnet create” command using SDK

- Refactor security group create to use SDK

- Refactor security group show to use SDK

- Add ‘port set’ command

- [Subnet pool] Add ‘subnet pool create’ command support

- [Subnet pool] Add ‘subnet pool set’ command support

- remove py26 workaround in osc

- Add port list command

- Trivial: Remove useless return

- Updated from global requirements

- Add ‘port create’ command

- Updated from global requirements

- Updated from global requirements

- Refactor security group set to use SDK

- Updated from global requirements

- Fix regression in interactive client mode

- Subnet: Add “subnet delete” command using SDK

- fix: Exception message includes unnecessary class args

- Refactor security group list to use SDK

- Add MultiKeyValueAction to custom parser action

- Updated from global requirements

- [compute] Add set host command

- Add shell –profile option to trigger osprofiler from CLI

- Floating IP: Neutron support for “ip floating show” command

- Improve tox to show coverage report on same window

- Updated from global requirements

- Defaults are ignored with flake8

- Fixed a bunch of spacing

- Add “security group rule show” command

- [compute] Support restore server

- Use instanceof instead of type

- Add “os subnet show” command using SDK

- Clean redundant argument to dict.get

- Updated from global requirements

- Fix Mutable default argument

- gitignore .idea

- Replace string format arguments with function parameters

- Support unscoped token request

- Don’t use Mock.called_once_with that does not exist

- Subnet Pool: Add “subnet pool show” command

- Subnet Pool: Add “subnet pool list” command

- Remove unused test-requirments

- Subnet Pool: Add “subnet pool delete” command

- Fix ‘openstack –help’ fails if clouds.yaml cannot be read

- Floating IP: Neutron support for “ip floating list” command

- Floating IP: Neutron support for “ip floating delete” command

- Updated from global requirements

- Updated from global requirements

- Refactor security group rule delete to use SDK

- Add “token revoke” for identity v3

- Fix DisplayCommandBase comments for cliff Lister subclass tests

- Updated from global requirements

- Add support for triggering an crash dump

- Allow custom log levels for other loggers

- Use assert_not_called() in common tests

- Fix a spell typos

- Refactor security group delete to use SDK

- Add “os port show” command

- Drop log_method decorator

- Updated from global requirements

- log take_action parameters in a single place

- Update translation setup

- Allow wait_for_delete to work for all clients

- Updated from global requirements

- Remove the Tuskar client

- Updated from global requirements

- Subnet List

- Updated from global requirements

- Updated from global requirements

- log_method: get logger from decorated method if unspecified

- Set up logger of each command by metaclass

- Add support to delete the ports

- Updated from global requirements

- Refactor “os availability zone list”

- Changed the abstract columns and datalists from test cases of common and Identity

- Updated from global requirements

- Use assertTrue/False instead of assertEqual(T/F)

- Updated from global requirements

- Delete the unused LOG configure code

- Refactor network endpoint enablement checking

- Implementation for project unset cmd for python-openstackclient

- Trivial: Remove useless string_to_bool()

- Refactor: Initialize parser in setUp() in TestNonNegativeAction

- Refactor: Initialize parser in setUp() in TestKeyValueAction

- Replace assertEqual(None, *) with assertIsNone(*)

- Improve output for “os security group show”

- Add all regions to cloud configuration

- Updated from global requirements

- Router: Add “router show” command using SDK

- Router: Add “router set” command using SDK

- Updated from global requirements

- Router: Add “router delete” command using SDK

- Router: Add “router create” command using SDK

- Updated from global requirements

- Deprecated tox -downloadcache option removed

- Router: Add “router list” command using SDK

- Remove python-neutronclient requirement

- The format_exc method does not take an exception

- Updated from global requirements

- SDK integration: Add a temporary method to create network client using sdk

- Updated from global requirements

- Add reno for release notes management

- Switch to ksa Session

- autodocument commands from plugins using stevedore.sphinxext

- Updated from global requirements

- Change the home-page value in setup.cfg

- Add “openstack server unshelve” into OSC

- Trivial: Fix a typo

- Move FakeServer to tests.common.v2.compute.fakes

- Trivial: Add missing doc for parameter in wait_for_delete()

- Remove py26 support

- Add “openstack server shelve” into OSC

- Trivial: Fix wrong doc for wait_for_status()

- Updated from global requirements

- Trivial: Remove doc for non-existing param in format_dict()

- Introduce random server faking mechanism

- Enable FakeResource to fake methods

- Allow error status to be specified

- Remove deprecated ‘project usage list’ command

- Remove LICENSE APPENDIX

- validate non-ascii values for swift properties

- Fix the bug of “openstack console log show”

- Add “server stop” command to osc

- Add “server start” command to osc

- Allow int version numbers in the clouds.yaml

- Rename context.py to logs.py

- Allow debug to be set in configuration file

- Updated from global requirements

- Fix issue when displaying image_member

- Updated from global requirements

- Add compute service delete

- Updated from global requirements

- Move session and fixtures to keystoneauth1

- Remove cliff-tablib from requirements.txt

- Updated from global requirements

- Updated from global requirements

- Mask the sensitive values in debug log

- Updated from global requirements

- add set/unset support for objects in object store

- add support for set/unset of container properties

- Updated from global requirements

- Rename swift account commands

- Add support for showing account details

- Add support for updating swift account properties

- Add tests for find_resource()

- attempt to find resource by listing

- Additional exception handling for find_resource

- Add image create support for image v2

- Change ignore-errors to ignore_errors

- Move option logging back to start if initialize_app()

- Set default auth plugin back to ‘password’

- Updated from global requirements

- Updated from global requirements

- Fix compute API version snafu

- Use a common decorator to log ‘take_action’ activation

- Fix ‘auhentication’ spelling error/mistake

- Create log configuration class

- Override the debug default and help text

- Move options to log level out of shell.py

- Move set warnings filters to logging module

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Remove non-existing hacking deviations from doc

- Set up every time record log in file

- Alphabetize setup.cfg

- Add set feature to volume type v2

- Add list feature to volume v2

- Updated from global requirements

- Minor Documentation changes for code samples

- Updated from global requirements

- Add support for volume v2 commands

- Add configuration show command

- Add plugin interface version

- Updated from global requirements

- Add create and list for volume type v2

- add image member commands for image API

- Fix the way auth_type default value is overriden

- Rename type.py to volume_type.py

- Add volume type show for volume v1

- More minor docs fixes

- Do not set default versions in parsed args

- Updated from global requirements

- Remove requirements.txt from tox.ini

- Rename endpoint type to interface

- Updated from global requirements

- temporarily skip help tests

- Drop py33 support for Liberty

- Fix interactive password prompt

- Updated from global requirements

- Fix wrong mock method call

- add functional tests for identity v3

- Add –os-endpoint-type cli optional argument

- Updated from global requirements

- Add support for volume API v2 QoS commands

- Alphabetize QoS specs

- Add support for volume API v1 QoS commands

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Improve the hint message

- Fix the typo in `openstackclient/shell.py`

- Skip trying to set project_domain_id if not using password

- Updated from global requirements

- Updated from global requirements

- Enables retrieval of project’s parents and subtree

- Add support for volume backup v2 command

- Updated from global requirements

- Add support for volume snapshot v2 command

- Allow –insecure to override –os-cacert

- Add EC2 support for identity v3 API

- Get rid of oslo_i18n deprecation notice

- Rework shell tests

- Ignore cover directory from git

- Set tenant options on parsed namespace

- Add support for volume v2 API

- Add –wait to server delete

- Use ostestr for test runs

- Add cli tests for –verify and friends

- Fix shell tests

- Add support for v2 image set command

- Remove oslo serialization requirement

- Fix insecure/verify options

- Use format options for functional tests

- Fix functional test gate

- Updated from global requirements

- Send the correct user-agent to Keystone

- Updated from global requirements

- Updated from global requirements

- Updated from global requirements

- Add os-client-config cli tests

- minor syntax error in tox.ini

- Minor logging/debug cleanups

- Raise exception if no session is created

- Functional tests run in many environments

- Remove references to venv

- Add –os-cloud support

- Print warning on authentication error

- Uncap library requirements for liberty

- Defer client imports

- Federation Service Providers CRUD operations

- Add warning message if unknown version supplied

- Fix session timing

- Suppress warnings user can’t fix

- Updated from global requirements

- Add the ability to set and unset flavor properties

- Use cliff deferred help instead of homemade one

- Move OSC auth plugins so they can be found

- Add identity v3 catalog show

- Add identity v3 catalog list

- Add ability for diplaying hypervisor statistics

- Raise AttributeError for unknown attributes

- Updated from global requirements

- Fix auth-required for help command

- change oslo namespace to avoid warning

- Updated from global requirements

- Fix error msg in sort_items

- Implement trust in identity v3 api

- Check volume status before extending size

- Adding default user_domain_id parameter only when using password auth

- Add sort support to image list

- Updated from global requirements

- Change test order to avoid incompatibliity

- Add filter to image list

- fix the wrong order of assertEqual args

- Remove ignore portion of tox.ini

- Begin low-level API for Image v1 and v2

- Add missing oslo-config to requirements

- Default user domain id and project domain id

- Add helpful messages when authN’ing with password

- Add version url config workaround

- Deprecate project usage list command

- Updated from global requirements

- Upgrade hacking to 0.10

- Updated from global requirements

- Fix up snapshot command

- Rename `os project usage list` to `os usage list`

- Add usage show command

- Don’t import form keystoneclient.openstack.common

- list availability zones for compute

- Updated from global requirements

- Updated from global requirements

- Enhance the theming for modules page

- add keystone v3 region object

- Updated from global requirements

- Add environment variable in the os-auth-type help

- Liberalize version matching a bit

- Tests work fine with random PYTHONHASHSEED

- Updated from global requirements

- Add –or-show option to user create

- Add cliff-tablib to requirements

- Use fixtures from keystoneclient for static data

- Unscoped federated user-specific commands

- Adjust some logging levels

- Change –os-auth-plugin to –os-auth-type

- Include support for using oslo debugger in tests

- Clean up shell authentication

- only generate one clientmanager instance in interactive mode

- Remove ClientManager._service_catalog

- Remove now-unnecessary client creation hacks

- use jsonutils in oslo.serialization instead of keystoneclient

- Close files on server create, add tests

- Move plugin stuff to clientmanager

- Put pbr and six first in requirements list

- Add plugin to support token-endpoint auth

- Updated from global requirements

- Fix operation on clouds with availability-zones

- Add translation markers for user v2 actions

- Add domain parameters to user show for Identity V3

- Support for keystone auth plugins

- Add ‘command list’ command

- CRUD operations for federated protocols

- Update for cliff commandmanager >=1.6.1

- Implement CRUD operations for Mapping objects

- Update gitignore

- Place the command to generate docs on one line

- Remove duplicate env function in shell.py

- Add functional tests to osc

- Add low-level API base class

- Test top-to-bottom: object-store containers

- Updated from global requirements

- utils.find_resource does not catch right exception

- Remove unused reference to keyring

- Use oslo.utils

- Updated from global requirements

- Add service catalog commands

- Add preliminary save container support

- Add preliminary support for downloading objects

- Updated from global requirements

- Use Keystone client session.Session

- Add action ‘user password set’ for identiy v3

- Unordered dicts and lists causes variable results

- Leverage openstack.common.importutils for import_class

- Work toward Python 3.4 support and testing

- Make Identity client load like the others

- Change app.restapi to app.client_manager.session

- Add i18n module to openstackclient

- Add oslo.i18n as a dependency

- Updated from global requirements

- Add commands for object upload and delete

- Use oslosphinx to generate documentation

- Updated from global requirements

- Add container create and delete support

- Fix PEP8 E302 errors

- Add Python 3 support

- Fix server resize

- Add basic timing support

- Move network stuff to v2 instead of v2_0

- Catch SystemExit for parse args

- Python 3: remove a useless code to safe_encode()

- Remove keyring support from openstackclient

- trust authentication

- Updated from global requirements

- Sort/clean setup.cfg

- Rename token classes to match command

- Fix PEP8 E126 and E202 errors

- Fix PEP8 E265 errors

- Fix PEP8 H405 errors

- Network CRUD

- Updated from global requirements

- Updated from global requirements

- Change the token verb to issue/revoke

- Add a docs job to tox.ini

- Fix find_resource for keystone and cinder

- Refactor oauth1 code for updates

- Updated from global requirements

- Clean up logging levels

- Ignore most of the new hacking 0.9.2 rules

- Add support for extension list

- Add role assignments list support to identity v3

- Add token delete command for identity v2

- Fixed several typos throughout the codebase

- replace string format arguments with function parameters

- Updated from global requirements

- Implement CRUD operations for Identity Providers

- Updated from global requirements

- move read_blob_file_contents to utils

- Produce a useful error message for NoUniqueMatch

- Updated from global requirements

- Make bash comple command best effort to authorize

- Updated from global requirements

- In anticipation of network agents, rename compute

- Updated from global requirements

- Add ability to prompt for passwords for user create and set

- Fix some help strings

- Use six.iteritems() rather than dict.iteritems()

- Remove tox locale overrides

- Add token create subcommand for identity v3 api

- Updated from global requirements

- Remove copyright from empty files

- Add token create subcommand for identity v2 api

- Sync with global requirements

- Add support for specifying custom domains

- Displaying curl commands for nova and cinder calls

- Remove mox3 requirement

- Updated from global requirements

- Add missing requests and six requirements

- Add module list command

- Update OSC’s CommandManager subclass

- Bring RESTApi closer to ithe imminent keystoneclient.Session

- Add return Closes-Bug: 1246356

- Restore Object API name ‘object-store’

- Expand support for command extensions

- Fix typo

- Support building wheels (PEP-427)

- Add server image create command

- Complete basic test infrastructure

- change execute to run

- Update URL for global hacking doc and fix typos

- Remove httpretty from test requirements

- Updated from global requirements

- Updated from global requirements

- Add options to support TLS certificate verification

- Updated from global requirements

- Add object-store show commands

- Sort entrypoints in setup.cfg

- Fix security group entrypoints

- Delay authentication to handle commands that do not require it

- Prepare for Identity v3 tests

- Add to clientmanager tests

- Add Identity v2 role and service tests

- Refactor fake data for projects and users

- Update tox.ini for new tox 1.6 config

- Update requirements.txt and test-requirements.txt

- Object API commands using our REST API layer

- Create a new base REST API interface

- Re-order oauth commands and sync with keystoneclient

- Add Identity v2 project tests

- Updated from global requirements

- Sync with global requirements

- Change version reporting to use pbr

- Prep for 0.2 release (0.2.rc1)

- Remove ‘oauth authorization show’ function from identity v3

- Remove tenant round 3 - other commands

- Remove tenant round 2 - Identity API

- Remove tenant round 1 - global options

- Add server ssh command

- Add security group commands

- Add server resize command

- Add server migrate command

- Add server commands: (un)lock, (un)rescue, (un)set, add/remove volume

- Add usage command for compute api

- Clean up properties (metadata) formatting

- Add aggregate commands

- Complete Image v1

- Add quota commands

- Add list and delete authorizations for oauth commands

- Add show limits command

- Remove api = apiName calls from each method

- Add authenticate method to oauth code

- Add EC2 credentials CRUD

- Finish up v3 role commands

- Add methods for user and group interactions

- Move tests into project package

- Add OAuth support for Identity V3

- Remove explicit distribute depend

- Add volume backup commands

- python3: Introduce py33 to tox.ini

- Rename requires files to standard names

- Fix identity v2.0 entry point

- Tweak volume commands and add k=v argparse action

- Migrate to pbr

- Migrate to flake8

- Fix flake8 errors in anticipation of flake8 patch

- Switch to noun-verb command forms

- Add console commands

- Adds image `create` and `delete` functionality

- Add fixed-ip and floating-ip commands

- Add compute keypair commands

- Add policy to identity v3

- Add metadata support for volume

- Make entry point strings readable

- Add extra-specs support for volume-type

- Add endpoint v3 functionality

- Add service v3 support for identity

- Add functionality for add-role commands

- Add a simple extension hook

- Add role v3 support to identity in openstack client

- Added compute hypervisor support

- Turn down requests logging level

- Add snapshot support for v1 volume

- add domain, credential to identity v3 api

- Add volume support for openstack client

- Add compute hosts support

- Add metadata support for volume type

- Added compute service support

- Add quota v1 support for volume

- Added compute flavor support

- Added compute agent support

- Correct the version mapping to image service

- Add Cinder API V1 Support

- Multiple API version support

- Update .coveragerc

- Upgraded to PEP8 1.3.3 to stay aligned with Nova, etc

- Clean up test_shell so that the tests are captured though the test framework

- Use install_venv_common.py from oslo

- v3 identity - group and project api

- Sync latest openstack-common updates

- Standardize on a copyright header and ensure all files have them

- Migrate from nose to testr

- Clean up test environment and remove unused imports

- Updated gitignore and manifest

- Adds Glance API v2 support

- Fixes setup compatibility issue on Windows

- Add OpenStack trove classifier for PyPI

- Update compute client bits

- Keyring support for openstackclient

- If no password in env or command line, try prompting

- Add read_versioninfo method

- Add post-tag versioning

- Fix pep8 issues

- Move docs to doc

- minor fixes

- Add role CRUD commands

- Add endpoint CRUD commands

- Clean up tenant and server

- Update service commands

- Add user CRUD commands

- fix authentication setup in interactive mode and improve error handling so tracebacks are not printed twice

- Revise command boolean flags

- Move get_client_class() to common.utils

- Add tenant CRUD commands

- Add API versioning support

- look at the command the user is going to run before trying to authenticate them

- Add copyright notices and update dates

- Add tenant commands, work on service

- More identity client config

- Remove printt

- Add Identity to ClientManager

- Fix “help” command and implement “list server” and “show server”

- Change binary name to ‘openstack’

- Auto generate AUTHORS for python-openstackclient

- Shell init & logging

- Reset project version to 0.1

- Add openstack-common and test infrastructure

- Cleanup auth client path

- Add ‘list service’ command and common modules

- Add token auth to shell and README

- Begin to add Keystone auth

- Change to argparse to match cliff 0.2

- Use cliff

- Set up common utils

- Add openstackclient bits

- First commit

this page last updated: 2026-07-15 07:28:33

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