CHANGES
=======

31.0.0.0b2
----------

* Cache PropertyRules instances in Gateway
* Handle glance\_store.Invalid exception in upload method
* Fix S3 URL corruption on secret rotation
* Add functional tests for image decompression plugin
* Fix ZIP file extraction in image\_decompression plugin
* Fix LHA file decompression context manager issue
* Update image size after image decompression
* Fix FileNotFoundError when registering task operations
* Correct read function in \_UWSGIChunkFile not to exceed length
* Remove eventlet-specific functional tests
* Inject os\_glance.\* section in the property protection file
* s3: Do not log access keys
* [docs] Add s3 upgrade scenarios
* Change DB migration constant to 2026\_1
* Lazy update S3 URL on credential rotation
* Handle images detected as ISO+GPT
* Document Uwsgi support for production
* Remove legacy update tests
* Update master for stable/2025.2
* Remove the last reference to OsloDBDeprecationWarning
* Remove configurable metadata DB backend entrypoint
* Migrate setup configuration to pyproject.toml
* setup: Remove pbr's wsgi\_scripts
* Add pyproject.toml to support pip 23.1
* Fix glance service policy rule

31.0.0
------

* Add new metadata definition of memory encryption model
* Add missing image properties
* Use Ubuntu Noble instead of Jammy
* glance-multistore-cinder-import-fips: move to CentOS 10
* Fix inaccurate usage reporting when delayed\_delete is enabled
* Fix broken osprofiler call for sqlalchemy
* Fix: Policy for new location APIs
* Update API reference to mention x-openstack-image-size header
* Read image size from request header
* Drop SQLALCHEMY\_WARN\_20
* Remove LegacyEngineFacade
* Get rid of thin wrapper of LimitFixture
* Replaced usage outdate egrep to grep
* Replace oslo\_utils.encodeutils.exception\_to\_unicode
* Replace remaining usage of healthcheck middleware filter
* Drop redundant check of sqlite3 module availability
* Imported Translations from Zanata
* Fix py312 and py313 failing unit test
* Replace deprecated assertItemsEqual
* Doc: Add info about backend\_defaults section
* Remove glance-centralized-cache job
* Functional tests migration
* Enable Hash calculation for new location API
* Functional test migration test\_wsgi.py
* Fix incomplete migration to datetime.fromtimestamp
* Cancel hashing operation if image is deleted
* Add task cancellation tracker utility
* Remove Python 3.9 support
* Get ready for oslo.limit 2.7.0
* Functional tests migration of TestImageMultipleBackend
* Functional tests migration of image members tests
* Revert "Deprecate glance scrubber"
* Fix test\_scrubber\_restore\_image intermittent failure
* Remove leftover of scrubber from functional tests
* Remove installation guide for openSUSE/SLES
* Remove unused method iso8601\_from\_timestamp
* reno: Update master for unmaintained/2023.1
* Functional tests migration test\_images
* Functional tests migration test\_images.TestImages
* Functional tests migration for metadef APIs
* Update python versions for testing
* Harden copy bust lock test
* Refactor scrubber to remove use of eventlet
* Do not test standalone deployments any more
* Update CLI doc header for 30.0.0
* Change DB migration constant to 2025\_2
* Fix vTPM metadefs
* Doc: add validation data for GET /v2/schemas/image
* Functional tests migration: test\_healthcheck\_middleware
* Fix functional tests
* Remove outdated reference to data\_api
* Imported Translations from Zanata
* Update master for stable/2025.1

30.0.0
------

* Use pyenv for the periodic jobs running on Python 3.13
* Fix glance\_download\_properties config section name in the doc
* Refresh Glance example configs for Epoxy rc1
* Replace redundant own utilities
* Add cross project Ironic non voting job
* Safety check output of image conversion
* Allow ignoring specific gpt safety checks
* Core reviewer guidelines: add a note about translations
* Run safety checks on uploaded content
* Make glance able to require disk\_format match
* Imported Translations from Zanata
* Add support for service role in discovery API
* Fix broken metadata function calls
* Use common environment name for ostestr testpath
* Functional test migration: test\_tasks.py
* Functional tests migration: test\_schemas.py
* Functional tests migration: test\_sqlite.py
* Remove FunctionalInitWrapper
* Inherit from BaseTestCase rather than FunctionalTest when possible
* Remove S3 credentials from debug log
* Fix api path in multistore doc
* docs: Fix possible values for enabled\_backends

30.0.0.0b2
----------

