2011-05-18  Brian Waldon  <brian.waldon@rackspace.com>

	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)

2011-05-17  Brian Waldon  <brian.waldon@rackspace.com>

	docstring fix

2011-05-16  Brian Waldon  <brian.waldon@rackspace.com>

	removing some unnecessary imports

2011-05-16  Brian Waldon  <brian.waldon@rackspace.com>

	making registry db api filters more structured; adding in a bit of sqlalchemy code to filter image properties more efficiently

2011-05-16  Brian Waldon  <brian.waldon@rackspace.com>

	consolidating image_get_all_public and image_get_filtered in registry db api

2011-05-15  Brian Waldon  <brian.waldon@rackspace.com>

	adding test case for multiple parameters from command line

2011-05-15  Brian Waldon  <brian.waldon@rackspace.com>

	adding custom property api filtering

2011-05-15  Brian Waldon  <brian.waldon@rackspace.com>

	adding size_min and size_max api query filters

2011-05-14  Brian Waldon  <brian.waldon@rackspace.com>

	implemented api filtering on name, status, disk_format, and container_format

2011-05-14  jaypipes@gmail.com

	Adds versioning to the Glance API.
	
	I'd like to just get comments on my approach and go from there. Thanks in advance for review comments!

2011-05-13  jaypipes@gmail.com

	Add test and fix for /v1.2/images not properly returning version choices.

2011-05-12  jaypipes@gmail.com

	Add more tests for version URIs and accept headers and fix up some of Brian's review comments

2011-05-11  jaypipes@gmail.com

	Fix merge conflict...

2011-05-11  jaypipes@gmail.com

	Changes versioned URIs to be /v1/ instead of /v1.0/
	
	Adds middleware that detects versioned URIs and also
	detects media types in the Accept: header and attempts
	to determine the API controller to return for the
	client request.
	
	Adds a bunch of functional test cases for variations
	of calling the versioned and unversioned URIs with and
	without Accept: headers.

2011-05-10  jaypipes@gmail.com

	Doc and docstring fixes from Dan's review

2011-05-09  jaypipes@gmail.com

	Removed some test config files that slipped in...

2011-05-09  jaypipes@gmail.com

	Fix up find_config_file() to accept an app_name arg. Update all documentation referencing config files.

2011-05-05  jaypipes@gmail.com

	Adds versioning to Glance's API.
	
	Important notes:
	
	* Split API and Registry configuration files out into 2 files
	Therefore, we need to update the packaging/upstart scripts
	and documentation
	* The paste.deploy stuff is now ready to go for pipeline-style
	middleware that is coming with authentication
	* /images -> /v1.0/images
	* /versions endpoint added
	* Split out the starting/stopping of servers into a Server class
	in tests.functional.FunctionalTestCase. This was really useful
	to get different configuration files working well.

2011-05-11  jaypipes@gmail.com

	Improve logging configuration docs...

2011-04-26  jaypipes@gmail.com

	Improve logging configuration docs...

2011-05-05  jaypipes@gmail.com

	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.
	
	One line fix. 110 line test case. :)

2011-05-04  jaypipes@gmail.com

	Fix numbering in comment...

2011-05-04  jaypipes@gmail.com

	Fixed doh. Updates test case to test for condition that should have failed with status!='active'

2011-05-03  jaypipes@gmail.com

	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.
	
	One line fix. 110 line test case. :)

2011-04-29  Brian Waldon  <brian.waldon@rackspace.com>

	Adding prefilled Authors, mailmap files
	Adding test to validate Authors file is properly set up

2011-04-27  Brian Waldon  <brian.waldon@rackspace.com>

	adding Authors functionality; fixing one rogue pep8 violation

2011-04-29  jaypipes@gmail.com

	Documentation updates to make glance add command clearer, hopefully :)

2011-04-22  jaypipes@gmail.com

	Documentation updates to make glance add command clearer, hopefully :)

2011-04-26  Brian Waldon  <brian.waldon@rackspace.com>

	Prevent users from uploading images with a bad or missing store. Allow deletion from registry when backend cannot be used.

2011-04-26  Brian Waldon  <brian.waldon@rackspace.com>

	adding comment

2011-04-22  Brian Waldon  <brian.waldon@rackspace.com>

	catching NotFound to prevent failure on bad location

2011-04-22  Brian Waldon  <brian.waldon@rackspace.com>

	Prevent requests with invalid store in location param

2011-04-22  Brian Waldon  <brian.waldon@rackspace.com>

	Allow registry deletion to succeed if store deletion fails

2011-04-26  jaypipes@gmail.com

	Fix for bug #768969: glance index shows non-active images; glance show <ID> does not show status.

2011-04-22  jaypipes@gmail.com

	Fix for LP Bug #768969.
	
	Two things were happening that this patch corrects:
	
	a) If adding an image fails, the glance add output says that
	adding the image failed, however, doing a glance index would
	show the image. This was because the call to get all public
	images was not correctly filtering the result for 'active'
	status images. The image failing to be added causes the image
	status to be 'killed', and so killed images should not appear
	in the output of glance index or glance detail.
	b) glance show <ID> was not showing the status of the image, so
	it was not clear that the image, while not added successfully,
	was still in the registry, but in a 'killed' status.
	
	I added a note to the output of the failed add command that the
	Glance registry may still have an image record, but the status
	would likely be in the 'killed' state.
	
	Added a functional test case that verified the behaviour in the bug
	and verified the fix, once coded.

2011-04-22  Brian Waldon  <brian.waldon@rackspace.com>

	Expanding user confirmation default behavior.

2011-04-22  Brian Waldon  <brian.waldon@rackspace.com>

	removing excessive exception handling

2011-04-22  Brian Waldon  <brian.waldon@rackspace.com>

	pep8 fixes

2011-04-22  Brian Waldon  <brian.waldon@rackspace.com>

	docstring and exception handling

2011-04-22  Brian Waldon  <brian.waldon@rackspace.com>

	Expanding user_confirm default behavior

2011-04-21  Joseph Suh  <jsuh@bespin>

	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.

2011-04-18  Joseph Suh  <jsuh@bespin>

	resolve merge conflicts

2011-04-13  Joseph Suh  <jsuh@bespin>

	change output from glance-registry

2011-04-13  Joseph Suh  <jsuh@bespin>

	get latest from lp:glance

2011-03-31  Jinwoo 'Joseph' Suh  <jsuh@isi.edu>

	changed to more typical examples

2011-04-18  Joseph Suh  <jsuh@bespin>

	chnaged output

2011-04-21  Brian Waldon  <brian.waldon@rackspace.com>

	- Require user confirmation for "bin/glance clear" and "bin/glance delete <id>"
	- Allow for override with -f/--force command-line option

2011-04-20  Brian Waldon  <brian.waldon@rackspace.com>

	adding --force option to test_add_clear

2011-04-19  Brian Waldon  <brian.waldon@rackspace.com>

	fixing spacing in help text

2011-04-19  Brian Waldon  <brian.waldon@rackspace.com>

	adding confirmation on image delete/clear; adding user_confirm functionality

2011-04-20  jaypipes@gmail.com

	Adds a test case for updating an image's Name attribute. glance update was not regarding 'name' as a top-level modifiable attribute...

2011-04-20  jaypipes@gmail.com

	Name is an attribute that is modifiable in glance update, too..

2011-04-20  Dan Prince  <dan.prince@rackspace.com>

	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.

2011-04-20  Dan Prince  <dan.prince@rackspace.com>

	Update tests and .bzrignore to use tests.sqlite instead of glance.sqlite.

2011-04-20  Dan Prince  <dan.prince@rackspace.com>

	Only modify the connection URL in runs_sql if the original connection
	string starts with 'sqlite'.

2011-04-20  Dan Prince  <dan.prince@rackspace.com>

	Merge in code from lp:~jaypipes/glance/clear_image_props to make a nice
	decorator function we can use for tests that need to run backend SQL
	commands. This should keep our tests zippy but provide us the access we
	need for disk based DB access.

2011-04-20  jaypipes@gmail.com

	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

2011-04-20  Dan Prince  <dan.prince@rackspace.com>

	Docstring update on the run_sql_command function.

2011-04-20  Dan Prince  <dan.prince@rackspace.com>

	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.

2011-04-19  jaypipes@gmail.com

	Add log_file to example glance.conf

2011-04-19  jaypipes@gmail.com

	Add log_file to example glance.conf