* Drop environments for Python 3.8
* Bump minimum version of glance\_store
* Refresh Glance example configs for epoxy m2
* Release notes for Epoxy Milestone 2
* Move all periodic tips jobs from py311 to py313
* Documentation: use dnf instead of yum
* Imported Translations from Zanata
* Fix doc bug
* Replace links to HypervisorSupportMatrix
* Add \`\`fsid\`\` to RBD store properties
* Tempest job for s3 backend of glance
* Remove default override for config options policy\_file
* Update gate jobs as per the 2025.1 cycle testing runtime
* Fix performance glitch while sorting image locations
* Change DB migration constant to 2025\_1
* Replace deprecated functions in datetime
* Revert "Increase per project quota to 50"
* Remove Windows OS support
* Add new glance.wsgi module
* Increase per project quota to 50
* Add note about requirements lower bounds
* Use time.sleep() instead of eventlet.sleep()
* Doc: Add info about multi-attach volume types
* cinder: Replace remaining reference to volume v2 API
* Imported Translations from Zanata
* Remove no-longer valid comment about IPv6 workaround
* Remove python 3.8 support
* Add note about version changes
* Remove workaround for eventlet bug #592
* Do not call Enforcer.\_\_call\_\_ at module level
* api-ref: Update with links to 2.17
* Update master for stable/2024.2
* [doc]Update hw\_vif\_model as it supports igb now
* api-ref: Fix 'name' reference

29.0.0
------

* api-ref: add 'compressed' container\_format
* Remove workaround for eventlet <0.22.0
* Fixed typo in discovery.py
* Documentation: fix default value for rbd\_store\_chunk\_size
* Remove unrecheable code
* Imported Translations from Zanata
* Add metadef value for stateless firmware
* Add new wait logic for functional test of add location API

29.0.0.0b3
----------

* Use format\_inspector from oslo
* Refresh Glance example configs for dalmatian m3
* Release notes for Dalmatian Milestone 3
* Add iso file format inspector
* Remove default override for RBAC config options
* Revert image state to queued if conversion fails
* Auto-detect qemu-img qed support for unit tests
* Make separate schema for new location API
* Remove location\_strategy functionality
* Bump Images API version to 2.17
* Add api-ref and documentation for new location apis
* Add new get location api
* Add functional tests for new add-location API
* Add new add location api
* Add Location Import task flow
* Do not set\_acls if store is not associated to glance node
* Imported Translations from Zanata
* Revert "Fix import job to provide valid disk-formats list to tempest"
* Fix /healthcheck url typo in glance-api-paste
* zuul: Drop openstack-tox-functional-py38-fips job

29.0.0.0b2
----------

* Add safety check and detection support to FI tool
* Fix: optimized upload volume in Cinder store
* Revert "Make import jobs non-voting"
* Add releasenote for CVE-2024-32498 fix
* Increase timeout for tempest-integrated-storage-import job
* Make import jobs non-voting
* Add file format detection to format\_inspector
* Add QED format detection to format\_inspector
* Reject unsafe qcow and vmdk files
* Add VMDK safety check
* Extend format\_inspector for QCOW safety
* Reject qcow files with data-file attributes
* Fix import job to provide valid disk-formats list to tempest
* Deprecate the "metadata\_encryption\_key" option
* Release notes for Dalmatian Milestone 2
* Make location URL compatible with cinder backend
* Drop sqlparse
* docs: Correct grammar nit
* Fix 500 if multi-tenant swift is used
* Move all periodic tips jobs from py38/39 to py311/312
* Make functional-py312 voting and add it to the gate
* Imported Translations from Zanata
* Add non-voting functional-py312 job

29.0.0.0b1
----------

* Refresh Glance example configs for dalmatian m1
* Release notes for Dalmatian Milestone 1
* Fix broken glance-cache-prefetcher utility
* Stop using deprecated defusedxml.cElementTree
* Remove sendfile support
* reno: Update master for unmaintained/zed
* Remove glossary
* Remove allow\_additional\_image\_properties
* Replace remaining usage of [DEFAULT] sql\_connection
* Change DB migration constant to 2024\_2
* Architecture docs: Fix list indentation
* Remove unused run\_sql\_cmd
* Remove SQLAlchemy tips jobs
* doc: remove trailing dot from hypervisor\_type list
* Cinder: Remove ambiguous warning
* Docs: be more explicit regarding oslo\_limit.endpoint\_id
* doc: Remove non-existing auth parameters of glance-cache.conf
* Remove the digest\_algorithm option
* Update master for stable/2024.1
* refectory: fix comments

28.0.1
------

* Fix glance-api if cache is disabled
* reno: Update master for xena Unmaintained status
* reno: Update master for wallaby Unmaintained status
* reno: Update master for victoria Unmaintained status
* Docs: Add info about the cinder store
* Refresh Glance example configs for caracal m3
* Release notes for Caracal Milestone 3
* New grenade job to upgrding cache driver
* Require more specific exception
* Make \`centralized\_db\` cache driver default
* Use centralized\_db cache driver in tempest jobs
* Set a lock\_path for tests
* Fix flaky test related to cache migration
* [docs] Configure centralized\_db cache driver
* Prepare for castellan 4.4.0
* Migrate from SQLite to Centralized db
* [minor] Fix doc string for class
* Deprecate glance scrubber
* Make openstack-tox-functional-py38-fips job non-voting
* Move sqlite code in common module
* Read global config file for cache utilities
* Introduce centralized database driver for image cache
* Deprecate the "location\_strategy" option
* Add required database API(s) for cache
* inject\_image\_metadata plugin: Fix documentation
* reno: Update master for yoga Unmaintained status
* Add new tables for cache operations
* Use constants for common rules
* Support Stream Optimized VMDKs
* Drop ineffective options from config file
* Replace CRLF by LF
* Bump hacking
* Replace usage of deprecated [DATABASE] sql\_connection
* Deprecate the "glance-cache-manage" command
* Deprecate sqlite cache driver
* Fix test failures with oslo.limit 2.3.0
* Update python classifier in setup.cfg

28.0.0.0b2
----------

* Add Packed Virtqueue extra spec and image properties
* Increase timeout for glance cinder multistore job
* Deprecate Windows OS support
* Revert "Make glance-tox-functional-py39-sqlalchemy-tips job non-voting"
* Make glance-tox-functional-py39-sqlalchemy-tips job non-voting
* Drop unused pyOpenSSL
* Do not load api-paste.ini using oslo.config
* Unset VENV python\_interpreter in fips job
* zuul: Replace use of deprecated regex syntax
* Imported Translations from Zanata
* Update master for stable/2023.2

27.0.0
------

* api-ref: Fix RST formatting
* Remove ubuntu focal job
* Reduce concurrency for tempest jobs
* Refresh Glance example configs for bobcat rc1
* Imported Translations from Zanata
* Fix openstack-tox-py311 job
* Set GLOBAL\_VENV to false for centos
* Fix post failures causing by image conversion failure
* Sort locations based on store weight
* db: Use context, session args for metadef DB APIs
* db: Trivial parameter swap
* Add job to test with SQLAlchemy master (2.x)
* db: Remove explicit autocommit
* db: Replace use of update.values parameter
* db: Sync migrations, models
* db: Drop the convert\_unicode, unicode\_error flags
* db: Don't inherit cache for DeleteFromSelect
* db: Re-use a single connection
* db: Drop use of implicit auto-commit
* db: Enable foreign keys for SQLite backend
* db: Replace dict-style access of Row attributes
* db: Don't pass strings to Connection.execute()
* db: Replace use of aliased keyword arguments
* db: Pass case.whens as positionals, not a list
* db: Replace use of 'Query.values()'
* db: Don't invoke and\_() without arguments
* db: Enable batch migrations by default
* db: Disable logging by default for alembic
* db: Remove use of 'bind' arguments
* db: Replace use of legacy select() calling style
* tests: Add tests for loading, unloading metadefs
* tests: Enable SQLAlchemy 2.0 deprecation warnings
* db: Avoid import variable shadowing
* db: Update import location of declarative\_base
* tox: Unset basepython
* tests: Use WarningsFixture in all tests
* tests: Restore - don't reset - warning filters
* Remove 'egg\_info' configuration
* Imported Translations from Zanata
* Clean generated source RST files
* Correct item numbering in install docs

27.0.0.0b2
----------

* Release notes for Bobcat Milestone 2
* Refresh Glance example configs for bobcat milestone 2
* Remove the last occurrence of six.add\_metaclass
* Doc: remove "stores" and "default\_store" options
* Doc: Factorise installation instructions
* Imported Translations from Zanata
* Handle case for multiple cirros images
* Test glance RBAC old defaults
* Run integrated test if zuul.yaml file is changed

27.0.0.0b1
----------

* Bump eventlet to a version that fixes #632[1]
* Imported Translations from Zanata
* Refactor pipeline definition
* Release notes for Bobcat Milestone 1
* Refresh Glance example configs for bobcat milestone 1
* Add rocky linux to useful image properties os\_images list
* Deploy healthcheck middleware as app instead of filter
* Update functional jobs for 2023.2
* Fix functional test failures with PasteDeploy 3.x
* Remove duplicate value in compute-host-capabilities.json
* Change DB migration constant to 2023\_2
* Add a check on startup for staging directory
* Imported Translations from Zanata
* Update master for stable/2023.1

26.0.0
------

* Revert "Make glance-secure-rbac-protection-functional job non-voting"
* Make glance-secure-rbac-protection-functional job non-voting
* Enclose all APIv2 versions in single quotes

26.0.0.0b3
----------

* Release notes for Antelope Milestone 3
* Refresh Glance example configs for antelope milestone 3
* Remove deprecated \`\`enforce\_secure\_rbac\`\` option
* Enabled new defaults and scope checks by default
* doc/useful-image-properties: add missing \`\` to close a code block
* Add multihash info in glance documentation
* Limit CaptureRegion sizes in format\_inspector for VMDK and VHDX
* Allow easier admin override in policies
* Update migration constant
* Remove migration constant job and test
* Fix E741 issues

26.0.0.0b2
----------

* Release notes for Antelope Milestone 2
* Fix cinder tests for refactoring effort
* Refresh Glance example configs for antelope milestone 2
* Fix tox4 error
* Enforce image safety during image\_conversion
* Update the RADOS authentication link
* Drop tag assertion from README
* docs: Add note about introduction of per-tenant quotas
* Remove useless test for the CooperativeReader class
* vmware does't support VirtualSriovEthernetCard
* Further robustification of format\_inspector
* Fix unintentional exception inspecting VMDK
* Imported Translations from Zanata
* Fix a document description error
* add openstack-python3-zed-jobs-arm64 job
* Quota configuration: improve example oslo\_limit section
* Imported Translations from Zanata
* Imported Translations from Zanata
* Switch to 2023.1 Python3 unit tests and generic template name
* Update master for stable/zed
* Fix a wrong assertion method

25.0.0
------

* Imported Translations from Zanata
* Fixes the api-ref response
* Imported Translations from Zanata

25.0.0.0b3
----------

* RBAC updates: drop system scope
* Minor fix on Interoperable Image Import admin doc
* Refresh Glance example configs for zed milestone 3
* Remove 'glance-download' from default import methods
* [glance-download] Add missing config options to config list
* Add documentation for glance-download plugin
* Imported Translations from Zanata
* Release notes for Zed Milestone 3
* Implement glance-download internal plugin
* Extending stores-detail API
* Add support to get glance endpoint
* Fix a deprecation warning about threading.Thread
* remove expired notes for Multi Store feature
* Mock getaddrinfo in cinder store tests
* Imported Translations from Zanata
* Remove unused pylintrc
* Update exception for property protection file
* Imported Translations from Zanata
* Enable Image cache tempest testing
* glance-manage: fix crash under Python3.11
* Immediate caching of an image

25.0.0.0b2
----------

* Remove secure\_proxy\_ssl\_header opt from Glance
* Release notes for Zed Milestone 2
* Refresh Glance example configs for Zed milestone 2
* Include os-brick configuration options
* Doc: fix URL in API call
* Fix URLs in the form docs.openstack.org/developer/$project
* Add missing oslo\_limit options
* Adds purge command to glancemanage man page
* doc: update the kvm kw\_vif\_model driver list
* Remove unicode literal strings
* Imported Translations from Zanata
* [APIImpact] Correct API response code for DELETE cache APIs
* glance-cache-prefetcher: Set up access to multistore backends
* Remove options for oslo.db thread pool support
* Fix fips job
* Bindep fixes for SUSE-like systems
* Remove dead code of auth and policy layers
* Update api-ref: versions response for master branch
* Modify wrong file path in README
* Doc: Glance group management
* Imported Translations from Zanata
* Bump Image API version to 2.16
* Remove workaround for python\_exec cannot be None
* Revert "Disable import workflow in glance cinder jobs"
* Add openstack-tox-functional-py38-fips job
* Update python testing as per zed cycle teting runtime
* Correction in zed milestone 1 releasenotes
* Revert "Override GLANCE\_USE\_IMPORT\_WORKFLOW in cinder jobs"
* Add CPU Mode Metadata Def
* Add flavor and image options to select emulated virtual tpm
* Release notes for Zed Milestone 1
* Use show-policy to render default policy in documentation
* Refresh Glance example configs for Zed milestone 1
* Migrate CentOS Stream 8 job to CentOS Stream 9
* doc: add aarch64 to list of architecture image properties
* Fix failing namespace list delete race
* Override GLANCE\_USE\_IMPORT\_WORKFLOW in cinder jobs
* Delay string interpolations at logging calls
* Disable import workflow in glance cinder jobs
* Added cli\_opts and cache\_opts
* fixed typo in multistore documentation
* [APIImpact] Correct API response code for PUT /v2/cache/{image\_id}
* [CI] Add upper constraints to install command
* glance-manage can purge all deleted rows
* [api-ref] update cache manage API info
* Internal server error if shared member tries to stage data to image
* Update migration constant
* Imported Translations from Zanata
* api-ref needs update about 'checksum' image prop
* Move FIPS jobs to experimental and periodic queue
* Update doc8 ignore-path
* Update config doc for cinder backend
* Remove Babel requirement
* Fix warning in the release notes
* Update master for stable/yoga

24.0.0
------

* Add grenade-skip-level irrelevant-files config
* Change default value for [wsgi]/python\_interpreter
* Sync example configs for Yoga
* Yoga RC-1 release notes
* Added a new API to expose store info
* Fix overwriting of existing tags while creating new tags
* Cache management API endpoints
* Make FIPS job non-voting
* Update migration constant
* Add Python 3 only classifier
* Add fips check jobs
* [APIImpact] Quota usage API
* Fix set\_property\_atomic() boolean type casting
* tests: Remove check for os.set\_inheritable
* doc: Remove info on running under Python 3
* Remove '\_\_unicode\_\_' magic methods
* Remove glance.common.client.\_encode\_headers
* Remove final six usage
* Remove six.assertRaisesRegex usage
* Remove remaining six.moves usage
* Remove six.moves.urllib usage
* Remove six.moves.http\_client usage
* Remove six.moves.range usage
* Replace six.BytesIO, six.StringIO usage
* Remove six.text\_type, six.binary\_type usage
* Document new properties used by Ironic
* Fix tests on Python3.10
* Bump SQLalchemy to version that supports PY3.9
* Use LOG.warning instead of deprecated LOG.warn
* Remove six.iteritems usage
* Remove six.add\_metaclass usage
* Updating python testing as per Yoga testing runtime
* Fix tests for logging connection info
* Replace FakeObject with mock.MagicMock
* Imported Translations from Zanata
* Refactor glance cinder tests
* Add "bochs" as a possible video model
* Update Interop doc
* Add missing packages to test dependencies
* Remove broken tempest-full-py3-opensuse15 job
* Update qcow test to use qcow2 instead
* Fix typos
* Imported Translations from Zanata
* Use singular they instead of "he/she" where possible
* Remove dead psutil-related code
* Add libpcre3-dev/pcre-devel to bindep.txt
* Use single quotes in image policies
* Bump oslo.policy to version 3.8.1
* Drop support for SQLite < 3.7
* Bump oslo.log to version 4.5.0
* Add Python3 yoga unit tests
* Update master for stable/xena

23.0.0.0rc1
-----------

* Xena RC-1 release notes
* Remove duplicate \_header() implementations in metadef tests
* Remove duplicate \_url() methods from functional test classes
* Move global constants to test module setUp
* Remove duplicate namespace utilities in functional tests
* Fixed image\_format typo in doc
* Fix failed cinder store migration for non-owners
* Reproduce bug #1932337
* Make signature verification go back to 'queued'
* [uwsgi] Add missing pefetch periodic job

23.0.0.0b3
----------

* Xena milestone 3 release notes
* Refresh Glance example configs for Xena milestone 3
* Add doc support for delete-from-store API
* Implement project personas for metadef tags
* Implement project personas for metadef properties
* Implement project personas for metadef resource-types
* Implement project personas for metadef objects
* Implement project personas for metadef namespaces
* 'community' images need to be treated as public
* Check policies for Image Cache in API
* Move metadef tag policy checks in the API
* Move metadef property policy checks in the API
* Check policies for image tasks information in API
* Add release note about policy-refactor
* Check policies for Image Tags in API
* Check policies for image import operation in API
* Avoid reinitialization of image repo
* Move Tasks policy checks in the API
* Check policies for delete image for store in API
* Check deactivate, reactivate policy in the API
* add doc about KVM support e1000e vif model
* Add missing [oslo\_reports] options
* Move metadef resource type association policy checks in the API
* Check add\_image policy in the API
* Add missing forbidden to not found case for GET namespace API
* trivial: Double quote check\_str for consistency
* Check policies for staging operation in API
* Check download\_image policy in the API
* Refactor gateway auth layer for image factory
* Suppress policy deprecation and default change warnings
* Check upload\_image policy in the API
* Load options from the castellan library
* Resolve compatibility with oslo.db future (redux)
* Add missing parameters for the healthcheck middleware
* Deprecate task specific policies
* Refactor gateway auth layer for task APIs
* Move member policy checks to API layer
* setup.cfg: Fix errant key
* Resolve compatibility with oslo.db future
* Move metadef object policy checks in the API
* Move metadef namespace policy checks in the API
* Refactor gateway auth layer for member APIs
* Check delete\_image policy in the API
* Add check\_is\_image\_mutable() legacy helper
* Fix: glance cinder functional test
* Refactor gateway auth layer for metadef APIs
* Fix failing copy\_image flow init
* Add a member field to Image when appropriate
* Check get\_image(s) in the API
* Make image update check policy at API layer
* Refactor gateway get\_repo auth layer
* Remove SSL configuration section from docs
* Clean out deprecations from paste.ini
* tests: Remove use of 'oslo\_db.sqlalchemy.test\_base'
* Add api\_patch() to SynchronousAPIBase
* Remove dead 403->404 code
* Replace deprecated assertDictContainsSubset
* Get rid of deprecated xml.etree.cElementTree
* Add base policy check module
* DB layer suppress Forbidden to NotFound error
* Add functional tests for metadef resource types
* Move lazy store update to locations layer
* Make property protection tests use member role
* Make our functional tests compatible with RBAC
* Change database migration version to xena
* db: Remove "support" for configurable migration backends
* trivial: Remove references to sqlalchemy-migrate
* db: Remove old sqlalchemy-migrate migrations
* db: Stop checking for DB under sqlalchemy-migrate control
* db: Replace sqlalchemy-migrate call with alembic equivalent
* db: Move 'schema' module up a level

23.0.0.0b2
----------

* Xena milestone 2 release notes
* Refresh Glance example configs for Xena milestone 2
* Fix oslo policy DeprecatedRule warnings
* Fix the policy deprecation message
* Add unified quotas documentation
* Add image\_count\_uploading quota enforcement
* Add user\_get\_uploading\_count() to DB API
* Add a nonvoting functional job with RBAC defaults
* Use default policies in our tests
* Add image\_count\_total quota enforcement
* Add user\_get\_image\_count() to DB API
* Add image\_stage\_total quota enforcement
* Add user\_get\_staging\_usage() to DB API
* Enforce keystone limits for image upload
* Fix broken test\_update\_queued\_image\_with\_hidden
* Document domain-related cinder backend options
* Add unified quotas infrastructure
* Update image.size after conversion
* Drop lower-constraints jobs
* Make image stage set image.size
* Refactor SynchronousAPIBase for more cases
* Revert "Remove all usage of keystoneclient"
* Fix missing context args to get\_flow()
* Changed minversion in tox to 3.18.0
* Make taskflow\_executor log get\_flow() exceptions
* Remove references to sys.version\_info
* [Doc] Update Freenode to OFTC as our IRC server
* Make project\_id a formal target alias
* Make wsgi tests use noauth deployment flavor
* Fix test\_cache\_middleware tests to use auth
* Fix auth info on scrubber tests
* Allow member creation when using db.simple api
* setup.cfg: Replace dashes with underscores
* Cinder Store: Update legacy images tests
* Ignore stale image property removal
* Fix image/tasks API for in-progress tasks
* Guidelines for core reviewers
* Imported Translations from Zanata
* Add Python3 xena unit tests
* Update master for stable/wallaby

22.0.0
------

* Fix a typo in contributor docs
* Make some metadef operations admin-only

22.0.0.0b3
----------

* Add a release note for secure RBAC personas
* Wallaby milestone 3 release notes
* Fix erroneous exit from copy wait loop
* Update the task policies
* trivial: remove unnecessary grouping in base policies
* trivial: Fix minor grammatical issues in cache middleware
* Refresh Glance example configs for Wallaby milestone 3
* Implement project personas for image actions
* Fix test\_cache\_middleware ImageStub
* Move setting of enforce\_scope to devstack side
* Add glance functional protection tests to check and gate
* Enable second glance worker for import testing
* Add housekeeping module and staging cleaner
* Add administrator docs for distributed-import
* Distributed image import
* Make functional tests set node\_staging\_uri
* Fail to start if authorization and policy is misconfigured
* Add get\_ksa\_client() helper
* Add a test for migration naming and phase rules
* Bump Images API version to 2.12
* Update API docs for new /v2/images/{image\_id}/tasks API
* New API /v2/images/{id}/tasks
* Utilize newly added tasks database fields
* Extract req.context in a variable
* Expand tasks database table to add more columns
* Pass oslo.context RequestContext objects directly to policy enforcement
* Properly handle InvalidScope exceptions
* Add basic/common personas to base policies
* Bump requirements to prepare for secure RBAC
* Stop raising 403 when image is not found
* Fix: cinder store test
* Make glance cinder multistore job voting
* Cleanup remaining tenant terminology in glance API docs
* trivial: Fix a typo in devstack plugin.sh
* Remove unused option "owner\_is\_tenant"
* Uncap PrettyTable
* Make copy\_image plugin use action wrapper
* Make inject\_image\_metadata use action wrapper
* Fix nonsensical test mocks and assertions
* Allow plugins to mutate image extra\_properties
* Make image\_conversion use action wrapper
* Add missing fail case tests for image\_conversion
* Make action wrapper support arbitrary properties
* Make web-download revert all stores on fail
* Pass ImageActionWrapper to internal plugins
* Add functional tests for cinder multiple store
* Add devstack plugin script
* Add policy sample file in doc
* Replace collections.Iterable
* [goal] Deprecate the JSON formatted policy file
* Exclude os\_glance namespace from property quota
* Make os\_glance namespace reserved
* Change database migration version to wallaby
* Update docs and renos for os\_glance reservation

22.0.0.0b2
----------

* Fix upgrade checks for sheepdog
* Tox.ini: add py39
* Fix a typo in functional helper class
* Move some helper functions to base class
* Update version of doc8
* Imported Translations from Zanata
* [Doc] Remove description about v1 api and glance-registry
* Replace md5 with oslo version
* Bump lower\_constraints and requirements
* Run nova-ceph-multistore only when tempest is ran
* Imported Translations from Zanata
* Remove 'admin\_role' option
* Adding gate job for glance cinder store
* Imported Translations from Zanata
* Bump Images API version to 2.11
* Adjust jobs for devstack WSGI mode default
* Add Python3 wallaby unit tests
* Update master for stable/victoria

21.0.0.0rc1
-----------

* Victoria RC-1 release notes
* Fix cleaning of web-download image import
* Do not use OSC in infra playbook
* Image import "web-download" check downloaded size
* docs: Remove cruft from 'conf.py'
* docs: Convert table of image properties to definition list
* docs: Remove references to XenAPI driver

21.0.0.0b2
----------

* Victoria milestone 3 release notes
* Run the nova-ceph-multistore job against glance
* Corrections in default value of all\_stores\_must\_succeed
* [Docs] Cinder multiple stores for glance
* Support cinder multiple stores
* Remove babel.cfg etc
* Refresh Glance example configs for Victoria milestone 3
* Add a release note about import locking
* [Trivial]Add missing print parameters in log messages
* Make our import-workflow job also convert images to raw
* Disable wait\_for\_fork() kill aggression if expect\_exit=True
* Make our ceph job enable thin provisioning
* Cleanup import status information after busting a lock
* Add ImageLock to base flow checks
* Functional test enhancement for lock busting
* Handle atomic image properties separately
* Move SynchronousAPIBase to a generalized location
* Add functional test for task status updating
* Implement time-limited import locking
* Add FakeData generator test utility
* Make test\_copy\_image\_revert\_lifecycle handle 409 on import retry
* Poll for final state on test\_copy\_image\_revert\_lifecycle()
* Fix import failure status reporting when all\_stores\_must\_succeed=True
* zuul: use the new barbican simple-crypto job
* Functional reproducer for bug 1891352
* Make wait\_for\_fork() more robust against infinite deadlock
* Update task message during import
* Heartbeat the actual work of the task
* Add image\_delete\_property\_atomic() helper
* Flesh out FakeImage for extra\_properties
* Add tests for \_ImportToStore.execute()
* Add testing for \_CompleteTask in api\_image\_import
* Fix non-deterministic copy\_image\_revert\_lifecycle test
* Squelch the stevedore.extension debug logging in functional tests
* Use correct import order in test\_api\_import\_image
* Inspect upload/import stream and set virtual\_size
* Stream-friendly disk format inspection module
* Fix active image without data
* Fix active image when all uploads fail
* [goal] Migrate glance jobs to focal
* Add "stores" to disallowed properties
* Change database migration version to victoria

21.0.0.0b1
----------

* Refresh Glance example configs for Victoria milestone 2
* Add new config options in sample config generator
* Victoria milestone 2 release notes
* Make wsgi\_app support graceful shutdown
* Make image conversion use a proper python interpreter for prlimit
* [Doc] Policy support to copy unowned images
* Make glance-api able to do async tasks in WSGI mode
* Fix release note formatting
* Fix broken glance-cache-manage utility
* Make our tempest job use import, standalone, and inject\_metadata
* Fix admin docs deplying under HTTPD
* Add image\_set\_property\_atomic() helper
* Remove deprecated glance-replicator options
* Remove unused "copy\_from" policy rule
* Add a policy knob for allowing non-owned image copying
* Update sample configs post deprecation removals
* Cleanup remove api v1 and registry code
* Don't use Stevedore 3.0.0 which breaks gate
* Make import task capable of running as admin on behalf of user
* Add context.elevated() helper for getting admin privileges
* Refactor TaskFactory and Executor to take an admin ImageRepo
* Add a functional test for non-owned image copying
* Refactor common auth token code in images test
* Fix metadefs for compute-watchdog
* Drop collections.abc compat handling
* Don't include plugins on 'copy-image' import
* Add 'all' visibility filter for listing images in docs
* Improve lazy loading mechanism for multiple stores
* Removal of 'enable\_v2\_api'
* Update lower-constraints versions
* Add a test to replicate the owner-required behavior of copy-image
* Deprecation cleanout Registry and related
* Check authorization before import for image
* Make test-setup.sh compatible with mysql8
* Fix: Interrupted copy-image leaking data on subsequent operation
* Switch from unittest2 compat methods to Python 3.x methods
* Imported Translations from Zanata
* Use unittest.mock instead of mock
* Remove configs and entries for deprecated registry
* Exclude http store if --all-stores specified for import/copy operation
* Use grenade-multinode instead of the custom legacy job
* Stop to use the \_\_future\_\_ module
* Switch to newer openstackdocstheme and reno versions
* Imported Translations from Zanata
* Cap jsonschema 3.2.0 as the minimal version
* Add tests to lower-constraints job
* Fix hacking min version to 3.0.1
* Imported Translations from Zanata
* Use py38 instead of py37 jobs
* Switch to new grenade job name
* Fix a failure to parse json file
* Bump default tox env from py37 to py38
* fix typo in gerrit doc
* Imported Translations from Zanata
* Add py38 package metadata
* Imported Translations from Zanata
* Add Python3 victoria unit tests
* Update master for stable/ussuri

20.0.0.0rc1
-----------

* Use unittest.mock instead of third party mock
* Skip 'test\_image\_member\_lifecycle\_for\_multiple\_stores' on failure
* Imported Translations from Zanata
* Add warning and note on image schema customization docs

20.0.0.0b3
----------

* Install all deps in venv creation
* Ussuri final release notes
* Refresh Glance example configs for Ussuri milestone 3
* Deprecate admin\_role
* Imported Translations from Zanata
* Fix multiple image imports if boolean input passed as string
* Add missing Image property hw\_vif\_multiqueue\_enabled to metadefs
* Update OS::Glance::CommonImageProperties in metadefs
* Update 'common image properties' doc
* Add description of how to use S3 driver
* Deprecate the 'checksum' image property
* Do not decompress 'compressed' containers
* Revise admin interoperable image import docs
* Update uWSGI doc definition names
* Add Policy enforcement for several Metadata Definition delete APIs
* Remove all references to sheepdog
* Update hacking and reenable local checks
* Monkey patch original current\_thread \_active
* Add deprecation message to policy "default" rule
* Cleanup old cruft
* Raise hacking to latest 2.0.0 release
* Add decompression import plugin
* Deprecate allow\_additional\_image\_properties
* Remove usages of SSL related config options in utils
* Add possibility to delete image from single store
* Community Goal: Project PTL & Contrib Docs Update
* Remove policy.json from setup.cfg
* Reminder: show\_multiple\_locations still deprecated
* Correct reference to 2 import methods
* Document os\_admin\_user in Useful Image Properties
* Multiple import fails if "all\_stores" specified as "true"
* Use devstack ceph plugin python3 job
* Amend tempest-irrelevant-files to avoid false positives
* Revert "Remove all example configs for deprecated registry"
* Remove all example configs for deprecated registry

20.0.0.0b2
----------

* Refresh Glance example configs for Ussuri milestone 2
* Unit tests fails with oslo.config 7.0
* Copy existing image in multiple stores
* Add ability to import image into multi-stores
* Use application\_url in API version document
* Configure Glance TCP socket after the store initialization
* Ensure store ID parsed from URI is properly encoded
* Use default cors config also when run as wsgi app
* Remove empty policy.json
* Fix string interpolation to delay by logging
* Move policy defaults into code
* Imported Translations from Zanata
* Change database migration version to ussuri
* Staging area not cleared if image is deleted while importing
* doc: Clean up unnecessary left vertical lines

20.0.0.0b1
----------

* Refresh Glance example configs for Ussuri milestone 1
* Remove registry related functional and unit tests
* Remove py2 testing, jobs
* Add classifiers of supporting py3
* Drop old neutron-grenade job
* Remove native ssl support
* Drop support for PY27
* Migrate grenade jobs to py3
* Imported Translations from Zanata
* Fix old --public from install verify docs
* Install requirements during the correct tox phase
* Start README.rst with a better title
* Use FakePolicyEnforcer for deserialization tests
* Switch to opensuse-15 nodeset
* Imported Translations from Zanata
* Update master for stable/train

19.0.0.0rc1
-----------

* Set API version 2.9 CURRENT
* Rethinking filesystem access
* Refresh Glance example configs for Train
* Use \`glance\` as example in docs instead of osc
* Revert skipped functional tests
* Add support for oslo.reports
* Fix unit of hw\_rng:rate\_period
* Revert "Add reserved stores to the sample config file"
* Revert "Correct the deprecation messages of local dir config"
* Fix DeprecationWarning: invalid escape sequence

19.0.0.0b1
----------

* Add Train milestone 3 releasenotes
* Remove OS::Compute::Trust metadef
* Images API version bump and config sync
* Correct the deprecation messages of local dir config
* useful-image-properties: Update note on machine types
* Add SEV-related extra spec and image properties
* Add release notes for secret key deletion
* Add periodic job to prefetch images into cache
* Blacklist eventlet 0.23.0, 0.25.0
* Delete secret key on image deletion
* fix properties' missing underline for VirtCPUTopology
* Add disk format content from Image Guide
* Release note for 'compressed' container format
* Add 'compressed' option to container\_format
* Fix INSTR not supported for postgresql
* Adding member to image fails for multiple stores
* MultiStore: Lazy update fails if image is not owned by owner
* add metadef vlaues for new video models
* add hw\_pmu metadef
* Updating Ceph 404 URLs
* doc: add link to release notes
* Make location API compatible with multiple store
* Lazy update stores information
* Change location metadata key 'backend' to 'store'
* Add reserved stores to the sample config file
* Multiple backend support for scrubber
* Add migration script to change backend to store
* Skip tests to avoid trouble releasing store 1.0.0
* Update api-ref location
* Image deletion returns 500 if 'file' store is not enabled
* Run 'tempest-ipv6-only' job in gate
* Replace "integrated-gate-py3" template with new "integrated-gate-storage"
* Dropping the py35 testing
* Update the glance installation page
* Bump openstackdocstheme to 1.20.0
* Do not use glance\_store 0.29.0
* Remove glance-registry stuff
* Modify the url of upper\_constraints\_file
* Bring py27 tests back
* MultiStore: Avoid potential KeyError in functional tests
* Blacklist sphinx 2.1.0 (autodoc bug)
* Add glance\_store tips to experimental jobs
* Unit tests fails with new glance\_store version 0.29.0
* Update hw\_rng\_model image property doc
* Remove additional " from config help
* Update v2/info/stores api-ref
* Mark http store read-only in discovery call
* Update sphinx dependency
* Don't target broken ssl tests to specific py3.minor
* Added powervm as hypervisor type for image metadata prefiltering
* Replace git.openstack.org URLs with opendev.org URLs
* OpenDev Migration Patch
* Pass kwargs to exception to get better format of error message
* Use YAML anchor to avoid repeating irrelevant files
* Switch to using stestr
* add libpq-dev to build psycopg2
* Uncap jsonschema
* Update CLI doc header for Stein
* Update cache-manage documentation
* Handle collections.abc deprecations
* Quiesce assertAlmostEquals deprecation warning
* Quiece 'invalid escape sequence' deprecation msg
* Quiesce assertRaisesRegexp deprecation messages
* Periodic jobs are failing for python 3.5
* Windows: fix flaky tests
* Replace openstack.org git:// URLs with https://
* Imported Translations from Zanata
* Add more irrelevant-files for integrated test jobs
* Separate out configuration tests
* Update master for stable/stein

18.0.0
------

* Add irrelevant-files for integrated test jobs
* Add Stein releasenotes
* Stein example configs refresh
* Update irrelevant files
* Add description to common image properties
* Data remains in staging area if 'file' store is not enabled
* Allow glance tests to run on Windows
* Windows multiprocess wsgi
* glance Windows support
* Update requirement platform checks
* Migrate glance-dsvm-grenade-multinode job to Ubuntu Bionic
* Imported Translations from Zanata
* py3: Fix return type on CooperativeReader.read
* Clarify the Glance/metadefs relationship
* Document fileystem drv chunk size option
* Failure in web-dowload kept image in importing state
* Add job definition locations in comment
* Add cache-manage utility using v2 API
* Add new 'all' visibility filter for listing images
* Add an oslo.policy.enforcer entrypoint
* add python 3.7 unit test job
* Fix DeprecationWarnings for RequestContext.tenant/user usage
* Add test for data migration version
* Open Stein for data migrations

18.0.0.0b1
----------

* Update "Disallowed minor code changes" doc
* Correct typo in config option choices
* Use renamed template 'integrated-gate-py3'
* Make QuotaImageTagsProxy deep-copyable
* Update show\_multiple\_locations deprecation note
* Guard \_\_getattr\_\_ on QuotaImageTagsProxy
* Fix for FK constraint violation
* Image conversion fails
* Implement scaffolding for upgrade checks
* Drop dependency on monotonic
* Remove i18n.enable\_lazy() call from glance.cmd
* Imported Translations from Zanata
* Update mailinglist from dev to discuss
* Add definition for hw\_time\_hpet image property
* [doc] Fix options group for default\_backend
* Add missing ws seperator between words
* Update http with https
* Embed validation data in locations
* Imported Translations from Zanata
* Make the link to release notes anonymous
* py3: fix recursion issue under py37
* Remove moxstubout usage
* Document os\_shutdown\_timeout image property
* Increment versioning with pbr instruction
* Fixed intermittent timeout/failing functional tests
* Use tempest-pg-full
* Refactor periodic "tips" jobs
* Do not use Accept.best\_match
* Replace openSUSE experimental check with newer version
* Do not use oslo.messaging 9.0.0
* fix a typo in docstring
* fix "it's" typos
* Imported Translations from Zanata
* Provision to add new config options in sample config file
* Cleanup .zuul.yaml
* add python 3.6 unit test job
* switch documentation job to new PTI
* Remove rootwrap.conf file from setup.cfg
* Imported Translations from Zanata
* import zuul job settings from project-config
* Revert "Add a default rootwrap.conf file."
* Add missing tests for 2.6 statuses
* Use WebOb 1.8.1
* Remove qpid-python from test-requirements
* Update Ubuntu install guide
* Remove stub\_out\_registry\_server method
* Update status to active when locations replaced
* Imported Translations from Zanata
* api-ref: "hidden" images update
* Remove broken bandit from testing
* Add multihash checks to functional tests
* Support RFC1738 quoted chars in passwords
* Imported Translations from Zanata
* Imported Translations from Zanata
* Update reno for stable/rocky
* Update README
* Update "Release Notes" in contributor docs
* Don't run ssl-handshake job on doc changes

17.0.0.0rc1
-----------

* Add prelude to Rocky releasenotes
* Introduce ''mock\_object'' method to base test class
* Add release note for multi-store feature
* Imported Translations from Zanata
* api-ref: update version history
* Handle StopIteration for Py3.7 PEP 0479
* Rename async package to async\_
* Add API version 2.8
* api-ref: make the discovery section more general
* Sync Rocky example configs
* Replace mox with mock
* Correct typo in help text
* Doc:Multiple stores support
* Bump Imges API version to 2.7
* Unit/Functional tests for multi store support
* Add multi-store support
* Multihash implementation for Glance
* Document hw\_cpu\_policy and hw\_cpu\_thread\_policy image properties

17.0.0.0b3
----------

* Hide old images
* Use glance.context.RequestContext in tests
* Update glance documentation for trait support
* Remove Images API v1 entry points
* fix tox python3 overrides
* replace cmp with total\_ordering decorator
* Documentation for OSSN-0075 mitigation
* Change default age of purge\_images\_table to 180
* Mitigate OSSN-0075
* Prevent taskflow creation in impossible import
* useful-image-properties.rst: Update default RNG source
* Add image conversion plugin

17.0.0.0b2
----------

* Regenerate sample config files
* Update Release CPL doc about periodic jobs
* Use group\_regex to serialize scrubber tests
* Replace Chinese punctuation with English punctuation
* Remove deprecated 'enable\_image\_import' option
* convert windows line endings to unix format
* Add glance-eventlet-ssl-handshake-broken-py35 job
* Convert to string before using assertIn
* Add periodic tips jobs
* Add py35 statement
* Fix unreachable 'ImageSizeLimitExceeded' exception in image-upload
* Update pypi url to new url
* Refactor exception handling in cmd.api
* update "auth\_url" in document
* Fix wrong scheduler\_hints name in CIM::ProcessorAllocationSettingData
* Prevent early exit from functional tests
* Refactor wait\_for\_scrubber\_shutdown function
* Run scrubber functional tests in serial mode
* Add time-bounded wait-for-status to func tests
* Add 'useful image properties' document
* [api-ref] "Show images" should be changed to "List images"
* Follow the OpenStack Sphinx theme configuration
* Prepare for WebOb 1.8.1
* Add redirect capability to glance docs
* Modify the empty list ensure method
* Pending-delete rollback ability

17.0.0.0b1
----------

* Cleaning image data when image signature verification fails
* Imported Translations from Zanata
* Add info about building the v1 api-ref
* Follow the new PTI for document build
* Fix incompatible requirement in requirement.txt
* Migrate legacy job to project repository
* Remove all usage of keystoneclient
* Add fixture to limit unit test log output
* Refactor scrubber functional test
* Update auth\_uri option to www\_authenticate\_uri
* Use 'Default' as sample install domain name
* Update image schema with Image API 2.6 statuses
* Functional tests for new Image Import API
* Update auth\_url in install docs
* add lower-constraints job
* Fix web-download fails with default node\_staging\_uri
* Make functional tests run by default
* Imported Translations from Zanata
* Make eventlet monkey patching conform to best practices
* Python 3.5: Image Import fails with Unicode Error
* Updated from global requirements
* Change the outdated links to the latest links in README
* Update Glance landing pages
* Updated from global requirements
* Deprecate owner\_is\_tenant
* Updated from global requirements
* Imported Translations from Zanata
* Fix format in doc/source/cli/\*
* Clean the web-download tests
* Update Release CPL doc
* Use config opt value to determine import methods
* Delete the superfluous symbol of the command line
* Add barbican-tempest experimental job
* Open Rocky for data migrations
* Unit tests for Web-Download import method
* api-ref: correct typo
* api-ref: fix list-resource-type-assocs example
* Remove v1 from API ref
* Imported Translations from Zanata
* Remove v1 tests
* Imported Translations from Zanata
* Update installation guide: no uwsgi for glance
* Update some url links of rally/README.rst
* Hide Pike note on Queens Release Notes page
* Triggers shouldn't be execute in offline migration
* Revise help text for uri filtering options
* Revise database rolling upgrade documentation
* Migration support for postgresql
* Correct length limit for custom property value
* Use oslo\_db.sqlalchemy.test\_fixtures
* Fix config group not found error
* api-ref: update interoperable image import info
* Updated from global requirements
* Update Queens info about Glance and uWSGI
* Remove use of mox/mox3
* Imported Translations from Zanata
* Revise interoperable image import documentation
* Update admin docs for web-download import method
* URI filtering for web-download
* Add validation to check if E-M-C is already in sync
* Imported Translations from Zanata
* Cleanup basic import tasks
* Make the Image status transition early
* Use bool instead of int for boolean filter value
* image-guide: Update cirros image
* Limit default workers to 8
* Imported Translations from Zanata
* Fix format cache.rst
* Imported Translations from Zanata
* Use configured value for import-methods header
* Fix bad usage of extend in list\_image\_import\_opts
* Revert "Fix wrong usage of extend in list\_image\_import\_opts"
* Offline migration support for postgresql
* Fix wrong usage of extend in list\_image\_import\_opts
* Imported Translations from Zanata
* Update reno for stable/queens

16.0.0.0rc1
-----------

* Update Queens metadefs release note
* Update api-ref for v.2.6
* Add release note for API v2.6
* Align Vers Neg Middleware to current API
* Implementation of db check command
* Decouple Image Import Plugin Opts
* Revise import property injection plugin releasenote
* Correct 1-character typo
* Release note for Queens metadefs changes
* Regenerate sample configuration files
* Exiting with user friendly message and SystemExit()
* correct grammar, duplicate a found
* Modify glance manage db sync to use EMC
* Add img\_linked\_clone to compute vmware metadefs
* Handle TZ change in iso8601 >=0.1.12
* Replace xml defusedxml
* Replace base functional tearDown with addCleanup
* Add functional test gates
* Skip one functional test
* Fix py27 eventlet issue <0.22.0
* Fix pip install failure
* Execute py35 functional tests under py35 environment
* Enable Image Import per default and make current
* Adds 'web-download' import method
* Updated from global requirements
* Skip one functional test
* Use addOnException to capture server logs on failure
* Separate out functional tests
* Update Signature Documentation
* Add doc8 to pep8 check for glance project
* Implementation of Inject metadata properties
* Resolve unit test failures with going to oslo.serialization 2.3.0

16.0.0.0b3
----------

* Updated from global requirements
* Updated from global requirements
* Add documentation for image import plugins
* Update scrubber documentation
* [doc] Modify the description for the command
* Scrubber refactor
* Add hooks for Image Import plugins
* Updated from global requirements
* Fix 500 if custom property name is greater than 255
* Fix member create to handle unicode characters
* [import-tests] adds tests for image-import/staging
* Updated from global requirements
* [import-tests] Enhance image import tests
* Add fixture to only emit DeprecationWarning once
* Move 'upload\_image' policy check to the controller
* Fix 500 from duplicate stage call
* Updated from global requirements
* Prevent image become active without disk and container formats

16.0.0.0b2
----------

* Fix 500 on ValueError during image-import
* Update the documentation links
* Update the valid disk bus list for qemu and kvm hypervisors
* Add the list of hw\_version supported by vmware driver
* Updated from global requirements
* Utilize LimitingReader for staging data
* Fix 500 from image-import on 'active' image
* Fix 500 from stage call on non-existing image
* Fix unstage after staging store denies write
* Updated from global requirements
* Delete data if image is deleted after staging call
* Fix 500 from image-import on queued images
* Use new oslo.context arg names
* Use new oslo.db base test case
* Fix the wrong URL
* Correct related section for enable\_image\_import
* Fix SQLAlchemy reference link
* Remove setting of version/release from releasenotes
* Updated from global requirements
* Fix format of configuration/configuring.rst
* Removing unreachable line from stage() method
* Wrong description in ImageMembersController.update
* Updated from global requirements
* Updated from global requirements
* Correct sphinx syntax of glance doc
* Update http deploy docs to be a bit more explicit
* Clarify log message
* Updated from global requirements
* Document new URL format
* Update api-ref about 403 for image location changes

16.0.0.0b1
----------

* Make ImageTarget behave like a dictionary
* Document Glance Registry deprecation
* Replace body\_file with class to call uwsgi.chunked\_read()
* tests: replace .testr.conf with .stestr.conf
* Deprecate Registry and it's config opts
* Update spec-lite info in contributors' docs
* Fix 500 if user passes name with more than 80 characters
* Remove use of deprecated optparse module
* Replace DbMigrationError with DBMigrationError
* Clean up api-ref index page
* Updated from global requirements
* Fix a typo in swift\_store\_utils.py: replace Vaid with Valid
* TrivialFix: Fix wrong test case
* Revert "Remove team:diverse-affiliation from tags"
* Update image statuses doc for latest change
* Update Rally Job related files
* Add default configuration files to data\_files
* Switch base to latest in link address
* Align default policy in code with the one in conf
* Fix missing some content of glance database creation
* Updated from global requirements
* Updated from global requirements
* Clean up database section of admin docs
* Add image import docs to admin guide
* Updated from global requirements
* Avoid restarting a child when terminating
* Open Queens for data migrations
* Change variable used by log message
* api-ref: add 'protected' query filter
* Update invalid links of User doc
* Separate module reference from contributor/index page
* Updated from global requirements
* Optimize the way to serach file 'glance-api-paste.ini'
* Fix api\_image\_import tasks stuck in 'pending'
* Alembic should use oslo\_db facades
* Correct group name in config
* api-ref: add interoperable image import docs
* Add release note for Glance Pike RC-2
* Fix Image API 'versions' response
* Updated from global requirements
* Return 404 for import-info call
* Add 'tasks\_api\_access' policy
* Add 'api\_image\_import' type to task(s) schemas
* Update invalid path and link for Image Properties
* Fix 500 error from image-stage call
* Fix 500 error from image-import call
* Imported Translations from Zanata
* Update reno for stable/pike

15.0.0.0rc1
-----------

* Refresh config files for Pike RC-1
* Add release note for RC-1 including metadefs changes
* Updated from global requirements
* Add the missing i18n import
* Bump Images API to v2.6
* api-ref: update container\_format, disk\_format
* Update the documention for doc migration
* Create image fails if 'enable\_image\_import' is set
* Updated from global requirements
* Add a default rootwrap.conf file

15.0.0.0b3
----------

* Updated from global requirements
* Fix typo in discovery API router
* Updated from global requirements
* Add release note for wsgi containerization
* Remove team:diverse-affiliation from tags
* Updated from global requirements
* Add Discovery stub for Image Import
* Update URL home-page in documents according to document migration
* Satisfy API Reference documentation deleting tags
* Fix glance image-download error
* Handle file delete races in image cache
* doc: Explicitly set 'builders' option
* Add 'protected' filter to image-list call
* Remove unused None from dict.get()
* Updated from global requirements
* Remove unused parameter from 'stop\_server' method
* use openstackdocstheme html context
* update doc URLs in the readme
* only show first heading from the glossary on home page
* move links to older install guides to the current install guide
* switch to openstackdocstheme
* Fix trust auth mechanism
* import the cli examples from the admin guide in openstack-manuals
* import troubleshooting section of admin guide from openstack-manuals
* import the installation guide from openstack-manuals
* import the glossary from openstack-manuals
* turn on warning-is-error for sphinx build
* Remove datastore\_name and datacenter\_path
* Clean up the redundant code
* Imported Translations from Zanata
* Add metadefs release note for Pike
* Updated from global requirements
* do not declare code blocks as json when they do not parse
* use :ref: instead of :doc: for xref
* add index page to cli dir
* fix image path
* fix include directives
* fix repeated hyperlink target names
* fix the autodoc instructions
* rearrange existing documentation to follow the new layout standard
* Make i18n log translation functions as no-op
* Remove unused variable
* Tests: Remove the redundant methods
* ignore generated sample config files
* Fix broken link to the "Image service property keys" doc
* Add docs and sample configs for running glance with apache
* Add pbr wsgi script entrypoint to glance
* Add external lock to image cache sqlite driver db init
* Updated from global requirements
* Remove use of config enforce\_type=True

15.0.0.0b2
----------

* Updated from global requirements
* Updated from global requirements
* Remove duplicate key from dictionary
* Updated from global requirements
* Stop enforcing translations on logs
* Remove usage of parameter enforce\_type
* Add import endpoint to initiate image import
* Add images/<id>/staging endpoint
* Addresses the comments from review 391441
* Fixed PY35 Jenkins Gate warnings
* Updated from global requirements
* Add a local bindep.txt override
* Add hide hypervisor id on guest host
* Updated from global requirements
* Updated from global requirements
* Clean up py35 env in tox.ini
* Trivial fix
* Fix periodic py27 oslo-with-master test
* Add OpenStack-image-import-methods header
* Updated from global requirements
* Fix wrong overridden value of config option client\_socket\_timeout
* Remove test\_unsupported\_default\_store
* Support new OSProfiler API
* WIP:Add api\_image\_import flow
* Change keystoneclient to keystoneauth1
* Clean up acceptable values for 'store\_type\_preference'
* Fix the mismatch of title and content
* Fix vmware option for glance\_store
* Add node\_staging\_uri and enable\_image\_import opts
* Fix doc generation for Python3
* Fix tests when CONF.set\_override with enforce\_type=True
* Updated from global requirements
* Document the duties of the Release CPL
* Dev Docs for Writing E-M-C Migrations
* Updated from global requirements

15.0.0.0b1
----------

* Fix and enable integration tests on py35
* Update api-ref for Range request support
* Do not serve partial img download reqs from cache
* Updated from global requirements
* Add release note for bug 1670409
* Accept Range requests and set appropriate response
* Provide user friendly message for FK failure
* Updated from global requirements
* Use cryptography instead of pycrypto
* Fix incompatibilities with WebOb 1.7
* Fix some reST field lists in docstrings
* Fix some reST field lists in docstrings
* Fix rendering of list elements
* Fix and enable two funcitonal tests on py35
* Replace master/slave usage in replication
* Fix and enable remaining v1 tests on py35
* Fix and enable test\_cache\_middleware test on py35
* Invoke Monkey Patching for All Tests
* Update vmware metadef with ESX 6.5 supported OSes
* Remove the remaining code after glare-ectomy
* Invoke monkey\_patching early enough for eventlet 0.20.1
* correct "url" to "URL"
* Fix Unsupported Language Test
* Updated from global requirements
* Use HostAddressOpt for opts that accept IP and hostnames
* Fix experimental E-M-C migrations
* Update man pages to Pike version and release date
* Fix filter doesn't support non-ascii characters
* Remove glare leftovers from setup.cfg
* Fix api-ref with Sphinx 1.5
* Updated from global requirements
* Restore man pages source files
* Update test requirement
* Glare-ectomy
* Limit workers to 0 or 1 when using db.simple.api
* Updated from global requirements
* Restore Legacy Database Management doc
* Open Pike for data migrations
* Change identifiers in data migration tests
* [docs] Removing docs from dev ref
* Mock CURRENT\_RELEASE for migration unit test
* Fix up links to static content in sample-configuration
* Cleanup 'ResourceWarning: unclosed file' in py35
* Fix scrubber test failing py35 gate
* Update developer docs for rolling upgrades
* Updated from global requirements
* Fix brackets to suggest optionality
* Use https instead of http for git.openstack.org
* Updated from global requirements
* Prevent v1\_api from making requests to v2\_registry
* Prepare for using standard python tests
* Update reno for stable/ocata

14.0.0
------

* Refresh config files for Ocata RC-1
* Alembic migrations/rolling upgrades release note
* Add expand/migrate/contract migrations for CI
* Add expand/migrate/contract commands to glance-manage CLI
* Refactor tests to use Alembic to run migrations
* Port Glance Migrations to Alembic
* Handling scrubber's exit in non-daemon mode
* Correct 2.5 minor version bump release note
* Update api-ref for image visibility changes
* refactor glare plugin loader tests to not mock private methods of stevedore
* Refine migration query added with CI change
* Hack to support old and new stevedore
* do not mock private methods of objects from libraries
* Update deprecated show\_multiple\_locations helptext
* Add release note for image visibility changes
* Update api-ref for partial download requests
* Updated from global requirements

14.0.0.0b3
----------

* Eliminate reference to metadefs 'namespace\_id'
* Updated from global requirements
* Add image update tests for is\_public
* Fix regression introduced by Community Images
* Bump minor API version
* DB code refactor, simplify and clean-up
* Properly validate metadef objects
* Implement and Enable Community Images
* Fix NameError in metadef\_namespaces.py
* Update to "disallowed minor code changes"
* remove useless EVENTLET\_NO\_GREENDNS
* Updated from global requirements
* Adjust test suite for new psutil versions
* Update dev docs to include 'vhdx' disk format
* Change SafeConfigParser into ConfigParser
* Image signature documentation modify key manager api class
* Log at error when we intend to reraise the exception
* Remove obsolete swift links
* Updated from global requirements
* Add ploop to supported disk\_formats
* Updated from global requirements
* Fix some typos in api-ref
* Update sample config files for Ocata-3
* Enable python3.5 testing
* Update tox configuration file to reduce duplication
* Expand hypervisor\_type meta data with Virtuozzo hypervisor
* Remove v3 stub controller
* Updated from global requirements

14.0.0.0b2
----------

* Skipping tests for location 'add', 'replace' on 'queued' images
* Editing release note for location update patch
* Change cfg.set\_defaults into cors.set\_defaults
* Restrict location updates to active, queued images
* Allow purging of records less than 1 day old
* Updated from global requirements
* Updated from global requirements
* Updated from global requirements
* Python3: fix glance.tests.functional.v2.test\_images
* Python 3: fix glance.tests.functional.v1.test\_misc
* Python3: fix glance.tests.functional.test\_scrubber
* Python3: fix logs/glance.tests.functional.test\_healthcheck\_middleware
* Python3: Fix glance.tests.functional.test\_glance\_replicator
* Python3: Fix glance.tests.functional.test\_bin\_glance\_cache\_manage
* Python 3: fix glance.tests.functional.db.test\_sqlalchemy
* Python3: fix test\_client\_redirects.py
* Add working functional tests to tox.ini
* Add alt text for badges
* Correct releasenote "Prepare for oslo.log 3.17.0"
* Prepare for oslo.log 3.17.0
* Show team and repo badges on README
* Handling HTTP range requests in Glance
* Remove uneccessary "in" from CONTRIBUTING.rst

14.0.0.0b1
----------

* Updated from global requirements
* IPv6 fix in Glance for malformed URLs
* Updated from global requirements
* Update api-ref with 409 response to image update
* Added overwrite warning for db\_export\_metadefs
* Allow specifying OS\_TEST\_PATH (to reduce tests ran)
* Do not use service catalog for cache client
* Added unit tests for disabled notifications in Notifier
* Updated from global requirements
* Updated from global requirements
* ping\_server: Always close the socket
* Remove mox3 in test-requirement.txt
* Correct url in doc source
* Updated from global requirements
* Add DeprecationWarning in test environments
* Updated from global requirements
* Update .coveragerc after the removal of openstack directory
* Updated from global requirements
* Drop unused import cfg
* Imported Translations from Zanata
* Image signature documentation modify barbican auth\_endpoint
* Add libvirt image metadef for hw\_pointer\_model
* Drop MANIFEST.in - it's not needed by pbr
* Add more resource url in readme.rst
* Updated from global requirements
* Cleanup newton release Notes
* Imported Translations from Zanata
* Fix Domain Model code example
* Imported Translations from Zanata
* Remove redundant word
* Enable release notes translation
* Updated from global requirements
* Extracted HTTP response codes to constants in tests
* Extracted HTTP response codes to constants
* Updated from global requirements
* Fix typo: remove redundant 'the'
* dev-docs: mark v1 as deprecated
* Updated from global requirements
* Updated from global requirements
* Correct releasenote for Ib900bbc05cb9ccd90c6f56ccb4bf2006e30cdc80
* Updated from global requirements
* [api-ref] configure LogABug feature
* Update CONTRIBUTING.rst
* Adding constraints around qemu-img calls
* Correct the order of parameters in assertEqual()
* Fixing inconsistency in Glance store names
* change the example URLs in api-ref for Glance
* Updated from global requirements
* api-ref: deprecate images v1 api
* Remove unused oslo.service requirement
* Update api-ref to add newly supported 'vhdx' disk format option
* Fix incorrect call for \_gen\_uuid
* Update description of image\_destroy method
* Update reno for stable/newton

13.0.0.0rc1
-----------

* Complete and update Newton release notes
* api-ref: add versions history
* Correctly point to Task Statuses from Tasks doc
* Updated from global requirements
* Fix cursive named arguments
* TrivialFix: Remove unused variable
* Fix nits from commit that introduces cursive
* Dev-docs: command in code block for refresh config
* Bump up Glance API minor version to 2.4
* [api-ref] Remove temporary block
* Add note to docs on release notes prelude section
* Fixed indentation
* Fix a small markup typo
* Remove self.\_\_dict\_\_ for formatting strings
* Keep consistent order for regenerated configs

13.0.0.0b3
----------

* Regenerate config files for Newton
* Improving help text for common-config opts
* Improving help text for data access API option
* Improving help text for Glance common-config opts
* Remove DB downgrade
* Release note for glance config opts
* Improve help text of glance config opts
* Attempt to not set location on non active or queued image
* Improving help text for WSGI server conf opts
* Use cursive for signature verification
* Updated from global requirements
* Improving help text for metadefs config option
* Improve the help text for registry client opts
* Improving help text for send\_identity\_headers opt
* Remove unused requirements
* Fix using filter() to meet python2,3
* Remove "Services which consume this" section
* Deprecate \`show\_multiple\_locations\` option
* Image signature base64 don't wrap lines
* Deprecate the Images (Glance) v1 API
* Improving help text of v1/v2 API & Registry opts
* Improve help text of scrubber daemon option
* Improving help text for RPC opt
* Improving help text for image conversion\_format
* Updated from global requirements
* Updated from global requirements
* TrivialFix: Remove cfg import unused
* Improving help text for store\_type\_preference opt
* Improving help text for Notifier opts
* Removing deprecated variable aliases from oslo\_messaging
* Improve help text of scrubber opts
* Correct link to image properties
* Use upper constraints for all jobs in tox.ini
* Fix five typos on doc
* Improve help text of quota opts
* Improve help text of registry server opts
* Get ready for os-api-ref sphinx theme change
* Add registry\_client\_opts to glance-cache.conf.sample
* Updated from global requirements
* Add CPU thread pinning to metadata defs
* Stop stack tracing on 404s
* Don't use config option sqlite\_db
* Index to generate doc page for refreshing-configs
* Add guideline to refresh config files shipped with source
* Add example for diff between assert true and equal
* Updated from global requirements
* Remove references of s3 store driver
* Add test class to versions tests
* change the example URLs in dev-docs for Glance
* Updated from global requirements
* Updated from global requirements
* Updated from global requirements
* Fix use of etc. in metadefs docs
* Improving help text for location\_strategy opt
* Use more specific asserts in unit tests
* Add a requirements guidelines to docs
* api-ref: correct versions response example
* Updated from global requirements
* Version negotiation api middleware to include v2.3
* Add release notes for newton-1
* Remove deprecated test utility
* Some migrations tests incorrectly ref S3 for Swift
* Remove extraneous ws in architecture docs
* Refresh some config files based on bug fixes
* Generate and include sample config as part of docs
* Wrap text in sample configuration files at 80
* Improving help text for proprty utils opts
* Updated from global requirements
* Improving help text for swift\_store\_utils opts
* cache\_manage: fix a print bug in exit main
* replicator: dump: Display more info
* replicator: livecopy: Display more info
* Updated from global requirements
* Add ova to container format doc to rally plugin
* Add 'vhdx' disk format
* Add 'ova' as a container\_format in dev-docs
* Update sqlalchemy-migrate url
* Improving help text for taskflow executor opts
* Minor tweak to release note documentation
* Replace OpenStack LLC with OpenStack Foundation
* api-ref: Replace image-update response example
* api-ref: Refresh images schemas
* Correcting description of image\_update API method
* Making Forbidden Exception action oriented
* Updated from global requirements
* Make docs copyright consistent
* Add LOG.warning to Disallowed minor changes
* WADL to RST migration (part 2 - images)
* Updated from global requirements
* Improving help text for context middleware opts

13.0.0.0b2
----------

* Add \_\_ne\_\_ built-in function
* Replace "LOG.warn(\_" with "LOG.(\_LW"
* Updated from global requirements
* Cleanup i18n marker functions to match Oslo usage
* Use oslo.context features
* glance-replicator: size: Handle no args better
* WADL to RST migration (part 2 - metadefs)
* Remove unused LOG to keep code clean
* Nitpick spell change
* Correct reraising of exception
* Perform a cleanup of configuring.rst
* Fix duplicated osprofile config for registry
* replicator: size: Display human-readable size
* Return 400 when name is more than 255 characters
* glance-replicator: compare: Show image name in msg
* Use MultiStrOpt instead of ListOpt for args
* Updated from global requirements
* Improving help text for public\_endpoint
* Add image signature verification metadefs
* Add signed images documentation
* Glance tasks lost configuration item conversion\_format
* Update to Glance Contributor's docs
* WADL to RST migration (part 2 - tasks)
* Updated from global requirements
* Updated from global requirements
* WADL to RST migration (part 1)
* Add documentation about generating release notes
* Change default policy to admin
* Fix bug Swift ACL which disappears on Glance v1 images
* Do not set header if checksum doesn't exist
* Updated from global requirements
* Fixes the use of dates when listing images
* Use olso\_log and delay string interpolation while logging
* Add in missing log hints
* Use http-proxy-to-wsgi middleware from oslo.middleware
* Updated from global requirements
* Imported Translations from Zanata
* Add a soft delete functionality for tasks
* Update man pages to current version and dates
* Incorrect title for Outbound Peak
* Updated from global requirements

13.0.0.0b1
----------

* Remove redundant store config from registry sample
* Remove TODOs from deprecated "sign-the-hash"
* Updated from global requirements
* Fix import of profiler options
* Add check to limit maximum value of max\_rows
* Updated from global requirements
* Updated from global requirements
* Remove verbose option from glance tests
* Raise exception when import without properties
* Excluded the 'visibility' from protected artifact fields
* Use OSprofiler options consolidated in lib itself
* Remove unnecessary executable permissions
* Updated from global requirements
* Normalize the options use singele quotes
* Updated from global requirements
* Updated from global requirements
* Allow tests to run when http proxy is set
* Correct some misspelt words in glance
* Clarify language used in glanceapi future section
* Images APIs: The Future
* Remove old \`run\_tests\` script
* Updated from global requirements
* Remove unnecessary executable privilge of unit test file
* Updated from global requirements
* Functional test comparing wrong items
* Contribution doc change for spec-lite
* Updated from global requirements
* Improve help text of image cache opts
* Remove deprecated "sign-the-hash" approach
* Imported Translations from Zanata
* Updated from global requirements
* Return BadRequest for 4 byte unicode characters
* Log when task is not configured properly
* Corrected section underline
* Give helpful error in tests if strace is missing
* Adding detailed alt text to images for accessibility
* Changed the spelling of opsrofiler to osprofiler
* Fix doc build if git is absent
* Increase max wait time, avoid racy failure in gate
* Updated from global requirements
* Add store opts to scrubber and cache sample conf
* Add wsgi options to the sample options
* Removed one extra enter key
* use os-testr instead of testr
* Updated from global requirements
* Modified message of exception and log
* Given space in between two words
* Use messaging notifications transport instead of default
* Updated from global requirements
* Update the Administrator guide links with new ones
* Imported Translations from Zanata
* Use roles attribute from oslo context
* Updated from global requirements
* Fix doc-strings warnings and errors
* Add 'Documentation' section to 'Contributing' docs

12.0.0
------

* Imported Translations from Zanata
* Fix typos in Glance files
* Imported Translations from Zanata
* Fix db purge type validation
* Imported Translations from Zanata
* Copy the size of the tag set
* Changes behaviour when an image fails uploading
* Imported Translations from Zanata
* Handle SSL termination proxies for version list
* Imported Translations from Zanata
* Imported Translations from Zanata
* Imported Translations from Zanata
* Fixed typos in two comments
* Update reno for stable/mitaka
* Update .gitreview for stable/mitaka

12.0.0.0rc1
-----------

* Fix possible race conditions during status change
* fix docstring warnings and errors
* revert warnerrors before gate breaks
* Fix link to <configuring> document
* Imported Translations from Zanata
* Update the configuration doc
* Catch exceptions.HasSnapshot() from delete image in rbd driver
* Imported Translations from Zanata
* register the config generator default hook with the right name
* Reject bodies for metadef commands
* Remove unused enable\_v3\_api config option
* glance-manage db purge failure for limit
* Imported Translations from Zanata
* Remove state transition from active to queued
* Imported Translations from Zanata
* Updated the wording in the database architecture docs
* Test tag against schema to check length
* Update the config files
* Imported Translations from Zanata
* Adds virtual\_size to notifications
* Update configuring of Cinder store
* Add debug testenv in tox
* Fix levels of Swift configuration documentation
* no module docs generated
* Deprecate use\_user\_token parameter
* Creating or updating a image member in a list causes 500
* Updated from global requirements
* Updating comment in tests/unit/test\_migrations.py
* Fix update all props when you delete image

12.0.0.0b3
----------

* Fix location update
* Moved CORS middleware configuration into oslo-config-generator
* Use assertGreater/Less/Equal instead of assertTrue(A \* B)
* New metadata definitions from CIM
* Add support for DSA signatures
* Fix message formatting in glance-manage purge
* Updated from global requirements
* Remove unused pngmath sphinx extension
* Do not use constraints for venv
* Fix BaseException.message deprecation warnings
* Remove py33 from tox envlist
* Resolve i18n and Sphinx issues in signature\_utils
* Add support for ECC signatures
* Return 204 rather than 403 when no image data
* Move bandit into pep8
* Updated from global requirements
* Support importing OVA/OVF package to Glance
* Always use constraints
* Updated from global requirements
* Include registry\_client\_\* options in glance-scrubber.conf
* Python 3: fix a few simple "str vs bytes" issues
* remove redundant "#!/usr/bin/env python" header
* Encourage usage of identity API v3
* Python 3: fix glance.tests.functional.db.simple
* Reuse encodeutils.to\_utf8()
* Fix OpenSSL DeprecationWarning on Python 3
* Added support new v2 API image filters
* Add sign-the-data signature verification
* Stop gridfs driver support
* Updated from global requirements
* Set self and schema to readOnly
* Make sure the generated glance-api.conf.sample is always the same
* Add unit test for default number of workers
* Replace assertRaisesRegexp with assertRaisesRegex
* Reuse jsonutils.dump\_as\_bytes()
* Do not log sensitive data
* Cache documentation about differences in files
* Tolerate installation of pycryptodome
* grammar correction in basic architecture file
* Promote log message to exception level on artifact load failure
* Allow mutable argument to be passed to BinaryObject artifacts
* Include version number into glare factory path in paste
* Fix 500 status code when we add in "depend\_on" yourself
* Unallowed request PATCH when work with blob
* Use keystoneclient functions to receive endpoint
* Drop python 2.6 support
* Move Glance Artifact Repository API to separate endpoint
* Imported Translations from Zanata
* Imported Translations from Zanata
* clean up auto-generated docs for configuration options
* Update the home page
* Updated from global requirements
* Misspelling in message
* v2 - "readOnly" key should be used in schemas
* Prevent user to remove last location of the image
* Fix \_wait\_on\_task\_execution()
* Updating message for conversion\_format cfg\_opt
* Fix setup.cfg
* Replace exit() by sys.exit()
* Change Metadefs OS::Nova::Instance to OS::Nova::Server
* Change exception format checks in artifact tests
* Imported Translations from Zanata
* Remove glance\_store specific unit tests
* Encode headers to launch glance v2 on mod\_wsgi
* Make the task's API admin only by default
* No need to have async executor fetching be a contextmanager
* Updated from global requirements
* Python 3: fix glance.tests.unit
* Add storage\_policy VMware driver option for flavors
* Remove unneeded glance unit test assert calls
* utils: remove PrettyTable custom class in favor of the eponym libary
* Hacking checks for not using dict iteration calls
* Add note in comment where upstream taskflow change is
* Fix for Image members not generating notifications
* Updated from global requirements
* Generate page of all config options in docs
* Use oslo.utils exception encoding util
* Add hacking check to ensure not use xrange()
* Updated from global requirements
* Fix help command in cache manange and replicator
* Add properties\_target to Instance SW metadefs
* Simplify taskflow engine loading
* Allow image-list if access to attrs is forbidden
* [docs] Add Domain model implementation sub-section
* Drop dict.iterkeys() for python3
* Fix re-adding deleted members to an image in v1
* Replace xrange() with six.moves.range()

12.0.0.0b2
----------

* Add metadefs for Cinder volume type configuration
* Python3: Replace dict.iteritems with dict.items
* Enhance description of instance-uuid option for image-create
* Make cache config options clearer
* Imported Translations from Zanata
* Update links for CLI Reference
* Python3: fix operations of dict keys()
* Implement trust support for api v2
* Imported Translations from Zanata
* Fix the wrong options in glance-api and glance-registry confs
* Do not use api-paste.ini osprofiler options
* Update the cache documentation
* Updated from global requirements
* Catch UnsupportedAlgorithm exceptions
* Add functionality to define requests without body
* Updated from global requirements
* Use six.moves.reduce instead of builtin reduce
* Fixing the deprecated library function
* Remove Indices and tables section
* Remove unused logging import
* Fix Glance doesn't catches UnicodeDecodeError exception
* Updated from global requirements
* assertIsNone(val) instead of assertEqual(None,val)
* Fix glance doesn't catches exception NotFound from glance\_store
* Deprecated tox -downloadcache option removed
* Wait all wsgi server completion for worker exit
* Fix model sync for SQLite
* Update the cache middleware flavor guideline
* Add sign-the-hash deprecation warning
* Add db purge command
* Replace oslo\_utils.timeutils
* Add missing CPU features to Glance Metadata Catalog
* Updated from global requirements
* Remove iso8601 dependency
* Assert problems in Glance raised by Bandit
* Import i18n functions directly
* Validate empty location value for v1 api
* Updated from global requirements
* Added CORS support to Glance
* Capitalize 'glance' in db.rst
* Stop using tearDown in v1/test\_api.py
* Fix return 200 status code when we operate with nonexistent property
* Fix default value with postgreSQL
* Rename glance-store to glance\_store
* Run py34 env first when launching tests
* Move store config opt to glance\_store section
* Remove artifact entry point
* Remove version from setup.cfg
* Add the Docker container format
* Change the format of some inconsistent docstring

12.0.0.0b1
----------

* Updated from global requirements
* Automated bandit checks in glance
* Port \_validate\_time() to Python 3
* Updated from global requirements
* Support Unicode request\_id on Python 3
* Unicode fix in BaseClient.\_do\_request() on py3
* Fix incorrect task status with wrong parameter
* Document contribution guidelines
* Updated from global requirements
* Fix glance.tests.unit.v1.test\_registry\_client
* Fix sample Rally plugin
* force releasenotes warnings to be treated as errors
* V1: Fix bad dates returning 500
* Fix 500 error when filtering with specified invalid operator
* Fix 500 error when filtering by 'created\_at' and 'updated\_at'
* Update os.path.remove as it does not exist
* Change the default notification exchange to glance
* Add documentation for configuring disk\_formats
* V1: Stop id changes after the image creation
* Format log messages correctly
* [docs] Update description of Glance-Swift conf options
* Disallow user modifing ACTIVE\_IMMUTABLE of deactivated images
* [docs] Update Glance architecture image
* test: make enforce\_type=True in CONF.set\_override
* OpenStack typo
* Support new v2 API image filters
* Remove anyjson useless requirement
* Python3: fix glance.tests.unit.v2.test\_registry\_client
* Location add catch bad Uri
* [docs] delete duplicated image\_status\_transition.png
* Reactivating admin public image returns 500
* Python3: fix glance.tests.unit.test\_migrations
* Python3: fix test\_image\_data\_resource
* Remove todo to remove /versions
* Python3: fix test\_registry\_api
* Updated from global requirements
* Fix typos in configuring.rst
* Python3: fix glance.tests.unit.v2.test\_images\_resource
* add "unreleased" release notes page
* Python 3: Fix glance.tests.unit.v2.test\_tasks\_resource
* Python 3: fix test\_image\_members\_resource
* Remove default=None for config options
* Update style for signature\_utils class
* Add -constraints for CI jobs
* Add a deprecation warning to the DB downgrade
* Remove unused exceptions from glance
* Add tasks info to glance documentation
* Add reno for release notes management
* Add subunit.log to gitignore
* Updated from global requirements
* Fix content type for Forbidden exception
* Port v1.test\_registry\_api to Python 3
* Remove requests to example.com during unit testing
* Port signature\_utils to Python 3
* Imported Translations from Zanata
* Rename semantic-version dep to semantic\_version
* Port script utils to Python 3
* Use dict comprehension
* Typo fix
* Updated from global requirements
* Port test\_cache\_manage to Python 3
* Port test\_wsgi to Python 3
* Updated from global requirements
* Fix incorrect Glance image metadata description
* Rename glance-store dep to glance\_store
* Remove glance\_store from exta requirements
* Port async tests to Python 3
* Fixed registry invalid token exception handling
* Updated from global requirements
* Add more tests which pass on Python 3
* Show the file name when there is an error loading an image metadef file
* Remove the duplicate file path created by sphinx build
* [docs] Adds new image status - deactivated
* Cause forbidden when deactivating image(non-admin)
* Updated from global requirements
* Don't allow queries with 'IN' predicate with an empty sequence
* utils: use oslo\_utils.uuidutils
* utils: remove unused functions in glance.utils
* Bodies that are not dicts or lists return 400
* Pass CONF to logging setup
* Fix 500 error when filtering by invalid version string
* Fix error when downloading image status is not active

11.0.0
------

* Add 'deactivated' status to image schema
* Allow owner to be set on image create
* Decrease test failure if second changes during run
* config: remove default lockutils set
* Catch InvalidImageStatusTransition error
* Port rpc and wsgi to Python 3
* Refactoring exceptions
* Fix glance ignored a headers when created artifact
* Add ability to specify headers in PUT/PATCH request in functional tests
* Fix 500 error when we specify invalid headers when work with blob/bloblist
* fix a typo in show\_multiple\_locations help message
* Updated from global requirements
* Add testresources and testscenarios used by oslo.db fixture
* Add testresources and testscenarios used by oslo.db fixture
* Add 'deactivated' status to image schema
* Fix the bug of "Error spelling of a word"
* Imported Translations from Zanata
* Fix 409 response when updating an image by removing read-only property

11.0.0.0rc2
-----------

* Imported Translations from Zanata
* Updated from global requirements
* Port api test\_common to Python 3
* An explicit check for the presence of a property
* Cleanup chunks for deleted image if token expired
* Download forbidden when get\_image\_location is set
* Download forbidden when get\_image\_location is set
* tell pbr to tell sphinx to treat warnings as errors
* add placeholder to ensure \_static directory exists
* add the man pages to the toctree
* escape underline introducing a spurrious link reference
* do not indent include directives
* add missing document to toctree
* fix restructuredtext formatting errors
* Catch NotAuthenticated exception in import task
* Cleanup chunks for deleted image if token expired
* Catch NotAuthenticated exception in import task
* Imported Translations from Zanata
* Return missing authtoken options
* Change string generation mechanism for info logging
* Add Large pages meta definition
* Return missing authtoken options
* Fix mutable defaults in tests
* Imported Translations from Zanata

11.0.0.0rc1
-----------

* Open Mitaka development
* Cleanup of Translations
* Remove redundant requirements.txt from tox
* Add swiftclient to test-requirements
* Updated from global requirements
* Update Glance example configs to reflect Liberty
* Imported Translations from Zanata
* Fix server start ping timeout for functional tests
* Prevent image status being directly modified via v1
* Fixed the output of list artifacts API calls
* Change ignore-errors to ignore\_errors
* Prevent extraneous log messages and stdout prints
* [Glance Developer Guide] Grammar edits
* utils: stop building useless closure
* Remove \`openstack' directory
* Imported Translations from Zanata
* Fixes the possibility of leaving orphaned data
* Add missing function '\_validate\_limit'
* Fix wrong parameters order in Task
* Remove WARN log message from version\_negotiation
* Fix order of arguments in assertEqual
* Scrub images in parallel
* Make task\_time\_to\_live work
* Incorrect permissions on database migration file
* Add \_member\_ to property-protections-roles.conf.sample
* Domain model section
* Add unit tests for signature\_utils class
* Scrubber to communicate with trustedauth registry
* Corrected hyperlink in metadefs documentation
* Remove pointless tests comparing opts against list
* Remove old traces of the oslo-incubator
* Updated from global requirements
* Use oslo utils to encode exception messages
* clean up requirements

11.0.0.0b3
----------

* Disable v3 API by default
* Glance metadef tables need unique constraints
* Add image signing verification
* Don't return 300 when requesting /versions
* Updated from global requirements
* Use min and max on IntOpt option types
* Fixed non-owner write-access to artifacts
* Remove WritableLogger from wsgi server
* Allow to filter artifacts by range
* Fixed version unequality artifact filtering
* Artifacts are now properly filtered by dict props
* Fixed an HTTP 500 on artifact blob upload
* Port rally scenario plugin to new Rally framework
* Use stevedore directive to document plugins
* Catch update to a non-existent artifact property
* Fix spelling mistake in test\_images.py
* Change URL to End User Guide
* Fix URLs to admin-guide-cloud
* reuse the deleted image-member before create a new image-member
* Imported Translations from Transifex
* Add CPU Pinning in metadata definitions
* Fix image owner can't be changed issue in v2
* Port common.utils to Python 3
* Port store image to Python 3
* Port replicator to Python 3
* Port glance.db to Python 3
* Port image cache to Python 3
* Fix Python 3 issues in glance.tests.unit.common
* Don't use slashes for long lines - use parentheses instead
* Updated from global requirements
* Imported Translations from Transifex
* Don't import files with backed files
* Use oslo\_config PortOpt support
* Setting default max\_request\_id\_length to 64
* Add mechanism to limit Request ID size
* return request\_id in case of 500 error
* Remove no longer used parameter (FEATURE\_BLACKLIST)
* Fixed few typos
* Correct the indentation on a few functions
* Use dictionary literal for dictionary creation
* List creation could be rewritten as a list literal
* Remove duplicate name attribute
* Incorrect variable name is declared
* Fix Request ID has a double 'req-' at the start
* Fix few typos in glance
* Updated from global requirements
* Fix 501 error when accessing the server with a non-existent method
* Imported Translations from Transifex
* Fix existing migrations to create utf-8 tables for MySQL DB
* Remove Catalog Index Service
* Fix error message's format in image\_member
* Include metadefs files in all packages

11.0.0.0b2
----------

* Move to using futurist library for taskflow executors
* Updated from global requirements
* Glance to handle exceptions from glance\_store
* Keeping the configuration file with convention
* Fix Python 3 issues in glance.tests.unit
* Allow ramdisk\_id, kernel\_id to be null on schema
* Remove duplicate string
* Imported Translations from Transifex
* Update glance\_store requirement to 0.7.1
* Fix Rally job failure
* Make utf8 the default charset for mysql
* Use oslo\_utils.encodeutils.exception\_to\_unicode()
* Updated from global requirements
* Remove H302,H402,H904
* add annotation of param
* Adds a rados\_connect\_timeout description
* Fix the document bug in part of digest\_algorithm
* Purge dead file-backed scrubber queue code
* Correct reference to VC as vCenter
* Remove usage of assert\_called\_once in mocks
* Rationalize test asserts
* Add .eggs/\* to .gitignore
* Refactoring of image-members v2 API implementation
* Improve code readability in functional test for the WSGIServer
* Make 'id' a read only property for v2
* Healthcheck Middleware
* Updated from global requirements
* Functional of the HTTPclient was put in own method
* Fix wrong check when create image without data
* Remove unneeded OS\_TEST\_DBAPI\_ADMIN\_CONNECTION
* glance metadef resource-type-associate fails in postgresql
* Change default digest\_algorithm value to sha256
* Update requirements
* Remove unused oslo incubator files
* Remove unnecessary mixin from artifact domain model
* Adds os\_admin\_user to common OS image prop metadef
* Validate size of 'min\_ram' and 'min\_disk'
* Remove unused imported marker functions
* Fix duplicate unique constraint in sqlite migration
* Fix broken URL to docs.openstack.org
* Remove unnecessary executable permission
* Fix the db\_sync problem in 039 for db2
* Imported Translations from Transifex
* Fix OSProfiler exception when is enabled
* Add an API call to discover the list of available artifact types

11.0.0.0b1
----------

* Provide extra parameter for FakeDB
* Switch to oslo.service
* tests: don't hardcode strace usage
* Fix tox -e py34
* Imported Translations from Transifex
* Typo fix
* Drop use of 'oslo' namespace package
* Update version for Liberty

11.0.0a0
--------

* Add client\_socket\_timeout option
* Switch from MySQL-python to PyMySQL
* Fix grammar in installation documentation
* Use ConfigFixture to ensure config settings are reverted
* Change status code from 500 to 400 for image update request
* Added test for "delete image member for public image"
* Pass environment variables of proxy to tox
* Add info how to avoid issues with token expiration
* Fix Python 3 issues
* Cleanup TODO in glance/gateway.py for elasticsearch being unavailable
* Fix DbError when image params are out of range
* REST API layer for Artifact Repository
* Remove duplicate creation of use\_user\_token
* Correct bad documentation merge
* Sync with latest oslo-incubator
* Fix HTTP 500 on NotAuthenticated in registry (v2)
* Domain layer for Artifact Repository
* Refactoring registry tests for v2
* Return empty str for permissive, none, properties
* Fix typo in the code
* Fixed error message for negative values of min\_disk and min\_ram
* Changes in rally-jobs/README.rst
* Make create task as non-blocking
* Mark task as failed in case of flow failure
* Add VMDK as a conversion format to convert flow
* Make properties roles check case-insensitive
* Imported Translations from Transifex
* Change generic NotFound to ImageNotFound exception
* Remove is\_public from domain layer
* Leverage dict comprehension in PEP-0274
* Fix Server.start() on Python 3.4
* Use six.moves to fix imports on Python 3
* Imported Translations from Transifex
* Bug : tox -egenconfig failure (no glance-search.conf)
* Replace types.NameType with name
* Fix test\_opts to not resolve requirements
* Fix logging task id when task fails
* Fix typo in documentation
* rpc: remove wrong default value in allowed exceptions
* rpc: clean JSON serializer, remove strtime() usage
* Set filesystem\_store\_datadir in tests
* Taskflow engine mode should be parallel in sample conf
* VMware: vmware\_ostype should be enum
* VMware: add VirtualVmxnet3 to hw\_vif\_model
* Fixed glance.tests.unit.test\_artifacts\_plugin\_loader unit-test
* Fix delayed activation without disk and containers formats
* Save image data after setting the data
* Make sure the converted image is imported
* Updated from global requirements
* Imported Translations from Transifex
* Register oslo.log's config options in tests
* Remove string formatting from policy logging
* Remove unneeded setup hook from setup.cfg
* Drop use of 'oslo' namespace package

2015.1.0
--------

* Metadef JSON files need to be updated
* Plugin types are not exposed to the client
* v1 API should be in SUPPORTED status
* Read tag name instead of ID
* v1 API should be in SUPPORTED status
* API calls to Registry now maintain Request IDs
* Updated from global requirements
* Remove ordereddict from requirements
* Release Import of Translations from Transifex
* Glance database architecture section
* update .gitreview for stable/kilo
* Plugin types are not exposed to the client
* Revert "Reduce DB calls when getting an image"
* Read tag name instead of ID
* Metadef JSON files need to be updated
* Fix wrong docstring by copy-paste
* Add logging when policies forbid an action
* Remove non-ascii characters in glance/doc/source/architecture.rst
* Fix typos in glance/doc/source/configuring.rst
* Correct text in error response

2015.1.0rc1
-----------

* Fixes glance-manage exporting meta definitions issue
* Catch UnknownScheme exception
* Refactor API function test class
* Move elasticsearch dep to test-requirements.txt
* Update openstack-common reference in openstack/common/README
* glance-manage output when ran without any arguments
* Reduce DB calls when getting an image
* Open Liberty development
* Zero downtime config reload (glance-control)
* Imported Translations from Transifex
* Glance cache to not prune newly cached images
* glance-manage db load\_metadefs does not load all resource\_type\_associations
* Fix intermittent unit test failures
* Fix intermittent test case failure due to dict order
* Imported Translations from Transifex
* A mixin for jsonpatch requests validation
* Artifact Plugins Loader
* Declarative definitions of Artifact Types
* Creating metadef object without any properties
* Zero downtime config reload (log handling)
* Database layer for Artifact Repository
* Catalog Index Service - Index Update
* Catalog Index Service
* Zero downtime config reload (socket handling)
* Typo in pylintrc file
* Fix metadef tags migrations
* Update documentation for glance-manage
* Fix common misspellings

2015.1.0b3
----------

* Replace assert statements with proper control-flow
* Remove use of contextlib.nested
* Use graduated oslo.policy
* oslo: migrate namespace-less import paths
* Fix typo in rpc controller
* Fixes typo in doc-string
* wsgi: clean JSON serializer
* Remove scrubber cleanup logic
* use is\_valid\_port from oslo.utils
* Add ability to deactivate an image
* Remove deprecated option db\_enforce\_mysql\_charset
* Raise exception if store location URL not found
* Fix missing translations for error and info
* Basic support for image conversion
* Extend images api v2 with new sorting syntax
* Add the ability to specify the sort dir for each key
* Move to graduated oslo.log module
* Provide a way to upgrade metadata definitions
* Pass a real image target to the policy enforcer
* Glance basic architecture section
* Fix typo in configuration file
* Updated from global requirements
* Add sync check for models\_metadef
* Notifications for metadefinition resources
* Update config and docs for multiple datastores support
* Avoid usability regression when generating config
* Glance Image Introspection
* Add capabilities to storage driver
* Updated from global requirements
* Zero downtime configuration reload
* Add operators to provide multivalue support
* Remove the eventlet executor
* SemVer utility to store object versions in DB
* Switch to latest oslo-incubator
* Use oslo\_config choices support
* Fix the wrong format in the example
* Remove en\_US translation
* Git ignore covhtml directory
* db\_export\_metadefs generates inappropriate json files
* Synchronising oslo-incubator service module
* Unify using six.moves.range rename everywhere
* Updated from global requirements
* Glance returns HTTP 500 for image download
* Remove boto from requirements.txt
* Unbreak python-swiftclient gate
* Eventlet green threads not released back to pool
* Imported Translations from Transifex
* Removes unnecessary assert
* Prevents swap files from being found by Git
* Add BadStoreConfiguration handling to glance-api
* Remove redundant parentheses in conditional statements
* Make sure the parameter has the consistent meaning
* Image data remains in backend for deleted image
* Remove is\_public from reserved attribute in v2
* unify some messages
* Typos fixed in the comments
* The metadef tags create api does not match blue-print
* Clarified doc of public\_endpoint config option
* Add detail description of image\_cache\_max\_size
* Updated from global requirements

2015.1.0b2
----------

* Add Support for TaskFlow Executor
* Include readonly flag in metadef API
* Fix for CooperativeReader to process read length
* Software Metadata Definitions
* Updated from global requirements
* Rewrite SSL tests
* Replace snet config with endpoint config
* Simplify context by using oslo.context
* Handle empty request body with chunked encoding
* Update vmware\_adaptertype metadef values
* Typos fixed in the comments
* Updated from global requirements
* Redundant \_\_init\_\_ def in api.authorization.MetadefTagProxy
* Make digest algorithm configurable
* Switch to mox3
* Remove argparse from requirement
* Remove optparse from glance-replicator
* Eliminate shell param from subprocesses in tests
* Remove test dependency on curl
* Cleanup chunks for deleted image that was 'saving'
* remove need for netaddr
* Fix copy-from when user\_storage\_quota is enabled
* remove extraneous --concurrency line in tox
* SQL scripts should not manage transactions
* Fixes line continuations
* Upgrade to hacking 0.10
* Removed python-cinderclient from requirements.txt
* Move from oslo.db to oslo\_db
* Move from oslo.config to oslo\_config
* Improve documentation for glance\_stores
* Fix reference to "stores" from deprecated name
* Move from oslo.utils to oslo\_utils
* Updated from global requirements
* Updated from global requirements
* Prevent file, swift+config and filesystem schemes
* Simplify usage of str.startswith
* Adding filesystem schema check in async task
* Fix spelling typo
* Fix rendering of readme document
* Imported Translations from Transifex
* Add swift\_store\_cacert to config files and docs
* Add latest swift options in glance-cache.conf
* Fix document issue of image recover status
* rename oslo.concurrency to oslo\_concurrency
* Provide a quick way to run flake8
* Fix 3 intermittently failing tests
* Removed obsolete db\_auto\_create configuration option
* Fix client side i18n support for v1 api
* Move default\_store option in glance-api.conf
* Removes http-requests to glance/example.com in glance test
* Remove \_i18n from openstack-common
* Adds the ability to sort images with multiple keys
* Add sort key validation in v2 api
* Fixes typo: glance exception additional dot
* Allow $OS\_AUTH\_URL environment variable to override config file value
* Bump API version to 2.3
* Replace '\_' with '\_LI', '\_LE', '\_LW', '\_LC'

2015.1.0b1
----------

* Removes unused modules: timeutils and importutils
* Generate glance-manage.conf
* Imported Translations from Transifex
* Adding Metadef Tag support
* Removed unnecessary dot(.) from log message
* Using oslo.concurrency lib
* Update config and docs for Multiple Containers
* To prevent client use v2 patch api to handle file and swift location
* Updated from global requirements
* Use testr directly from tox
* Remove reliance on import order of oslo.db mods
* Remove openstack.common.gettextutils module
* Fix typo in common module
* Fix and add a test case for IPv6
* Start server message changed
* Fix getaddrinfo if dnspython is installed
* Workflow documentation is now in infra-manual
* Allow None values to be returned from the API
* Expose nullable fields properties
* Allow some fields to be None
* Update glance.openstack.common.policy and cleanup
* A small refactoring of the domain
* Updated from global requirements
* Disable osprofiler by default
* Work toward Python 3.4 support and testing
* Correct GlanceStoreException to provide valid message - Glance
* Remove Python 2.6 classifier
* Add ModelSMigrationSync classes
* Alter models and add migration
* No 4 byte unicode allowed in image parameters
* Update rally-jobs files
* Move from using \_ builtin to using glance.i18n \_
* Change Glance to use i18n instead of gettextutils
* Raising glance logging levels
* Imported Translations from Transifex
* Do not use LazyPluggable
* metadef modules should only use - from wsme.rest import json
* Wrong order of assertEquals args(Glance)
* Removal of unnecessary sample file from repository
* Upgrade tests' mocks to match glance\_store
* Remove exception declarations from replicator.py
* Typo correction of the prefix value in compute-host-capabilities
* Replace custom lazy loading by stevedore
* vim ropeproject directories added to gitignore
* Initiate deletion of image files if the import was interrupted
* Raise an exception when quota config parameter is broken
* Fix context storage bug
* Ignore Eric IDE files and folders in git
* Make RequestContext use auth\_token (not auth\_tok)
* Swift Multi-tenant store: Pass context on upload
* Use unicode for error message
* change default value for s3\_store\_host
* remove url-path from the default value of s3\_store\_host
* Complete the change of adding public\_endpoint option
* Update the vmware\_disktype metadefs values
* Add config option to override url for versions
* Separate glance and eventlet wsgi logging
* Remove openstack.common.test
* Remove modules from openstack-common.conf
* Improve error log for expired image location url
* Handle some exceptions of image\_create v2 api
* Remove eventlet\_hub option
* Adds openSUSE in the installing documentation
* Glance scrubber should page thru images from registry
* Add logging to image\_members and image\_tags
* Update glance.openstack.common

2014.2
------

* Fix options and their groups - etc/glance-api.conf
* Fix options and their groups - etc/glance-api.conf
* Adjust authentication.rst doc to reference "identity\_uri"
* Can not delete images if db deadlock occurs
* Reduce extraneous test output
* Isolate test from environment variables
* Fix for adopt glance.store library in Glance
* Adjust authentication.rst doc to reference "identity\_uri"

2014.2.rc2
----------

* Use identity\_uri instead of older fragments
* Prevent setting swift+config locations
* Metadef schema column name is a reserved word in MySQL
* Remove stale chunks when failed to update image to registry
* GET property which name includes resource type prefix
* g-api raises 500 error while uploading image
* Fix for Adopt glance.store library in Glance
* Update Metadefs associated with ImagePropertiesFilter
* updated translations
* Use ID for namespace generated by DB
* Metadef Property and Object schema columns should use JSONEncodedDict
* Add missing metadefs for shutdown behavior
* Update driver metadata definitions to Juno
* Mark custom properties in image schema as non-base
* Specify the MetadefNamespace.namespace column is not nullable
* Make compute-trust.json compatible with TrustFilter
* Include Metadata Defs Concepts in Dev Docs
* Nova instance config drive Metadata Definition
* Add missing metadefs for Aggregate Filters
* Updated from global requirements

2014.2.rc1
----------

* Imported Translations from Transifex
* Add specific docs build option to tox
* Add documentation for a new storage file permissions option
* Updated from global requirements
* Remove db\_enforce\_mysql\_charset option for db\_sync of glance-manage
* Fix assertEqual arguments order
* Prevent setting swift+config locations
* Remove stale chunks when failed to update image to registry
* Use specific exceptions instead of the general MetadefRecordNotFound
* Metadef schema column name is a reserved word in MySQL
* Fix for Adopt glance.store library in Glance
* GET property which name includes resource type prefix
* Incorrect parameters passed
* g-api raises 500 error while uploading image
* Minor style tidy up in metadata code
* Metadef Property and Object schema columns should use JSONEncodedDict
* Updated from global requirements
* Use ID for namespace generated by DB
* Switch to oslo.serialization
* Switch to oslo.utils
* Imported Translations from Transifex
* Add missing metadefs for shutdown behavior
* hacking: upgrade to 0.9.x serie
* Fix bad header bug in glance-replicator
* Run tests with default concurrency 0
* Refactor test\_migrations module
* Include Metadata Defs Concepts in Dev Docs
* Open Kilo development
* Mark custom properties in image schema as non-base
* Fix missing space in user\_storage\_quota help message
* Fix glance V2 incorrectly implements JSON Patch'add'
* Make compute-trust.json compatible with TrustFilter
* replace dict.iteritems() with six.iteritems(dict)
* Enforce using six.text\_type() over unicode()
* Update driver metadata definitions to Juno
* Remove uses of unicode() builtin
* Fixes Error Calling GET on V1 Registry
* Enabling separated sample config file generation
* Update Metadefs associated with ImagePropertiesFilter
* Fixes logging in image\_import's main module
* Refactor metadef ORM classes to use to\_dict instead of as\_dict
* Stop using intersphinx
* Just call register\_opts in tests
* Replaces assertEqual with assertTrue and assertFalse
* Block sqlalchemy-migrate 0.9.2
* Specify the MetadefNamespace.namespace column is not nullable
* Add missing metadefs for Aggregate Filters
* Nova instance config drive Metadata Definition
* Improve OS::Compute::HostCapabilities description
* Sync glance docs with metadefs api changes
* Change open(file) to with block
* Fix CommonImageProperties missing ":"
* Fix VMware Namespace capitalization & description
* Imported Translations from Transifex
* Duplicated image id return 409 instead of 500 in API v2
* Glance API V2 can't recognize parameter 'id'
* API support for random access to images
* Adopt glance.store library in Glance
* Adds missing db registry api tests for Tasks
* warn against sorting requirements
* Introduces eventlet executor for Glance Tasks

2014.2.b3
---------

* Glance Metadata Definitions Catalog - API
* ignore .idea folder in glance
* Glance Metadata Definitions Catalog - Seed
* Glance Metadata Definitions Catalog - DB
* Restrict users from downloading protected image
* Syncing changes from oslo-incubator policy engine
* Use identity\_uri instead of older fragments
* Fix legacy tests using system policy.json file
* Improve Glance profiling
* Fix collection order issues and unit test failures
* Check on schemes not stores
* Replacement mox by mock
* Imported Translations from Transifex
* Log task ID when the task status changes
* Changes HTTP response code for unsupported methods
* Enforce image\_size\_cap on v2 upload
* Do not assume order of images
* Ensure constant order when setting all image tags
* Fix bad indentation in glance
* Use @mock.patch.object instead of mock.MagicMock
* Adding status field to image location -- scrubber queue switching
* Bump osprofiler requirement to 0.3.0
* Fix migration on older postgres
* Fix rally performance job in glance
* Integrate OSprofiler and Glance
* Fix image killed after deletion
* VMware store: Use the Content-Length if available
* Fix RBD store to use READ\_CHUNKSIZE
* Trivial fix typo: Unavilable to Unavailable
* Quota column name 'key' in downgrade script
* Do not log password in swift URLs in g-registry
* Updated from global requirements
* Use \`\_LW\` where appropriate in db/sqla/api
* Log upload failed exception trace rather than debug
* Decouple read chunk size from write chunk size
* Enable F821 check: undefined name 'name'

2014.2.b2
---------

* Security hardening: fix possible shell injection vulnerability
* Move to oslo.db
* Catch exception.InUseByStore at API layer
* Fixes the failure of updating or deleting image empty property
* Adding status field to image location -- scrubber changes
* Also run v2 functional tests with registry
* Refactoring Glance logging lowering levels
* Set defaults for amqp in glance-registry.conf
* Fix typo in swift store message
* Add a \`\_retry\_on\_deadlock\` decorator
* Use auth\_token from keystonemiddleware
* Allow some property operations when quota exceeded
* Raising 400 Bad Request when using "changes-since" filter on v2
* Moving eventlet.hubs.use\_hub call up
* Adding status field to image location -- domain and APIs changes
* Add task functions to v2 registry
* Changing replicator to use openstack.common.log
* Fix unsaved exception in v1 API controller
* Pass Message object to webob exception
* Some exceptions raise UnicodeError
* Handle session timeout in the VMware store
* Some v2 exceptions raise unicodeError
* Resolving the performance issue for image listing of v2 API on server
* Switch over oslo.i18n
* Fix typo in comment
* Updated from global requirements
* Imported Translations from Transifex
* Updated from global requirements
* Raise NotImplementedError instead of NotImplemented
* Fix unsaved exception in store.rbd.Store.add()
* Fix docstrings in enforce() and check() policy methods
* Added an extra parameter to the df command
* Add CONTRIBUTING.rst
* Imported Translations from Transifex
* Use (# of CPUs) glance workers by default
* Sync processutils and lockutils from oslo with deps
* Document registry 'workers' option
* Removing translation from debug messages
* Unifies how BadStoreUri gets raised and logged
* Fix lazy translation UnicodeErrors
* Changing Sheepdog driver to use correct configuration function
* Implemented S3 multi-part upload functionality
* Log swift container creation
* Synced jsonutils and its dependencies from oslo-incubator
* Remove user and key from location in swift
* Updated from global requirements
* Changed psutil dep. to match global requirements
* Add pluging sample for glance gate
* Fixes v2 return status on unauthorized download
* Update documentation surrounding the api and registry servers
* Do not call configure several times at startup
* Move \`location\`'s domain code out of glance.store
* sync oslo incubator code
* notifier: remove notifier\_strategy compat support
* notifier: simply notifier\_strategy compat support
* colorizer: use staticmethod rather than classmethod
* Improved coverage for glance.api.\*
* Assign local variable in api.v2.image\_data

2014.2.b1
---------

* Use df(1) in a portable way
* Add test for no\_translate\_debug\_logs hacking check
* Add hacking checks
* replace dict.iteritems() with six.iteritems(dict)
* make uploading an image as public admin only by default
* remove default=None for config options
* Bump python-swiftclient version
* TaskTest:test\_fail() should use asserIstNone
* debug level logs should not be translated
* use /usr/bin/env python instead of /usr/bin/python
* Remove all mostly untranslated PO files
* Remove duplicated is\_uuid\_like() function
* fixed typos found by RETF rules in RST files
* Use safe way through "with" statement to work with files
* Clean up openstack-common.conf
* Removing duplicate entry from base\_conf
* Use safe way through "with" statement to work with files
* Use Chunked transfer encoding in the VMware store
* Ensures that task.message is of type unicode
* Replace unicode() for six.text\_type
* Prevent creation of http images with invalid URIs
* Fixed a handful of typos
* Fixes installation of test-requirements
* Add rally performance gate job for glance
* To fixes import error for run\_tests.sh
* Replace assert\* with more suitable asserts in unit tests
* Get rid of TaskDetails in favor of TaskStub
* Fixes "bad format" in replicator for valid hosts
* Sync latest network\_utils module from Oslo
* Fixes spelling error in test name
* Uses None instead of mutables for function param defaults
* Fix various Pep8 1.5.4 errors
* Fixes Glance Registry V2 client
* Update Glance configuration sample files for database options
* To prevent remote code injection on Sheepdog store
* Added undescore function to some log messages
* Adds TaskStub class
* Updated from global requirements
* user\_storage\_quota now accepts units with value
* Do not allow HEAD images/detail
* Configuration doc for VMware storage backend
* Catch loading failures if transport\_url is not set
* Fix Jenkins translation jobs
* Fixed the pydev error message

2014.1.rc1
----------

* Open Juno development
* Making DB sanity checking be optional for DB migration
* Fix deprecation warning in test\_multiprocessing
* Do not set Location header on HTTP/OK (200) responses
* Fix swift functional test "test\_create\_store"
* Sanitize set passed to jsonutils.dumps()
* When re-raising exceptions, use save\_and\_reraise
* Imported Translations from Transifex
* Sync common db code from Oslo
* Return 405 when attempting DELETE on /tasks
* Remove openstack.common.fixture
* Enable H304 check
* VMware store.add to return the image size uploaded
* registry: log errors on failure
* Removes use of timeutils.set\_time\_override
* Provide explicit image create value for test\_image\_paginate case
* Make the VMware datastore backend more robust
* Pass Message object to webob exception
* Detect MultiDict when generating json body
* Makes possible to enable Registry API v1 and v2
* Do not use \_\_builtin\_\_ in python3
* Updated from global requirements
* Fix swift functional test
* Provide an upgrade period for enabling stores
* API v2: Allow GET on unowned images with show\_image\_direct\_url
* Add copyright text to glance/openstack/common/\_\_init\_\_.py
* Don't enable all stores by default
* Remove unused methods
* Fix glance db migration failed on 031
* Document for API message localization

2014.1.b3
---------

* Add support for API message localization
* Add the OVA container format
* Store URI must start with the expected  URI scheme
* Documentation for Glance tasks
* Remove import specific validation from tasks resource
* Remove dependency of test\_v1\_api on other tests
* Include Location header in POST /tasks response
* Catch exception when image cache pruning
* VMware storage backend should use oslo.vmware
* Sync common db code from Oslo
* Refactor UUID test
* Replaced calls of get(foo, None) -> get(foo)
* Use six.StringIO/BytesIO instead of StringIO.StringIO
* Replaced "...\'%s\'..." with "...'%s'..."
* Updated from global requirements
* Fix logging context to include user\_identity
* Log 'image\_id' with all BadStoreURI error messages
* Added undescore function to some strings
* Use 0-based indices for location entries
* Glance all: Replace basestring by six for python3 compatability
* Delete image metadata after image is deleted
* Modify assert statement when comparing with None
* Enable hacking H301 and disable H304, H302
* Replacement mox by mock
* Keep py3.X compatibility for urllib
* Use uuid instead of uuidutils
* Use six.moves.urllib.parse instead of urlparse
* Switch over to oslosphinx
* Fix parsing of AMQP configuration
* Add \`virtual\_size\` to Glance's API v2
* Add a virtual\_size attribute to the Image model
* Enable F841 check
* Add support for PartialTask list
* Rename Openstack to OpenStack
* Add a mailmap entry for myself
* Sync log.py from oslo
* Add unit tests around glance-manage
* Remove tox locale overrides
* Improve help strings
* Provide explicit image create value in Registry v2 API test
* VMware Datastore storage backend
* Adding status field to image location -- DB migration
* Apply image location selection strategy
* Switch to testrepository for running tests
* Clean up DatabaseMigrationError
* Enable H302 check
* Fix misspellings in glance
* Expose image property 'owner' in v2 API
* Removes logging of location uri
* Updated from global requirements
* Remove duplicate type defination of v2 images schema
* Enable H202 check
* Modify my mailmap
* glance-manage wont take version into consideration
* Move scrubber outside the store package
* Depending on python-swiftclient>=1.6
* Now psutil>=1.1.0 is actually on PyPI
* Fix indentation errors found by Pep8 1.4.6+
* Add VMware storage backend to location strategy
* Log a warning when a create fails due to quota
* glance requires pyOpenSSL>=0.11
* Imported Translations from Transifex
* Restore image status to 'queued' if upload failed
* Don't override transport\_url with old configs
* Provide explicit image create value in Registry v2 Client test
* Provide explicit task create and update value in controller tests
* Enable hacking H703 check
* Sync with global requirements
* Sync oslo.messaging version with global-requirements
* Don't rewrite the NotFound error message
* Update all the glance manpages
* Use common db migrations module from Oslo
* Check --store parameter validity before \_reserve
* Sync gettextutils from Oslo
* Enable gating on H501
* Add multifilesystem store to support NFS servers as backend
* Check first matching rule for protected properties
* Retry failed image download from Swift
* Restore image status on duplicate image upload

2014.1.b2
---------

* Tests added for glance/cmd/cache\_pruner.py
* Prevent E500 when delayed delete is enabled
* Sync unhandled exception logging change from Oslo
* Check image id format before executing operations
* fix bug:range() is not same in py3.x and py2.x
* Fix the incorrect log message when creating images
* Adding image location selection strategies
* Fix inconsistent doc string and code of db\_sync
* fixing typo in rst file
* Fix tmp DB path calculation for test\_migrations.py
* Change assertTrue(isinstance()) by optimal assert
* add log for \_get\_images method
* Makes 'expires\_at' not appear if not set on task
* Remove vim header
* Update the glance-api manpage
* Remove 'openstack/common/context.py'
* Allow users to customize max header size
* Decouple the config dependence on glance domain
* Fix typo in doc string
* Prevent min\_disk and min\_ram from being negative
* Set image size to None after removing all locations
* Update README to the valid Oslo-incubator doc
* Cleans up imports in models.py
* Sync Log levels from OSLO
* Align glance-api.conf rbd option defaults with config
* Bump hacking to 0.8 and get python 3.x compatibility
* Add config option to limit image locations
* replace type calls with isinstance
* Adding logs to tasks
* Skip unconfigurable drivers for store initialization
* Fix typo in gridfs store
* Oslo sync to recover from db2 server disconnects
* fix comments and docstrings misspelled words
* Fix call to store.safe\_delete\_from\_backend
* Switch to Hacking 0.8.x
* assertEquals is deprecated, use assertEqual (H234)
* Consider  @,! in properties protection rule as a configuration error
* Remove unused imports in glance
* Remove return stmt of add,save and remove method
* Migrate json to glance.openstack.common.jsonutils
* Use common Oslo database session
* Define sheepdog\_port as an integer value
* Sync with oslo-incubator (git 6827012)
* Enable gating on F811 (duplicate function definition)
* Set image size after updating/adding locations
* Disallow negative image sizes
* Fix and enable gating on H306
* Make code base E125 and E126 compliant
* Fix 031 migration failed on DB2
* Remove the redundant code
* Correct URL in v1 test\_get\_images\_unauthorized
* Refactor tests.unit.utils:FakeDB.reset
* Fixed wrong string format in glance.api.v2.image\_data
* Empty files shouldn't contain copyright nor license
* Use uuid instead of uuidutils
* Enable H233/H301/H302 tests that are ignored at the moment
* Remove duplicate method implementations in ImageLocationsProxy
* Make Glance code base H102 compliant
* Make Glance code base H201 compliant
* Cleanup: remove unused code from store\_utils
* Filter out deleted images from storage usage
* Add db2 communication error code when check the db connection
* Refine output of glance service managment
* Adds guard against upload contention
* Fixes HTTP 500 when updating image with locations for V2
* Increase test coverage for glance.common.wsgi
* Return 204 when image data does not exist
* V2: disallow image format update for active status
* Enable tasks REST API for async worker
* Cleanly fail when location URI is malformed
* Rename duplicate test\_add\_copy\_from\_upload\_image\_unauthorized
* Adding missing copy\_from policy from policy.json
* Fix simple-db image filtering on extra properties
* Pin sphinx to <1.2
* assertEquals is deprecated, use assertEqual instead
* Fix and enable gating on H702
* Replace startswith by more precise store matching
* Remove unused exceptions
* Remove duplicate method \_\_getitem\_\_ in quota/\_\_init\_\_.py
* Enforce copy\_from policy during image-update
* Refactor StorageQuotaFull test cases in test\_quota
* remove hardcode of usage
* Added error logging for http store
* Forbidden update message diffs images/tasks/member
* Unittests added for glance/cmd/cache\_manage.py
* Makes tasks owner not nullable in models.py
* Move is\_image\_sharable to registry api
* Remove TestRegistryDB dependency on TestRegistryAPI
* Introduce Task Info Table

2014.1.b1
---------

* Migrate to oslo.messaging
* Add config option to limit image members
* Add config option to limit image tags
* Glance image-list failed when image number exceed DEFAULT\_PAGE\_SIZE
* DB migration changes to support DB2 as sqlalchemy backend
* Add documentation for some API parameters
* RBD add() now returns correct size if given zero
* Set upload\_image policy to control data upload
* Replace deprecated method assertEquals
* Clean up duplicate code in v2.image\_data.py
* Fix docstring on detail in glance/api/v1/images.py
* Use assertEqual instead of assertEquals in unit tests
* Remove unused package in requirement.txt
* Enable F40X checking
* Verify for duplicate location+metadata instances
* Adds domain level support for tasks
* Add eclipse project files to .gitignore
* Added unit tests for api/middleware/cache\_manage.py
* Fixed quotes in \_assert\_tables() method
* Use common db model class from Oslo
* Add upload policy for glance v2 api
* Adding an image status transition diagram for dev doc
* Add config option to limit image properties
* Explicit listing of Glance policies in json file
* Imported Translations from Transifex
* Sync openstack.common.local from oslo
* Clean up numeric expressions with oslo constants
* Don't use deprecated module commands
* Add tests for glance/notifier/notify\_kombu
* Fixes image delete and upload contention
* Log unhandled exceptions
* Add tests for glance/image\_cache/client.py
* Remove lxml requirement
* Sync common db and db.sqlalchemy code from Oslo
* Update glance/opensatck/common from oslo Part 3
* Tests added for glance/cmd/cache\_cleaner.py
* glance-manage should work like nova-manage
* Adds tasks to db api
* Sync lockutils from oslo
* sync log from oslo
* Add policy style '@'/'!' rules to prop protections
* Enable H501: do not use locals() for formatting
* Remove use of locals() when creating messages
* Remove "image\_cache\_invalid\_entry\_grace\_period" option
* Add unit test cases for get func of db member repo
* assertEquals is deprecated, use assertEqual
* Document default log location in config files
* Remove unused method setup\_logging
* Start using PyFlakes and Hacking
* Sync units module from olso
* Fixes error message encoding issue when using qpid
* Use mock in test\_policy
* Use packaged version of ordereddict
* Imported Translations from Transifex
* Glance v2: Include image/member id in 404 Response
* Replace qpid\_host with qpid\_hostname
* Fix Pep8 1.4.6 warnings
* Fixes content-type checking for image uploading in API v1 and v2
* Update my mailmap
* Addition of third example for Property Protections
* Sync iso8601 requirement and fixes test case failures
* Fixes wrong Qpid protocol configuration
* Use HTTP storage to test copy file functionality
* Remove redundant dependencies in test-requirements
* Documentation for using policies for protected properties
* checking length of argument list in "glance-cache-image" command
* optimize queries for image-list
* Using policies for protected properties
* Cleanup and make HACKING.rst DRYer
* Enable tasks data model and table for async worker
* Updated from global requirements
* Add call to get specific image member
* Put formatting operation outside localisation call
* Remove unused import
* The V2 Api should delete a non existent image
* Avoid printing URIs which can contain credentials
* Remove whitespace from cfg options
* Use Unix style LF instead of DOS style CRLF
* Adding 'download\_image' policy enforcement to image cache middleware
* Glance manage should parse glance-api.conf
* Fixes rbd \_delete\_image snapshot with missing image
* Correct documentation related to protected properties
* Update functional tests for swift changes
* Removed unsued import, HTTPError in v1/images.py
* Allow tests to run with both provenances of mox
* Glance GET /v2/images fails with 500 due to erroneous policy check
* Do not allow the same member to be added twice

2013.2.rc1
----------

* V2 RpcApi should register when db pool is enabled
* Imported Translations from Transifex
* Open Icehouse development
* Convert Windows to Unix style line endings
* Add documentation for property protections
* Adding checking to prevent conflict image size
* Fixes V2 member-create allows adding an empty tenantId as member
* Fixing glance-api hangs in the qpid notifier
* Change response code for successful delete image member to 204
* Cache cleaner wrongly deletes cache for non invalid images
* Require oslo.config 1.2.0 final
* Use built-in print() instead of print statement
* Swift store add should not use wildcard raise
* Corrected v2 image sharing documentation
* Add swift\_store\_ssl\_compression param
* Log a message when image object not found in swift
* Ensure prop protections are read/enforced in order
* Funtional Tests should call glance.db.get\_api
* Enclose command args in with\_venv.sh
* Fix typo in config string
* Adding encryption support for image multiple locations
* Fixes typos of v1 meta data in glanceapi.rst
* Respond with 410 after upload if image was deleted
* Fix misused assertTrue in unit tests
* Convert location meta data from pickle to string
* Disallow access/modify members of deleted image
* Fix typo in protected property message
* Remove the unused mapper of image member create
* Changed header from LLC to Foundation based on trademark policies
* Implement protected properties for API v1
* Add rbd store support for zero size image
* Remove start index 0 in range()
* Convert non-English exception message when a store loading error
* add missing index for 'owner' column on images table
* Publish recent api changes as v2.2
* Update schema descriptions to indicate readonly
* Enable protected properties in gateway
* Property Protection Layer
* Rule parser for property protections
* Scrubber refactoring
* Fix typo in IMAGE\_META\_HEADERS
* Fix localisation string usage
* Notify error not called on upload errors in V2
* Fixes files with wrong bitmode
* Remove unused local vars
* Clean up data when store receiving image occurs error
* Show traceback info if a functional test fails
* Add a storage quota
* Avoid redefinition of test
* Fix useless assertTrue
* emit warning while running flake8 without virtual env
* Fix up trivial License mismatches
* Introduced DB pooling for non blocking DB calls
* Use latest Oslo's version
* Improve the error msg of v2 image\_data.py
* Fix Sphinx warning
* Remove unused import
* test failure induced by reading system config file
* Prefetcher should perform data integrity check
* Make size/checksum immutable for active images
* Remove unused var DEFAULT\_MAX\_CACHE\_SIZE
* Implement image query by tag
* Remove unused import of oslo.config
* Code dedup in glance/tests/unit/v1/test\_registry\_api.py
* Add unit test for migration 012
* Call \_post\_downgrade\_### after downgrade migration is run
* Use \_pre\_upgrade\_### instead of \_prerun\_###
* Perform database migration snake walk test correctly
* redundant conditions in paginate-query
* Refactor glance/tests/unit/v2/test\_registry\_client.py
* Refactor glance/tests/unit/v1/test\_registry\_client.py
* Improve test/utils.py
* Make sure owner column doesn't get dropped during downgrade
* image-delete fires multiple queries to delete its child entries
* glance-replicator: enable logging exceptions into log file
* Make disk and container formats configurable
* Add space in etc/glance-cache.conf
* Removes duplicate options registration in registry clients
* remove flake8 option in run\_tests.sh
* Allow tests to run without installation
* Remove glance CLI man page
* Fix some logic in get\_caching\_iter
* Adding metadata checking to image location proxy layer
* Update .mailmap
* Migrate to PBR for setup and version code
* Interpolate strings after calling \_()
* BaseException.message is deprecated since Python 2.6
* Raise jsonschema requirement
* Text formatting changes
* Using unicode() convert non-English exception message
* ambiguous column 'checksum' error when querying image-list(v2)
* Handle None value properties in glance-replicator
* Fixes Opt types in glance/notifier/notify\_kombu.py
* Add unit test for migration 010
* Sync models with migrations
* Rename requirements files to standard names
* Include pipeline option for using identity headers
* Adding arguments pre-check for glance-replicator
* Add v1 API x-image-meta- header whitelist
* Stub out dependency on subprocess in unit tests
* Allow insecure=True to be set in swiftclient
* Verify if the RPC result is an instance of dict
* Adds help messages to mongodb\_store\_db and mongodb\_store\_uri
* Remove support for sqlalchemy-migrate < 0.7
* Don't rely on prog.Name for paste app
* Simulate image\_locations table in simple/api.py
* Turn off debug logging in sqlalchemy by default
* Glance api to pass identity headers to registry v1
* add doc/source/api in gitignore
* Use cross-platform 'ps' for test\_multiprocessing
* Fix stubs setup and exception message formatting
* Handle client disconnect during image upload
* improving error handling in chunked upload

2013.2.b2
---------

* Adding Cinder backend storage driver to Glance
* File system store can send metadata back with the location
* index checksum image property
* removed unused variable 'registry\_port'
* DB Driver for the Registry Service
* Unit tests for scrubber
* Remove references to clean arg from cache-manage
* Deleting image that is uploading leaves data
* Adding a policy layer for locations APIs
* Add/remove/replace locations from an image
* Adding multiple locations support to image downloading
* Make db properties functions consistent with the DB API
* Adds missing error msg for HTTPNotFound exception
* Allow storage drivers to add metadata to locations
* Fixes image-download error of v2
* On deleting an image, its image\_tags are not deleted
* Sync gettextutils from oslo
* Adding store location proxy to domain
* Notify does not occur on all image upload fails
* Add location specific information to image locations db
* Add custom RPC(Des|S)erializer to common/rpc.py
* use tenant:\* as swift r/w acl
* Add image id to the logging message for upload
* Fix cache delete-all-queued-images for xattr
* Fix stale process after unit tests complete
* Sync install\_venv\_common from oslo
* Fix list formatting in docs
* Fix doc formatting issue
* Ignore files created by Sphinx build
* Use oslo.sphinx and remove local copy of doc theme
* Refactor unsupported default store testing
* Add Sheepdog store
* Fix 'glance-cache-manage -h' default interpolation
* Fix 'glance-cache-manage list-cached' for xattr
* Dont raise NotFound in simple db image\_tag\_get\_all
* Use python module loading to run glance-manage
* Removed unusued variables to clean the code
* Fixes exposing trace during calling image create API
* Pin kombu and anyjson versions
* Do not raise NEW exceptions
* Port slow, overly assertive v1 functional tests to integration tests
* Add a bit of description
* Updated documentation to include notifications introduced in Grizzly
* Make eventlet hub choice configurable
* Don't run store tests without a store!
* Import sql\_connection option before using it
* Fix for unencrypted uris in scrubber queue files
* Fix incorrect assertion in test\_create\_pool
* Do not send traceback to clients by default
* Use Python 3.x compatible octal literals
* Remove explicit distribute depend
* Add missing Keystone settings to scrubber conf
* Sql query optimization for image detail
* Prevent '500' error when admin uses private marker
* Replace openstack-common with oslo in HACKING.rst
* Patch changes Fedora 16 to 18 on install page
* Pass configure\_via\_auth down to auth plugin
* Move sql\_connection option into sqlalchemy package
* Remove unused dictionary from test\_registry\_api.py
* Remove routes collection mappings
* updated content\_type in the exception where it is missing
* python3: Introduce py33 to tox.ini
* Don't make functional tests inherit from IsolatedUnitTest
* Add a policy layer for membership APIs
* Prevent E500 when listing with null values
* Encode headers and params
* Fix pydevd module import error
* Add documentation on reserving a Glance image
* Import strutils from oslo, and convert to it
* Sync oslo imports to the latest version

2013.2.b1
---------

* Fix undefined variable in cache
* Make passing user token to registry configurable
* Respond with 412 after upload if image was deleted
* Add unittests for image upload functionality in v1
* Remove glance-control from the test suite
* Prevent '500' error when using forbidden marker
* Improve unit tests for glance.common package
* Improve unit tests for glance.api.v1 module
* rbd: remove extra str() conversions and test with unicode
* rbd: return image size when asked
* Add qpid-python to test-requires
* tests: remove unused methods from test\_s3 and test\_swift
* Implement Registry's Client V2
* RBD store uses common utils for reading file chunks
* Redirects requests from /v# to /v#/ with correct Location header
* Add documentation for query parameters
* Small change to 'is\_public' documentation
* Fix test\_mismatched\_X test data deletion check
* Add GLANCE\_LOCALEDIR env variable
* Remove gettext.install() from glance/\_\_init\_\_.py
* Implement registry API v2
* Add RBD support with the location option
* Use flake8/hacking instead of pep8
* Use RBAC policy to determine if context is admin
* Create package for registry's client
* Compress response's content according to client's accepted encoding
* Call os.kill for each child instead of the process group
* Improve unit tests for glance.common.auth module
* Convert scripts to entry points
* Fix functional test 'test\_copy\_from\_swift'
* Remove unused configure\_db function
* Don't raise HTTPForbidden on a multitenant environment
* Expand HACKING with commit message guidelines
* Redirects requests from /v# to /v#/
* Functional tests use a clean cached db that is only created once
* Fixes for mis-use of various exceptions
* scrubber: dont print URI of image to be deleted
* Eliminate the race when selecting a port for tests
* Raise 404 while deleting a deleted image
* Fix test redifinitions
* Sync with oslo-incubator copy of setup.py and version.py
* Gracefully handle qpid errors
* Fix Qpid test cases
* Imported Translations from Transifex
* Fix the deletion of a pending\_delete image
* Imported Translations from Transifex
* Imported Translations from Transifex
* Fix functional test 'test\_scrubber\_with\_metadata\_enc'
* Make "private" functions that shouldn't be exported
* Call monkey\_patch before other modules are loaded
* Adding help text to the options that did not have it
* Improve unit tests for glance.api.middleware.cache module
* Add placeholder migrations to allow backports
* Add GridFS store
* glance-manage should not require glance-registry.conf
* Verify SSL certificates at boot time
* Invalid reference to self in functional test test\_scrubber.py
* Make is\_public an argument rather than a filter
* remove deprecated assert\_unicode sqlalchemy attribute
* Functional tests display the logs of the services they started
* Add 'set\_image\_location' policy option
* Add a policy handler to control copy-from functionality
* Fallback to inferring image\_members unique constraint name
* Standardize on newer except syntax
* Directly verifying that time and socket are monkey patched
* Reformat openstack-common.conf
* Fix domain database initialization
* Add tests for image visibility filter in db
* Add image\_size\_cap documentation
* Return 413 when image\_size\_cap exceeded
* Small change to exception handling in swift store
* Remove internal store references from migration 017
* Check if creds are present and not None

2013.1.rc1
----------

* Delete swift segments when image\_size\_cap exceeded
* bump version to 2013.2
* Don't print sql password in debug messages
* fixes use the fact that empty sequences are false
* Handle Swift 404 in scrubber
* Remove internal store references from migration 015
* Pin SQLAlchemy to 0.7.x
* Add unit tests for glance.api.cached\_images module
* Document the os options config for swift store
* Segmented images not deleted cleanly from swift
* Do not return location in headers
* Fix uniqueness constraint on image\_members table
* Declare index on ImageMember model
* Log when image\_size\_cap has been exceeded
* Publish API version 2.1
* Fix scrubber and other utils to use log.setup()
* Switch to final 1.1.0 oslo.config release
* Mark password options secret
* Fix circular import in glance/db/sqlalchemy
* Fix up publicize\_image unit test
* Fix rabbit\_max\_retry
* Fix visibility on db image\_member\_find
* Fix calls to image\_member\_find in tests
* Characterize image\_member\_find
* Retain migration 12 indexes for table image\_properties with sqlite
* Insure that migration 6 retains deleted image property index
* Fix check\_003 method
* Ensure disk\_ and container\_format during upload
* Honor metadata\_encryption\_key in glance domain
* Fix v2 data upload to swift
* Switch to oslo.config
* Update acls in the domain model
* Refactor leaky abstractions
* Remove unused variable 'image\_member\_factory'
* Generate notification for cached v2 download
* A test for concurrency when glance uses sleep
* Update documentation to reflect API v2 image sharing
* v1 api image-list does not return shared images
* Cannot change locations on immutable images
* Update db layer to expose multiple image locations
* Test date with UTC instead of local timezone
* Added better schemas for image members, revised tests
* Add pre and check phases to test migration 006
* Fix response code for successful image upload
* Remove unused imports
* Add pre and check phases to test migration 005
* Add pre and check phases to test migration 004
* Add PostgreSQL support to test migrations
* Enable support for MySQL with test migrations
* Set status to 'active' after image is uploaded
* Removed controversial common image property 'os\_libosinfo\_shortid'
* Parse JSON Schema Draft 10 in v2 Image update
* Redact location from notifications
* Fix broken JSON schemas in v2 tests
* Add migration 021 set\_engine\_mysql\_innodb
* Refactor data migration tests
* Fix migration 016 for sqlite
* Pin jsonschema version below 1.0.0
* Add check for image\_locations table
* Avoid using logging in signal handlers
* monkey\_patch the time module for eventlet
* Remove compat cfg wrapper
* Remove unnecessary logging from migration 019
* Fix migration 015 downgrade with sqlite
* Document db\_auto\_create in default config files
* Update openstack.common
* Extend the domain model to v2 image data
* Add migration 20 - drop images.location
* Add migration 19 - move image location data
* Filter images by status and add visibility shared
* Update oslo-config version
* Sync latest install\_venv\_common.py
* Adding new common image properties
* Use oslo-config-2013.1b3
* Add migration 18 - create the image\_locations table
* Create connection for each qpid notification
* Add migration to quote encrypted image location urls
* Updates OpenStack LLC with OpenStack Foundation
* Allowing member to set status of image membership
* Add an update option to run\_tests.sh
* Use install\_venv\_common.py from oslo
* Add status column to image\_members
* Adding image members in glance v2 api
* Fix issues with migration 012
* Add migration.py based on the one in nova
* Updated\_at not being passed to db in image create
* Fix moker typo in test\_notifier
* Clean dangling image fragments in filesystem store
* Sample config and doc for the show\_image\_direct\_url option
* Avoid dangling partial image on size/checksum mismatch
* Fix version issue during nosetests run
* Adding database layer for image members domain model
* Image Member Domain Model
* Additional image member information
* Adding finer notifications
* Add LazyPluggable utility from nova
* Update .coveragerc
* Removed unnecessary code
* Use more-specific value for X-Object-Manifest header
* Allow description fields to be translated in schema
* Mark password config options with secret
* Update HACKING.rst per recent changes
* Encrypt scrubber marker files
* Quote action strings before passing to registry
* Fixes 'not in' operator usage
* Add to multi-tenant swift store documentation
* Replace nose plugin with testtools details
* Convert some prints to addDetails calls
* Rearrange db tests in prep for testr
* Stop using detailed-errors plugin for nose
* Add \_FATAL\_EXCEPTION\_FORMAT\_ERRORS global
* Fix kwargs in xattr BadDriverConfiguration exc
* Prints list-cached dates in isoformat
* Fail sensibly if swiftclient absent in test
* Initialize CONF properly in store func tests
* Ensure swift\_store\_admin\_tenants ACLs are set
* Remove Swift location/password from messages
* Removed unnecessary code
* Removed unncessary code
* Pull in tarball version fix from oslo
* Updated image loop to not use an enumerator
* Log exception details
* Update version code from oslo
* Revert "Avoid testtools 0.9.25"
* Avoid testtools 0.9.25
* Update glance config files with log defaults
* Sync latest cfg and log from oslo-incubator
* Make v2 image tags test not load system policy
* Replace custom tearDown with fixtures and cleanup
* Update version code from oslo
* Use testtools for unittest base class
* Stub out find\_file... fix policy.json test issue
* Remove unused declaration in images.py
* Add import for filesystem\_store\_datadir config
* Update v1/images DELETE so it returns empty body
* Relax version constraint on Webob-1.0.8
* Set content-length despite webob
* Update common openstack code from oslo-incubator
* Modify the v2 image tags to use domain model
* Fix broken link in docs to controllingservers
* Adding a means for a glance worker to connect back to a pydevd debugger
* Use imported exception for update\_store\_acls
* Fix import order nits
* Verify size in addition to checksum of uploaded image
* Use one wsgi app, one dbengine worker
* Set Content-MD5 after calling webob.Response.\_app\_iter\_\_set
* Modify the v2 image controller to use domain model
* Log error on failure to load paste deploy app
* Configure endpoint\_type and service\_type for swift
* Refactor multi-tenant swift store
* Add registry\_client\_timeout parameter
* Use io.BufferedIOBase.read() instead of io.BytesIO.getvalue()
* Port to argparse based cfg
* wsgi.Middleware forward-compatibility with webob 1.2b1 or later
* Allow running testsuite as root user
* Allow newer boto library versions
* Fixed image not getting deleted from cache
* Updates keystone middleware classname in docs
* v2 API image upload set image status to active
* Use auth\_token middleware from python-keystoneclient
* Add domain proxies that stop unauthorized actions
* Add domain proxies that do policy.enforce checks
* Use 'notifications' as default notification queue name
* Unused variables removed
* Fixed deleted image being downloadable by admin
* Rewrite S3 functional tests
* Add store test coverage for the get\_size method
* Implement get\_size filesystem store method
* Add an image repo proxy that handles notifications
* Fixed Typo
* Return size as int from store get call
* Wrap log messages with \_()
* Add pep8 ignore options to run\_tests.sh
* Fix typo uudiutils -> uuidutils
* Make cooperative reader always support read()
* Add an image proxy to handle stored image data
* Allow for not running pep8
* Refactor where store drivers are initialized
* Audit error logging
* Stop logging all registry client exceptions
* Remove unused imports
* Add note about urlencoding the sql\_connection config opt
* Add an image repo to encapsulate db api access
* Add an image domain model and related helpers
* Fix simple db image\_get to look like sqlalchemy
* Return 403 on images you can see but can't modify
* Fixes is\_image\_visible to not use deleted key
* Ensure strings passed to librbd are not unicode
* Use generate\_uuid from openstack common
* Update uuidutils from openstack common
* Code cleanup: remove ImageAddResult class
* Lowering certain log lines from error to info
* Prevent infinite respawn of child processes
* Make run\_tests.sh run pep8 checks on bin
* Make tox.ini run pep8 checks on bin
* Pep8 fixes to bin/glance\* scripts
* Ensure authorization before deleting from store
* Port uuidutils to Glance
* Delete from store after registry delete
* Unit test remaining glance-replicator methods
* Use openstack common timeutils in simple db api
* Unit test replication\_dump
* pin sqlalchemy to the 0.7 series
* DRY up image fetch code in v2 API
* Return 403 when admin deletes a deleted image
* Pull in a versioning fix from openstack-common
* Fixes deletion of invalid image member
* Return HTTP 404 for deleted images in v2
* Update common to 18 October 2012
* implements selecting version in db sync
* add command "status" to "glance-control"
* Disallow admin updating deleted images in v2 api
* Clean up is\_public filtering in image\_get\_all
* SSL functional tests always omitted
* Fix scrubber not scrubbing with swift backend
* Add OpenStack trove classifier for PyPI
* Disallow updating deleted images
* Unit test replication\_size
* Add noseopts and replace noseargs where needed to run\_test.sh
* Setup the pep8 config to check bin/glance-control
* Change useexisting to extend\_existing to fix deprecation warnings
* Fix fragile respawn storm test
* Fix glance filesystem store race condition
* Add support for multiple db test classes
* Don't parse commandline in filesystem tests
* Improve test coverage for replicator's REST client
* Correct conversion of properties in headers
* Add test for v2 image visibility
* change the default sql connection timeout to 60s
* Add test for v1 image visibility
* FakeAuth not always admin
* Add GLANCE\_TEST\_TMP\_DIR environment var for tests
* Call setup\_s3 before checking for disabled state
* Add insecure option to registry https client
* Clean up pep8 E128 violations
* Rename non-public method in sqlalchemy db driver
* Add image\_member\_update to simple db api
* Multiprocess respawn functional test fix
* Remove unnecessary set\_acl calls
* Clean up pep8 E127 violations
* Remove notifications on error
* Change type of rabbit\_durable\_queues to boolean
* Pass empty args to test config parser
* Document api deployment configuration
* Clean up pep8 E125 violations
* Clean up pep8 E124 violations
* Ensure workers set to 0 for all functional tests
* image\_member\_\* db functions return dicts
* Alter image\_member\_[update|delete] to use member id
* Add test for db api method image\_member\_create
* Add test for image\_tag\_set\_all
* Add rabbit\_durable\_queues config option
* Remove extraneous db method image\_property\_update
* Update docs with modified workers default value
* Replace README with links to better docs
* Remove unused animation module
* Drop Glance Client
* Enable multi-processing by default
* Ensure glance-api application is "greened"
* Clean up pep8 E122, E123 violations
* Clean up pep8 E121 violations
* Fix scrubber start & not scrubbing when not daemon
* Clean up pep8 E502, E711 violations
* Expand cache middleware unit tests
* Change qpid\_heartbeat default
* Don't WARN if trying to add a scheme which exists
* Add unit tests for size\_checked\_iter
* Add functional tests for the HTTP store
* Generalize remote image functional test
* Add filesystem store driver to new func testing
* Add region configuration for swift
* Update openstack-common log and setup code
* Update v2.0 API version to CURRENT
* Set new version to open Grizzly development
* Add s3\_store\_bucket\_url\_format config option
* Ensure status of 'queued' image updated on delete
* Fallback to a temp pid file in glance-control
* Separate glance cache client from main client
* Rewrite Swift store functional tests
* Raise bad request early if image metadata is invalid
* Return actual unicode instead of escape sequences in v2
* Handle multi-process SIGHUP correctly
* Remove extraneous whitespace in config files
* Remove db auto-creation magic from glance-manage
* Makes deployed APIs configurable
* Asynchronously copy from external image source
* Sort UUID lists in test\_image\_get\_all\_owned
* Call do\_start correctly in glance-control reload
* Sync some misc changes from openstack-common
* Sync latest cfg changes from openstack-common
* Exception Handling for image upload in v2
* Fix cache not handling backend failures
* Instantiate wsgi app for each worker
* Require 'status' in simple db image\_create
* Drop glance client + keystone config docs
* Use PATCH instead of PUT for v2 image modification
* Delete image from backend store on delete
* Document how to deploy cachemanage middleware
* Clean up comments in paste files
* WARN and use defaults when no policy file is found
* Encode headers in v1 API to utf-8
* Fix LP bug #1044462 cfg items need secret=True
* Always call stop\_servers() after having started them in tests
* Adds registry logging
* Filter out deleted image properties in v2 api
* Limit simple db image\_create to known image attrs
* Raise Duplicate on image\_create with duplicate id
* Expand image\_create db test
* Add test for nonexistent image in db layer
* Catch pruner exception when no images are cached
* Remove bad error message in glance-cache-manage
* Add missing columns to migration 14
* Adds notifications for images v2
* Move authtoken config out of paste
* Add kernel/ramdisk\_id, instance\_uuid to v2 schema
* Tweak doc page titles
* Drop architecture doc page
* Add link to notifications docs on index
* Remove repeated image-sharing docs
* Tidy up API docs
* Log level for BaseContextMiddleware should be warn
* Raise Forbidden exception in image\_get
* Activation notification for glance v1 api
* Add glance/versioninfo to MANIFEST.in
* HTTPBadRequest in v2 on malformed JSON request body
* PEP8 fix in conf.py
* Typo fix in glance: existant => existent
* Rename glance api docs to something more concise
* Drop deprecated client docs
* Clean up policies docs page
* Remove autodoc and useless index docs
* Add nosehtmloutput as a test dependency
* Remove partial image data when filesystem is full
* Add 'bytes' to image size rejection message
* Add policy check for downloading image
* Convert limiting\_iter to LimitingReader
* Add back necessary import
* Adds glance registry req id to glance api logging
* Make max image size upload configurable
* Correctly re-raise exception on bad v1 checksum
* Return httplib.HTTPResponse from fake reg conn
* Add DB Management docs
* Fix auth cred opts for glance-cache-manage
* Remove unused imports
* Set proper auth middleware option for anon. access
* multi\_tenant: Fix 'context' is not defined error
* Validate uuid-ness in v2 image entity
* v2 Images API returns 201 on image data upload
* Fixes issue with non string header values in glance client
* Fix build\_sphinx setup.py command
* Updates Image attribute updated\_at
* Add policy enforcment for v2 api
* Raise 400 error on POST/PUTs missing request bodies
* Mark bin/glance as deprecated
* Return 201 on v2 image create
* Ignore duplicate tags in v2 API
* Expose 'protected' image attribute in v2 API
* Move to tag-based versioning
* Update restrictions on allowed v2 image properties
* Reveal v2 API as v2.0 in versions response
* Add min\_ram and min\_disk to v2 images schema
* Filter out None values from v2 API image entity
* Refactor v2 images resource unit tests
* Use container\_format and disk\_format as-is in v2
* Make swift\_store\_admin\_tenants a ListOpt
* Update rbd store to allow copy-on-write clones
* Call stop\_servers() in direct\_url func tests
* Drop unfinshed parts of v2 API
* Fix a couple i18n issues in glance/common/auth.py
* Sync with latest version of openstack.common.notifier
* Sync with latest version of openstack.common.log
* Sync with latest version of openstack.common.timeutils
* Sync with latest version of openstack.common.importutils
* Sync with latest version of openstack.common.cfg
* Allows exposing image location based on config
* Do not cache images that fail checksum verfication
* Omit deleted properties on image-list by property
* Allow server-side validation of client ssl certs
* Handle images which exist but can't be seen
* Adds proper response checking to HTTP Store
* Use function registration for policy checks
* fix the qpid\_heartbeat option so that it's effective
* Add links to image access schema
* ^c shouldn't leave incomplete images in cache
* uuid is a silly name for a var
* Support master and slave having different tokens
* Add a missing header strip opportunity
* URLs to glance need to be absolute
* Use with for file IO
* Add swift\_store\_admin\_tenants option
* Update v1/v2 images APIs to set store ACLs
* Use event.listen() instead of deprecated listeners kwarg
* Store context in local thread store for logging
* Process umask shouldn't allow world-readable files
* Make TCP\_KEEPIDLE configurable
* Reject rather than ignore forbidden updates
* Raise HTTPBadRequest when schema validation fails
* Expose 'status' on v2 image entities
* Simplify image and access\_record responses
* Move optional dependencies from pip-requires to test-requires
* Fix dead link to image access collection schema
* Add in missing image collection schema link
* Drop static API v2 responses
* Include dates in detailed image output
* Update image caching middleware for v2 URIs
* Ensure Content-Type is JSON-like where necessary
* Have non-empty image properties in image.delete payload
* Add Content-MD5 header to V2 API image download
* Adds set\_acls function for swift store
* Store swift images in separate containers
* Include chunk\_name in swift debug message
* Set deleted\_at field when image members and properties are deleted
* Use size\_checked\_iter in v2 API
* Honor '--insecure' commandline flag also for keystone authentication
* Make functional tests listen on 127.0.0.1
* Adds multi tenant support for swift backend
* Provide stores access to the request context
* Increase wait time for test\_unsupported\_default\_store
* Match path\_info in image cache middleware
* Dont show stack trace on command line for service error
* Replace example.com with localhost for some tests
* Fix registry error message and exception contents
* Move checked\_iter from v1 API glance.api.common
* Support zero-size image creation via the v1 API
* Prevent client from overriding important headers
* Updates run\_tests.sh to exclude openstack-common
* Use openstack.common.log to log request id
* Update 'logging' imports to openstack-common
* Make get\_endpoint a generic reusable function
* Adds service\_catalog to the context
* Add openstack-common's local and notifier modules
* Making docs pretty!
* Removing 'Indices and tables' heading from docs
* Remove microseconds before time format conversion
* Add bin/glance-replicator to scripts in setup.py
* Initial implementation of glance replication
* Generate request id and return in header to client
* Reorganize context module
* Add openstack.common.log
* Ignore openstack-common in pep8 check
* Keystone dep is not actually needed
* Report size of image file in v2 API
* Expose owner on v2 image entities
* Add function tests for image members
* Allow admin's to modify image members
* Allow admins to share images regardless of owner
* Improve eventlet concurrency when uploading/downloading
* Simplify v2 API functional tests
* Fix IndexError when adding/updating image members
* Report image checksum in v2 API
* Store properties dict as list in simple db driver
* Use PyPI for swiftclient
* Refactor pagination db functional tests
* Combine same-time tests with main db test case
* Add retry to server launch in respawn test
* Reorder imports by full import path
* Adds /v2/schemas/images
* Implement image filtering in v2
* Include all tests in generated tarballs
* Allow CONF.notifier\_strategy to be a full path
* Add image access records schema for image resources
* Remove image members joinedload
* Clean up image member db api methods
* Retry test server launch on failure to listen
* Make image.upload notification send up2date metadata
* Added schema links logic to image resources
* Simplify sqlalchemy imports in driver
* Reduce 'global' usage in sqlalchemy db driver
* Standardize logger instantiation
* Add link descriptor objects to schemas
* Fix exception if glance fails to load schema
* Move the particulars of v2 schemas under v2
* Remove listing of image tags
* Set up Simple DB driver tests
* Trace glance service on launch failure
* Revert "Funnel debug logging through nose properly."
* Capture logs of failing services in assertion msg
* Remove some more glance-cache PasteDeploy remnants
* Fix typo of conf variable in config.py
* Remove unused imports in db migrations
* Increase timeout to avoid spurious test failures
* adds missing import and removes empty docstring
* Convert db testing to use inheritance
* Clean up .pyc files before running tests
* make roles case-insensitive
* Funnel debug logging through nose properly
* Fix typo of swift\_client/swiftclient in store\_utils
* Stop revealing sensitive store info
* Avoid thread creation prior to service launch
* Don't use PasteDeploy for scrubber and cache daemons
* Remove some unused glance-cache-queue-image code
* Implement pagination and sorting in v2
* Turn off SQL query logging at log level INFO
* Default db\_auto\_create to False
* Use zipballs instead of git urls
* Add metadata\_encryption\_key to glance-cache.conf
* Fix help messages for --debug
* Use python-swiftclient for swift store
* Fix to not use deprecated response.environ any more
* Import db driver through configuration
* Move RequestContext.is\_image\_\* methods to db layer
* Begin replacement of sqlalchemy driver imports
* webob exception incorrectly used in v1 images.py
* Add tests and simplify GlanceExceptions
* Update default values for known\_stores config
* Remove the conf passing PasteDeploy factories
* Port remaining code to global conf object
* Made changes to adhere to HACKING.rst specifications
* Use openstack-common's policy module
* Re-add migrate.cfg to tarball
* Implements cleaner fake\_request
* Create 'simple' db driver
* Glance should use openstack.common.timeutils
* Clean up a few ugly bits from the testing patch
* Fix typo in doc
* Add cfg's new global CONF object
* fix side effects from seekability test on input file
* Just use pure nosetests
* Fix coverage jobs. Also, clean up the tox.ini
* Move glance.registry.db to glance.db
* Glance should use openstack.common.importutils
* Add read-only enforcement to v2 API
* Add a base class for tests
* Expose tags on image entities in v2 API
* Add additional info. to image.delete notification
* Expose timestamps on image entities in v2 API
* Sync with latest version of openstack.common.cfg
* Enable anonymous access through context middleware
* Add allow\_additional\_image\_properties
* Fix integration of image properties in v2 API
* Lock pep8 at v1.1
* Lock pep8 to version 0.6.1 in tox.ini
* Fail gracefully if paste config file is missing
* Add missing files to tarball
* Remove unused imports in setup.py
* Adds sql\_ config settings to glance-api.conf
* Correct format of schema-image.json
* Fix paste to correctly deploy v2 API
* Add connection timeout to glance client
* Leave behind sqlite DB for red functional tests
* Support DB auto-create suppression
* Fix glance-api process leak in respawn storm test
* Stubout httplib to avoid actual http calls
* Backslash continuation removal (Glance folsom-1)
* Implement image visibility in v2 API
* Add min\_ram and min\_disk to bin/glance help
* Implements blueprint import-dynamic-stores
* Add credential quoting to Swift's StoreLocation
* Combine v2 functional image tests
* Simplify JSON Schema validation in v2 API
* Expose deployer-specific properties in v2 API
* Test that v2 deserializers use custom schemas
* Load schema properties when v2 API starts
* Support custom properties in schemas for v2 API
* Fix tiny format string nit in log message
* Fixes bug 997565
* Allow chunked image upload in v2 API
* wsgi: do not respawn on missing eventlet hub
* Implement v2 API access resource
* Disallow image uploads in v2 API when data exists
* Implement v2 API image tags
* Use ConfigOpts.find\_file() for policy and paste
* Implement image data upload/download for v2 API
* Use sdist cmdclass from openstack-common
* glance-api: separate exit status from message
* Update noauth caching pipeline to use unauth-ctx
* Return 204 from DELETE /v2/images/<image\_id>
* Add localization catalog and initial po files to Glance. Fix bug 706449
* Add /v2 to sample glance-api-paste.ini
* Basic functionality of v2 /images resource
* Split noauth context middleware into new class
* Add -c|--coverage option to run\_tests.sh
* Convert glance to glance/openstack/common/setup.py
* Update glance to pass properly tenant\_name
* Cleanup authtoken examples
* Support for directory source of config files
* Support conf from URL's with versions
* Auto generate AUTHORS file for glance
* Integrate openstack-common using update.py
* Fixes LP #992096 - Ensure version in URL
* Begin functional testing of v2 API
* Fixes LP #978119 - cachemanagement w/o keystone
* Omit Content-Length on chunked transfer
* Fix content type for qpid notifier
* Remove \_\_init\_\_.py from locale dir
* Fix i18n in glance.notifier.notify\_kombu
* Override OS\_AUTH\_URL when running functional tests
* remove superfluous 'pass'
* fix bug lp:980892,update glance doc
* Add a space to fix minor typo in glance help
* Suppress pagination on non-tty glance index
* Kill glance-api child workers on SIGINT
* Ensure swift auth URL includes trailing slash
* add postgresql support to test\_migrations
* 012\_id\_to\_uuid: Also convert ramdisk + kernel ids
* API v2 controller/serialization separation
* search for logger in PATH
* Set install\_requires in setup.py
* Minor grammar corrections
* Bootstrapping v2 Image API implementation
* Fix db migration 12
* Remove unused imports
* Reorganize pipelines for multiple api versions
* Skip test depending on sqlite3 if unavailable
* Defaulted amazon disk & container formats
* Compile BigInteger to INTEGER for sqlite
* Updated RST docs on containers, fewer references to OVF format
* rename the right index
* Reject excessively long image names
* Test coverage for update of image ownership
* Add MySQLPingListener() back
* Add support for auth version 2
* Run version\_control after auto-creating the DB
* Allow specifying the current version in 'glance-manage version\_control'
* Publish v2 in versions responses
* Allow yes-like values to be interpreted as bool
* Support owner paramater to glance add
* Adding versioned namespaces in test dir
* Typo
* Ensure functional db connection in configure\_db()
* Set content\_type for messages in Qpid notifier
* Avoid leaking secrets into config logging
* Fixes lp959670
* Send output of stty test cmd to stderr
* Use unique per-test S3 bucket name
* Specify location when creating s3 bucket
* Open Folsom
* Update 'bin/glance add' docstring \*\_format options
* Ensure all unauthorized reponses return 403
* Avoid leaking s3 credentials into logs
* Avoid glance-logcapture displaying empty logs
* Add 'publicize\_image' policy
* Fixed db conn recovery issue. Fixes bug 954971
* tox tests with run\_tests.sh instead of nosetests
* Don't use auth url to determine service protocol
* Use tenant/user ids rather than names
* Update context middleware with supported headers
* Fixes LP #957401 - Remove stray output on stderr
* check connection in Listener. refer to Bug #943031
* Avoid tests leaking empty tmp dirs
* Remove keystone.middleware.glance\_auth\_token
* Updating version of Keystone
* Add policy checks for cache manage middleware
* nose plugin to capture glance service logs
* Add new UnexpectedStatus exception
* Do not error when service does not have 'type'
* Disambiguates HTTP 401 and HTTP 403 in Glance. Fixes bug 956513
* Add admin\_role option
* Remove references to admin\_token
* Remove glance-cache-queue-image
* Remove dependency on apiv1app from cachemanage
* Return 403 when policy engine denies action
* Add error checking to get\_terminal\_size
* Well-formed exception types for 413 & 503
* Ensure copy and original image IDs differ
* Include babel.cfg and glance.pot in tarballs
* Updating authentication docs
* General cleanup
* General docs cleanup
* Remove todolist from docs
* Add note about cache config options
* Change CLIAuth arg names
* Retry sendfile on EAGAIN or EBUSY
* Add module name to ClientException
* Update cli docs
* Remove 'community' doc page
* Removing registry spec from docs
* Fixes LP#934492 - Allow Null Name
* Refresh SSL cfg after parsing service catalog entry
* Fix typo in tox.ini
* Glance cache updates to support Keystone Essex
* updates man page for glance-scrubber. this time with extra pep8 scrubbing powers. Fixes bug 908803
* Update tox.ini for jenkins
* Replaced use of webob.Request.str\_param
* Update paste file to use service tenant
* Update bin/glance to allow for specifying image id
* Fix deprecated warnings
* Remove trailing whitespaces in regular file
* add git commit date / sha1 to sphinx html docs
* Glance skip prompting if stdin isn't a tty
* Allow region selection when using V2 keystone
* Disallow file:// sources on location or copy-from
* Progress bar causes intermittent test failures
* Added first step of babel-based translations
* Complete fix for modification of unowned image
* Fix update of queued image with location set
* Support copy-from for queued images
* Add checksum to an external image during add
* Align to jenkins tox patterns
* Fix MANIFEST.in to include missing files
* Fix exception name
* Correct kernel/ramdisk example in docs
* Create sorting/pagination helper function
* Support new image copied from external storage
* blueprint progressbar-upload-image
* Avoid TestClient error on missing '\_\_mro\_\_' attr
* disk/container\_format required on image activate
* Require container & disk formats on image create
* Support non-UTC timestamps in changes-since filter
* Return 503 if insufficient permission on filestore
* Adds README.rst to the tarball
* Ensure StorageFull only raised on space starvation
* Require auth URL if keystone strategy is enabled
* 003\_add\_disk\_format.py: Avoid deadlock in upgrade
* Function uses 'msg' not 'message'
* Fix paging ties
* Ensure sane chunk size when pysendfile unavailable
* New -k/--insecure command line option
* Add a generic tox build environment
* Fix pep8 error
* Update Authors file
* Implement blueprint add-qpid-support
* Include glance/tests/etc
* Don't fail response if caching failed
* Force auth\_strategy=keystone if --auth\_url or OS\_AUTH\_URL is set
* Make Glance work with SQLAlchemy 0.7
* Use sendfile() for zero-copy of uploaded images
* Respawn glance services on unexpected death
* Blueprint cli-auth: common cli args
* Prep tox config for jenkins builds
* Get rid of DeprecationWarning during db migration
* Add --capture-output option to glance-control
* Add filter validation to glance API
* Fixes LP 922723
* Typofix is\_publi -> is\_public
* Add --await-child option to glance-control
* Fix Bug #919255
* Cap boto version at 2.1.1
* Simplify pep8 output to one line per violation
* Handle access restriction to public unowned image
* Check service catalogue type rather than name
* Restore inadvertantly dropped lines
* Include the LICENSE file in the tarball
* Change xattr usage to be more broadly compatible
* Fix mixed usage of 's' and 'self'
* Don't force client to supply SSL cert/key
* Few small cleanups to align with Nova
* Adds documentation for policy files
* Client.add\_image() accepts image data as iterable
* More flexible specification of auth credentials
* glance-api fails fast if default store unsupported
* Bug #909574: Glance does not sanity-check given image size on upload
* glance-control need not locate a server's config file (lp#919520)
* Bug#911599 - Location field wiped on update
* Return 400 if registry returns 400
* Set url's on AuthBadRequest exceptions
* Add policy checking for basic image operations
* Swallow exception on unsupported image deletion
* Ensure we only send a single content-type header
* Multi-process Glance API server support
* Set size metadata correctly for remote images
* Make paste.ini file location configurable
* Avoid the need for users to manually edit PasteDeploy config in order to switch pipelines
* Split out paste deployment config from the core glance \*.conf files into corresponding \*-paste.ini files
* Fixes LP Bug#913608 - tests should be isolated
* Set correct Content-Length on cached remote images
* Implement retries in notify\_kombu
* Return correct href if bind\_host is 0.0.0.0
* Remove assertDictEqual for python 2.6 compatibility
* Add optional revision field to version number
* LP Bug#912800 - Delete image remain in cache
* Add notifications for sending an image
* Bug #909533: Swift uploads through Glance using ridiculously small chunks
* Add Fedora clauses to the installing document
* Remove doc/Makefile
* Fixes incorrect URI scheme for s3 backend
* Add comments for swift options in glance-api.conf
* Split notification strategies out into modules
* fix bug 911681
* Fix help output for inverse of BoolOpt
* PEP8 glance cleanup
* Add more man pages
* Set execute permissions on glance-cache-queue-image
* Add a LICENSE file
* Add ability to specify syslog facility
* Install an actual good version of pip
* Bug #909538: Swift upload via Glance logs the password it's using
* Add tox.ini file
* Synchronize notification queue setup between nova and glance
* Fixes keystone auth test failures in python 2.6
* Removed bin/glance's TTY detection
* Fixes request with a deleted image as marker
* Adds support for protecting images from accidental deletion
* Fix for bug 901609, when using v2 auth should use /v2.0/tokens path
* Updated glance.registry.db for bug 904863
* Removing caching cruft from bin/glance
* Fixes LP Bug#901534 - Lost properties in upload
* Update glance caching middleware so doesn't try to process calls to subresources. Fixes LP bug #889209
* Ensure functional tests clean up their images
* Remove extra swift delete\_object call
* Add missing files to tarball
* Allow glance keystone unit tests to run with essex keystone
* Convert glance to use the new cfg module
* Add new cfg module
* Lock keystone to specific commit in pip-requires
* Add the missing column header to list-cached
* Rename 'options' variables to 'conf'
* Add generic PasteDeploy app and filter factories
* Secondary iteration of fix for bug 891738
* Rename .glance-venv to .venv
* Fix for bug 900258 -- add documentation for '--url' glance cli option
* Add --url option to glance cli
* Fixes LP Bug#850377
* Fixes LP Bug#861650 - Glance client deps
* Added some examples for "glance add"
* Bug#894027: use correct module when building docs
* Adds option to set custom data buffer dir
* Fix bug 891738
* Added missing depend on nosexcover
* Removed some cruft
* Fixes LP Bug#837817 - bin/glance cache disabled
* Separating add vs general store configuration
* Fixes LP Bug#885341 - Test failure in TestImageCacheManageXattr
* Making prefetcher call create\_stores
* Fix handle get\_from\_backend returning a tuple
* Casting foreign\_keys to a list in order to index into it
* Using Keystone's new port number 35357
* Adding admin\_token to image-cache config
* Removing assertGreaterEqual
* Correcting image cleanup in cache drivers
* Adding tests to check 'glance show <ID>' format
* Update 'glance show' to print a valid URI. Fixes bug #888370
* Gracefully handle image\_cache\_dir being undefined
* Remove unused versions pipeline from PasteDeploy config
* Allow glance-cache-\* find their config files
* Add some test cases for glance.common.config
* Fix name error in cache middleware
* Check to make sure the incomplete file exists before moving it during rollback. Fixes bug #888241
* Fix global name 'sleep' is not defined in wsgi.py. Fixes bug #888215
* Fixes LP Bug#878411 - No docs for image cache
* Fix typo in the cached images controller
* load gettext in \_\_init\_\_ to fix '\_ is not defined'
* Adds option to encrypt 'location' metadata
* Fix LP Bug#885696 two issues with checked\_iter
* Fix Keystone API skew issue with Glance client
* Fixed test failure in Python 2.6
* Glance redirect support for clients
* Fixes LP Bug#882185 - Document Swift HTTPS default
* Fixes LP Bug#884297 - Install docs should have git
* Add "import errno" to a couple of files
* Consolidate glance.utils into glance.common.utils
* Correcting exception handling in glance-manage
* More cache refactoring - Management Middleware
* Fixes LP Bug#882585 - Backend storage disconnect
* Convert image id value to a uuid
* Remove 'location' from POST/PUT image responses
* Removing glance-upload
* Adds Driver Layer to Image Cache
* Removed 'mox==0.5.0' and replaced with just 'mox' in tools/pip-requires
* Removing duplicate mox install in pip-requires
* Add .gitreview config file for gerrit
* Making TCP\_KEEPIDLE socket option optional
* Overhauls the image cache to be truly optional
* Fixing functional tests that require keystone
* Fixes LP Bug#844618 - SQLAlchemy errors not logged
* Additions to .gitignore
* Better document using Glance with Keystone
* Fixes LP Bug#872276 - small typo in error message
* Adds SSL configuration params to the client
* Increases test coverage for the common utils
* Refactoring/cleanup around our exception handling
* Port Authors test to git
* Add RBD store backend
* Fixes LP Bug#860862 - Security creds still shown
* Extract image members into new Glance API controller
* Refactoring registry api controllers
* Returning functionality of s3 backend to stream remote images
* Make remote swift image streaming functional
* Improving swfit store uri construction
* Fixes LP Bug #850685
* Do not allow min\_ram or min\_disk properties to be NULL and if they are None, make sure to default to 0. Fixes bug 857711
* Implementing changes-since param in api & registry
* Documenting nova\_to\_os\_env.sh tool
* Added min\_disk and min\_ram properties to images Fixes LP Bug#849368
* Fixing bug 794582 - Now able to stream http(s) images
* Fixes LP Bug#755916 - Location field shows creds
* Fixes LP Bug #804429
* Fixes Bug #851216
* Fixes LP Bug #833285
* Fixes bug 851016
* Fix keystone paste config for functional tests
* Updating image status docs
* \* Scrubber now uses registry client to communicate with registry \* glance-api writes out to a scrubber "queue" dir on delete \* Scrubber determines images to deleted from "queue" dir not db
* Fixes LP Bug#845788
* Open Essex
* Remove PWD from possible config\_file\_dirs
* Update paste config files with keystone examples. see ticket: lp839559
* Adding Keystone support for Glance client
* Fix cached-images API endpoint
* Bug fix lp:726864
* Fixes Bug: lp825024
* Add functional tests
* Switch file based logging to WatchedFileHandler for logrotate
* Fixes LP Bug #827660 - Swift driver fail 5G upload
* Bug lp:829064
* Bug lp:829654
* Update rfc.sh to use 'true'
* Addresses glance/+spec/i18n
* Addresses glance/+spec/i18n
* Add rfc.sh for git review
* Add support for shared images
* Add notifications for uploads, updates and deletes
* Bug Fix lp:825493
* Bug fix lp:824706
* Adds syslog support
* Fixes image cache enabled config
* Improves logging by including traceback
* Addresses glance/+spec/i18n
* casting image\_id to int in db api to prevent false matching in database lookups
* Addresses Bug lp:781410
* Removes faked out datastore entirely, allowing the DB API to be unit tested
* Consolidates the functional API test cases into /glance/tests/functional/test\_api.py, adds a new Swift functional test case, verified that it works on Cloud Files with a test account
* breaking up MAX\_ITEM\_LIMIT and making the new values configurable
* Add @skip\_if\_disabled decorator to test.utils and integrate it into the base functional API test case. The S3 functional test case now uses test\_api.TestApi as its base class and the setUp() method sets the disabled and disabled\_message attributes that the @skip\_if\_disabled decorator uses
* Adds swift\_enable\_snet config
* Fixes bug lp:821296
* Detect python version in install\_venv
* Implemented @utils.skip\_test, @utils.skip\_unless and @utils.skip\_if functionality in glance/test/utils.py. Added glance/tests/unit/test\_skip\_examples.py which contains example skip case usages
* Changed setup.py to pull version info from git
* Removes the call to webob.Request.make\_body\_seekable() in the general images controller to prevent the image from being copied into memory. In the S3 controller, which needs a seekable file-like object when calling boto.s3.Key.set\_contents\_from\_file(), we work around this by writing chunks of the request body to a tempfile on the API node, then stream this tempfile to S3
* Make sure we're passing the temporary file in a read-mode file descriptor to S3
* Removes the call to webob.Request.make\_body\_seekable() in the general images controller to prevent the image from being copied into memory. In the S3 controller, which needs a seekable file-like object when calling boto.s3.Key.set\_contents\_from\_file(), we work around this by writing chunks of the request body to a tempfile on the API node, then stream this tempfile to S3
* - removed curl api functional tests - moved httplib2 api functional tests to tests/functional/test\_api.py
* merging trunk
* Make tests a package under glance
* removing curl tests and moving httplib2 tests
* Move tests under the glance namespace
* Add filter support to bin/glance index and details calls
* merging trunk
* Update registry db api to properly handle pagination through sorted results
* Our code doesn't work with python-xattr 0.5.0, and that's the version installed in RH/Centos :( Andrey has updated the RPM config to specify 0.6.0, and this does the same to pip-requires
* Replaced occurances of |str(e)| with |"%s" % e|
* First round of refactoring on stores
* Remove expected\_size stuff
* Make calling delete on a store that doesn't support it raise an exception, clean up stubout of HTTP store and testing of http store
* adding sort\_key/sort\_dir to details
* merging lp:~rackspace-titan/glance/registry-marker-lp819551
* adding sort\_key/sort\_dir params
* adding --fixes
* adding complex test cases to recreate bug; updating db api to respect marker
* Add configuration check for Filesystem store on configure(), not every call to add()
* Refactor S3 store to make configuration one-time at init versus every method call invocation
* Refactor Swift store to make configuration one-time at init versus every method call invocation
* Forgot to add a new file..
*   Refactors stores to be stateful:
* Make sure xattr>=0.6.0 in pip-requires
* updating documentation
* making limit option an integer
* updating broken tests
* adding limit/marker to bin/glance details call
* adding limit/marker params to bin/glance index
* merging trunk
* Use of "%default" in help string does not work, have to use "%(default)s". Per the 4th example http://docs.python.org/dev/library/argparse.html#prog
* Added nose-exclude to pip-requires
* Installed nose-exclude, ./run\_tests.sh --unittests-only add '--exclude-dir=tests/functional' to NOSEARGS
* This one has been bugging me for a while, finally found out how to use the local default variable in the help string
* adding --fixes to commit
* Replaced occurances of |str(e)| with |"%s" % e|
* Completes the S3 storage backend. The original code did not actually fit the API from boto it turned out, and the stubs that were in the unit test were hiding this fact
* Fix for boto1.9b issue 540 (http://code.google.com/p/boto/issues/detail?id=540)
* Remove unnecessary hashlib entry in pip-requires
* Add myself to Authors (again)
* hashlib exists all of the way back to python 2.5, there's no need to install an additional copy
* Adds image\_cache\_enabled config needed to enable/disable the image-cache in the glance-api
* Add more unit tests for URI parsing and get\_backend\_class() (which is going away in refactor-stores branch, but oh well..)
* Added unit tests for swift\_auth\_url @property. It was broken. startwith('swift+http') matches swift+https first
* Don't tee into the cache if that image is already being written
* Re-add else: raise
* Final fixes merging Rick's swift\_auth\_url @property with previous URI parsing fixes that were in the S3 bug branch..
* merge trunk
* This updates the pep8 version in pip-requires and updates run\_tests.sh to provide a '-p' option that allows for just pep8 to be run
* Adding back image\_cache\_enabled config option for glance-api
* Don't tee same image into cache multiple times
* Fixes two things:
* adding run\_tests.sh -p
* PEP8 whitespace fix
* Swift client library needs scheme
* Add tests for bad schemes passed to get\_backend\_class()
* Add tests for bad URI parsing and get\_backend\_class()
* Include missing bin/glance-scrubber in tarball
* Include bin/glance-scrubber in tarball binaries
* One more auth\_tok-related change, to make it easier for nova to use the client without violating any abstraction boundaries
* Add fix for Bug #816386. Wait up to 5 min for the image to be deleted, but at least 15 seconds
* remove superfluous if statement
* Loop up to 5 min checking for when the scrubber deletes
* Typo in error condition for create\_bucket\_on\_put, make body seekable in req object, and remove +glance from docs and configs
* Add functional test case for checking delete and get of non-existing image
* New local filesystem image cache with REST managment API
* PEP8 Fixes
* Using DELETE instead of POST reap\_invalid, reap\_stalled
* Forgot to put back fix for the get\_backend\_class problem..
* Adding logging if unable to delete image cache file
* Add test case for S3 s3\_store\_host variations and fixes for URL bug
* Ensure image is active before trying to fetch it
* Boy, I'm an idiot...put this in the wrong branch directory..
* Handling ZeroDivision Error
* Using alternate logging syntax
* Missing import of common.config in S3 driver
* Tighten up file-mode handling for cache entry
* Adding request context handling
* Merging trunk
* Fixed review stuff from Brian
* Allow delaying the actual deletion of an image
* have the scrubber init a real context instead of a dict
* merge trunk
* Adds authentication middleware support in glance (integration to keystone will be performed as a piece of middleware extending this and committed to the keystone repository).  Also implements private images.  No limited-visibility shared image support is provided yet
* Take out extraneous comments; tune up doc string; rename image\_visible() to is\_image\_visible(); log authorization failures
* use runs\_sql instead of hackery
* Updating setup.py per bin/image\_cache removal
* Removing bin/image\_cache directory
* Removing cache enabled flag from most confs
* Removing imagecache from default WSGI pipeline
* Allow plugging in alternate context classes so the owner property and the image\_visible() method can be overridden
* Make a context property 'owner' that returns the tenant; this makes it possible to change the concept of ownership by using a different context object
* Unit tests for the context's image\_visible() routine
* We don't really need elevate()..
* Merging in adding\_image\_caching
* Importing module rather than function
* PEP 8 fixes
* Adding reap stalled images
* Returning number of files deleted by cache-clear
* Returning num\_reaped from reap\_invalid
* Moving bin to image\_cache/
* Fixing comment
* Adding reaper script
* Adding percent done to incomplete and invalid image listing
* Renaming tmp\_path to incomplete\_path
* Renaming tmp\_path to incomplete\_path
* Renaming purge\_all clear, less elegant variation
* Refactor to use lookup\_command, so command map is used in one place
* Refactoring to use same command map between functions
* Renaming to cache-prefetching
* Renaming to cache-prefetch
* Renaming to cache-purge-all
* Renaming to cache-purge
* Renaming to cache-invalid
* Beginning to normalize names
* Refactoring out common code
* Refactoring prefetch
* Refactoring purge
* Refactoring purge\_all
* Refactoring listing of prefetching images
* Using querystring params for invalid images
* Link incoming context with image owner for authorization decisions
* How in the world did I manage to forget this?  \*sigh\*
* Make tests work again
* merge trunk
* pull-up from trunk
* This patch:
* PEP8 nit
* Added fix for Bug #813291: POST to /images setting x-image-meta-id to an already existing image id causes a 500 error
* One more try..
* Yet another attempt to fix URIs
* Add in security context information
* Moving cached image list to middleware
* Initial work on moving cached\_images to WSGI middleware
* API is now returning a 409 error on duplicate POST. I also modified the testcase to expect a 409 response
* Add owner to database schema
* Fix URI parsing on MacOSX - Python 2.6.1 urlparse bugs
* Namespacing xattr keys
* PEP8 fixes
* Added 3 tests in tests/functional/test\_httplib2\_api.py to validate is\_public filtering works
* left in 2 fixes.. removing redundant fix
* If meta-data contains an id field, pass it to \_image\_update()
* Adding functional test to show bug #813291
* fixed an inline comment
* removed pprint import, and added check for other 3 images to make sure is\_public=True
* Added 3 tests to validate is\_public filtering works
* Completed rewrite of tests/functional/test\_curl\_api.py using httplib2
* Changes the default filtering of images to only show is\_public to actually use a default filter instead of hard coding. This allows us to override the default behavior by passing in a new filter
* removing pprint import
* completed rewrite of test\_ordered\_images().. this completes rewrite of test\_curl\_api using httplib2
* test\_ordered\_images() missing closing self.stop\_servers()
* finished rewrite of test\_filtered\_images()
* add tests and make None filters work
* Change default is\_public = True to just set a default filter instead of hard coding so it can be overridden
* make the tests work with new trunk
* merge trunk
* Refactoring PrettyTable so it doesn't print the lines itself
* Adding pruner and prefetcher to setup.py
* Removing extraneous text
* PEP 8 fixes
* Adding prefetching list to bin/glance
* More cleanups
* Adding prefetching of images
* Overhaul the way that the store URI works. We can now support specifying the authurls for Swift and S3 with either an http://, an https:// or no prefix at all
* Typo fix
* Removing test exception
* PEP 8 fixes
* Adding Error to invalid cache images
* Show invalid images from bin/glance
* Improving comments
* Cleaning up cache write
* Moving xattrs out to utils
* Clip and justify columns for display
* Including last accessed time in cached list
* Adding more comments
* Adding hit counter
* Pruning invalid cache entries after grace period
* Clear invalid images when purging all cached images
* Rollback by moving images to invalid\_path
* Improving comments
* PEP8 fixes
* Adding cached image purge to bin/glance
* Adding purge all to bin/glance
* Adding catch\_error decorator to bin/glance
* Adding 'cached' command to bin/glance
* Write incomplete files to tmp path
* Adding purge\_all, skip if set if xattrs arent supported
* Adding purge cache API call
* Adding API call to query for cache entries
* Create bin/glance-pruner
* Adding image\_caching
* rewrote test\_traceback\_not\_consumed(), working on test\_filtered\_images()
* Only changes is reverting the patch that added migration to configure\_db() and resets the in-memory SQLite database as the one used in functional testing. Yamahata's commits were unmodified..
* Reverts commit that did db migration during configure\_db() and makes functional tests use in-memory database again. The issues we were seeing had to do with the timeout not being long enough when starting servers with disk-based registry databases and migrate taking too long when spinning up the registry server... this was shown in almost random failures of tests saying failure to start servers. Rather than increase the timeout from 3 seconds, I reverted the change that runs migrate on every startup and cut the total test duration down about 15 seconds
* merged glance trunk
* updated Authors
* Resolves bug lp:803260, by adding a check to ensure req.headers['Accept'] exists before it gets assigned to a variable
* run\_tests.py: make test runner accepts plugins
* run\_tests.py: make run\_tests.py work
* Fix the poor error handling uncovered through bug in nova
* Added stop\_servers() to the end of the test cases
* adding testing & error handling for invalid markers
* removed pprint import
* removed extra space on test\_queued\_process\_flow method definition
* removing commented out line
* merged in lp:~jshepher/glance/functional\_tests\_using\_httplib2\_part2
* applied requested fix in merge-prop
* Removing ordering numbers from the test cases, per jay pipes
* cleaning up the 'no accept headers' test cases. this should fail until Bug lp:803260 is resolved
* Cleaning up docstring spacing
* rewrite of test\_size\_greater\_2G\_mysql from test\_curl\_api.py using httplib2. All tests currently pass
* completed rewrite of test\_003\_version\_variations. bug lp:803260 filed about step #0, and noted as a comment in code
* Fix for bug 803188. This branch also proposed for merging into trunk
* miss-numbering of steps
* fixing pep8 violation
* Added a check to ensure req.headers['Accept'] exists before it gets assigned to a variable. All unit/functional tests pass with this patch
* half way done with rewrite of test\_003\_version\_variations.. step #0 causes a 500 error unless we supply an Accept header
* Prevent query params from being set to None instead of a dict
* removing rogue print
* fixing issue where filters are set to None
* Backport for bug 803055
* rewrote test\_002\_queued\_process\_flow from test\_curl\_api.py, all 6 steps pass against trunk revno:146
* Backport for bug 803055
* Prevent clients from adding query parameters set to None
* ignores None param values passed to do\_request
* cleaning up docstrings
* merging trunk
* docstring
* Added sort\_key and sort\_dir query params to apis and clients
* fixing one last docstring
* docstrings\!
* unit/test\_config.py: make it independent on sys.argv
* run\_tests.py: make test runner accepts plugins
* reverting one import change; another docstring fix
* docstring
* Switch image\_data to be a file-like object instead of bare string in image creating and updating Without this Glance loads all image into memory, then copies it one time, then writes it to temp file, and only after all this copies image to target repository
* Add myself to Authors file
* cleaning up None values being passed into images\_get\_all\_public db call
* adding base client module
* restructuring client code
* merging trunk
* Explicitly set headers rather than add them
* fixing httplib2 functional test that was expecting wrong content-type value
* merging trunk
* rewrite of test\_get\_head\_simple\_post from tests/functional/test\_curl\_api.py using httplib2
* adding assert to check content\_type in GET /images/<id> test
* Explicitly setting Content-Type, Content-Length, ETag, Location headers to prevent duplication
* Bug #801703: No logging is configured for unit tests
* Bug #801703: No logging is configured for unit tests
* Change image\_data to body\_file instead of body
* reset \_MAKER every test and make sure to stop the servers
* Trunk merge, changed returned content-type header from 'application/octet-stream' to 'text/html; charset=UTF-8, application/octet-stream'
* yea python strings
* updated main docstring, as it was directly coppied from test\_curl\_api.py
* merged trunk
* refactoring for Jay
* make image data a constant
* Fixes build failures due to webob upgrade. Updated pop-requires as well
* upgrading webob and fixing tests
* - refactoring wsgi code to divide deserialization, controller, serialization among different objects - Resource object acts as coordinator
* updating client docs
* fixing bad request error messages
* making SUPPORTED\_\* lists into tuples
* slight refactoring
* updating docs
* adding ordering support to glance api
* adding support to registry server and client for sort\_key and sort\_dir params
* re-ordered imports, using alpha-ordering
* removing unnecessary unittest import
* moved httplib2 tests to their own test case file, and uncommented md5 match
* updating docs; adding support for status filter
* adding query filters to bin/glance details
* adding query filters to bin/glance index
* forgot to remove pprint import
* adding hashlib as a dependency to pip-requires (not 100% sure it is not part of the base install though)
* fixed pep8 violation
* rewote the test #7 - #11 for testcase (test\_get\_head\_simple\_post)
* refactoring for Brian
* refactoring from Rick's comments
* Added httplib2 dependency to tools/pip-requires
* rewriting functional tests to utilize httplib2 instead of curl
* make sure it runs as a daemon for the tests
* default to no daemon
* also allow for daemon in the config file so that we can test it easier
* default to non-daemon mode
* change order of paramaters and make event optional
* initial refactoring from Jay's comments
* remove eventlet import and leftover function from previous refactoring
* remove file that got resurrected by accident
* fixed test case
* add functional tests of the scrubber and delayed\_delete
* start the scrubber in addition to the api and registry
* add glance-scrubber to glance-control
* call it a Daemon, cuz it is
* Update Authors
* add the function to the stubs
* cleanup
* adding tests for wsgi module
* removing rogue print
* further refactoring
* adding refactored wsgi code from nova; moving registry api to new wsgi
* delayed scrubbing now works
* add the scrubber startup script
* remove unnecessary option
* add pending\_delete to stub api
* pep8 fixed
* pep8 fixes
* pass in the type we want so it gets converted properly
* self leaked ;(
* only return the results that we need to act on
* allow passing of time to get only results earlier than the time'
* server and scrubber work
* update the docstring to reflect current
* pass in a wakeup\_time for the default time between database hits
* start making the server that will periodicly scrub
* Config file for the scrubber. We make our own connection to the db here and bypass using the registry client so we don't have to expose non-public images over the http connection
* make the commits
* Add webob>=1.0.7 requirement to tools/pip-requires
* all delayed deletes will be going through a new service, if delayed\_delete is False, then delete it right away, otherwise set it to pending\_delete
* add scrub file
* set the image to pending delete prior to scheduling the delete
* refactor a bit so the db gets updated as needed and we only trigger the delay if the config option is set
* add scheduled\_delete\_from\_backend which delays the deletion of images for at least 1 second
* don't delete directly but schedule deletion
* add the api function to get the images that are pending deleteion
* add in delayed delete options
* Add workaround for Webob bug issue #12 and fix DELETE operation in S3 where URL parsing was broken
* Add ability to create missing s3 bucket on first post, similar to Swift driver
* Adding support for marker/limit query params from api, through registry client/api, and implementing at registry db api layer
* Bug #787296: test\_walk\_versions fails with SQLalchemy 0.7
* OK, fixes the issue where older versions of webob.Request did not have the body\_file\_seekable attribute. After investigation, turned out that webob.Request.make\_body\_seekable() method was available in all versions of webob, so we use that instead
* Added new disk\_format type of 'iso'.  Nova can use this information to identify images that have to be booted from a CDROM
* adding marker & limit params to glance client
* Auto-migrate if the tables don't exist yet
* Fix up unit tests for S3 after note from Chris. Also fix bug when S3 test was skipped, was returning error by accident
* \* Adds functional test that works with Amazon S3 \* Fixes parsing of "S3 URLs" which urlparse utterly barfs on because   Amazon stupidly allows forward slashes in their secret keys \* Update /etc/glance-api.conf for S3 settings
* merging trunk, resolving conflicts
* fixing sql query
* completing marker functionality
* Call stop\_servers() for those 2 test cases missing it
* Correct documentation
* Add missing stop\_servers() calls to two functional test cases
* Remove changes to stub database
* Auto-migrate if tables don't exist
* Fix accidental delete
* Remove additions to FIXTURES in test/stubs.py, which requried changes elsewhere
* Sync with trunk
* Documentation for new results filtering in the API and client
* Fix tiny typo
* Documentation for new results filtering in the API and client
* Adding support for query filtering from the glance client library
* renaming query\_params to params
* abstracting out filters query param serialization into BaseClient.do\_request
* renaming tests to resolve conflict
* adding filters param to get\_images and get\_images\_detailed in glance client
* Bug #787296: test\_walk\_versions fails with SQLalchemy 0.7
* Updated doc with 'iso' disk\_format
* Update documentation
* Adding support for api query filtering - equality testing on select attributes: name, status, container\_format, disk\_format - relative comparison of size attribute with size\_min, size\_max - equality testing on user-defined properties (preface property name with "property-" in query)
* updating stubs with new sorting logic; updating tests
* fixing some copy/paste errors
* fixing some webob exceptions
* slight modification to registry db api to ensure marker works correctly
* slight refactoring per jaypipes' suggestions; sort on get images calls is now created\_at desc
* Add tests for 'iso' image type. Remove hard coding of next available image id in tests.  This prevents new test images from being added to the set generated by tests.unit.stubs.FakeDatastore
* pulling from parent branch
* docstring fix
* pushing marker/limit logic down into registry db api
* adding support for marker & limit query params
* removing some unnecessary imports
* making registry db api filters more structured; adding in a bit of sqlalchemy code to filter image properties more efficiently
* consolidating image\_get\_all\_public and image\_get\_filtered in registry db api
* adding test case for multiple parameters from command line
* adding custom property api filtering
* adding size\_min and size\_max api query filters
* implemented api filtering on name, status, disk\_format, and container\_format
* Adds versioning to the Glance API
* Add test and fix for /v1.2/images not properly returning version choices
* Add more tests for version URIs and accept headers and fix up some of Brian's review comments
* Fix merge conflict..
* Changes versioned URIs to be /v1/ instead of /v1.0/
* Improve logging configuration docs..
* Doc and docstring fixes from Dan's review
* Removed some test config files that slipped in..
* Fix up find\_config\_file() to accept an app\_name arg. Update all documentation referencing config files
* Fix pep8 complaint
* Add DISK\_FORMAT for 'iso' type images
* Adds versioning to Glance's API
* Changes glance index to return all public images in any status other than 'killed'. This should allow tools like euca-describe-images to show images while they are in a saving/untarring/decrypting state
* Fix numbering in comment..
* Fixed doh. Updates test case to test for condition that should have failed with status!='active'
* Changes glance index to return all public images in any status other than 'killed'. This should allow tools like euca-describe-images to show images while they are in a saving/untarring/decrypting state
* Adding prefilled Authors, mailmap files Adding test to validate Authors file is properly set up
* Documentation updates to make glance add command clearer, hopefully :)
* adding Authors functionality; fixing one rogue pep8 violation
* Improve logging configuration docs..
* Prevent users from uploading images with a bad or missing store. Allow deletion from registry when backend cannot be used
* bcwaldon review fixups
* adding comment
* Fix for bug #768969: glance index shows non-active images; glance show <ID> does not show status
* Completes the S3 storage backend. The original code did not actually fit the API from boto it turned out, and the stubs that were in the unit test were hiding this fact
* catching NotFound to prevent failure on bad location
* Prevent requests with invalid store in location param
* Allow registry deletion to succeed if store deletion fails
* Documentation updates to make glance add command clearer, hopefully :)
* Fix for LP Bug #768969
* Expanding user confirmation default behavior
* removing excessive exception handling
* pep8 fixes
* docstring and exception handling
* Expanding user\_confirm default behavior
* I modified documentation to show more first-time user friendly examples on using glance. With the previous examples, I followed it as a first-time user and had to spend more than necessary time to figure out how to use it. With this modification, other first-time users would make it work on their systems more quickly
* - Require user confirmation for "bin/glance clear" and "bin/glance delete <id>" - Allow for override with -f/--force command-line option
* adding --force option to test\_add\_clear
* Adds a test case for updating an image's Name attribute. glance update was not regarding 'name' as a top-level modifiable attribute..
* Name is an attribute that is modifiable in glance update, too.
* Mark image properties as deleted when deleting images. Added a unit test to verify public images and their properties get deleted when running a 'glance clear' command
* Update tests and .bzrignore to use tests.sqlite instead of glance.sqlite
* Only modify the connection URL in runs\_sql if the original connection string starts with 'sqlite'
* Create a decorator that handles setting the SQL store to a disk-based SQLite database when arbitrary SQL statements need to be run against the registry database during a test case
* Docstring update on the run\_sql\_command function
* Mark image properties as deleted when deleting images. Added a unit test to verify public images and their properties get deleted when running a 'glance clear' command
* Add log\_file to example glance.conf
* fixing spacing in help text
* adding confirmation on image delete/clear; adding user\_confirm functionality
* Add log\_file to example glance.conf
* Make sure we use get\_option() when dealing with boolean values read from configuration files...otherwise "False" is True :(
* Fixing tests. Sorry for late response
* Make sure we use get\_option() when dealing with boolean values read from configuration files...otherwise "False" is True :(
*  resolve merge conflicts
* chnaged output
* Open Diablo release
* Diablo versioning
* Fake merge with ancient trunk. This is only so that people who "accidentally" have been following lp:~hudson-openstack/glance/trunk will not have problems updating to this

2011.2
------

* Final versioning for Cactus
* fixing after review
* Removes capture of exception from eventlet in \_upload\_and\_activate(), which catches the exceptions that come from the \_safe\_kill() method properly
* RickH fixups from review
* Add catch-all except: block in \_upload()
* change output from glance-registry
* get latest from lp:glance
* Ensures that configuration values for debug and verbose are used if command-line options are not set
* Removes capture of exception from eventlet in \_upload\_and\_activate(), which catches the exceptions that come from the \_safe\_kill() method properly
* Fix logging in swift
* Fix Thierry's notice about switched debug and verbose
* Change parsing of headers to accept 'True', 'on', 1 for boolean truth values
* Final cactus versioning
* OK, fix docs to make it clear that only the string 'true' is allowed for boolean headers. Add False-hood unit tests as well
* Logging was not being setup with configuration file values for debug/verbose
* Fix up the way the exception is raised from \_safe\_kill()... When I "fixed" bug 729726, I mistakenly used the traceback as the message. doh
* Change parsing of headers to accept 'True', 'on', 1 for boolean truth values
* Add the migration sql scripts to MANIFEST.in. The gets them included in not only the tarball, but also by setup.py install
* Add the migration sql scripts to MANIFEST.in. The gets them included in not only the tarball, but also by setup.py install
* Changed raise of exception to avoid displaying incorrect error message in \_safe\_kill()
* fix logging in swift
* Changes "key" column in image\_properties to "name"
* Updated properties should be marked as deleted=0. This allows previously deleted properties to be reactivated on an update
* Adds --config-file option to common options processing
* Update the docs in bin/glance so that help for the 'update' command states that metadata not specified will be deleted
* Fix config test fixtures and pep8 error in bin/glance-manage
* Provide revised schema and migration scripts for turning 'size' column in 'images' table to BIGINT. This overcomes a 2 gig limit on images sizes that can be downloaded from Glance
* Updated properties should be marked as deleted=0. Add unit tests
* Use logging module, not echo, for logging SQLAlchemy. Fixes bug 746435
* Change order of setting debug/verbose logging. Thanks for spotting this, Elgar
* Use logging module, not echo, for logging SQLAlchemy. Fixes bug 746435
* Ensure we don't ask the backend store to delete an image if the image is in a queued or saving state, since clearly the backend state has yet to completely store the image
* Changes "key" column in image\_properties to "name"
* Use logging module, not echo for logging SQLAlchemy
* Updates glance-manage to use configuration files as well as command line options
* Ensure we don't ask a backend store to delete an image if the image is queued or saving
* Moved migration into Python script, otherwise PostgreSQL was not migrated. Added changes to the functional test base class to reset the data store between tests. GLANCE\_SQL\_CONNECTION env variable is now GLANCE\_TEST\_SQL\_CONNECTION
* changed to more typical examples
* Add migration scripts for revising the datatype of the 'size' column in the images table
* Changes to database schema required to support images larger than 2Gig on MySQL.  Does not update the migration scripts
*   Updates to the Registry API such that only external requests to   update image properties purge existing properties. The update\_image   call now contains an extra flag to purge\_props which is set to   True for external requests but False internally
* Updates to the Registry API such that only external requests to update image properties purge existing properties. The update\_image call now contains an extra flag to purge\_props which is set to True for external requests but False internally
* Update the glance registry so that it marks properties as deleted if they are no longer exist when images are updated
* Simple one.. just add back the Changelog I removed by accident in r94. Fixes bug #742353
* Adds checksumming to Glance
* Uhhhm, stop\_servers() should stop servers, not start them! Thanks to Cory for uncovering this copy/paste fail
* Fix up test case after merging in bug fixes from trunk... expected results were incorrect in curl test
* Add ChangeLog back to MANIFEST.in
* Add migration testing and migration for disk\_format/container\_format
* tests.unit.test\_misc.execute -> tests.utils.execute after merge
* Allow someone to set the GLANCE\_TEST\_MIGRATIONS\_CONF environment variable to override the config file to run for the migrations unit test:
* Update the glance registry so that it marks properties as deleted if they are no longer in the update list
* Start eventlet WSGI server with a logger to avoid stdout output
* Adds robust functional testing to Glance
* Add migration script for checksum column
* Fixed an oops. Didn't realized Repository.latest returned a 0-based version number, and forgot to reversed() the downgrade test
* OK, migrations are finally under control and properly tested
* Remove non-existing files from MANIFEST.in
* Removed glance-combined. Fixed README
* Removed glance-commit
* Re-raise \_safe\_kill() exception in non-3-arg form to avoid pep8 deprecation error
* Bug #737979: glance-control uses fixed path to Python interpreter, breaking virtualenv
* Bug #737979: glance-control uses fixed path to Python interpreter, breaking virtualenv
* Removes glance-combined and fixes TypeError from bad function calls in glance-manage
* Start eventlet WSGI server with a logger to avoid stdout output
* Pass boolean values to glance.client as strings, not integers
* Small adjustment on wait\_for\_servers()... fixed infinite loop possibility
* Adds robust functional testing to Glance
* Ensure Content-type set to application/octet-stream for GET /images/<ID>
* Ensure Content-Length sent for GET /images/<ID>
* HTTPBackend.get() needed options in kwargs
* Remove glance-combined (use glance-control all start). Fix glance-manage to call the setup\_logging() and add\_logging\_options() methods according to the way they are called in glance-api and glance-registry
* Support account:user:key in Swift URIs. Adds unit tests for various calls to parse\_swift\_tokens()
* Adds documentation on configuring logging and a unit test for checking simple log output
* Support account:user:key in Swift URIs. Adds unit tests for various calls to parse\_swift\_tokens()
* Cherry pick r86 from bug720816
* Cherry pick r87 from bug720816
* Fixed run\_tests.py addError() method since I noted it was faulty in another branch..
* Tiny pep8'ers
* I stole the colorized code from nova
* Fix typo
* A quick patch to allow running the test suite on an alternate db backend
* Merged trunk -resolved conflicts
* [Add] colorization stolen from nova
* Don't require swift module for unit-tests
* Pep8 fix
* Backing out unit-test workaround
* Changed to have 2 slashes
* Allow unit-tests to run without swift module
* Remove spurios comment in test file
* Add Glance CLI tool
* Silly mistake when resolving merge conflict...fixed
* Fixes passing of None values in metadata by turning them into strings.  Also fixes the passing of the deleted column by converting it to and from a bool.  The test for passing metadata was updated to include these values
* Adds documentation on configuring logging and a test that log\_file works. It didn't, so this also inludes fixes for setting up log handling :)
* fix data passing
* add failing test for None and deleted
* Uses logger instead of logging in migration.py
* Using logger in migration api instead of logging directly
* Only clean up in the cleanup method. Also, we don't need the separate URI now
* Use unregister\_models instead of os.unlink to clean up after ourselves
* Fixed unregister\_models to actually work
* Fixed migration test to use a second DB URL
* Replaced use of has\_key with get + default value
* Make it clear that the checksum is an MD5 checksum in docs
* Adds checksumming to Glance
* Whoops! Left out a self.db\_path
* Allow tests to run on an alternate dburi given via environment variables
* Adds ability for Swift to be used as a full-fledged backend. Adds POST/PUT capabilities to the SwiftBackend Adds lots of unit tests for both FilesystemBackend and SwiftBackend Removes now-unused tests.unit.fakeswifthttp module
* Remove last vestiges of account in Swift store
* Quick fixup on registry.get\_client()
* Public? => Public: per Cory's comment. Added a little more robust exception handling to some methods in bin/glance
* Fixes for Devin and Rick's reviews
* Adds disk\_format and container\_format to Image, and removes the type column
* Fixes client update\_image to work like create\_image.  Also fixes some messed up exceptions that were causing a try, except to reraise
* Final review fixes. Makes disk\_format and container\_format optional. Makes glance-upload --type put the type in properties
* remove test skip
* Put account in glance.conf.sample's swift\_store\_auth\_address, use real swift.common.client.ClientException, ensure tests work with older installed versions of Swift (which do not have, for example, swift.common.client.Connection.get\_auth method)
* Work around Eventlet exception clearing by memorizing exception context and re-raising using 3-arg form
* Adds bin/glance to setup.py
* Fixes from Rick's review #1
* Reverts Image \`type\` back to the old behavior of being nullable
* Work around Eventlet exception clearing
* Add sys.path mangling to glance-upload
* Add sys.path adjustment magic to glance-upload
* Adds ability for Swift to be used as a full-fledged backend. Adds POST/PUT capabilities to the SwiftBackend Adds lots of unit tests for both FilesystemBackend and SwiftBackend Removes now-unused tests.unit.fakeswifthttp module
* Couple tiny cleanups noticed when readin merge diff.
* bin/glance-admin => bin/glance, since it's really just the CLI tool to interact with Glance. Added lots of documentation and more logging statements in some critical areas (like the glance.registry calls..
* Adds lots of unit tests for verifying exceptions are raised properly with invalid or mismatched disk and container formats
* Makes --kernel and --ramdisk required arguments for glance-upload since Nova currently requires them
* Removing image\_type required behavior
* Removing requirement to pass kernel and ramdisk
* Add test cases for missing and invalid disk and container formats
* Requiring kernel and ramdisk args in glance-upload
* Make disk\_format and container\_format required
* Make disk\_format and container\_format required
* Adds an admin tool to Glance (bin/glance-admin) that allows a user to administer the Glance server:
* Make sure validate\_image() doesn't throw exception on missing status when updating image
* Adds disk\_format and container\_format to Image, and removes the type column
* This adds a test case for LP Bug 704854 -- Exception raised by Registry server gets eaten by API server
* Add debugging output to assert in test\_misc. Trying to debug what Hudson fails on..
* Fixups from Rick's review
* Removes now-unnecessary @validates decorator on model
* I should probably rebase this commit considering all the previous commits weren't actually addressing the issue. The fact that I had glance-api and glance-registry installed on my local machine was causing the test runs to improperly return a passing result
* Use Nova's path trick in all bins..
* Add path to glance-control
* Removes image type validation in the Glance registry
* Adding vhd as recognized image type
* Reverting the removal of validation
* Removing image type validation
* Adds --pid-file option to bin/glance-control
* Add %default for image type in glance-upload
* Adds Location: header to return from API server for POST /images, per APP spec
* Cleanups from Soren's review
* Add an ImportError check when importing migrate.exceptions, as the location of that module changed in a recent version of the sqlalchemy-migrate library
* Adds Location: header to return from API server for POST /images, per APP spec
* This adds a test case for LP Bug 704854 -- Exception raised by Registry server gets eaten by API server
* Adds --pid-file option to bin/glance-control
* Add an ImportError check when importing migrate.exceptions, as the location of that module changed in a recent version of the sqlalchemy-migrate library
* Adds sql\_idle\_timeout to reestablish connections to database after given period of time
* Add sql\_idle\_timeout
* Removes lockfile and custom python-daemon server initialization in favour of paste.deploy
* Review 3 fixups
* Remove get\_config\_file\_options() from glance-control
* Fixes for Rick review #2
* Remove no-longer-needed imports..
* Remove extraneous debug import..
* Changes the server daemon programs to be configured only via paste.deploy configuration files. Removed ability to configure server options from CLI options when starting the servers with the exception of --verbose and --debug, which are useful during debugging
* Adds glance-combined and glance-manage to setup.py
* Fix merge conflicts
* Adds glance-combined and glance-manage to setup.py
* Fixes bug 714454
* ReStructure Text files need to end in .rst, not .py ;)
* Update README, remove some vestigial directories, and other small tweaks
* Removing dubious advice
*     Adds facilities for configuring Glance's servers via     configuration files
* Use fix\_path on find\_config\_file() too
* Fixups from Rick's review
* Including tests/ in pep8
* Typo fixes, clarifying
* Updating README, rmdir some empty dirs
* Adds bin/glance-control program server daemonization wrapper program based on Swift's swift-init script
* Ignore build and deploy-related files
* Adds sqlalchemy migrations
* Fix bug 712575. Make BASE = models.BASE
* Make sure BASE is the models.BASE, not a new declarative\_base() object
* Had to reverse search order of directories for finding config files
* Removes lockfile and custom python-daemon server initialization in favour of paste.deploy
* Adds facilities for configuring Glance's servers via configuration files
* Creating indexes
* Adding migration test
* Fixing migration import errors
* Small cleanups
* glance-manage uses common options
* Merging in glance/cactus
* Pep8 fix
* Pep8 fixes
* Refactoring into option groups

0.1.7
-----

* Hopefully-final versioning (0.1.7), no review needed
* Final versioning, no review needed
* Adding db\_sync to mirror nova
* Adding some basic documentation
* Better logging
* Adding image\_properties migration
* Adding migration for images table
* Adding migration management commands
* Remove debugging output that wasn't supposed to go into this branch (yet) :)
* Adds --debug option for DEBUG-level logging. --verbose now only outputs INFO-level log records
* Typo add\_option -> add\_options
* Fixes from Rick's review. Thanks, Rick
* Adds --sql-connection option
* First round of logging functionality:
* Merged use-optparse
* Removes glance.common.db.sqlalchemy and moves registration of models and create\_engine into glance.registry.db.api
* pep8-er in bin/glance-combined
* Fixes lp710789 - use-optparse breaks daemonized process stop
* Adds bin/glance-combined. Useful in testing..
* Tiny pep8 fixup in setup.py
* Rework what comes back from parse\_options()[0] to not stringify option values. Keep them typed
* Remove use of gflags entirely. Use optparse
* Removing unecessary param to get\_all\_public
* Merging trunk
* Adding back some missing code
* Cleaning up some code
* Makes Glance's versioning non-static. Uses Nova's versioning scheme
* Adds/updates the copyright info on most of the files in glance and copies over the Authors check from Nova
* Removing sqlalchemy dir
* Removed methods from sqlalchemy/api
* Refactor update/create
* Messed up a permission somehow
* Refactoring destroy
* feh
* A few more
* A few more I missed
* version bumped after tarball cut. no review needed..
* Bump version
* Removing authors test for now
* PEP8 cleanup
* PEP8 cleanup
* Should fix the sphinx issue
* Adds architecture docs and enables Graphviz sphinx extension. Also cleans up source code formatting in docs
* Make sphinx conditional
* bumps version after tarball release of 0.1.4
* Bump version
* Added bzr to pip-requires and refixed some pep8 stuff
* Authors check
* A few more copyrights
* Copyright year change
* Pylint cleanup
* Added copyright info
* Adds architecture docs and enables Graphviz sphinx extension. Also cleans up source code formatting in docs
* bumps release version. ready for Bexar final release
* Version bump after release
* added sphinx and argparse into tools/pip-requires so that setup.py works. this bug also prevents nova from creating a virtualenv
* fixes setup install pip dependencies
* Version bump for release
* Fixes bug #706636: Make sure pep8 failures will return failure for run\_tests.sh
* Make run\_tests.sh return failure when pep8 returns fail, and fix the pep8 error in /bin/glance-upload
* This patch: \* Converts dashes to underscores when extracting image-properties from HTTP headers (we already do this for 'regular' image attributes \* Update image\_properties on image PUTs rather than trying to create dups
* This patch replaces some remaining references to req.body (which buffers the entire request body into memory!) with the util.has\_body method which can determine whether a body is present without reading any of it into memory
* Adding Apache license, fixing long line
* Making glance-upload a first-class binary
* Revove useless test\_data.py file, add image uploader
* Fix property create
* Dont buffer entire image stream on PUT
* Adds man pages for glance-registry and glance-api programs. Adds Getting Started guide to the Glance documentation
* Fixes LP Bug #700162: Images greater than 2GB cannot be uploaded using glance.client.Client
* Duh, it helps to import the class you are inheriting from...
* OK, found a solution to our test or functional dilemma. w00t
* Make compat with chunked transfer
* Removes the last vestiges of Twisted from Glance
* Pull in typo fix
* Add in manpage installation hook. Thanks Soren :)
* Fixes LP Bug #700162: Images greater than 2GB cannot be uploaded using glance.client.Client
* Removes Twisted from tools/install\_venv.py and zope.interface from tools/pip-requires. Shaved a full 45 seconds for me off of run\_tests.sh -V -f now we're not downloading a giant Twisted tarball..
* Remove last little vestiges of twisted
* Quick typo fix in docs
* Add run\_tests.py to tarball
* Also include run\_tests.py in tarball
* Adds man pages for glance-registry and glance-api. Adds Getting Started guide to Glance docs
* Fixes bug #696375: x-image-meta-size not optional despite documentation saying so
* PEP8 fixes in /glance/store/\_\_init\_\_.py
* Fix Bug #704038: Unable to start or connect to register server on anything other than 0.0.0.0:9191
* Fix Bug #704038: Unable to start or connect to register server on anything other than 0.0.0.0:9191
* upgrade version..
* Fixes Bug#696375: x-image-meta-size is not optional, contrary to documentation
* Increase version after release
* Cut 0.1.2
* Files missing from the tarball (and you probably need to cut a 0.1.2.)
* Cleanup of RST documentation and addition of docs on an image's status
* Include some files that were left out
* Implements the S3 store to the level of the swift store
* fixes bug698318
* Fixes suggested by JayPipes review. Did not modify docstrings in non-related files
* This merge is in conjunction with lp:~rconradharris/nova/xs-snap-return-image-id-before-snapshot
* Updating docs
* Merging trunk
* Clean up the rest of Glance's PEP8 problems
* PEP-8 Fixes
* Fixing eventlet-raise issue
* Bug #698316: Glance reads the whole image into memory when handling a POST /images request
* Merging trunk
* Fixed pylint/pep8 for glance.store.s3
* Implement S3 to the level of swift
* removing old methods
* refactoring so update can take image\_data
* More PEP8 fixes
*   Fix all Glance's pep8 problems
* Remove incorrect doccomments about there being a default for the host parameter, fix misdocumented default port, and remove handling of missing parameters in BaseClient, because the values are always specified by the subclass's \_\_init\_\_
* Bug #696385: Glance is not pep8-clean
* Bug #696382: Glance client parameter defaults misdocumented
*     Fixes a number of things that came up during initial     coding of the admin tool:
* Made review changes from Rick
* Duh, use\_ssl should not use HTTPConnection..
* Remove final debugging statement
* merge trunk
* Remove debugging statements
* Fixes a number of things that came up during initial coding of the admin tool:
* fix bug 694382
* Bug #694382: setup.py refers to parallax-server and teller-server, when these have been renamed
* documentation cleanup and matching to other OpenStack projects.  Glance is no longer the red-headed documentation stepchild in OpenStack..
* Converts timestamp attributes to datetime objects before persisting
* Adding \_\_protected\_attributes\_\_, some PEP8 cleanups
* review fixes
* Update sphinx conf to match other OpenStack projects
* Documentation cleanup. Splits out index.rst into multiple section docs
* Converting to datetime before saving image
* Enhances POST /images call to, you know, actually make it work..
* Make directory for filesystem backend
* doing the merge of this again...somehow the trunk branch never got rev26 :(
* Adds POST /images work that saves image data to a store backend
* Update docs for adding image..
* Fix Chris minor nit on docstring
* Fixes binaries, updates WSGI file to more recent version from Nova, and fixes an issue in SQLAlchemy API that was being hidden by stubs and only showed up when starting up the actual binaries and testing..
* Major refactoring..
* Fix testing/debug left in
* Fixes from review
* Documentation updates and GlanceClient -> Client
* Refactor a bunch of stuff around the image files collection
* Cleanup around x-image-meta and x-image-meta-property HTTP headers in GET/HEAD
* Update /glance/client.py to have GlanceClient do all operations that RegistryClient does
* Merges Glance API with the registry API: \* Makes HEAD /images/<ID> return metadata in headers \* Make GET /images/<ID> return image data with metadata   in headers Updates docs some (more needed)
* Second step in simplifying the Glance API
* This is the first part of simplifying the Glance API and consolidating the Teller and Parallax APIs into a single, unified Glance API
* Adds DELETE call to Teller API
* Fixes Swift URL Parsing in Python 2.6.5 by adding back netloc
* Moving imports into main which will only be executed after we daemonize thus avoiding the premature initialization of epoll
* Delaying eventlet import until after daemonization
* Fix Swift URL parsing for Python 2.6.5
* Don't leak implementation details in Swift backend. Return None on successful delete\_object call
* Adds call to Swift's DELETE
* Typo fixed and tiny cleanups
* Adds DELETE to Teller's API
* Just some small cleanups, fixing:   \* Swapped port numbers (Parallax Port <=> Teller port)   \* Removing extraneous routes in Teller API   \* Adding required slashes to do\_request
*     \* Changes Teller API to use REST with opaque ID sent in       API calls instead of a "parallax URI". This hides the       URI stuff behind the API layer in communication between       Parallax and Teller.     \* Adds unit tests for the only complete Teller API call so       far: GET images/<ID>, which returns a gzip'd string of       image data
* Fixing swapped port numbers, removing extraneous routes in Teller controller, adding required slash for do\_request calls
* \* Changes Teller API to use REST with opaque ID sent in   API calls instead of a "parallax URI".  This hides the   URI stuff behind the API layer in communication between   Parallax and Teller. \* Adds unit tests for the only complete Teller API call so   far: GET images/<ID>, which returns a gzip'd string of   image data
* Add files attribute to Parallax client tests
* Adds client classes for Parallax and Teller and fixes some issues where our controller was not returning proper HTTP response codes on errors..
* Cleanup/fixes for Rick review
* Adds client classes ParallaxClient and (stubbed) TellerClient to new glance.client module
* packaging fixups preparing for release candidate
* Remove symlinks in bin/
* Packaging fixups
* awesomeness. merging into trunk since my parallax-api is already in trunk I believe. :)
* Moving ATTR helpers into db module
* PUTing and POSTing using image key
* Quick fix...gives base Model an update() method to make it behave like a dict
* Make returned mapping have an 'image' key to help in XML serialization
* Ignore virtualenv directory in bzr
* This patch removes unique index on the 'key' column of image\_metadatum and replaces it with a compound UniqueConstraint on 'image\_id' and 'key'. The 'key' column remains indexed
* Fixes lp653358
* Renaming is\_cloudfiles\_available -> is\_swift\_available
* Adds compound unique constraint to ImageMetadatum
* Using swift.common.client rather than python-cloudfiles in Teller's Swift backend
* Adds DELETE to the Parallax REST API
* Implements the REST call for updating image metadata in the Parallax API
* Implements Parallax API call to register a new image
* Adds a /images/detail route to the Parallax controller, adds a unit test for it, and cleans up Michael's suggestions
* Works around non-RFC compliance in Python (< 2.6.5) urlparse library
* Workaround for bug in Python 2.6.1 urlparse library
* Adds tests for bad status set on image
* Implements Parallax API call to register a new image
* This patch overhauls the testing in Glance:
* unittest2 -> unittest. For now, since not using unittest2 features yet
* Fixes up test\_teller\_api.py to use stubout correctly. Fixes a few bugs that showed up in the process, and remove the now-unnecessary FakeParallaxAdapter
* First round of cleaning up the unittests. Adds test suite runner, support for virtualenv setup and library dependencies, resolves issues with ImportErrors on cloudfiles, adds pymox/stubout support and splits the backend testing into distinct unittest cases
* With this patch Parallax and teller now work end-to-end with the Swift backend
* Adding missing backend files, fixing typos in comments
* This patch:   \* Decouples Controller for ParallaxAdapter implementation by adding generic RegistryAdapter and providing a lookup function   \* Adds base model attributes to Parallax's JSON (created\_at, etc)
* Improving symmetry between teller and parallax
* Fixing swift authurl
* Add RegistryAdapter, include ModelBase attributes
* Fixing Teller image tests
* Created teller-server.py in bin/
* Cleaning up Teller backend
* Rewrote ImageController to inherit from the work Rick Harris did in glance.common. Moved it into teller/api/images.py to make teller match parallax. Fixed tests. Renamed them to distinguish if any parallax tests ever get written
* Adding Image index call, nesting the Image show dict to facilitate XML serialization
* Moving parallax models out of common and into the parallax module
* Updated tests
* Reimplements server.py as a wsgi api inheriting from glance.common
* This patch:   \* pulls in a number of useful libraries from Nova under the common/ path (we can factor those out to a shared library in Bexar-release)   \* Defines the models in common.db.sqlalchemy.models.py (this should be factored out into the parallax package soon)   \* Adds the parallax api-server under /bin (if PyPI was used to pull python-daemon and python-lockfile, you may need to apply a patch I have against it)
* Changes the obj['uri'] to obj['location'] to better sync with the representation within Nova. Adds the image\_lookup\_fn = ParallaxAdapter.lookup to teller.server
* ImageChunk -> ImageFile, merging APIRouter into API for now
* Adding Apache header to test\_data.py
* Small cleanups
* Parallax will return obj['location'] instead of obj['uri'], also maybe a parallax lookup fn would be nice?
* Implements a Parallax adapter for looking up images requested from nova. Adds a size check to SwiftBackend to ensure that the chunks haven't been truncated or anything
* Reconciling parallax modifications with modulization of glance
* Adding Images controller
* Adding API directory and server.py
* Modulify the imports
* Implements Parallax adapter for lookups from Teller, also adds size expectations to the backend adapters
* Adding files from Nova
* Makes glance a module, containing teller and parallax sub-modules
* libify glance into teller and parallax modules. Make nosetests work by making tests and tests/unit/ into packages
* Rearranged the code a little. Added a setup.py. Added sphinx doc skeleton
* Added setup.py and sphinx docs
* Reorg to make Monty's build pedanticness side happier
* Implements Swift backend for teller
* ignore all .pyc files
* Merging ricks changes
* Adding basic image controller and mock backends
* Adding description of registry data structure
* Adding teller\_server
* adding filesystem and http backends
* Initial check-in