2011-04-19  jaypipes@gmail.com

	Make sure we use get_option() when dealing with boolean values
	read from configuration files...otherwise "False" is True :(

2011-04-19  jaypipes@gmail.com

	Make sure we use get_option() when dealing with boolean values
	read from configuration files...otherwise "False" is True :(

2011-04-19  Eldar Nugaev  <enugaev@griddynamics.com>

	Fixing tests.
	Sorry for late response. 
	
	Rick Harris wrote on 2011-04-12
	Really nice job, Eldar.
	
	> 46	+        image_swift = StringIO.StringIO("nevergonnamakeit")
	> 47	+        options = SWIFT_OPTIONS.copy()
	> 48	+        del options['swift_store_user']
	> 49	+        self.assertRaises(BackendException,
	> 50	+                          SwiftBackend.add,
	> 51	+                          2, image_swift, options)
	
	Might be better to DRY up the code some by adding a helper-method, like:
	
	def assertOptionRequiredForSwift(self, key):
	image_swift = StringIO.StringIO("nevergonnamakeit")
	options = SWIFT_OPTIONS.copy()
	del options[key]
	self.assertRaises(BackendException,
	SwiftBackend.add,
	2, image_swift, options)
	
	Marking as Needs Fixing, but if you don't like the idea, I'd be willing to set this as Approved (since the suggestion is so minor :-)

2011-04-14  Eldar Nugaev  <enugaev@griddynamics.com>

	fixing after review

2011-04-15  Thierry Carrez  <thierry@openstack.org>

	Open Diablo release.

2011-04-15  Thierry Carrez  <thierry@openstack.org>

	Diablo versioning

2011-04-15  Soren Hansen  <soren@openstack.org>

	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-02-02  Thierry Carrez  <thierry@openstack.org>

	Hopefully-final versioning (0.1.7), no review needed

2011-02-02  Thierry Carrez  <thierry@openstack.org>

	Final versioning, no review needed

2011-04-14  Thierry Carrez  <thierry@openstack.org>

	Final versioning for Cactus

2011-04-13  Thierry Carrez  <thierry@openstack.org>

	Final cactus versioning

2011-04-13  jaypipes@gmail.com

	Removes capture of exception from eventlet in _upload_and_activate(), which catches the exceptions that come from the _safe_kill() method properly.
	
	Also fixes an incorrect call to _safe_kill() with mapping instead of image ID in the block of code that kills an image if a bad checksum is given.
	
	Fixes bug #759018.

2011-04-13  jaypipes@gmail.com

	RickH fixups from review

2011-04-13  jaypipes@gmail.com

	Add catch-all except: block in _upload()

2011-04-13  jaypipes@gmail.com

	Removes capture of exception from eventlet in _upload_and_activate(), which
	catches the exceptions that come from the _safe_kill() method properly.
	
	Also fixes an incorrect call to _safe_kill() with mapping instead of image
	ID in the block of code that kills an image if a bad checksum is given.
	
	Fixes bug #759018.

2011-04-13  jaypipes@gmail.com

	Ensures that configuration values for debug and verbose are used if command-line options are not set.

2011-04-13  jaypipes@gmail.com

	Fix Thierry's notice about switched debug and verbose

2011-04-12  jaypipes@gmail.com

	Logging was not being setup with configuration file values for debug/verbose

2011-04-12  jaypipes@gmail.com

	Merge trunk

2011-04-13  Eldar Nugaev  <enugaev@griddynamics.com>

	Fix logging in swift

2011-04-11  Eldar Nugaev  <enugaev@griddynamics.com>

	fix logging in swift

2011-04-13  jaypipes@gmail.com

	Change parsing of headers to accept 'True', 'on', 1 for boolean truth values.

2011-04-12  jaypipes@gmail.com

	OK, fix docs to make it clear that only the string 'true' is allowed for boolean headers. Add False-hood unit tests as well.

2011-04-11  jaypipes@gmail.com

	Change parsing of headers to accept 'True', 'on', 1 for boolean truth values.

2011-04-12  jaypipes@gmail.com

	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.

2011-04-11  jaypipes@gmail.com

	Changed raise of exception to avoid displaying incorrect error message in _safe_kill()

2011-04-11  Soren Hansen  <soren@linux2go.dk>

	Add the migration sql scripts to MANIFEST.in. The gets them included in not only the tarball, but also by setup.py install.

2011-04-11  Soren Hansen  <soren@linux2go.dk>

	Add the migration sql scripts to MANIFEST.in. The gets them included in not only the tarball, but also by setup.py install.

2011-04-11  jaypipes@gmail.com

	Changes "key" column in image_properties to "name".

2011-04-07  jaypipes@gmail.com

	Merge trunk, resolve conflicts, and 005 -> 006 the migration scripts.

2011-04-04  jaypipes@gmail.com

	Changes "key" column in image_properties to "name".
	
	As with all things migration, this was a pain in the ass.
	
	MySQL doesn't support RENAME INDEX, so a custom SQL migration
	file for it was needed.
	
	Likewise, SQLite doesn't support either RENAME INDEX or
	ALTER TABLE CHANGE COLUMN, so it also needed a custom migration
	script.

2011-03-28  jaypipes@gmail.com

	Merge trunk

2011-04-11  Dan Prince  <dan.prince@rackspace.com>

	Updated properties should be marked as deleted=0. This allows previously deleted properties to be reactivated on an update.
	
	Add unit tests to check the above condition.
	
	Also updated the help for bin/glance's 'update' command so that it explicitly states:
	
	Metadata fields that are not specified in the update command will be deleted.

2011-04-07  Dan Prince  <dan.prince@rackspace.com>

	Update the docs in bin/glance so that help for the 'update' command states
	that metadata not specified will be deleted.

2011-04-07  Dan Prince  <dan.prince@rackspace.com>

	Merge w/ trunk.

2011-04-06  Dan Prince  <dan.prince@rackspace.com>

	Updated properties should be marked as deleted=0.
	Add unit tests.

2011-04-11  jaypipes@gmail.com

	Adds --config-file option to common options processing.
	
	Updates glance-manage to use configuration files as well
	as command line options.
	
	Completes documentation on configuring Glance's servers
	and CLI tools.

2011-04-07  jaypipes@gmail.com

	Fix config test fixtures and pep8 error in bin/glance-manage

2011-04-07  jaypipes@gmail.com

	Merge trunk

2011-04-04  jaypipes@gmail.com

	Updates glance-manage to use configuration files as well
	as command line options.
	
	Completes documentation on configuring Glance's servers
	and CLI tools.

2011-04-06  Donal Lafferty  <donal.lafferty@citrix.com>

	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.

2011-04-04  jaypipes@gmail.com

	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.

2011-04-01  jaypipes@gmail.com

	Merge Donal

2011-03-31  Donal Lafferty  <donal.lafferty@citrix.com>

	Add migration scripts for revising the datatype of the 'size' column in the images table.

2011-03-31  Donal Lafferty  <donal.lafferty@citrix.com>

	Changes to database schema required to support images larger than 2Gig on MySQL.  Does not update the migration scripts.

2011-04-01  jaypipes@gmail.com

	Merge trunk

2011-04-06  jaypipes@gmail.com

	Use logging module, not echo, for logging SQLAlchemy. Fixes bug 746435.

2011-04-06  jaypipes@gmail.com

	Change order of setting debug/verbose logging. Thanks for spotting this, Elgar.

2011-04-06  jaypipes@gmail.com

	Use logging module, not echo, for logging SQLAlchemy. Fixes bug 746435.

2011-04-04  jaypipes@gmail.com

	Use logging module, not echo for logging SQLAlchemy.

2011-04-05  jaypipes@gmail.com

	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.

2011-04-04  jaypipes@gmail.com

	Ensure we don't ask a backend store to delete an image if the image is queued or saving.

2011-03-29  Dan Prince  <dan.prince@rackspace.com>

	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.
	
	This resolves with revision 99 where Glance API incidentally deleted
	image metadata when uploading new images.

2011-03-29  Dan Prince  <dan.prince@rackspace.com>

	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.
	
	This resolves with revision 99 where Glance API incedentally deleted
	image metadata when uploading new images.

2011-03-28  Dan Prince  <dan.prince@rackspace.com>

	Update the glance registry so that it marks properties as deleted if they are no longer exist when images are updated.

2011-03-23  Dan Prince  <dan.prince@rackspace.com>

	Update the glance registry so that it marks properties as deleted if
	they are no longer in the update list.

2011-03-25  jaypipes@gmail.com

	Simple one.. just add back the Changelog I removed by accident in r94. Fixes bug #742353

2011-03-25  jaypipes@gmail.com

	Add ChangeLog back to MANIFEST.in

2011-03-25  jaypipes@gmail.com

	Adds checksumming to Glance.
	
	When adding an image (or uploading an image during PUT operations),
	you may now supply an optional X-Image-Meta-Checksum header. When
	storing the uploaded image, the backend image stores now are required
	to return a checksum of the data they just stored. The optional
	X-Image-Meta-Checksum header is compared against this generated checksum
	and returns a 409 Bad Request if there is a mismatch.
	
	The ETag header is now properly set to the image's checksum now
	for all GET /images/<ID>, HEAD /images/<ID>, POST /images and
	PUT /images/<ID> operations.
	
	Adds unit tests verifying the checksumming behaviour in the API, and
	in the Swift and Filesystem backend stores.
	
	Includes migration script.
	
	NOTE: This does not include the DB migration script. Separate bug will be filed for that.

2011-03-25  jaypipes@gmail.com

	Uhhhm, stop_servers() should stop servers, not start them! Thanks to Cory for uncovering this copy/paste fail.

2011-03-25  jaypipes@gmail.com

	Fix up test case after merging in bug fixes from trunk... expected results were incorrect in curl test

2011-03-25  jaypipes@gmail.com

	Merge trunk

2011-03-23  jaypipes@gmail.com

	Add migration script for checksum column

2011-03-23  jaypipes@gmail.com

	Merge fix from bug730213

2011-03-23  jaypipes@gmail.com

	Merge bug730213 (Migration fixes and tests)

2011-03-23  jaypipes@gmail.com

	Merge trunk and resolve conflicts

2011-03-08  jaypipes@gmail.com

	Make it clear that the checksum is an MD5 checksum in docs.

2011-03-08  jaypipes@gmail.com

	Adds checksumming to Glance.
	
	When adding an image (or uploading an image during PUT operations),
	you may now supply an optional X-Image-Meta-Checksum header. When
	storing the uploaded image, the backend image stores now are required
	to return a checksum of the data they just stored. The optional
	X-Image-Meta-Checksum header is compared against this generated checksum
	and returns a 409 Bad Request if there is a mismatch.
	
	The ETag header is now properly set to the image's checksum now
	for all GET /images/<ID>, HEAD /images/<ID>, POST /images and
	PUT /images/<ID> operations.
	
	Adds unit tests verifying the checksumming behaviour in the API, and
	in the Swift and Filesystem backend stores.

2011-03-08  jaypipes@gmail.com

	Merge trunk with 713126 and image-format

2011-02-24  jaypipes@gmail.com

	Merge test cases for missing and invliad disk and container formats

2011-02-24  jaypipes@gmail.com

	Make disk_format and container_format required

2011-02-24  jaypipes@gmail.com

	Merge image-format

2011-03-24  jaypipes@gmail.com

	Add migration testing and migration for disk_format/container_format

2011-03-24  jaypipes@gmail.com

	tests.unit.test_misc.execute -> tests.utils.execute after merge

2011-03-24  jaypipes@gmail.com

	Allow someone to set the GLANCE_TEST_MIGRATIONS_CONF environment
	variable to override the config file to run for the migrations
	unit test:
	
	pipes@serialcoder:~/repos/glance/bug730213$ GLANCE_TEST_MIGRATIONS_CONF=/tmp/glance_test_migrations.conf ./run_tests.sh -V tests.unit.test_migrations
	TestMigrations
	test_no_data_loss_2_to_3_to_2                               OK
	test_walk_versions                                          OK
	
	----------------------------------------------------------------------
	Ran 2 tests in 2.744s
	
	This will make Monty happy so that Hudson can test more than just SQLite...

2011-03-23  jaypipes@gmail.com

	Fixed an oops. Didn't realized Repository.latest returned a 0-based version number, and forgot to reversed() the downgrade test

2011-03-23  jaypipes@gmail.com

	OK, migrations are finally under control and properly tested.
	
	Don't think I need to stress how painful this was. I reworked
	the TestMigrations test case to properly test walking the
	upgrade and downgrade paths for multiple databases. The databases
	used in test_migrations are now configurable by placing sql connection
	strings in the /tests/unit/test_migrations.conf file, which defaults
	to SQLite-only but has an example of MySQL as well. I'll work with
	Monty to set up MySQL and PostgreSQL on the Jenkins box so we can
	verify migrate scripts on all major target DB platforms.
	
	There are a number of bugs in SA-Migrate that have workarounds in
	this patch. Issue 99 (http://code.google.com/p/sqlalchemy-migrate/issues/detail?id=99)
	means that MySQL change scripts cannot contain >1 SQL statement, which
	essentially means for MySQL, you *have* to use a Python change script.
	However, Issue 117 (http://code.google.com/p/sqlalchemy-migrate/issues/detail?id=117)
	points out that you *cannot* use a Python change script when your
	database is SQLite and you need to ALTER a table by adding or dropping
	a column and the table has secondary indexes on it (which, by chance,
	Glance registry's images table did have (on is_public and deleted columns).
	So, for SQLite in these situations, you *must* use a SQL changescript, which
	is why you see both a 003_add_disk_format.py Python change script, which
	is used for MySQL/PostgreSQL and 003_sqlite_downgrade.sql and 003_sqlite_upgrade.sql
	scripts in the migrate repo.
	
	There is a new test case verifies that data is not lost when moving
	from schema v2 to v3, where the type column is removed from the images
	table. I place the values that were in the type column into the image_properties
	table as records with a key column values of 'type'. The test case verifies
	that on upgrade from v2 to v3, the type column values are preserved as
	image properties, and on downgrade from v3 to v2, the type properties
	are re-inserted into the images.type column.
	
	Phew.

2011-03-20  jaypipes@gmail.com

	Re-raise _safe_kill() exception in non-3-arg form to avoid pep8 deprecation error.

2011-03-23  jaypipes@gmail.com

	Start eventlet WSGI server with a logger to avoid stdout output.
	
	Resubmitted to depend on the lp:~jaypipes/glance/bug731304 branch and not the lp:~jaypipes/glance/bug736295 branch, since lp:~jaypipes/glance/bug731304 contains all those fixes for bug736295.

2011-03-18  jaypipes@gmail.com

	Start eventlet WSGI server with a logger to avoid stdout output

2011-03-23  jaypipes@gmail.com

	Adds robust functional testing to Glance.

2011-03-21  jaypipes@gmail.com

	Remove non-existing files from MANIFEST.in

2011-03-21  jaypipes@gmail.com

	Merge trunk

2011-03-19  jaypipes@gmail.com

	Merge trunk and fix from Ewan

2011-03-18  jaypipes@gmail.com

	Pass boolean values to glance.client as strings, not integers

2011-03-17  jaypipes@gmail.com

	Small adjustment on wait_for_servers()... fixed infinite loop possibility

2011-03-17  jaypipes@gmail.com

	Adds robust functional testing to Glance.
	
	- Add /tests/functional/*
	- tests.functional.FunctionalTest is the base class for
	any test that needs to execute against *actual* Glance
	API and registry servers instead of stubbed out fakes.
	- Adds functional test case that uses cURL to execute a
	series of actions against the API server
	- Adds functional test case that uses bin/glance to
	execute a series of actions against the API server

2011-03-17  jaypipes@gmail.com

	Ensure Content-type set to application/octet-stream for GET /images/<ID>

2011-03-17  jaypipes@gmail.com

	Ensure Content-Length sent for GET /images/<ID>

2011-03-17  jaypipes@gmail.com

	HTTPBackend.get() needed options in kwargs

2011-03-21  Andrey Brindeyev  <abrindeyev@griddynamics.com>

	Removed glance-combined. Fixed README

2011-03-21  Andrey Brindeyev  <abrindeyev@griddynamics.com>

	Removed glance-commit

2011-03-19  Ewan Mellor  <ewan.mellor@citrix.com>

	Bug #737979: glance-control uses fixed path to Python interpreter, breaking virtualenv
	
	Change #!/usr/bin/python to #!/usr/bin/env python.

2011-03-19  Ewan Mellor  <ewan.mellor@citrix.com>

	Bug #737979: glance-control uses fixed path to Python interpreter, breaking virtualenv
	
	Change #!/usr/bin/python to #!/usr/bin/env python.

2011-03-18  jaypipes@gmail.com

	Removes glance-combined and fixes TypeError from bad function calls in glance-manage.

2011-03-17  jaypipes@gmail.com

	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

2011-03-16  jaypipes@gmail.com

	Support account:user:key in Swift URIs. Adds unit tests for various calls to parse_swift_tokens()

2011-03-16  jaypipes@gmail.com

	Support account:user:key in Swift URIs. Adds unit tests for various calls to parse_swift_tokens()

2011-03-16  jaypipes@gmail.com

	Cherry pick r86 from bug720816

2011-03-16  jaypipes@gmail.com

	Cherry pick r87 from bug720816

2011-03-16  jaypipes@gmail.com

	Adds documentation on configuring logging and a unit test for checking simple log output

2011-03-16  jaypipes@gmail.com

	Fixed run_tests.py addError() method since I noted it was faulty in another branch...

2011-03-16  jaypipes@gmail.com

	Tiny pep8'ers

2011-03-16  jaypipes@gmail.com

	Merge trunk and resolve conflict

2011-03-09  jaypipes@gmail.com

	Remove spurios comment in test file

2011-03-08  jaypipes@gmail.com

	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 :)

2011-03-16  Taku Fukushima  <tfukushima@dcl.info.waseda.ac.jp>

	I stole the colorized code from nova.

2011-03-16  Taku Fukushima  <tfukushima@dcl.info.waseda.ac.jp>

	Fix typo

2011-03-11  Taku Fukushima  <tfukushima@dcl.info.waseda.ac.jp>

	[Add] colorization stolen from nova

2011-03-15  Monty Taylor  <mordred@inaugust.com>

	A quick patch to allow running the test suite on an alternate db backend.

2011-03-14  Monty Taylor  <mordred@inaugust.com>

	Merged trunk -resolved conflicts.

2011-03-09  Monty Taylor  <mordred@inaugust.com>

	Changed to have 2 slashes.

2011-03-08  Monty Taylor  <mordred@inaugust.com>

	Only clean up in the cleanup method. Also, we don't need the separate URI
	now.

2011-03-08  Monty Taylor  <mordred@inaugust.com>

	Use unregister_models instead of os.unlink to clean up after ourselves.

2011-03-08  Monty Taylor  <mordred@inaugust.com>

	Fixed unregister_models to actually work.

2011-03-08  Monty Taylor  <mordred@inaugust.com>

	Fixed migration test to use a second DB URL

2011-03-08  Monty Taylor  <mordred@inaugust.com>

	Replaced use of has_key with get + default value.

2011-03-07  Monty Taylor  <mordred@inaugust.com>

	Whoops! Left out a self.db_path.

2011-03-07  Monty Taylor  <mordred@inaugust.com>

	Allow tests to run on an alternate dburi given via environment variables.

2011-03-09  Rick Harris  <rick.harris@rackspace.com>

	Don't require swift module for unit-tests

2011-03-09  Rick Harris  <rick.harris@rackspace.com>

	Pep8 fix

2011-03-09  Rick Harris  <rick.harris@rackspace.com>

	Backing out unit-test workaround

2011-03-09  Rick Harris  <rick.harris@rackspace.com>

	Allow unit-tests to run without swift module

2011-03-09  jaypipes@gmail.com

	Add Glance CLI tool

2011-03-09  jaypipes@gmail.com

	Silly mistake when resolving merge conflict...fixed

2011-03-08  jaypipes@gmail.com

	Merge trunk and resolve conflicts

2011-03-06  jaypipes@gmail.com

	Quick fixup on registry.get_client()

2011-03-06  jaypipes@gmail.com

	Public? => Public: per Cory's comment. Added a little more robust exception handling to some methods in bin/glance

2011-03-06  jaypipes@gmail.com

	Merge trunk and resolve conflicts from utils and client patch from Vishy

2011-03-01  jaypipes@gmail.com

	Adds bin/glance to setup.py

2011-02-25  jaypipes@gmail.com

	Couple tiny cleanups noticed when readin merge diff..

2011-02-25  jaypipes@gmail.com

	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...

2011-02-25  jaypipes@gmail.com

	Merge trunk

2011-02-23  jaypipes@gmail.com

	Adds an admin tool to Glance (bin/glance-admin) that allows
	a user to administer the Glance server:
	
	* add images
	* update image metadata
	* delete images and metadata
	* delete all images (clear)
	* show an image
	* list public images
	* show detailed info on public images
	
	Adds documentation for the tool and cleans up a few issues
	that came up in initial testing.

2011-02-23  jaypipes@gmail.com

	Merge fixups to validate_image

2011-02-23  jaypipes@gmail.com

	Merge api-image-format

2011-02-23  jaypipes@gmail.com

	Merge fix for bug 704854

2011-02-23  jaypipes@gmail.com

	Merge fix for bug 704854

2011-02-21  jaypipes@gmail.com

	Merge trunk

2011-01-28  jaypipes@gmail.com

	Merge glance-combined

2011-01-28  jaypipes@gmail.com

	Merge in use-optparse changes.

2011-01-28  jaypipes@gmail.com

	Tiny pep8 fixup in setup.py

2011-01-28  jaypipes@gmail.com

	Merge trunk

2011-01-24  jaypipes@gmail.com

	Merge trunk

2011-03-08  Vishvananda Ishaya  <vishvananda@gmail.com>

	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.

2011-03-08  Vishvananda Ishaya  <vishvananda@gmail.com>

	fix data passing

2011-03-08  Vishvananda Ishaya  <vishvananda@gmail.com>

	add failing test for None and deleted

2011-03-08  Rick Harris  <rick.harris@rackspace.com>

	Uses logger instead of logging in migration.py

2011-03-08  Rick Harris  <rick.harris@rackspace.com>

	Using logger in migration api instead of logging directly

2011-03-08  jaypipes@gmail.com

	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

2011-03-07  jaypipes@gmail.com

	Remove last vestiges of account in Swift store

2011-03-06  jaypipes@gmail.com

	Fixes for Devin and Rick's reviews

2011-03-06  jaypipes@gmail.com

	Merge trunk

2011-03-05  jaypipes@gmail.com

	Merge trunk

2011-03-04  jaypipes@gmail.com

	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)

2011-03-01  jaypipes@gmail.com

	Fixes from Rick's review #1

2011-02-27  jaypipes@gmail.com

	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

2011-03-06  jaypipes@gmail.com

	Adds disk_format and container_format to Image, and
	removes the type column.
	
	Needs a migrate script, but having trouble getting sqlalchemy
	migrate to work with any call to drop_column(). :(

2011-03-05  jaypipes@gmail.com

	Final review fixes. Makes disk_format and container_format optional. Makes glance-upload --type put the type in properties

2011-03-05  jaypipes@gmail.com

	Merge trunk

2011-02-25  jaypipes@gmail.com

	Adds lots of unit tests for verifying exceptions are raised
	properly with invalid or mismatched disk and container formats.
	
	Adds documentation on disk and container formats. Updates
	existing documentation to remove references to the now-gone
	type column and replaces these references with disk_format
	and container_format.
	
	Reworked the validates_image() method in the registry.db.api
	to be like what Rick was describing in reviews.

2011-02-25  jaypipes@gmail.com

	Merge trunk

2011-02-24  jaypipes@gmail.com

	Add test cases for missing and invalid disk and container formats

2011-02-24  jaypipes@gmail.com

	Make disk_format and container_format required

2011-02-23  jaypipes@gmail.com

	Make sure validate_image() doesn't throw exception on missing status when updating image.

2011-02-23  jaypipes@gmail.com

	Merge fix for bug 704854

2011-02-23  jaypipes@gmail.com

	Adds disk_format and container_format to Image, and
	removes the type column.
	
	Needs migrate script, but having trouble getting sqlalchemy
	migrate to work with any call to drop_column(). :(

2011-02-22  jaypipes@gmail.com

	Merge fix for bug704854

2011-02-21  jaypipes@gmail.com

	Merge trunk

2011-03-05  Vishvananda Ishaya  <vishvananda@gmail.com>

	Fixes client update_image to work like create_image.  Also fixes some messed up exceptions that were causing a try, except to reraise.

2011-03-05  Vishvananda Ishaya  <vishvananda@gmail.com>

	remove test skip

2011-03-01  Rick Harris  <rick.harris@rackspace.com>

	Work around Eventlet exception clearing by memorizing exception context and re-raising using 3-arg form.

2011-02-28  Rick Harris  <rick.harris@rackspace.com>

	Work around Eventlet exception clearing

2011-03-01  Rick Harris  <rick.harris@rackspace.com>

	Reverts Image `type` back to the old behavior of being nullable.
	
	Necessary because Nova creates Glance image records without knowing which `type` they will be up-front.

2011-02-25  Rick Harris  <rick.harris@rackspace.com>

	Removing image_type required behavior

2011-02-28  Soren Hansen  <soren@linux2go.dk>

	Add sys.path mangling to glance-upload.

2011-02-28  Soren Hansen  <soren@linux2go.dk>

	Add sys.path adjustment magic to glance-upload.

2011-02-25  Rick Harris  <rick.harris@rackspace.com>

	Makes --kernel and --ramdisk required arguments for glance-upload since Nova currently requires them.
	
	The `null_kernel` concept in Nova is slated to be removed, so this is really just a stop gap measure.

2011-02-24  Rick Harris  <rick.harris@rackspace.com>

	Removing requirement to pass kernel and ramdisk

2011-02-24  Rick Harris  <rick.harris@rackspace.com>

	Requiring kernel and ramdisk args in glance-upload

2011-02-23  jaypipes@gmail.com

	This adds a test case for LP Bug 704854 -- Exception
	raised by Registry server gets eaten by API server.
	
	The test involves spinning up an API server and a registry
	server, firing cURL and glance-upload against the API
	server with invalid requests, and verifying that appropriate
	exception messages are contained in the response. 
	
	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.
	
	It just so happens that the glance-api and glance-registry that
	I had installed to my /usr/local/bin were the very same programs
	that were from a previous branch I had locally where I fixed the
	root cause of this issue, which was that the sqlalchemy @validates
	decorator does NOT fire for *new* objects, only existing ones, which
	resulted in image_create() improperly storing NULL data in type, name,
	and other non-nullable fields in the database. This then set off
	a domino effect which caused the next call from
	glance.server._upload_and_activate() to die a horrible death due to
	the @validates decorator then firing on the already-created Image
	object. This horrible death was improperly being raised from the
	glance.client as a BadRequest instead of exception.Invalid, which
	caused the API server to ignore the text in the actual Invalid
	exception coming from the registry server.
	
	In short, this patch finally fixes the root of the problem by
	placing a validate_image() function guard which throws exception.Invalid
	for any invalid data coming into the _image_update() method in the db
	API. It also adds a bunch of logging statements and ensures that
	exceptions throughout the call stack between the API server to the
	glance.registry.Client to the Registry server are properly handled and
	that the text of those exceptions isn't thrown away willy-nilly.

2011-02-23  jaypipes@gmail.com

	Add debugging output to assert in test_misc. Trying to debug what Hudson fails on...

2011-02-23  jaypipes@gmail.com

	Fixups from Rick's review

2011-02-22  jaypipes@gmail.com

	Removes now-unnecessary @validates decorator on model.

2011-02-22  jaypipes@gmail.com

	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.
	
	It just so happens that the glance-api and glance-registry that
	I had installed to my /usr/local/bin were the very same programs
	that were from a previous branch I had locally where I fixed the
	root cause of this issue, which was that the sqlalchemy @validates
	decorator does NOT fire for *new* objects, only existing ones, which
	resulted in image_create() improperly storing NULL data in type, name,
	and other non-nullable fields in the database. This then set off
	a domino effect which caused the next call from
	glance.server._upload_and_activate() to die a horrible death due to
	the @validates decorator then firing on the already-created Image
	object. This horrible death was improperly being raised from the
	glance.client as a BadRequest instead of exception.Invalid, which
	caused the API server to ignore the text in the actual Invalid
	exception coming from the registry server.
	
	In short, this patch finally fixes the root of the problem by
	placing a validate_image() function guard which throws exception.Invalid
	for any invalid data coming into the _image_update() method in the db
	API. It also adds a bunch of logging statements and ensures that
	exceptions throughout the call stack between the API server to the
	glance.registry.Client to the Registry server are properly handled and
	that the text of those exceptions isn't thrown away willy-nilly.

2011-02-21  jaypipes@gmail.com

	Use Nova's path trick in all bins...

2011-02-21  jaypipes@gmail.com

	Add path to glance-control

2011-02-18  jaypipes@gmail.com

	Merge trunk

2011-02-16  jaypipes@gmail.com

	Add %default for image type in glance-upload

2011-02-16  jaypipes@gmail.com

	Cleanups from Soren's review

2011-02-16  jaypipes@gmail.com

	This adds a test case for LP Bug 704854 -- Exception
	raised by Registry server gets eaten by API server.
	
	The test involves spinning up an API server and a registry
	server, firing cURL and glance-upload against the API
	server with invalid requests, and verifying that appropriate
	exception messages are contained in the response.
	
	I cannot reproduce 704854 now. Not sure what changed in
	the code that actually fixed this, but the test case verifies
	that the behaviour described in the bug does not occur any more.

2011-02-16  jaypipes@gmail.com

	Merge --pid-file option for glance-control

2011-02-16  jaypipes@gmail.com

	Merge fix for bug 719834

2011-02-17  Rick Harris  <rick.harris@rackspace.com>

	Removes image type validation in the Glance registry.
	
	Nova xs-unified-images requires adding a new image type 'vhd' along side of 'machine', 'raw', etc. Since image_type isn't used by Glance itself (it merely stores the value and hands it back to Nova), Glance shouldn't be the arbiter of what values are acceptable-- Nova should. This promotes loose-coupling and ensures that Glance won't have to change in lock-step with Nova.
	
	More to the point, this a stop-gap to make Glance work with the new xs-unified-images branch until we get proper `container_format` and `disk_format` modeling in Glance. When that happens, we may end up ditching `image_type` altogether.

2011-02-17  Rick Harris  <rick.harris@rackspace.com>

	Adding vhd as recognized image type

2011-02-17  Rick Harris  <rick.harris@rackspace.com>

	Reverting the removal of validation

2011-02-17  Rick Harris  <rick.harris@rackspace.com>

	Removing image type validation

2011-02-16  jaypipes@gmail.com

	Adds --pid-file option to bin/glance-control

2011-02-16  jaypipes@gmail.com

	Adds --pid-file option to bin/glance-control

2011-02-16  jaypipes@gmail.com

	Merge fix for bug 719834

2011-02-16  jaypipes@gmail.com

	Adds Location: header to return from API server for POST /images, per APP spec

2011-02-16  jaypipes@gmail.com

	Adds Location: header to return from API server for POST /images, per APP spec

2011-02-16  jaypipes@gmail.com

	Merge fix for bug 719834

2011-02-16  jaypipes@gmail.com

	Add an ImportError check when importing migrate.exceptions, as the location of that module changed in a recent version of the sqlalchemy-migrate library.

2011-02-16  jaypipes@gmail.com

	Add an ImportError check when importing migrate.exceptions, as the location of that module changed in a recent version of the sqlalchemy-migrate library.

2011-02-11  Rick Harris  <rick.harris@rackspace.com>

	Adds sql_idle_timeout to reestablish connections to database after given period of time.  
	
	Fixes MySQL Gone Away exceptions.

2011-02-11  Rick Harris  <rick.harris@rackspace.com>

	Add sql_idle_timeout

2011-02-10  jaypipes@gmail.com

	Removes lockfile and custom python-daemon server initialization
	in favour of paste.deploy.

2011-02-09  jaypipes@gmail.com

	Review 3 fixups.

2011-02-09  jaypipes@gmail.com

	Remove get_config_file_options() from glance-control

2011-02-09  jaypipes@gmail.com

	Fixes for Rick review #2

2011-02-09  jaypipes@gmail.com

	Merge trunk

2011-02-09  jaypipes@gmail.com

	Remove no-longer-needed imports...

2011-02-09  jaypipes@gmail.com

	Remove extraneous debug import...

2011-02-09  jaypipes@gmail.com

	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.
	
	Updated the documentation controllingservers.rst.

2011-02-08  jaypipes@gmail.com

	Fix merge conflicts

2011-02-06  jaypipes@gmail.com

	Merge trunk

2011-02-05  jaypipes@gmail.com

	Use fix_path on find_config_file() too.

2011-02-05  jaypipes@gmail.com

	Merge latest config parser changes...

2011-02-04  jaypipes@gmail.com

	Merge trunk

2011-02-04  jaypipes@gmail.com

	Adds bin/glance-control program server daemonization wrapper
	program based on Swift's swift-init script.
	
	Adds a crap-ton of documentation on installing Glance and
	controlling Glance's server programs.
	
	This was necessary since when glance.common.server was removed
	from Glance and paste.deploy used, we lost the ability to control
	server daemonization with CLI options. This adds back some of that
	functionality while still using paste.deploy like Swift does.

2011-02-04  jaypipes@gmail.com

	Ignore build and deploy-related files

2011-02-03  jaypipes@gmail.com

	Had to reverse search order of directories for finding config files.

2011-02-03  jaypipes@gmail.com

	Removes lockfile and custom python-daemon server initialization
	in favour of paste.deploy.
	
	We use a solution that is a hybrid of the code in Nova and Swift:
	
	* We continue to use the object-based WSGI Server/Router objects
	in glance.common.wsgi.
	* We load options from a configuration file like Swift does, merging
	in the typed options returned from glance.common.config.parse_options()
	
	NOTE: Due to http://trac.pythonpaste.org/pythonpaste/ticket/379, we
	removed the CLI option --log-format and use a hard-coded DEFAULT_LOG_FORMAT.
	You are still able to adjust the log format using the --log-config-file
	option, however, and setting the format string in the log config file.

2011-02-09  Rick Harris  <rick.harris@rackspace.com>

	Adds glance-combined and glance-manage to setup.py

2011-02-08  Rick Harris  <rick.harris@rackspace.com>

	Adds glance-combined and glance-manage to setup.py

2011-02-07  jaypipes@gmail.com

	Fixes bug 714454.
	
	ReStructured Text files need to end in .rst, not .py ;)

2011-02-07  jaypipes@gmail.com

	ReStructure Text files need to end in .rst, not .py ;)

2011-02-06  Rick Harris  <rick.harris@rackspace.com>

	Update README, remove some vestigial directories, and other small tweaks.

2011-02-05  Rick Harris  <rick.harris@rackspace.com>

	Removing dubious advice

2011-02-05  Rick Harris  <rick.harris@rackspace.com>

	Including tests/ in pep8

2011-02-04  Rick Harris  <rick.harris@rackspace.com>

	Typo fixes, clarifying

2011-02-04  Rick Harris  <rick.harris@rackspace.com>

	Updating README, rmdir some empty dirs

2011-02-05  jaypipes@gmail.com

	Adds facilities for configuring Glance's servers via
	configuration files.
	
	glance-api, glance-registry, and glance-combined now process
	a set of configuration files in order, with options read from
	later files overriding values in earlier files:
	
	/etc/glance.cnf
	/etc/glance/glance.conf
	~/glance.cnf
	~/.glance/glance.cnf
	./glance.cnf
	
	The new glance.common.config.get_config_file_options() function
	processes these config files into a mapping of key/value
	option pairs. This mapping can now be passed to the
	glance.common.config.parse_options() function as default values
	
	Adds a sample glance.cnf to the etc/ directory

2011-02-05  jaypipes@gmail.com

	Fixups from Rick's review

2011-02-02  jaypipes@gmail.com

	Adds facilities for configuring Glance's servers via
	configuration files.
	
	glance-api, glance-registry, and glance-combined now process
	a set of configuration files in order, with options read from
	later files overriding values in earlier files:
	
	/etc/glance.cnf
	/etc/glance/glance.conf
	~/glance.cnf
	~/.glance/glance.cnf
	./glance.cnf
	
	The new glance.common.config.get_config_file_options() function
	processes these config files into a mapping of key/value
	option pairs. This mapping can now be passed to the
	glance.common.config.parse_options() function as default values
	
	Adds a sample glance.cnf to the etc/ directory

2011-02-03  Rick Harris  <rick.harris@rackspace.com>

	Adds sqlalchemy migrations.
	
	Also adds a glance-manage utility for managing migrations.
	
	Potentially glance-manage (and glance-upload) could be merged into glance-admin when that lands.

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Creating indexes

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Adding migration test

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Fixing migration import errors

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Small cleanups

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	glance-manage uses common options

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Merging in glance/cactus

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Pep8 fix

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Adding db_sync to mirror nova

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Adding some basic documentation

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Better logging

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Adding image_properties migration

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Adding migration for images table

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Adding migration management commands

2011-02-03  jaypipes@gmail.com

	Fix bug 712575. Make BASE = models.BASE

2011-02-03  jaypipes@gmail.com

	Make sure BASE is the models.BASE, not a new declarative_base() object.

2011-02-02  jaypipes@gmail.com

	Merge Rick's Super-Cool Option Group Extravanganza.

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Pep8 fixes

2011-02-02  Rick Harris  <rick.harris@rackspace.com>

	Refactoring into option groups

2011-02-01  jaypipes@gmail.com

	Merge round 1 logging.

2011-02-01  jaypipes@gmail.com

	Merge cactus trunk and resolve conflicts

2011-02-01  jaypipes@gmail.com

	Remove debugging output that wasn't supposed to go into this branch (yet) :)

2011-02-01  jaypipes@gmail.com

	Adds --debug option for DEBUG-level logging. --verbose now only
	outputs INFO-level log records.
	
	Adds --log-date-format option for greater control over the log
	record date format.
	
	Makes config.setup_logging() set up all loggers, not just an application's
	specific logger. Fixes issue Rick brought up about logging config file
	being overridden by adding a return statement after logging.config stuff
	is done.

2011-02-01  jaypipes@gmail.com

	Fixes from Rick's review. Thanks, Rick.

2011-02-01  jaypipes@gmail.com

	First round of logging functionality:
	
	* Adds option group for logging-only configuration settings
	* Adds /etc and /etc/logging.cnf.sample as an example of setting
	up logging configuration directly with a config file
	* Adds to glance.common.config a couple function useful in
	adding logging options and setting up the logger(s)
	
	Next round will include the addition of a --debug option and
	lots more debugging output to the loggers.

2011-02-01  jaypipes@gmail.com

	Merge fix from Rick for Bug #711385

2011-02-01  Rick Harris  <rick.harris@rackspace.com>

	Typo add_option -> add_options

2011-02-01  Rick Harris  <rick.harris@rackspace.com>

	Adds --sql-connection option

2011-01-31  jaypipes@gmail.com

	Merge glance-combined

2011-01-31  jaypipes@gmail.com

	Merge use-optparse

2011-01-31  jaypipes@gmail.com

	pep8-er in bin/glance-combined

2011-01-31  jaypipes@gmail.com

	Merge yagni-db-adapter and use-optparse

2011-01-28  jaypipes@gmail.com

	Adds bin/glance-combined. Useful in testing...

2011-01-31  jaypipes@gmail.com

	Merged use-optparse

2011-01-31  jaypipes@gmail.com

	Removes glance.common.db.sqlalchemy and moves registration of models and create_engine into glance.registry.db.api.

2011-01-31  jaypipes@gmail.com

	Merge yagni-db-adapter and resolve conflicts.

2011-01-31  jaypipes@gmail.com

	Fixes lp710789 - use-optparse breaks daemonized process stop
	
	Fix was simple. args = FLAGS(argv) returns ALL argv's including
	the program name. optparse.OptionParser.parse_args() does not
	return the program name as args[0], instead it returns args[1:].
	
	In glance.common.server.serve(), we were checking:
	
	action = 'start':
	if len(args) > 1:
	action = args.pop()
	
	Changing this to if len(args): fixed the problem.

2011-01-28  jaypipes@gmail.com

	Rework what comes back from parse_options()[0] to not stringify option values. Keep them typed.

2011-01-28  jaypipes@gmail.com

	Merge trunk

2011-01-28  jaypipes@gmail.com

	Remove use of gflags entirely. Use optparse.

2011-01-27  jaypipes@gmail.com

	Merge versioning patches

2011-01-27  jaypipes@gmail.com

	Merge Bexar r56

2011-01-27  jaypipes@gmail.com

	Makes Glance's versioning non-static. Uses Nova's versioning scheme.

2011-01-31  jaypipes@gmail.com

	Merge yagni-db-adapter removal from rick.

2011-01-28  Rick Harris  <rick.harris@rackspace.com>

	Removing unecessary param to get_all_public

2011-01-28  Rick Harris  <rick.harris@rackspace.com>

	Merging trunk

2011-01-28  Rick Harris  <rick.harris@rackspace.com>

	Adding back some missing code

2011-01-28  Rick Harris  <rick.harris@rackspace.com>

	Cleaning up some code

2011-01-27  Rick Harris  <rick.harris@rackspace.com>

	Removing sqlalchemy dir

2011-01-27  Rick Harris  <rick.harris@rackspace.com>

	Removed methods from sqlalchemy/api

2011-01-27  Rick Harris  <rick.harris@rackspace.com>

	Refactor update/create

2011-01-27  Rick Harris  <rick.harris@rackspace.com>

	Refactoring destroy

2011-01-28  jaypipes@gmail.com

	Merge bexar trunk final changes

2011-01-27  Cerberus  <matt.dietz@rackspace.com>

	Adds/updates the copyright info on most of the files in glance and copies over the Authors check from Nova.

2011-01-26  Cerberus  <matt.dietz@rackspace.com>

	Messed up a permission somehow

2011-01-26  Cerberus  <matt.dietz@rackspace.com>

	feh

2011-01-26  Cerberus  <matt.dietz@rackspace.com>

	A few more

2011-01-26  Cerberus  <matt.dietz@rackspace.com>

	A few more I missed

2011-01-26  Cerberus  <matt.dietz@rackspace.com>

	Merge conflicts and merge from trunk

2011-01-26  Cerberus  <matt.dietz@rackspace.com>

	Merge prop fixes and a few missed things

2011-01-26  Cerberus  <matt.dietz@rackspace.com>

	Removing authors test for now

2011-01-26  Cerberus  <matt.dietz@rackspace.com>

	Merge prop fixes

2011-01-25  Cerberus  <matt.dietz@rackspace.com>

	Added bzr to pip-requires and refixed some pep8 stuff

2011-01-24  Cerberus  <matt.dietz@rackspace.com>

	Authors check

2011-01-24  Cerberus  <matt.dietz@rackspace.com>

	A few more copyrights

2011-01-24  Cerberus  <matt.dietz@rackspace.com>

	Copyright year change

2011-01-24  Cerberus  <matt.dietz@rackspace.com>

	Pylint cleanup

2011-01-24  Cerberus  <matt.dietz@rackspace.com>

	Added copyright info

2011-01-27  jaypipes@gmail.com

	version bumped after tarball cut. no review needed...

2011-01-26  jaypipes@gmail.com

	Bump version

2011-01-26  jaypipes@gmail.com

	Merge trunk

2011-01-26  jaypipes@gmail.com

	Merge trunk

2011-01-26  Josh Kearney  <josh.kearney@rackspace.com>

	PEP8 cleanup.

2011-01-26  Josh Kearney  <josh.kearney@rackspace.com>

	PEP8 cleanup

2011-01-26  Monty Taylor  <mordred@inaugust.com>

	Should fix the sphinx issue.

2011-01-25  Monty Taylor  <mordred@inaugust.com>

	Make sphinx conditional.

2011-01-26  jaypipes@gmail.com

	Adds architecture docs and enables Graphviz sphinx extension. Also cleans up source code formatting in docs.

2011-01-24  jaypipes@gmail.com

	Adds architecture docs and enables Graphviz sphinx extension. Also cleans up source code formatting in docs.

2011-01-25  jaypipes@gmail.com

	bumps version after tarball release of 0.1.4

2011-01-25  jaypipes@gmail.com

	Bump version

2011-01-25  jaypipes@gmail.com

	Merge trunk with pip-requires fixes

2011-01-24  jaypipes@gmail.com

	bumps release version. ready for Bexar final release.
	
	no need to review...just sending this to trunk now.

2011-01-24  jaypipes@gmail.com

	Version bump after release

2011-01-23  jaypipes@gmail.com

	Version bump for release

2011-01-23  Ken Pepple  <ken.pepple@gmail.com>

	added sphinx and argparse into tools/pip-requires so that setup.py works.
	this bug also prevents nova from creating a virtualenv.

2011-01-23  Ken Pepple  <ken.pepple@gmail.com>

	fixes setup install pip dependencies

2011-01-23  jaypipes@gmail.com

	Fixes bug #706636: Make sure pep8 failures will return failure for run_tests.sh

2011-01-23  jaypipes@gmail.com

	Make run_tests.sh return failure when pep8 returns fail, and fix the pep8 error in /bin/glance-upload

2011-01-23  Rick Harris  <rick.harris@rackspace.com>

	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
	
	Bonus:
	* Remove useless test_data file (no longer needed now that we can actually use Glance API via glance/client.py)
	* Add glance_upload.py which we can use to add raw/extra-kernel images (this might be able to go away once we have a full-blown glance-admin tool. However, for now, this is useful for testing Glance <-> Nova integration.

2011-01-22  Rick Harris  <rick.harris@rackspace.com>

	Adding Apache license, fixing long line

2011-01-22  Rick Harris  <rick.harris@rackspace.com>

	Making glance-upload a first-class binary

2011-01-22  Rick Harris  <rick.harris@rackspace.com>

	Revove useless test_data.py file, add image uploader

2011-01-22  Rick Harris  <rick.harris@rackspace.com>

	Fix property create

2011-01-23  Rick Harris  <rick.harris@rackspace.com>

	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.

2011-01-22  Rick Harris  <rick.harris@rackspace.com>

	Dont buffer entire image stream on PUT

2011-01-21  jaypipes@gmail.com

	Adds man pages for glance-registry and glance-api programs. Adds Getting Started guide to the Glance documentation.
	
	Fixes Bug #704842

2011-01-21  jaypipes@gmail.com

	Duh, it helps to import the class you are inheriting from....

2011-01-20  jaypipes@gmail.com

	Pull in typo fix

2011-01-20  jaypipes@gmail.com

	Quick typo fix in docs.

2011-01-20  jaypipes@gmail.com

	Add in manpage installation hook. Thanks Soren :)

2011-01-19  jaypipes@gmail.com

	Adds man pages for glance-registry and glance-api. Adds Getting Started guide to Glance docs.

2011-01-21  jaypipes@gmail.com

	Fixes LP Bug #700162: Images greater than 2GB cannot be uploaded
	using glance.client.Client.

2011-01-21  jaypipes@gmail.com

	OK, found a solution to our test or functional dilemma. w00t.

2011-01-21  jaypipes@gmail.com

	Merge Rick's changes and correct small bug that was affecting test cases.

2011-01-21  Rick Harris  <rick.harris@rackspace.com>

	Make compat with chunked transfer

2011-01-20  jaypipes@gmail.com

	Fixes LP Bug #700162: Images greater than 2GB cannot be uploaded
	using glance.client.Client.
	
	This patch introduces chunked-transfer encoding to the client
	classes. When the glance.client.BaseClient.do_request() method
	is called and the method is either POST or PUT and the body
	argument is a file-like object, then the do_request() method
	builds a chunked-transfer encoded request and send()s chunks of
	the body file-like object over the httplib connection.
	
	Not sure how we fully test this, since we'd have to pack up
	a very large file for use in testing, but I'm open to suggestions :)

2011-01-20  jaypipes@gmail.com

	Merge removal of twisted

2011-01-20  jaypipes@gmail.com

	Removes the last vestiges of Twisted from Glance.
	
	Bonus: shaves a full 45 seconds off of run_tests.sh -V -f now that a giant twisted tarball doesn't need to be downloaded.

2011-01-20  jaypipes@gmail.com

	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...

2011-01-20  jaypipes@gmail.com

	Remove last little vestiges of twisted.

2011-01-20  Soren Hansen  <soren@linux2go.dk>

	Add run_tests.py to tarball.

2011-01-20  Soren Hansen  <soren@linux2go.dk>

	Also include run_tests.py in tarball.

2011-01-19  jaypipes@gmail.com

	Fixes bug #696375: x-image-meta-size not optional despite documentation saying so.

2011-01-19  jaypipes@gmail.com

	PEP8 fixes in /glance/store/__init__.py
	
	Also makes run_tests.sh automatically call pep8.
	Pulls in Nova's run_tests.py wrapper for prettying
	up output from nosetests...

2011-01-18  jaypipes@gmail.com

	Fixes Bug#696375: x-image-meta-size is not optional, contrary to
	documentation. 
	
	The image's size is set to zero now during reservation of the image ID if the
	image's size is not passed in with headers. In addition,
	glance.store.Backend.add() now returns a tuple of (location, size) and
	the image's size attribute in the registry is updated to this value if 
	previously set to zero.
	
	Adds a new test case that ensures the size attribute is set properly
	when not included in the image meta headers.
	
	Adds documentation for the new _reserve(), _upload(), and _activate()
	methods in glance.server.Controller.

2011-01-18  jaypipes@gmail.com

	Merge trunk

2011-01-17  jaypipes@gmail.com

	Cleanup of RST documentation and addition of docs on an image's status

2011-01-19  jaypipes@gmail.com

	Fix Bug #704038: Unable to start or connect to register server on anything other than 0.0.0.0:9191

2011-01-18  jaypipes@gmail.com

	Fix Bug #704038: Unable to start or connect to register server on anything other than 0.0.0.0:9191

2011-01-18  Monty Taylor  <mordred@inaugust.com>

	upgrade version...

2011-01-18  Monty Taylor  <mordred@inaugust.com>

	Increase version after release.

2011-01-17  Monty Taylor  <mordred@inaugust.com>

	Cut 0.1.2.

2011-01-17  Monty Taylor  <mordred@inaugust.com>

	Files missing from the tarball (and you probably need to cut a 0.1.2.)

2011-01-15  Monty Taylor  <mordred@inaugust.com>

	Include some files that were left out.

2011-01-14  jaypipes@gmail.com

	Implements the S3 store to the level of the swift store.
	
	This branch is Chris' work with a merge of trunk, fix of merge conflicts from trunk, and moving the import of boto into a conditional block so tests can run with the fakes when boto is not installed on the local machine.

2011-01-14  jaypipes@gmail.com

	Merge trunk, resolve conflicts, and move import of boto into conditional block to prevent import errors when running tests and not having boto installed.

2011-01-12  Christopher MacGown  <chris@slicehost.com>

	Fixes suggested by JayPipes review. Did not modify docstrings in non-related files.

2011-01-05  Christopher MacGown  <chris@slicehost.com>

	Merge in upstream to avoid merge conflict.

2011-01-05  Christopher MacGown  <chris@slicehost.com>

	Fixed pylint/pep8 for glance.store.s3

2011-01-05  Christopher MacGown  <chris@slicehost.com>

	Implement S3 to the level of swift

2011-01-13  jaypipes@gmail.com

	fixes bug698318.
	
	Work done by Ewan Mellor; I just fixed a conflict after merging trunk...

2011-01-13  jaypipes@gmail.com

	Merge trunk and resolve conflict in server.py

2011-01-06  Ewan Mellor  <ewan.mellor@citrix.com>

	Bug #698316: Glance reads the whole image into memory when handling a POST
	/images request
	
	Change the store API so that add takes a file-like object, not a string.
	This avoids loading the whole request body into memory before writing it out,
	and allows us to stream it instead.

2011-01-12  Rick Harris  <rick.harris@rackspace.com>

	This merge is in conjunction with lp:~rconradharris/nova/xs-snap-return-image-id-before-snapshot
	
	The patch does the following:
	
	* Image Create (POST) is broken up into 3 steps (reserve, upload and activate); reserve is used to allow the OpenStack API to return metadata about an image where the data has not been uploaded yet
	* Image Update (PUT) now takes image data as the request body and metadata as headers (just like POST); state is enforced so that image data can only be uploaded once.
	* Image statuses were changed to match the OpenStack API (queued, saving, active, killed); NOTE: preparing is not used
	* update_image and add_image client calls now return metadata instead of just the id

2011-01-11  Rick Harris  <rick.harris@rackspace.com>

	Updating docs

2011-01-11  Rick Harris  <rick.harris@rackspace.com>

	Merging trunk

2011-01-07  Rick Harris  <rick.harris@rackspace.com>

	PEP-8 Fixes

2011-01-06  Rick Harris  <rick.harris@rackspace.com>

	Fixing eventlet-raise issue

2011-01-05  Rick Harris  <rick.harris@rackspace.com>

	Merging trunk

2011-01-04  Rick Harris  <rick.harris@rackspace.com>

	removing old methods

2011-01-04  Rick Harris  <rick.harris@rackspace.com>

	refactoring so update can take image_data

2011-01-10  Cory Wright  <cory.wright@rackspace.com>

	Clean up the rest of Glance's PEP8 problems.

2011-01-04  Cory Wright  <cory.wright@rackspace.com>

	More PEP8 fixes

2011-01-04  Ewan Mellor  <ewan.mellor@citrix.com>

	Fix all Glance's pep8 problems.

2011-01-02  Ewan Mellor  <ewan.mellor@citrix.com>

	Bug #696385: Glance is not pep8-clean
	
	Fix all Glance's pep8 problems.

2011-01-04  Ewan Mellor  <ewan.mellor@citrix.com>

	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__.

2011-01-02  Ewan Mellor  <ewan.mellor@citrix.com>

	Bug #696382: Glance client parameter defaults misdocumented
	
	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__.

2010-12-28  jaypipes@gmail.com

	Fixes a number of things that came up during initial
	coding of the admin tool:
	
	* Fix client constructor to behave like httplib.HTTPConnection
	instead of accepting a URL, it now accepts host, port, and
	use_ssl boolean switch that turns on HTTPSConnection
	* Adds headers properly to the request in client.do_request().
	Previously, was erroneously calling httplib.HTTPConnection.putheader
	after calling httplib.HTTPConnection.request, which was incorrect
	* Now returns type and size of images in index
	* Webob.Response and httplib.HTTPResponse have slightly different
	ways of accessing headers. Fixed an attribute error that was coming
	up because the tests assume webob.

2010-12-27  jaypipes@gmail.com

	Made review changes from Rick.

2010-12-26  jaypipes@gmail.com

	Duh, use_ssl should not use HTTPConnection...

2010-12-26  jaypipes@gmail.com

	Remove final debugging statement

2010-12-25  jaypipes@gmail.com

	merge trunk

2010-12-25  jaypipes@gmail.com

	Remove debugging statements

2010-12-25  jaypipes@gmail.com

	Fixes a number of things that came up during initial
	coding of the admin tool:
	
	* Fix client constructor to behave like httplib.HTTPConnection
	instead of accepting a URL, it now accepts host, port, and
	use_ssl boolean switch that turns on HTTPSConnection
	* Adds headers properly to the request in client.do_request().
	Previously, was erroneously calling httplib.HTTPConnection.putheader
	after calling httplib.HTTPConnection.request, which was incorrect
	* Now returns type and size of images in index
	* Webob.Response and httplib.HTTPResponse have slightly different
	ways of accessing headers.  Fixed an attribute error that was coming
	up because the tests assume webob.

2010-12-26  Ewan Mellor  <ewan.mellor@citrix.com>

	fix bug 694382

2010-12-26  Ewan Mellor  <ewan.mellor@citrix.com>

	Bug #694382: setup.py refers to parallax-server and teller-server, when these have been renamed
	
	Fix script references, following earlier rename.

2010-12-23  jaypipes@gmail.com

	documentation cleanup and matching to other OpenStack projects.  Glance is no longer the red-headed documentation stepchild in OpenStack...

2010-12-23  jaypipes@gmail.com

	review fixes

2010-12-22  jaypipes@gmail.com

	Update sphinx conf to match other OpenStack projects

2010-12-22  jaypipes@gmail.com

	Documentation cleanup. Splits out index.rst into multiple section docs.

2010-12-23  Rick Harris  <rick.harris@rackspace.com>

	Converts timestamp attributes to datetime objects before persisting.
	
	Refactors image_update and image_create to use the same basic code.

2010-12-23  Rick Harris  <rick.harris@rackspace.com>

	Adding __protected_attributes__, some PEP8 cleanups

2010-12-22  Rick Harris  <rick.harris@rackspace.com>

	Converting to datetime before saving image

2010-12-21  jaypipes@gmail.com

	Enhances POST /images call to, you know, actually make it work...
	
	Contains Rick's additions as well.

2010-12-21  jaypipes@gmail.com

	Merge Rick's additions branch and make tiny fixups

2010-12-20  Rick Harris  <rick.harris@rackspace.com>

	Make directory for filesystem backend

2010-12-20  jaypipes@gmail.com

	Adds POST /images work that saves image data to a store backend

2010-12-20  jaypipes@gmail.com

	Update docs for adding image...

2010-12-20  jaypipes@gmail.com

	Fix Chris minor nit on docstring

2010-12-20  jaypipes@gmail.com

	doing the merge of this again...somehow the trunk branch never got rev26 :(

2010-12-18  jaypipes@gmail.com

	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...

2010-12-17  jaypipes@gmail.com

	Major refactoring...

2010-12-16  jaypipes@gmail.com

	Fix testing/debug left in

2010-12-16  jaypipes@gmail.com

	Fixes from review

2010-12-14  jaypipes@gmail.com

	Documentation updates and GlanceClient -> Client

2010-12-14  jaypipes@gmail.com

	Refactor a bunch of stuff around the image files collection
	
	* Removes ImageFile table
	* Places restriction on clients and server requests to ensure
	that the image metadata location is set, or the body of the request
	is image data
	* Refactors the FilesystemBackend to be a bit more robust and throw
	NotFound properly and return a real object instead _file_iter.
	* Move some repetitive code around injecting and building x-image-meta
	HTTP headers into /glance/util.py

2010-12-14  jaypipes@gmail.com

	Cleanup around x-image-meta and x-image-meta-property HTTP headers in GET/HEAD

2010-12-14  jaypipes@gmail.com

	Update /glance/client.py to have GlanceClient do all operations
	that RegistryClient does.
	
	Update glance.server.Controller.create() to return image metadata
	in x-image-meta- headers instead of the response body.
	
	Move RegistryClient to /glance/registry/client.py
	
	Next steps:
	
	* Change GlanceClient.add_image() calls to insert metadata
	into HTTP headers and optionally send image data in the
	request body.

2010-12-13  jaypipes@gmail.com

	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)
	
	Next steps:
	
	* Update main GlanceClient class to encapsulate entire Glance API
	and hide RegistryClient from normal usage
	* Refactor registry database API and schema

2010-12-13  jaypipes@gmail.com

	Second step in simplifying the Glance API.
	
	* Removes the notion of Parallax
	* Renames parallax stuff to just "registry"
	
	Next steps:
	
	* Refactor the registry database API to not be so abstract
	and remove the Nova DB super-abstraction layer. Add more
	attributes to the registry database tables, including
	image size_in_bytes
	* Merge Glance API with the registry API:
	** Make HEAD /images/<ID> return metadata in headers
	** Make GET /images/<ID> return image data with metadata
	in headers
	* Update client classes to hide registry client fully within
	/glance/registry/
	* Update docs and tests

2010-12-13  jaypipes@gmail.com

	This is the first part of simplifying the Glance API and
	consolidating the Teller and Parallax APIs into a single,
	unified Glance API.
	
	The following changes were made:
	* Change the bin/teller-server to bin/glance-api
	* Remove the notion of Teller as something the user
	has to be aware of. Call the previous "Teller backends"
	simple "stores".
	* Moves /glance/teller/controllers.py to /glance/server.py
	* Break out the filesystem store into a separate file
	
	Next steps:
	* Hide Parallax behind a unified API
	* Update docs and wiki
	* Refactor image registry database to include more
	information about images
	* Refactor notion of an image identifier to be a Glance URI

2010-12-11  jaypipes@gmail.com

	Adds DELETE call to Teller API

2010-12-08  jaypipes@gmail.com

	Don't leak implementation details in Swift backend. Return None on successful delete_object call

2010-12-06  jaypipes@gmail.com

	Adds call to Swift's DELETE

2010-12-06  jaypipes@gmail.com

	Typo fixed and tiny cleanups

2010-12-06  jaypipes@gmail.com

	Adds DELETE to Teller's API.

2010-12-06  jaypipes@gmail.com

	Merge trunk

2010-12-09  Rick Harris  <rick.harris@rackspace.com>

	Fixes Swift URL Parsing in Python 2.6.5 by adding back netloc.

2010-12-08  Rick Harris  <rick.harris@rackspace.com>

	Fix Swift URL parsing for Python 2.6.5

2010-12-09  Rick Harris  <rick.harris@rackspace.com>

	Moving imports into main which will only be executed after we daemonize thus avoiding the premature initialization of epoll.

2010-12-08  Rick Harris  <rick.harris@rackspace.com>

	Delaying eventlet import until after daemonization

2010-12-05  Rick Harris  <rick.harris@rackspace.com>

	Just some small cleanups, fixing:
	* Swapped port numbers (Parallax Port <=> Teller port)
	* Removing extraneous routes in Teller API
	* Adding required slashes to do_request
	
	Ran unit-tests and they passed.
	
	Tested functionally using curl and tests/test_data.py, everything worked.

2010-12-02  Rick Harris  <rick.harris@rackspace.com>

	Fixing swapped port numbers, removing extraneous routes in Teller controller, adding required slash for do_request calls

2010-12-05  jaypipes@gmail.com

	* 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
	
	I want to get feedback on these new unit tests and the
	changes to the Teller API to remove the parallax URI from
	the API calls.

2010-12-01  jaypipes@gmail.com

	* 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
	
	I want to get feedback on these new unit tests and the
	changes to the Teller API to remove the parallax URI from
	the API calls.

2010-11-29  jaypipes@gmail.com

	Add files attribute to Parallax client tests

2010-11-24  jaypipes@gmail.com

	Adds client classes for Parallax and Teller and fixes some issues where our controller was not returning proper HTTP response codes on errors...

2010-11-23  jaypipes@gmail.com

	Cleanup/fixes for Rick review

2010-11-22  jaypipes@gmail.com

	Adds client classes ParallaxClient and (stubbed) TellerClient
	to new glance.client module.
	
	Updates test cases for Parallax API to properly raise HTTP
	exceptions (which the client classes convert to Nova/Glance
	exception classes)

2010-10-21  jaypipes@gmail.com

	packaging fixups preparing for release candidate

2010-10-21  jaypipes@gmail.com

	Remove symlinks in bin/

2010-10-21  jaypipes@gmail.com

	Packaging fixups

2010-10-18  jaypipes@gmail.com

	awesomeness. merging into trunk since my parallax-api is already in trunk I believe. :)

2010-10-17  Rick Harris  <rick.harris@rackspace.com>

	Moving ATTR helpers into db module

2010-10-17  Rick Harris  <rick.harris@rackspace.com>

	PUTing and POSTing using image key

2010-10-15  jaypipes@gmail.com

	Quick fix...gives base Model an update() method to make it behave like a dict.

2010-10-15  jaypipes@gmail.com

	Merge trunk:

2010-10-15  jaypipes@gmail.com

	Make returned mapping have an 'image' key to help in XML serialization

2010-10-15  jaypipes@gmail.com

	Ignore virtualenv directory in bzr

2010-10-14  jaypipes@gmail.com

	Adds DELETE to the Parallax REST API.

2010-10-14  jaypipes@gmail.com

	Implements the REST call for updating image metadata in the Parallax API

2010-10-15  Rick Harris  <rick.harris@rackspace.com>

	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.
	
	Adds tests to ensure that two different images can use the same key, while preventing a single image from having two keys with the same name.

2010-10-15  Rick Harris  <rick.harris@rackspace.com>

	Adds compound unique constraint to ImageMetadatum

2010-10-15  Rick Harris  <rick.harris@rackspace.com>

	Fixes lp653358
	
	Using swift.common.client rather than python-cloudfiles for Teller's Swift backend.

2010-10-15  Rick Harris  <rick.harris@rackspace.com>

	Renaming is_cloudfiles_available -> is_swift_available

2010-10-14  Rick Harris  <rick.harris@rackspace.com>

	Using swift.common.client rather than python-cloudfiles in Teller's Swift backend

2010-10-13  jaypipes@gmail.com

	Implements Parallax API call to register a new image
	
	* Adds unit test for Parallax API controller
	* Adds stubouts for glance.parallax.db.sqlalchemy.api calls
	regarding images
	* Adds unittest for bad status on image creation
	* Adds --logging-clear-handlers arg to nosetests in run_tests.sh to
	prevent extra output in running tests when tests complete successfully

2010-10-13  jaypipes@gmail.com

	Adds a /images/detail route to the Parallax controller, adds a unit test for it, and cleans up Michael's suggestions.

2010-10-12  jaypipes@gmail.com

	Adds tests for bad status set on image

2010-10-12  jaypipes@gmail.com

	Implements Parallax API call to register a new image
	
	* Adds unit test for Parallax API controller
	* Adds stubouts for glance.parallax.db.sqlalchemy.api calls
	regarding images
	* Adds --logging-clear-handlers arg to nosetests in run_tests.sh to
	prevent extra output in running tests when tests complete successfully

2010-10-12  Rick Harris  <rick.harris@rackspace.com>

	Works around non-RFC compliance in Python (< 2.6.5) urlparse library.

2010-10-12  Rick Harris  <rick.harris@rackspace.com>

	Workaround for bug in Python 2.6.1 urlparse library

2010-10-11  jaypipes@gmail.com

	This patch overhauls the testing in Glance:
	
	* Adds Nova-like run_tests.sh and tools/* files to automatically run unit tests in a virtual environment.  Just do ./run_tests.sh -V from project root.  All required dependencies will be installed into a new virtual environment at .glance-venv.
	* Adds proper mocking and stubouts using pymox.  This removes the need for all the FakeParallaxAdapter and similar code.  Unit tests now call stubs.stub_out_parallax(), etc instead of having swiftfakehttp.py and similar code.

2010-10-11  jaypipes@gmail.com

	unittest2 -> unittest. For now, since not using unittest2 features yet.

2010-10-11  jaypipes@gmail.com

	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.

2010-10-08  jaypipes@gmail.com

	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.

2010-10-05  Rick Harris  <rick.harris@rackspace.com>

	With this patch Parallax and teller now work end-to-end with the Swift backend.
	
	bash-3.2$ curl localhost:9292/image?uri=http://localhost:9191/images/2 > testimg.tar.gz
	% Total % Received % Xferd Average Speed Time Time Time Current
	Dload Upload Total Spent Left Speed
	100 189M 0 189M 0 0 203k 0 --:--:-- 0:15:52 --:--:-- 214k
	
	bash-3.2$ md5 testimg.tar.gz
	MD5 (testimg.tar.gz) = ef6c5db4f55b0030828b71dd253a2384

2010-10-04  Rick Harris  <rick.harris@rackspace.com>

	Adding missing backend files, fixing typos in comments

2010-10-01  Rick Harris  <rick.harris@rackspace.com>

	Improving symmetry between teller and parallax

2010-10-01  Rick Harris  <rick.harris@rackspace.com>

	Fixing swift authurl

2010-10-04  Rick Harris  <rick.harris@rackspace.com>

	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)

2010-10-01  Rick Harris  <rick.harris@rackspace.com>

	Add RegistryAdapter, include ModelBase attributes

2010-10-01  Rick Harris  <rick.harris@rackspace.com>

	Fixing Teller image tests

2010-10-01  Rick Harris  <rick.harris@rackspace.com>

	Created teller-server.py in bin/

2010-10-01  Rick Harris  <rick.harris@rackspace.com>

	Merge trunk

2010-10-01  Rick Harris  <rick.harris@rackspace.com>

	Cleaning up Teller backend

2010-10-01  Rick Harris  <rick.harris@rackspace.com>

	Adding Image index call, nesting the Image show dict to facilitate XML serialization

2010-10-01  Rick Harris  <rick.harris@rackspace.com>

	Moving parallax models out of common and into the parallax module

2010-10-01  Christopher MacGown  <chris@slicehost.com>

	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.

2010-09-30  Christopher MacGown  <chris@slicehost.com>

	Updated tests

2010-09-30  Christopher MacGown  <chris@slicehost.com>

	Reimplements server.py as a wsgi api inheriting from glance.common

2010-09-30  Rick Harris  <rick.harris@rackspace.com>

	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)

2010-09-29  Rick Harris  <rick.harris@rackspace.com>

	ImageChunk -> ImageFile, merging APIRouter into API for now

2010-09-29  Rick Harris  <rick.harris@rackspace.com>

	Adding Apache header to test_data.py

2010-09-29  Rick Harris  <rick.harris@rackspace.com>

	Merge trunk

2010-09-29  Rick Harris  <rick.harris@rackspace.com>

	Small cleanups

2010-09-29  Rick Harris  <rick.harris@rackspace.com>

	Reconciling parallax modifications with modulization of glance

2010-09-28  Rick Harris  <rick.harris@rackspace.com>

	Adding Images controller

2010-09-28  Rick Harris  <rick.harris@rackspace.com>

	Adding API directory and server.py

2010-09-28  Rick Harris  <rick.harris@rackspace.com>

	Adding files from Nova

2010-09-30  Christopher MacGown  <chris@slicehost.com>

	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

2010-09-29  Christopher MacGown  <chris@slicehost.com>

	Parallax will return obj['location'] instead of obj['uri'], also maybe a parallax lookup fn would be nice?

2010-09-29  Christopher MacGown  <chris@slicehost.com>

	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.

2010-09-28  Christopher MacGown  <chris@slicehost.com>

	Modulify the imports

2010-09-28  Christopher MacGown  <chris@slicehost.com>

	Merge with trunk

2010-09-28  Christopher MacGown  <chris@slicehost.com>

	Implements Parallax adapter for lookups from Teller, also adds size expectations to the backend adapters.

2010-09-28  jaypipes@gmail.com

	Makes glance a module, containing teller and parallax sub-modules.
	
	Makes tests and tests.unit packages so nosetests will find the unit tests.

2010-09-27  jaypipes@gmail.com

	libify glance into teller and parallax modules. Make nosetests work by making tests and tests/unit/ into packages.

2010-09-27  Monty Taylor  <mordred@inaugust.com>

	Rearranged the code a little. Added a setup.py. Added sphinx doc skeleton.

2010-09-26  Monty Taylor  <mordred@inaugust.com>

	Added setup.py and sphinx docs.

2010-09-26  Monty Taylor  <mordred@inaugust.com>

	Reorg to make Monty's build pedanticness side happier.

2010-09-24  jaypipes@gmail.com

	Merge Chris' swift work.

2010-09-24  jaypipes@gmail.com

	Implements Swift backend for teller

2010-09-24  jaypipes@gmail.com

	ignore all .pyc files

2010-09-22  Rick Clark  <rclark@chat-blanc>

	Merging ricks changes

2010-08-25  Rick Harris  <rick.harris@rackspace.com>

	Adding basic image controller and mock backends

2010-08-23  Cory Wright  <cory.wright@rackspace.com>

	Adding description of registry data structure

2010-08-11  Cory Wright  <cory.wright@rackspace.com>

	Adding teller_server

2010-08-11  Cory Wright  <cory.wright@rackspace.com>

	adding filesystem and http backends

2010-08-05  Rick Harris  <rick@quasar.racklabs.com>

	Initial check-in

