googlecloud 0.0.4 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data.tar.gz.sig +0 -0
- data/CHANGELOG +4 -0
- data/Makefile +4 -0
- data/Manifest +760 -1
- data/bin/gcloud +7 -0
- data/bin/{gcutil → gcutil.symlink} +0 -0
- data/bin/gsutil-symlink +377 -0
- data/googlecloud.gemspec +5 -5
- data/packages/gsutil/CHECKSUM +1 -0
- data/packages/gsutil/COPYING +202 -0
- data/packages/gsutil/LICENSE.third_party +295 -0
- data/packages/gsutil/MANIFEST.in +5 -0
- data/packages/gsutil/README +38 -0
- data/packages/gsutil/README.pkg +49 -0
- data/packages/gsutil/ReleaseNotes.txt +780 -0
- data/packages/gsutil/VERSION +1 -0
- data/packages/gsutil/boto/Changelog.rst +35 -0
- data/packages/gsutil/boto/LICENSE +18 -0
- data/packages/gsutil/boto/MANIFEST.in +12 -0
- data/packages/gsutil/boto/README.rst +163 -0
- data/packages/gsutil/boto/bin/asadmin +290 -0
- data/packages/gsutil/boto/bin/bundle_image +27 -0
- data/packages/gsutil/boto/bin/cfadmin +108 -0
- data/packages/gsutil/boto/bin/cq +89 -0
- data/packages/gsutil/boto/bin/cwutil +140 -0
- data/packages/gsutil/boto/bin/elbadmin +284 -0
- data/packages/gsutil/boto/bin/fetch_file +43 -0
- data/packages/gsutil/boto/bin/glacier +154 -0
- data/packages/gsutil/boto/bin/instance_events +145 -0
- data/packages/gsutil/boto/bin/kill_instance +35 -0
- data/packages/gsutil/boto/bin/launch_instance +252 -0
- data/packages/gsutil/boto/bin/list_instances +90 -0
- data/packages/gsutil/boto/bin/lss3 +77 -0
- data/packages/gsutil/boto/bin/mturk +465 -0
- data/packages/gsutil/boto/bin/pyami_sendmail +52 -0
- data/packages/gsutil/boto/bin/route53 +205 -0
- data/packages/gsutil/boto/bin/s3put +374 -0
- data/packages/gsutil/boto/bin/sdbadmin +194 -0
- data/packages/gsutil/boto/bin/taskadmin +116 -0
- data/packages/gsutil/boto/boto/__init__.py +793 -0
- data/packages/gsutil/boto/boto/__init__.pyc +0 -0
- data/packages/gsutil/boto/boto/auth.py +682 -0
- data/packages/gsutil/boto/boto/auth.pyc +0 -0
- data/packages/gsutil/boto/boto/auth_handler.py +58 -0
- data/packages/gsutil/boto/boto/auth_handler.pyc +0 -0
- data/packages/gsutil/boto/boto/beanstalk/__init__.py +65 -0
- data/packages/gsutil/boto/boto/beanstalk/exception.py +64 -0
- data/packages/gsutil/boto/boto/beanstalk/layer1.py +1153 -0
- data/packages/gsutil/boto/boto/beanstalk/response.py +703 -0
- data/packages/gsutil/boto/boto/beanstalk/wrapper.py +29 -0
- data/packages/gsutil/boto/boto/cacerts/__init__.py +22 -0
- data/packages/gsutil/boto/boto/cacerts/__init__.pyc +0 -0
- data/packages/gsutil/boto/boto/cacerts/cacerts.txt +633 -0
- data/packages/gsutil/boto/boto/cloudformation/__init__.py +68 -0
- data/packages/gsutil/boto/boto/cloudformation/connection.py +364 -0
- data/packages/gsutil/boto/boto/cloudformation/stack.py +360 -0
- data/packages/gsutil/boto/boto/cloudformation/template.py +43 -0
- data/packages/gsutil/boto/boto/cloudfront/__init__.py +324 -0
- data/packages/gsutil/boto/boto/cloudfront/distribution.py +745 -0
- data/packages/gsutil/boto/boto/cloudfront/exception.py +26 -0
- data/packages/gsutil/boto/boto/cloudfront/identity.py +122 -0
- data/packages/gsutil/boto/boto/cloudfront/invalidation.py +216 -0
- data/packages/gsutil/boto/boto/cloudfront/logging.py +38 -0
- data/packages/gsutil/boto/boto/cloudfront/object.py +48 -0
- data/packages/gsutil/boto/boto/cloudfront/origin.py +150 -0
- data/packages/gsutil/boto/boto/cloudfront/signers.py +60 -0
- data/packages/gsutil/boto/boto/cloudsearch/__init__.py +45 -0
- data/packages/gsutil/boto/boto/cloudsearch/document.py +265 -0
- data/packages/gsutil/boto/boto/cloudsearch/domain.py +394 -0
- data/packages/gsutil/boto/boto/cloudsearch/layer1.py +738 -0
- data/packages/gsutil/boto/boto/cloudsearch/layer2.py +67 -0
- data/packages/gsutil/boto/boto/cloudsearch/optionstatus.py +248 -0
- data/packages/gsutil/boto/boto/cloudsearch/search.py +365 -0
- data/packages/gsutil/boto/boto/cloudsearch/sourceattribute.py +75 -0
- data/packages/gsutil/boto/boto/compat.py +28 -0
- data/packages/gsutil/boto/boto/compat.pyc +0 -0
- data/packages/gsutil/boto/boto/connection.py +1081 -0
- data/packages/gsutil/boto/boto/connection.pyc +0 -0
- data/packages/gsutil/boto/boto/contrib/__init__.py +22 -0
- data/packages/gsutil/boto/boto/contrib/ymlmessage.py +52 -0
- data/packages/gsutil/boto/boto/core/README +58 -0
- data/packages/gsutil/boto/boto/core/__init__.py +23 -0
- data/packages/gsutil/boto/boto/core/auth.py +78 -0
- data/packages/gsutil/boto/boto/core/credentials.py +154 -0
- data/packages/gsutil/boto/boto/core/dictresponse.py +178 -0
- data/packages/gsutil/boto/boto/core/service.py +67 -0
- data/packages/gsutil/boto/boto/datapipeline/__init__.py +0 -0
- data/packages/gsutil/boto/boto/datapipeline/exceptions.py +42 -0
- data/packages/gsutil/boto/boto/datapipeline/layer1.py +546 -0
- data/packages/gsutil/boto/boto/dynamodb/__init__.py +66 -0
- data/packages/gsutil/boto/boto/dynamodb/batch.py +262 -0
- data/packages/gsutil/boto/boto/dynamodb/condition.py +170 -0
- data/packages/gsutil/boto/boto/dynamodb/exceptions.py +64 -0
- data/packages/gsutil/boto/boto/dynamodb/item.py +196 -0
- data/packages/gsutil/boto/boto/dynamodb/layer1.py +575 -0
- data/packages/gsutil/boto/boto/dynamodb/layer2.py +798 -0
- data/packages/gsutil/boto/boto/dynamodb/schema.py +112 -0
- data/packages/gsutil/boto/boto/dynamodb/table.py +540 -0
- data/packages/gsutil/boto/boto/dynamodb/types.py +326 -0
- data/packages/gsutil/boto/boto/ec2/__init__.py +96 -0
- data/packages/gsutil/boto/boto/ec2/address.py +103 -0
- data/packages/gsutil/boto/boto/ec2/autoscale/__init__.py +781 -0
- data/packages/gsutil/boto/boto/ec2/autoscale/activity.py +74 -0
- data/packages/gsutil/boto/boto/ec2/autoscale/group.py +337 -0
- data/packages/gsutil/boto/boto/ec2/autoscale/instance.py +60 -0
- data/packages/gsutil/boto/boto/ec2/autoscale/launchconfig.py +209 -0
- data/packages/gsutil/boto/boto/ec2/autoscale/policy.py +166 -0
- data/packages/gsutil/boto/boto/ec2/autoscale/request.py +38 -0
- data/packages/gsutil/boto/boto/ec2/autoscale/scheduled.py +60 -0
- data/packages/gsutil/boto/boto/ec2/autoscale/tag.py +84 -0
- data/packages/gsutil/boto/boto/ec2/blockdevicemapping.py +141 -0
- data/packages/gsutil/boto/boto/ec2/bundleinstance.py +78 -0
- data/packages/gsutil/boto/boto/ec2/buyreservation.py +84 -0
- data/packages/gsutil/boto/boto/ec2/cloudwatch/__init__.py +603 -0
- data/packages/gsutil/boto/boto/ec2/cloudwatch/alarm.py +316 -0
- data/packages/gsutil/boto/boto/ec2/cloudwatch/datapoint.py +40 -0
- data/packages/gsutil/boto/boto/ec2/cloudwatch/dimension.py +38 -0
- data/packages/gsutil/boto/boto/ec2/cloudwatch/listelement.py +31 -0
- data/packages/gsutil/boto/boto/ec2/cloudwatch/metric.py +175 -0
- data/packages/gsutil/boto/boto/ec2/connection.py +3409 -0
- data/packages/gsutil/boto/boto/ec2/ec2object.py +107 -0
- data/packages/gsutil/boto/boto/ec2/elb/__init__.py +553 -0
- data/packages/gsutil/boto/boto/ec2/elb/healthcheck.py +89 -0
- data/packages/gsutil/boto/boto/ec2/elb/instancestate.py +62 -0
- data/packages/gsutil/boto/boto/ec2/elb/listelement.py +36 -0
- data/packages/gsutil/boto/boto/ec2/elb/listener.py +75 -0
- data/packages/gsutil/boto/boto/ec2/elb/loadbalancer.py +324 -0
- data/packages/gsutil/boto/boto/ec2/elb/policies.py +89 -0
- data/packages/gsutil/boto/boto/ec2/elb/securitygroup.py +38 -0
- data/packages/gsutil/boto/boto/ec2/group.py +39 -0
- data/packages/gsutil/boto/boto/ec2/image.py +350 -0
- data/packages/gsutil/boto/boto/ec2/instance.py +661 -0
- data/packages/gsutil/boto/boto/ec2/instanceinfo.py +51 -0
- data/packages/gsutil/boto/boto/ec2/instancestatus.py +207 -0
- data/packages/gsutil/boto/boto/ec2/keypair.py +113 -0
- data/packages/gsutil/boto/boto/ec2/launchspecification.py +105 -0
- data/packages/gsutil/boto/boto/ec2/networkinterface.py +247 -0
- data/packages/gsutil/boto/boto/ec2/placementgroup.py +51 -0
- data/packages/gsutil/boto/boto/ec2/regioninfo.py +34 -0
- data/packages/gsutil/boto/boto/ec2/reservedinstance.py +227 -0
- data/packages/gsutil/boto/boto/ec2/securitygroup.py +357 -0
- data/packages/gsutil/boto/boto/ec2/snapshot.py +170 -0
- data/packages/gsutil/boto/boto/ec2/spotdatafeedsubscription.py +63 -0
- data/packages/gsutil/boto/boto/ec2/spotinstancerequest.py +188 -0
- data/packages/gsutil/boto/boto/ec2/spotpricehistory.py +55 -0
- data/packages/gsutil/boto/boto/ec2/tag.py +87 -0
- data/packages/gsutil/boto/boto/ec2/vmtype.py +58 -0
- data/packages/gsutil/boto/boto/ec2/volume.py +293 -0
- data/packages/gsutil/boto/boto/ec2/volumestatus.py +200 -0
- data/packages/gsutil/boto/boto/ec2/zone.py +80 -0
- data/packages/gsutil/boto/boto/ecs/__init__.py +90 -0
- data/packages/gsutil/boto/boto/ecs/item.py +153 -0
- data/packages/gsutil/boto/boto/elasticache/__init__.py +62 -0
- data/packages/gsutil/boto/boto/elasticache/layer1.py +1252 -0
- data/packages/gsutil/boto/boto/elastictranscoder/__init__.py +62 -0
- data/packages/gsutil/boto/boto/elastictranscoder/exceptions.py +46 -0
- data/packages/gsutil/boto/boto/elastictranscoder/layer1.py +509 -0
- data/packages/gsutil/boto/boto/emr/__init__.py +73 -0
- data/packages/gsutil/boto/boto/emr/bootstrap_action.py +44 -0
- data/packages/gsutil/boto/boto/emr/connection.py +531 -0
- data/packages/gsutil/boto/boto/emr/emrobject.py +176 -0
- data/packages/gsutil/boto/boto/emr/instance_group.py +43 -0
- data/packages/gsutil/boto/boto/emr/step.py +281 -0
- data/packages/gsutil/boto/boto/exception.py +476 -0
- data/packages/gsutil/boto/boto/exception.pyc +0 -0
- data/packages/gsutil/boto/boto/file/README +49 -0
- data/packages/gsutil/boto/boto/file/__init__.py +28 -0
- data/packages/gsutil/boto/boto/file/bucket.py +112 -0
- data/packages/gsutil/boto/boto/file/connection.py +33 -0
- data/packages/gsutil/boto/boto/file/key.py +199 -0
- data/packages/gsutil/boto/boto/file/simpleresultset.py +30 -0
- data/packages/gsutil/boto/boto/fps/__init__.py +21 -0
- data/packages/gsutil/boto/boto/fps/connection.py +369 -0
- data/packages/gsutil/boto/boto/fps/exception.py +344 -0
- data/packages/gsutil/boto/boto/fps/response.py +175 -0
- data/packages/gsutil/boto/boto/glacier/__init__.py +57 -0
- data/packages/gsutil/boto/boto/glacier/concurrent.py +409 -0
- data/packages/gsutil/boto/boto/glacier/exceptions.py +58 -0
- data/packages/gsutil/boto/boto/glacier/job.py +152 -0
- data/packages/gsutil/boto/boto/glacier/layer1.py +637 -0
- data/packages/gsutil/boto/boto/glacier/layer2.py +93 -0
- data/packages/gsutil/boto/boto/glacier/response.py +48 -0
- data/packages/gsutil/boto/boto/glacier/utils.py +163 -0
- data/packages/gsutil/boto/boto/glacier/vault.py +387 -0
- data/packages/gsutil/boto/boto/glacier/writer.py +242 -0
- data/packages/gsutil/boto/boto/gs/__init__.py +22 -0
- data/packages/gsutil/boto/boto/gs/__init__.pyc +0 -0
- data/packages/gsutil/boto/boto/gs/acl.py +304 -0
- data/packages/gsutil/boto/boto/gs/acl.pyc +0 -0
- data/packages/gsutil/boto/boto/gs/bucket.py +870 -0
- data/packages/gsutil/boto/boto/gs/bucket.pyc +0 -0
- data/packages/gsutil/boto/boto/gs/bucketlistresultset.py +64 -0
- data/packages/gsutil/boto/boto/gs/bucketlistresultset.pyc +0 -0
- data/packages/gsutil/boto/boto/gs/connection.py +103 -0
- data/packages/gsutil/boto/boto/gs/connection.pyc +0 -0
- data/packages/gsutil/boto/boto/gs/cors.py +169 -0
- data/packages/gsutil/boto/boto/gs/cors.pyc +0 -0
- data/packages/gsutil/boto/boto/gs/key.py +704 -0
- data/packages/gsutil/boto/boto/gs/key.pyc +0 -0
- data/packages/gsutil/boto/boto/gs/resumable_upload_handler.py +659 -0
- data/packages/gsutil/boto/boto/gs/resumable_upload_handler.pyc +0 -0
- data/packages/gsutil/boto/boto/gs/user.py +54 -0
- data/packages/gsutil/boto/boto/gs/user.pyc +0 -0
- data/packages/gsutil/boto/boto/handler.py +44 -0
- data/packages/gsutil/boto/boto/handler.pyc +0 -0
- data/packages/gsutil/boto/boto/https_connection.py +124 -0
- data/packages/gsutil/boto/boto/https_connection.pyc +0 -0
- data/packages/gsutil/boto/boto/iam/__init__.py +74 -0
- data/packages/gsutil/boto/boto/iam/connection.py +1317 -0
- data/packages/gsutil/boto/boto/iam/summarymap.py +42 -0
- data/packages/gsutil/boto/boto/jsonresponse.py +163 -0
- data/packages/gsutil/boto/boto/jsonresponse.pyc +0 -0
- data/packages/gsutil/boto/boto/manage/__init__.py +23 -0
- data/packages/gsutil/boto/boto/manage/cmdshell.py +241 -0
- data/packages/gsutil/boto/boto/manage/propget.py +64 -0
- data/packages/gsutil/boto/boto/manage/server.py +556 -0
- data/packages/gsutil/boto/boto/manage/task.py +175 -0
- data/packages/gsutil/boto/boto/manage/test_manage.py +34 -0
- data/packages/gsutil/boto/boto/manage/volume.py +420 -0
- data/packages/gsutil/boto/boto/mashups/__init__.py +23 -0
- data/packages/gsutil/boto/boto/mashups/interactive.py +97 -0
- data/packages/gsutil/boto/boto/mashups/iobject.py +115 -0
- data/packages/gsutil/boto/boto/mashups/order.py +211 -0
- data/packages/gsutil/boto/boto/mashups/server.py +395 -0
- data/packages/gsutil/boto/boto/mturk/__init__.py +23 -0
- data/packages/gsutil/boto/boto/mturk/connection.py +1027 -0
- data/packages/gsutil/boto/boto/mturk/layoutparam.py +55 -0
- data/packages/gsutil/boto/boto/mturk/notification.py +103 -0
- data/packages/gsutil/boto/boto/mturk/price.py +48 -0
- data/packages/gsutil/boto/boto/mturk/qualification.py +137 -0
- data/packages/gsutil/boto/boto/mturk/question.py +455 -0
- data/packages/gsutil/boto/boto/mws/__init__.py +21 -0
- data/packages/gsutil/boto/boto/mws/connection.py +813 -0
- data/packages/gsutil/boto/boto/mws/exception.py +75 -0
- data/packages/gsutil/boto/boto/mws/response.py +655 -0
- data/packages/gsutil/boto/boto/plugin.py +90 -0
- data/packages/gsutil/boto/boto/plugin.pyc +0 -0
- data/packages/gsutil/boto/boto/provider.py +337 -0
- data/packages/gsutil/boto/boto/provider.pyc +0 -0
- data/packages/gsutil/boto/boto/pyami/__init__.py +22 -0
- data/packages/gsutil/boto/boto/pyami/__init__.pyc +0 -0
- data/packages/gsutil/boto/boto/pyami/bootstrap.py +134 -0
- data/packages/gsutil/boto/boto/pyami/config.py +229 -0
- data/packages/gsutil/boto/boto/pyami/config.pyc +0 -0
- data/packages/gsutil/boto/boto/pyami/copybot.cfg +60 -0
- data/packages/gsutil/boto/boto/pyami/copybot.py +97 -0
- data/packages/gsutil/boto/boto/pyami/helloworld.py +28 -0
- data/packages/gsutil/boto/boto/pyami/installers/__init__.py +64 -0
- data/packages/gsutil/boto/boto/pyami/installers/ubuntu/__init__.py +22 -0
- data/packages/gsutil/boto/boto/pyami/installers/ubuntu/apache.py +43 -0
- data/packages/gsutil/boto/boto/pyami/installers/ubuntu/ebs.py +238 -0
- data/packages/gsutil/boto/boto/pyami/installers/ubuntu/installer.py +96 -0
- data/packages/gsutil/boto/boto/pyami/installers/ubuntu/mysql.py +109 -0
- data/packages/gsutil/boto/boto/pyami/installers/ubuntu/trac.py +139 -0
- data/packages/gsutil/boto/boto/pyami/launch_ami.py +178 -0
- data/packages/gsutil/boto/boto/pyami/scriptbase.py +44 -0
- data/packages/gsutil/boto/boto/pyami/startup.py +60 -0
- data/packages/gsutil/boto/boto/rds/__init__.py +1194 -0
- data/packages/gsutil/boto/boto/rds/dbinstance.py +357 -0
- data/packages/gsutil/boto/boto/rds/dbsecuritygroup.py +177 -0
- data/packages/gsutil/boto/boto/rds/dbsnapshot.py +108 -0
- data/packages/gsutil/boto/boto/rds/event.py +49 -0
- data/packages/gsutil/boto/boto/rds/parametergroup.py +201 -0
- data/packages/gsutil/boto/boto/rds/regioninfo.py +32 -0
- data/packages/gsutil/boto/boto/regioninfo.py +63 -0
- data/packages/gsutil/boto/boto/regioninfo.pyc +0 -0
- data/packages/gsutil/boto/boto/resultset.py +169 -0
- data/packages/gsutil/boto/boto/resultset.pyc +0 -0
- data/packages/gsutil/boto/boto/roboto/__init__.py +1 -0
- data/packages/gsutil/boto/boto/roboto/awsqueryrequest.py +504 -0
- data/packages/gsutil/boto/boto/roboto/awsqueryservice.py +121 -0
- data/packages/gsutil/boto/boto/roboto/param.py +147 -0
- data/packages/gsutil/boto/boto/route53/__init__.py +75 -0
- data/packages/gsutil/boto/boto/route53/connection.py +403 -0
- data/packages/gsutil/boto/boto/route53/exception.py +27 -0
- data/packages/gsutil/boto/boto/route53/hostedzone.py +56 -0
- data/packages/gsutil/boto/boto/route53/record.py +306 -0
- data/packages/gsutil/boto/boto/route53/status.py +42 -0
- data/packages/gsutil/boto/boto/route53/zone.py +412 -0
- data/packages/gsutil/boto/boto/s3/__init__.py +84 -0
- data/packages/gsutil/boto/boto/s3/__init__.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/acl.py +164 -0
- data/packages/gsutil/boto/boto/s3/acl.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/bucket.py +1634 -0
- data/packages/gsutil/boto/boto/s3/bucket.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/bucketlistresultset.py +139 -0
- data/packages/gsutil/boto/boto/s3/bucketlistresultset.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/bucketlogging.py +83 -0
- data/packages/gsutil/boto/boto/s3/bucketlogging.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/connection.py +540 -0
- data/packages/gsutil/boto/boto/s3/connection.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/cors.py +210 -0
- data/packages/gsutil/boto/boto/s3/cors.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/deletemarker.py +55 -0
- data/packages/gsutil/boto/boto/s3/deletemarker.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/key.py +1712 -0
- data/packages/gsutil/boto/boto/s3/key.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/keyfile.py +134 -0
- data/packages/gsutil/boto/boto/s3/keyfile.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/lifecycle.py +231 -0
- data/packages/gsutil/boto/boto/s3/lifecycle.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/multidelete.py +138 -0
- data/packages/gsutil/boto/boto/s3/multidelete.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/multipart.py +315 -0
- data/packages/gsutil/boto/boto/s3/multipart.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/prefix.py +42 -0
- data/packages/gsutil/boto/boto/s3/prefix.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/resumable_download_handler.py +339 -0
- data/packages/gsutil/boto/boto/s3/resumable_download_handler.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/tagging.py +71 -0
- data/packages/gsutil/boto/boto/s3/tagging.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/user.py +49 -0
- data/packages/gsutil/boto/boto/s3/user.pyc +0 -0
- data/packages/gsutil/boto/boto/s3/website.py +237 -0
- data/packages/gsutil/boto/boto/s3/website.pyc +0 -0
- data/packages/gsutil/boto/boto/sdb/__init__.py +67 -0
- data/packages/gsutil/boto/boto/sdb/connection.py +617 -0
- data/packages/gsutil/boto/boto/sdb/db/__init__.py +20 -0
- data/packages/gsutil/boto/boto/sdb/db/blob.py +75 -0
- data/packages/gsutil/boto/boto/sdb/db/key.py +59 -0
- data/packages/gsutil/boto/boto/sdb/db/manager/__init__.py +85 -0
- data/packages/gsutil/boto/boto/sdb/db/manager/sdbmanager.py +732 -0
- data/packages/gsutil/boto/boto/sdb/db/manager/xmlmanager.py +517 -0
- data/packages/gsutil/boto/boto/sdb/db/model.py +294 -0
- data/packages/gsutil/boto/boto/sdb/db/property.py +703 -0
- data/packages/gsutil/boto/boto/sdb/db/query.py +85 -0
- data/packages/gsutil/boto/boto/sdb/db/sequence.py +226 -0
- data/packages/gsutil/boto/boto/sdb/db/test_db.py +231 -0
- data/packages/gsutil/boto/boto/sdb/domain.py +377 -0
- data/packages/gsutil/boto/boto/sdb/item.py +181 -0
- data/packages/gsutil/boto/boto/sdb/queryresultset.py +92 -0
- data/packages/gsutil/boto/boto/sdb/regioninfo.py +32 -0
- data/packages/gsutil/boto/boto/services/__init__.py +23 -0
- data/packages/gsutil/boto/boto/services/bs.py +179 -0
- data/packages/gsutil/boto/boto/services/message.py +58 -0
- data/packages/gsutil/boto/boto/services/result.py +136 -0
- data/packages/gsutil/boto/boto/services/service.py +161 -0
- data/packages/gsutil/boto/boto/services/servicedef.py +91 -0
- data/packages/gsutil/boto/boto/services/sonofmmm.cfg +43 -0
- data/packages/gsutil/boto/boto/services/sonofmmm.py +81 -0
- data/packages/gsutil/boto/boto/services/submit.py +88 -0
- data/packages/gsutil/boto/boto/ses/__init__.py +54 -0
- data/packages/gsutil/boto/boto/ses/connection.py +521 -0
- data/packages/gsutil/boto/boto/ses/exceptions.py +77 -0
- data/packages/gsutil/boto/boto/sns/__init__.py +78 -0
- data/packages/gsutil/boto/boto/sns/connection.py +431 -0
- data/packages/gsutil/boto/boto/sqs/__init__.py +56 -0
- data/packages/gsutil/boto/boto/sqs/attributes.py +46 -0
- data/packages/gsutil/boto/boto/sqs/batchresults.py +95 -0
- data/packages/gsutil/boto/boto/sqs/connection.py +417 -0
- data/packages/gsutil/boto/boto/sqs/jsonmessage.py +43 -0
- data/packages/gsutil/boto/boto/sqs/message.py +253 -0
- data/packages/gsutil/boto/boto/sqs/queue.py +478 -0
- data/packages/gsutil/boto/boto/sqs/regioninfo.py +32 -0
- data/packages/gsutil/boto/boto/storage_uri.py +835 -0
- data/packages/gsutil/boto/boto/storage_uri.pyc +0 -0
- data/packages/gsutil/boto/boto/sts/__init__.py +55 -0
- data/packages/gsutil/boto/boto/sts/connection.py +207 -0
- data/packages/gsutil/boto/boto/sts/credentials.py +215 -0
- data/packages/gsutil/boto/boto/swf/__init__.py +60 -0
- data/packages/gsutil/boto/boto/swf/exceptions.py +44 -0
- data/packages/gsutil/boto/boto/swf/layer1.py +1512 -0
- data/packages/gsutil/boto/boto/swf/layer1_decisions.py +287 -0
- data/packages/gsutil/boto/boto/swf/layer2.py +342 -0
- data/packages/gsutil/boto/boto/utils.py +927 -0
- data/packages/gsutil/boto/boto/utils.pyc +0 -0
- data/packages/gsutil/boto/boto/vpc/__init__.py +910 -0
- data/packages/gsutil/boto/boto/vpc/customergateway.py +54 -0
- data/packages/gsutil/boto/boto/vpc/dhcpoptions.py +72 -0
- data/packages/gsutil/boto/boto/vpc/internetgateway.py +72 -0
- data/packages/gsutil/boto/boto/vpc/routetable.py +109 -0
- data/packages/gsutil/boto/boto/vpc/subnet.py +57 -0
- data/packages/gsutil/boto/boto/vpc/vpc.py +54 -0
- data/packages/gsutil/boto/boto/vpc/vpnconnection.py +60 -0
- data/packages/gsutil/boto/boto/vpc/vpngateway.py +83 -0
- data/packages/gsutil/boto/docs/BotoCheatSheet.pdf +0 -0
- data/packages/gsutil/boto/docs/Makefile +89 -0
- data/packages/gsutil/boto/docs/make.bat +113 -0
- data/packages/gsutil/boto/docs/source/_templates/layout.html +3 -0
- data/packages/gsutil/boto/docs/source/autoscale_tut.rst +220 -0
- data/packages/gsutil/boto/docs/source/boto_config_tut.rst +125 -0
- data/packages/gsutil/boto/docs/source/boto_theme/static/boto.css_t +239 -0
- data/packages/gsutil/boto/docs/source/boto_theme/static/pygments.css +61 -0
- data/packages/gsutil/boto/docs/source/boto_theme/theme.conf +3 -0
- data/packages/gsutil/boto/docs/source/cloudfront_tut.rst +196 -0
- data/packages/gsutil/boto/docs/source/cloudsearch_tut.rst +411 -0
- data/packages/gsutil/boto/docs/source/cloudwatch_tut.rst +116 -0
- data/packages/gsutil/boto/docs/source/conf.py +32 -0
- data/packages/gsutil/boto/docs/source/contributing.rst +204 -0
- data/packages/gsutil/boto/docs/source/documentation.rst +59 -0
- data/packages/gsutil/boto/docs/source/dynamodb_tut.rst +339 -0
- data/packages/gsutil/boto/docs/source/ec2_tut.rst +86 -0
- data/packages/gsutil/boto/docs/source/elb_tut.rst +257 -0
- data/packages/gsutil/boto/docs/source/emr_tut.rst +108 -0
- data/packages/gsutil/boto/docs/source/index.rst +146 -0
- data/packages/gsutil/boto/docs/source/rds_tut.rst +108 -0
- data/packages/gsutil/boto/docs/source/ref/autoscale.rst +62 -0
- data/packages/gsutil/boto/docs/source/ref/beanstalk.rst +26 -0
- data/packages/gsutil/boto/docs/source/ref/boto.rst +47 -0
- data/packages/gsutil/boto/docs/source/ref/cloudformation.rst +34 -0
- data/packages/gsutil/boto/docs/source/ref/cloudfront.rst +68 -0
- data/packages/gsutil/boto/docs/source/ref/cloudsearch.rst +59 -0
- data/packages/gsutil/boto/docs/source/ref/cloudwatch.rst +27 -0
- data/packages/gsutil/boto/docs/source/ref/contrib.rst +32 -0
- data/packages/gsutil/boto/docs/source/ref/datapipeline.rst +26 -0
- data/packages/gsutil/boto/docs/source/ref/dynamodb.rst +61 -0
- data/packages/gsutil/boto/docs/source/ref/ec2.rst +140 -0
- data/packages/gsutil/boto/docs/source/ref/ecs.rst +19 -0
- data/packages/gsutil/boto/docs/source/ref/elasticache.rst +19 -0
- data/packages/gsutil/boto/docs/source/ref/elastictranscoder.rst +26 -0
- data/packages/gsutil/boto/docs/source/ref/elb.rst +47 -0
- data/packages/gsutil/boto/docs/source/ref/emr.rst +34 -0
- data/packages/gsutil/boto/docs/source/ref/file.rst +34 -0
- data/packages/gsutil/boto/docs/source/ref/fps.rst +19 -0
- data/packages/gsutil/boto/docs/source/ref/glacier.rst +63 -0
- data/packages/gsutil/boto/docs/source/ref/gs.rst +72 -0
- data/packages/gsutil/boto/docs/source/ref/iam.rst +27 -0
- data/packages/gsutil/boto/docs/source/ref/index.rst +40 -0
- data/packages/gsutil/boto/docs/source/ref/manage.rst +47 -0
- data/packages/gsutil/boto/docs/source/ref/mturk.rst +54 -0
- data/packages/gsutil/boto/docs/source/ref/mws.rst +33 -0
- data/packages/gsutil/boto/docs/source/ref/pyami.rst +103 -0
- data/packages/gsutil/boto/docs/source/ref/rds.rst +47 -0
- data/packages/gsutil/boto/docs/source/ref/route53.rst +34 -0
- data/packages/gsutil/boto/docs/source/ref/s3.rst +111 -0
- data/packages/gsutil/boto/docs/source/ref/sdb.rst +45 -0
- data/packages/gsutil/boto/docs/source/ref/sdb_db.rst +83 -0
- data/packages/gsutil/boto/docs/source/ref/services.rst +61 -0
- data/packages/gsutil/boto/docs/source/ref/ses.rst +21 -0
- data/packages/gsutil/boto/docs/source/ref/sns.rst +17 -0
- data/packages/gsutil/boto/docs/source/ref/sqs.rst +61 -0
- data/packages/gsutil/boto/docs/source/ref/sts.rst +25 -0
- data/packages/gsutil/boto/docs/source/ref/swf.rst +22 -0
- data/packages/gsutil/boto/docs/source/ref/vpc.rst +54 -0
- data/packages/gsutil/boto/docs/source/s3_tut.rst +450 -0
- data/packages/gsutil/boto/docs/source/security_groups.rst +82 -0
- data/packages/gsutil/boto/docs/source/ses_tut.rst +171 -0
- data/packages/gsutil/boto/docs/source/simpledb_tut.rst +188 -0
- data/packages/gsutil/boto/docs/source/sqs_tut.rst +246 -0
- data/packages/gsutil/boto/docs/source/vpc_tut.rst +100 -0
- data/packages/gsutil/boto/pylintrc +305 -0
- data/packages/gsutil/boto/requirements.txt +10 -0
- data/packages/gsutil/boto/setup.py +89 -0
- data/packages/gsutil/boto/tests/__init__.py +20 -0
- data/packages/gsutil/boto/tests/db/test_lists.py +96 -0
- data/packages/gsutil/boto/tests/db/test_password.py +128 -0
- data/packages/gsutil/boto/tests/db/test_query.py +152 -0
- data/packages/gsutil/boto/tests/db/test_sequence.py +109 -0
- data/packages/gsutil/boto/tests/devpay/__init__.py +0 -0
- data/packages/gsutil/boto/tests/devpay/test_s3.py +181 -0
- data/packages/gsutil/boto/tests/fps/__init__.py +0 -0
- data/packages/gsutil/boto/tests/fps/test.py +100 -0
- data/packages/gsutil/boto/tests/fps/test_verify_signature.py +12 -0
- data/packages/gsutil/boto/tests/integration/__init__.py +0 -0
- data/packages/gsutil/boto/tests/integration/beanstalk/test_wrapper.py +209 -0
- data/packages/gsutil/boto/tests/integration/cloudformation/__init__.py +21 -0
- data/packages/gsutil/boto/tests/integration/cloudformation/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/cloudformation/test_connection.py +110 -0
- data/packages/gsutil/boto/tests/integration/cloudsearch/__init__.py +21 -0
- data/packages/gsutil/boto/tests/integration/cloudsearch/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/datapipeline/test_layer1.py +122 -0
- data/packages/gsutil/boto/tests/integration/dynamodb/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/dynamodb/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/dynamodb/test_layer1.py +266 -0
- data/packages/gsutil/boto/tests/integration/dynamodb/test_layer2.py +484 -0
- data/packages/gsutil/boto/tests/integration/dynamodb/test_table.py +84 -0
- data/packages/gsutil/boto/tests/integration/ec2/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/ec2/autoscale/__init__.py +21 -0
- data/packages/gsutil/boto/tests/integration/ec2/autoscale/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/ec2/autoscale/test_connection.py +167 -0
- data/packages/gsutil/boto/tests/integration/ec2/cloudwatch/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/ec2/cloudwatch/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/ec2/cloudwatch/test_connection.py +277 -0
- data/packages/gsutil/boto/tests/integration/ec2/elb/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/ec2/elb/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/ec2/elb/test_connection.py +130 -0
- data/packages/gsutil/boto/tests/integration/ec2/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/ec2/test_connection.py +192 -0
- data/packages/gsutil/boto/tests/integration/ec2/vpc/__init__.py +0 -0
- data/packages/gsutil/boto/tests/integration/ec2/vpc/test_connection.py +95 -0
- data/packages/gsutil/boto/tests/integration/elasticache/__init__.py +0 -0
- data/packages/gsutil/boto/tests/integration/elasticache/test_layer1.py +67 -0
- data/packages/gsutil/boto/tests/integration/elastictranscoder/__init__.py +0 -0
- data/packages/gsutil/boto/tests/integration/elastictranscoder/test_cert_verification.py +35 -0
- data/packages/gsutil/boto/tests/integration/elastictranscoder/test_layer1.py +115 -0
- data/packages/gsutil/boto/tests/integration/emr/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/emr/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/glacier/__init__.py +22 -0
- data/packages/gsutil/boto/tests/integration/glacier/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/glacier/test_layer1.py +44 -0
- data/packages/gsutil/boto/tests/integration/glacier/test_layer2.py +45 -0
- data/packages/gsutil/boto/tests/integration/gs/__init__.py +0 -0
- data/packages/gsutil/boto/tests/integration/gs/cb_test_harness.py +71 -0
- data/packages/gsutil/boto/tests/integration/gs/test_basic.py +379 -0
- data/packages/gsutil/boto/tests/integration/gs/test_generation_conditionals.py +399 -0
- data/packages/gsutil/boto/tests/integration/gs/test_resumable_downloads.py +358 -0
- data/packages/gsutil/boto/tests/integration/gs/test_resumable_uploads.py +525 -0
- data/packages/gsutil/boto/tests/integration/gs/test_storage_uri.py +125 -0
- data/packages/gsutil/boto/tests/integration/gs/test_versioning.py +268 -0
- data/packages/gsutil/boto/tests/integration/gs/testcase.py +116 -0
- data/packages/gsutil/boto/tests/integration/gs/util.py +63 -0
- data/packages/gsutil/boto/tests/integration/iam/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/iam/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/mws/__init__.py +0 -0
- data/packages/gsutil/boto/tests/integration/mws/test.py +100 -0
- data/packages/gsutil/boto/tests/integration/rds/__init__.py +21 -0
- data/packages/gsutil/boto/tests/integration/rds/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/route53/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/route53/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/route53/test_zone.py +132 -0
- data/packages/gsutil/boto/tests/integration/s3/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/s3/mock_storage_service.py +589 -0
- data/packages/gsutil/boto/tests/integration/s3/other_cacerts.txt +70 -0
- data/packages/gsutil/boto/tests/integration/s3/test_bucket.py +263 -0
- data/packages/gsutil/boto/tests/integration/s3/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/s3/test_connection.py +245 -0
- data/packages/gsutil/boto/tests/integration/s3/test_cors.py +78 -0
- data/packages/gsutil/boto/tests/integration/s3/test_encryption.py +115 -0
- data/packages/gsutil/boto/tests/integration/s3/test_https_cert_validation.py +141 -0
- data/packages/gsutil/boto/tests/integration/s3/test_key.py +375 -0
- data/packages/gsutil/boto/tests/integration/s3/test_mfa.py +95 -0
- data/packages/gsutil/boto/tests/integration/s3/test_multidelete.py +181 -0
- data/packages/gsutil/boto/tests/integration/s3/test_multipart.py +139 -0
- data/packages/gsutil/boto/tests/integration/s3/test_pool.py +246 -0
- data/packages/gsutil/boto/tests/integration/s3/test_versioning.py +158 -0
- data/packages/gsutil/boto/tests/integration/sdb/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/sdb/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/sdb/test_connection.py +119 -0
- data/packages/gsutil/boto/tests/integration/ses/__init__.py +0 -0
- data/packages/gsutil/boto/tests/integration/ses/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/ses/test_connection.py +38 -0
- data/packages/gsutil/boto/tests/integration/sns/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/sns/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/sqs/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/sqs/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/sqs/test_connection.py +217 -0
- data/packages/gsutil/boto/tests/integration/sts/__init__.py +20 -0
- data/packages/gsutil/boto/tests/integration/sts/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/sts/test_session_token.py +65 -0
- data/packages/gsutil/boto/tests/integration/swf/__init__.py +0 -0
- data/packages/gsutil/boto/tests/integration/swf/test_cert_verification.py +40 -0
- data/packages/gsutil/boto/tests/integration/swf/test_layer1.py +246 -0
- data/packages/gsutil/boto/tests/integration/swf/test_layer1_workflow_execution.py +173 -0
- data/packages/gsutil/boto/tests/mturk/__init__.py +0 -0
- data/packages/gsutil/boto/tests/mturk/_init_environment.py +28 -0
- data/packages/gsutil/boto/tests/mturk/all_tests.py +24 -0
- data/packages/gsutil/boto/tests/mturk/cleanup_tests.py +47 -0
- data/packages/gsutil/boto/tests/mturk/common.py +45 -0
- data/packages/gsutil/boto/tests/mturk/create_free_text_question_regex.doctest +100 -0
- data/packages/gsutil/boto/tests/mturk/create_hit.doctest +92 -0
- data/packages/gsutil/boto/tests/mturk/create_hit_binary.doctest +94 -0
- data/packages/gsutil/boto/tests/mturk/create_hit_external.py +21 -0
- data/packages/gsutil/boto/tests/mturk/create_hit_from_hit_type.doctest +103 -0
- data/packages/gsutil/boto/tests/mturk/create_hit_test.py +21 -0
- data/packages/gsutil/boto/tests/mturk/create_hit_with_qualifications.py +16 -0
- data/packages/gsutil/boto/tests/mturk/hit_persistence.py +27 -0
- data/packages/gsutil/boto/tests/mturk/mocks.py +11 -0
- data/packages/gsutil/boto/tests/mturk/reviewable_hits.doctest +129 -0
- data/packages/gsutil/boto/tests/mturk/run-doctest.py +13 -0
- data/packages/gsutil/boto/tests/mturk/search_hits.doctest +16 -0
- data/packages/gsutil/boto/tests/mturk/selenium_support.py +61 -0
- data/packages/gsutil/boto/tests/mturk/support.py +7 -0
- data/packages/gsutil/boto/tests/mturk/test_disable_hit.py +11 -0
- data/packages/gsutil/boto/tests/test.py +59 -0
- data/packages/gsutil/boto/tests/unit/__init__.py +79 -0
- data/packages/gsutil/boto/tests/unit/auth/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/auth/test_sigv4.py +73 -0
- data/packages/gsutil/boto/tests/unit/beanstalk/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/beanstalk/test_layer1.py +128 -0
- data/packages/gsutil/boto/tests/unit/cloudformation/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/cloudformation/test_connection.py +605 -0
- data/packages/gsutil/boto/tests/unit/cloudformation/test_stack.py +63 -0
- data/packages/gsutil/boto/tests/unit/cloudfront/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/cloudfront/test_invalidation_list.py +113 -0
- data/packages/gsutil/boto/tests/unit/cloudfront/test_signed_urls.py +354 -0
- data/packages/gsutil/boto/tests/unit/cloudsearch/__init__.py +1 -0
- data/packages/gsutil/boto/tests/unit/cloudsearch/test_connection.py +241 -0
- data/packages/gsutil/boto/tests/unit/cloudsearch/test_document.py +324 -0
- data/packages/gsutil/boto/tests/unit/cloudsearch/test_search.py +325 -0
- data/packages/gsutil/boto/tests/unit/dynamodb/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/dynamodb/test_batch.py +103 -0
- data/packages/gsutil/boto/tests/unit/dynamodb/test_layer2.py +119 -0
- data/packages/gsutil/boto/tests/unit/dynamodb/test_types.py +82 -0
- data/packages/gsutil/boto/tests/unit/ec2/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/ec2/autoscale/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/ec2/autoscale/test_group.py +162 -0
- data/packages/gsutil/boto/tests/unit/ec2/test_address.py +39 -0
- data/packages/gsutil/boto/tests/unit/ec2/test_blockdevicemapping.py +79 -0
- data/packages/gsutil/boto/tests/unit/ec2/test_connection.py +480 -0
- data/packages/gsutil/boto/tests/unit/ec2/test_instance.py +243 -0
- data/packages/gsutil/boto/tests/unit/ec2/test_networkinterface.py +140 -0
- data/packages/gsutil/boto/tests/unit/ec2/test_volume.py +248 -0
- data/packages/gsutil/boto/tests/unit/emr/test_emr_responses.py +373 -0
- data/packages/gsutil/boto/tests/unit/glacier/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/glacier/test_concurrent.py +120 -0
- data/packages/gsutil/boto/tests/unit/glacier/test_job.py +60 -0
- data/packages/gsutil/boto/tests/unit/glacier/test_layer1.py +98 -0
- data/packages/gsutil/boto/tests/unit/glacier/test_layer2.py +266 -0
- data/packages/gsutil/boto/tests/unit/glacier/test_utils.py +116 -0
- data/packages/gsutil/boto/tests/unit/glacier/test_vault.py +100 -0
- data/packages/gsutil/boto/tests/unit/glacier/test_writer.py +185 -0
- data/packages/gsutil/boto/tests/unit/provider/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/provider/test_provider.py +176 -0
- data/packages/gsutil/boto/tests/unit/rds/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/rds/test_connection.py +131 -0
- data/packages/gsutil/boto/tests/unit/s3/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/s3/test_cors_configuration.py +77 -0
- data/packages/gsutil/boto/tests/unit/s3/test_key.py +75 -0
- data/packages/gsutil/boto/tests/unit/s3/test_keyfile.py +101 -0
- data/packages/gsutil/boto/tests/unit/s3/test_lifecycle.py +97 -0
- data/packages/gsutil/boto/tests/unit/s3/test_tagging.py +47 -0
- data/packages/gsutil/boto/tests/unit/s3/test_uri.py +257 -0
- data/packages/gsutil/boto/tests/unit/s3/test_website.py +188 -0
- data/packages/gsutil/boto/tests/unit/sns/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/sns/test_connection.py +99 -0
- data/packages/gsutil/boto/tests/unit/sqs/__init__.py +0 -0
- data/packages/gsutil/boto/tests/unit/sqs/test_connection.py +98 -0
- data/packages/gsutil/boto/tests/unit/sqs/test_queue.py +40 -0
- data/packages/gsutil/boto/tests/unit/sts/test_connection.py +74 -0
- data/packages/gsutil/boto/tests/unit/test_connection.py +60 -0
- data/packages/gsutil/boto/tests/unit/utils/test_utils.py +109 -0
- data/packages/gsutil/boto/tox.ini +8 -0
- data/packages/gsutil/gslib/README +5 -0
- data/packages/gsutil/gslib/__init__.py +22 -0
- data/packages/gsutil/gslib/__init__.pyc +0 -0
- data/packages/gsutil/gslib/addlhelp/__init__.py +15 -0
- data/packages/gsutil/gslib/addlhelp/acls.py +234 -0
- data/packages/gsutil/gslib/addlhelp/anon.py +57 -0
- data/packages/gsutil/gslib/addlhelp/command_opts.py +116 -0
- data/packages/gsutil/gslib/addlhelp/dev.py +139 -0
- data/packages/gsutil/gslib/addlhelp/metadata.py +186 -0
- data/packages/gsutil/gslib/addlhelp/naming.py +173 -0
- data/packages/gsutil/gslib/addlhelp/prod.py +160 -0
- data/packages/gsutil/gslib/addlhelp/projects.py +130 -0
- data/packages/gsutil/gslib/addlhelp/subdirs.py +110 -0
- data/packages/gsutil/gslib/addlhelp/support.py +86 -0
- data/packages/gsutil/gslib/addlhelp/versioning.py +242 -0
- data/packages/gsutil/gslib/addlhelp/wildcards.py +170 -0
- data/packages/gsutil/gslib/bucket_listing_ref.py +175 -0
- data/packages/gsutil/gslib/bucket_listing_ref.pyc +0 -0
- data/packages/gsutil/gslib/command.py +722 -0
- data/packages/gsutil/gslib/command.pyc +0 -0
- data/packages/gsutil/gslib/command_runner.py +101 -0
- data/packages/gsutil/gslib/command_runner.pyc +0 -0
- data/packages/gsutil/gslib/commands/__init__.py +15 -0
- data/packages/gsutil/gslib/commands/__init__.pyc +0 -0
- data/packages/gsutil/gslib/commands/cat.py +131 -0
- data/packages/gsutil/gslib/commands/cat.pyc +0 -0
- data/packages/gsutil/gslib/commands/chacl.py +532 -0
- data/packages/gsutil/gslib/commands/chacl.pyc +0 -0
- data/packages/gsutil/gslib/commands/config.py +694 -0
- data/packages/gsutil/gslib/commands/config.pyc +0 -0
- data/packages/gsutil/gslib/commands/cp.py +1818 -0
- data/packages/gsutil/gslib/commands/cp.pyc +0 -0
- data/packages/gsutil/gslib/commands/disablelogging.py +101 -0
- data/packages/gsutil/gslib/commands/disablelogging.pyc +0 -0
- data/packages/gsutil/gslib/commands/enablelogging.py +149 -0
- data/packages/gsutil/gslib/commands/enablelogging.pyc +0 -0
- data/packages/gsutil/gslib/commands/getacl.py +82 -0
- data/packages/gsutil/gslib/commands/getacl.pyc +0 -0
- data/packages/gsutil/gslib/commands/getcors.py +121 -0
- data/packages/gsutil/gslib/commands/getcors.pyc +0 -0
- data/packages/gsutil/gslib/commands/getdefacl.py +86 -0
- data/packages/gsutil/gslib/commands/getdefacl.pyc +0 -0
- data/packages/gsutil/gslib/commands/getlogging.py +137 -0
- data/packages/gsutil/gslib/commands/getlogging.pyc +0 -0
- data/packages/gsutil/gslib/commands/getversioning.py +116 -0
- data/packages/gsutil/gslib/commands/getversioning.pyc +0 -0
- data/packages/gsutil/gslib/commands/getwebcfg.py +122 -0
- data/packages/gsutil/gslib/commands/getwebcfg.pyc +0 -0
- data/packages/gsutil/gslib/commands/help.py +218 -0
- data/packages/gsutil/gslib/commands/help.pyc +0 -0
- data/packages/gsutil/gslib/commands/ls.py +578 -0
- data/packages/gsutil/gslib/commands/ls.pyc +0 -0
- data/packages/gsutil/gslib/commands/mb.py +172 -0
- data/packages/gsutil/gslib/commands/mb.pyc +0 -0
- data/packages/gsutil/gslib/commands/mv.py +159 -0
- data/packages/gsutil/gslib/commands/mv.pyc +0 -0
- data/packages/gsutil/gslib/commands/perfdiag.py +903 -0
- data/packages/gsutil/gslib/commands/perfdiag.pyc +0 -0
- data/packages/gsutil/gslib/commands/rb.py +113 -0
- data/packages/gsutil/gslib/commands/rb.pyc +0 -0
- data/packages/gsutil/gslib/commands/rm.py +239 -0
- data/packages/gsutil/gslib/commands/rm.pyc +0 -0
- data/packages/gsutil/gslib/commands/setacl.py +138 -0
- data/packages/gsutil/gslib/commands/setacl.pyc +0 -0
- data/packages/gsutil/gslib/commands/setcors.py +145 -0
- data/packages/gsutil/gslib/commands/setcors.pyc +0 -0
- data/packages/gsutil/gslib/commands/setdefacl.py +105 -0
- data/packages/gsutil/gslib/commands/setdefacl.pyc +0 -0
- data/packages/gsutil/gslib/commands/setmeta.py +428 -0
- data/packages/gsutil/gslib/commands/setmeta.pyc +0 -0
- data/packages/gsutil/gslib/commands/setversioning.py +114 -0
- data/packages/gsutil/gslib/commands/setversioning.pyc +0 -0
- data/packages/gsutil/gslib/commands/setwebcfg.py +190 -0
- data/packages/gsutil/gslib/commands/setwebcfg.pyc +0 -0
- data/packages/gsutil/gslib/commands/test.py +228 -0
- data/packages/gsutil/gslib/commands/test.pyc +0 -0
- data/packages/gsutil/gslib/commands/update.py +305 -0
- data/packages/gsutil/gslib/commands/update.pyc +0 -0
- data/packages/gsutil/gslib/commands/version.py +150 -0
- data/packages/gsutil/gslib/commands/version.pyc +0 -0
- data/packages/gsutil/gslib/exception.py +76 -0
- data/packages/gsutil/gslib/exception.pyc +0 -0
- data/packages/gsutil/gslib/help_provider.py +81 -0
- data/packages/gsutil/gslib/help_provider.pyc +0 -0
- data/packages/gsutil/gslib/name_expansion.py +550 -0
- data/packages/gsutil/gslib/name_expansion.pyc +0 -0
- data/packages/gsutil/gslib/no_op_auth_plugin.py +30 -0
- data/packages/gsutil/gslib/plurality_checkable_iterator.py +56 -0
- data/packages/gsutil/gslib/plurality_checkable_iterator.pyc +0 -0
- data/packages/gsutil/gslib/project_id.py +67 -0
- data/packages/gsutil/gslib/project_id.pyc +0 -0
- data/packages/gsutil/gslib/storage_uri_builder.py +56 -0
- data/packages/gsutil/gslib/storage_uri_builder.pyc +0 -0
- data/packages/gsutil/gslib/tests/__init__.py +15 -0
- data/packages/gsutil/gslib/tests/__init__.pyc +0 -0
- data/packages/gsutil/gslib/tests/test_chacl.py +236 -0
- data/packages/gsutil/gslib/tests/test_cp.py +267 -0
- data/packages/gsutil/gslib/tests/test_data/test.gif +0 -0
- data/packages/gsutil/gslib/tests/test_data/test.mp3 +0 -0
- data/packages/gsutil/gslib/tests/test_ls.py +66 -0
- data/packages/gsutil/gslib/tests/test_mv.py +69 -0
- data/packages/gsutil/gslib/tests/test_naming.py +989 -0
- data/packages/gsutil/gslib/tests/test_perfdiag.py +41 -0
- data/packages/gsutil/gslib/tests/test_plurality_checkable_iterator.py +67 -0
- data/packages/gsutil/gslib/tests/test_rm.py +143 -0
- data/packages/gsutil/gslib/tests/test_setacl.py +152 -0
- data/packages/gsutil/gslib/tests/test_setcors.py +168 -0
- data/packages/gsutil/gslib/tests/test_setmeta.py +91 -0
- data/packages/gsutil/gslib/tests/test_setversioning.py +44 -0
- data/packages/gsutil/gslib/tests/test_setwebcfg.py +63 -0
- data/packages/gsutil/gslib/tests/test_thread_pool.py +92 -0
- data/packages/gsutil/gslib/tests/test_wildcard_iterator.py +364 -0
- data/packages/gsutil/gslib/tests/testcase/__init__.py +18 -0
- data/packages/gsutil/gslib/tests/testcase/base.py +89 -0
- data/packages/gsutil/gslib/tests/testcase/integration_testcase.py +197 -0
- data/packages/gsutil/gslib/tests/testcase/unit_testcase.py +230 -0
- data/packages/gsutil/gslib/tests/util.py +125 -0
- data/packages/gsutil/gslib/tests/util.pyc +0 -0
- data/packages/gsutil/gslib/thread_pool.py +79 -0
- data/packages/gsutil/gslib/thread_pool.pyc +0 -0
- data/packages/gsutil/gslib/util.py +151 -0
- data/packages/gsutil/gslib/util.pyc +0 -0
- data/packages/gsutil/gslib/wildcard_iterator.py +492 -0
- data/packages/gsutil/gslib/wildcard_iterator.pyc +0 -0
- data/packages/gsutil/gsutil +377 -0
- data/packages/gsutil/gsutil.spec.in +75 -0
- data/packages/gsutil/oauth2_plugin/__init__.py +22 -0
- data/packages/gsutil/oauth2_plugin/__init__.pyc +0 -0
- data/packages/gsutil/oauth2_plugin/oauth2_client.py +642 -0
- data/packages/gsutil/oauth2_plugin/oauth2_client.pyc +0 -0
- data/packages/gsutil/oauth2_plugin/oauth2_client_test.py +374 -0
- data/packages/gsutil/oauth2_plugin/oauth2_helper.py +110 -0
- data/packages/gsutil/oauth2_plugin/oauth2_helper.pyc +0 -0
- data/packages/gsutil/oauth2_plugin/oauth2_plugin.py +24 -0
- data/packages/gsutil/oauth2_plugin/oauth2_plugin.pyc +0 -0
- data/packages/gsutil/pkg_gen.sh +54 -0
- data/packages/gsutil/pkg_util.py +60 -0
- data/packages/gsutil/setup.py +141 -0
- data/packages/gsutil/third_party/__init__.py +0 -0
- data/packages/gsutil/third_party/__init__.pyc +0 -0
- data/packages/gsutil/third_party/fancy_urllib/README +21 -0
- data/packages/gsutil/third_party/fancy_urllib/__init__.py +398 -0
- data/packages/gsutil/third_party/fancy_urllib/__init__.pyc +0 -0
- data/tasks/rubygem.rake +3 -1
- metadata +770 -7
- metadata.gz.sig +0 -0
@@ -0,0 +1,295 @@
|
|
1
|
+
GOOGLE APP ENGINE SDK
|
2
|
+
**************************************************************************
|
3
|
+
Copyright 2008 Google Inc.
|
4
|
+
All rights reserved.
|
5
|
+
|
6
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
+
you may not use this file except in compliance with the License.
|
8
|
+
You may obtain a copy of the License at
|
9
|
+
|
10
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
|
12
|
+
Unless required by applicable law or agreed to in writing, software
|
13
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
See the License for the specific language governing permissions and
|
16
|
+
limitations under the License.
|
17
|
+
|
18
|
+
|
19
|
+
fancy_urllib
|
20
|
+
**************************************************************************
|
21
|
+
|
22
|
+
# Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007 Python Software
|
23
|
+
# Foundation; All Rights Reserved
|
24
|
+
|
25
|
+
|
26
|
+
A. HISTORY OF THE SOFTWARE
|
27
|
+
==========================
|
28
|
+
|
29
|
+
Python was created in the early 1990s by Guido van Rossum at Stichting
|
30
|
+
Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands
|
31
|
+
as a successor of a language called ABC. Guido remains Python's
|
32
|
+
principal author, although it includes many contributions from others.
|
33
|
+
|
34
|
+
In 1995, Guido continued his work on Python at the Corporation for
|
35
|
+
National Research Initiatives (CNRI, see http://www.cnri.reston.va.us)
|
36
|
+
in Reston, Virginia where he released several versions of the
|
37
|
+
software.
|
38
|
+
|
39
|
+
In May 2000, Guido and the Python core development team moved to
|
40
|
+
BeOpen.com to form the BeOpen PythonLabs team. In October of the same
|
41
|
+
year, the PythonLabs team moved to Digital Creations (now Zope
|
42
|
+
Corporation, see http://www.zope.com). In 2001, the Python Software
|
43
|
+
Foundation (PSF, see http://www.python.org/psf/) was formed, a
|
44
|
+
non-profit organization created specifically to own Python-related
|
45
|
+
Intellectual Property. Zope Corporation is a sponsoring member of
|
46
|
+
the PSF.
|
47
|
+
|
48
|
+
All Python releases are Open Source (see http://www.opensource.org for
|
49
|
+
the Open Source Definition). Historically, most, but not all, Python
|
50
|
+
releases have also been GPL-compatible; the table below summarizes
|
51
|
+
the various releases.
|
52
|
+
|
53
|
+
Release Derived Year Owner GPL-
|
54
|
+
from compatible? (1)
|
55
|
+
|
56
|
+
0.9.0 thru 1.2 1991-1995 CWI yes
|
57
|
+
1.3 thru 1.5.2 1.2 1995-1999 CNRI yes
|
58
|
+
1.6 1.5.2 2000 CNRI no
|
59
|
+
2.0 1.6 2000 BeOpen.com no
|
60
|
+
1.6.1 1.6 2001 CNRI yes (2)
|
61
|
+
2.1 2.0+1.6.1 2001 PSF no
|
62
|
+
2.0.1 2.0+1.6.1 2001 PSF yes
|
63
|
+
2.1.1 2.1+2.0.1 2001 PSF yes
|
64
|
+
2.2 2.1.1 2001 PSF yes
|
65
|
+
2.1.2 2.1.1 2002 PSF yes
|
66
|
+
2.1.3 2.1.2 2002 PSF yes
|
67
|
+
2.2.1 2.2 2002 PSF yes
|
68
|
+
2.2.2 2.2.1 2002 PSF yes
|
69
|
+
2.2.3 2.2.2 2003 PSF yes
|
70
|
+
2.3 2.2.2 2002-2003 PSF yes
|
71
|
+
2.3.1 2.3 2002-2003 PSF yes
|
72
|
+
2.3.2 2.3.1 2002-2003 PSF yes
|
73
|
+
2.3.3 2.3.2 2002-2003 PSF yes
|
74
|
+
2.3.4 2.3.3 2004 PSF yes
|
75
|
+
2.3.5 2.3.4 2005 PSF yes
|
76
|
+
2.4 2.3 2004 PSF yes
|
77
|
+
2.4.1 2.4 2005 PSF yes
|
78
|
+
2.4.2 2.4.1 2005 PSF yes
|
79
|
+
2.4.3 2.4.2 2006 PSF yes
|
80
|
+
2.5 2.4 2006 PSF yes
|
81
|
+
2.5.1 2.5 2007 PSF yes
|
82
|
+
|
83
|
+
Footnotes:
|
84
|
+
|
85
|
+
(1) GPL-compatible doesn't mean that we're distributing Python under
|
86
|
+
the GPL. All Python licenses, unlike the GPL, let you distribute
|
87
|
+
a modified version without making your changes open source. The
|
88
|
+
GPL-compatible licenses make it possible to combine Python with
|
89
|
+
other software that is released under the GPL; the others don't.
|
90
|
+
|
91
|
+
(2) According to Richard Stallman, 1.6.1 is not GPL-compatible,
|
92
|
+
because its license has a choice of law clause. According to
|
93
|
+
CNRI, however, Stallman's lawyer has told CNRI's lawyer that 1.6.1
|
94
|
+
is "not incompatible" with the GPL.
|
95
|
+
|
96
|
+
Thanks to the many outside volunteers who have worked under Guido's
|
97
|
+
direction to make these releases possible.
|
98
|
+
|
99
|
+
|
100
|
+
B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON
|
101
|
+
===============================================================
|
102
|
+
|
103
|
+
PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2
|
104
|
+
--------------------------------------------
|
105
|
+
|
106
|
+
1. This LICENSE AGREEMENT is between the Python Software Foundation
|
107
|
+
("PSF"), and the Individual or Organization ("Licensee") accessing and
|
108
|
+
otherwise using this software ("Python") in source or binary form and
|
109
|
+
its associated documentation.
|
110
|
+
|
111
|
+
2. Subject to the terms and conditions of this License Agreement, PSF
|
112
|
+
hereby grants Licensee a nonexclusive, royalty-free, world-wide
|
113
|
+
license to reproduce, analyze, test, perform and/or display publicly,
|
114
|
+
prepare derivative works, distribute, and otherwise use Python
|
115
|
+
alone or in any derivative version, provided, however, that PSF's
|
116
|
+
License Agreement and PSF's notice of copyright, i.e., "Copyright (c)
|
117
|
+
2001, 2002, 2003, 2004, 2005, 2006, 2007 Python Software Foundation;
|
118
|
+
All Rights Reserved" are retained in Python alone or in any derivative
|
119
|
+
version prepared by Licensee.
|
120
|
+
|
121
|
+
3. In the event Licensee prepares a derivative work that is based on
|
122
|
+
or incorporates Python or any part thereof, and wants to make
|
123
|
+
the derivative work available to others as provided herein, then
|
124
|
+
Licensee hereby agrees to include in any such work a brief summary of
|
125
|
+
the changes made to Python.
|
126
|
+
|
127
|
+
4. PSF is making Python available to Licensee on an "AS IS"
|
128
|
+
basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
|
129
|
+
IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND
|
130
|
+
DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
|
131
|
+
FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT
|
132
|
+
INFRINGE ANY THIRD PARTY RIGHTS.
|
133
|
+
|
134
|
+
5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
|
135
|
+
FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
|
136
|
+
A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON,
|
137
|
+
OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
|
138
|
+
|
139
|
+
6. This License Agreement will automatically terminate upon a material
|
140
|
+
breach of its terms and conditions.
|
141
|
+
|
142
|
+
7. Nothing in this License Agreement shall be deemed to create any
|
143
|
+
relationship of agency, partnership, or joint venture between PSF and
|
144
|
+
Licensee. This License Agreement does not grant permission to use PSF
|
145
|
+
trademarks or trade name in a trademark sense to endorse or promote
|
146
|
+
products or services of Licensee, or any third party.
|
147
|
+
|
148
|
+
8. By copying, installing or otherwise using Python, Licensee
|
149
|
+
agrees to be bound by the terms and conditions of this License
|
150
|
+
Agreement.
|
151
|
+
|
152
|
+
|
153
|
+
BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0
|
154
|
+
-------------------------------------------
|
155
|
+
|
156
|
+
BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1
|
157
|
+
|
158
|
+
1. This LICENSE AGREEMENT is between BeOpen.com ("BeOpen"), having an
|
159
|
+
office at 160 Saratoga Avenue, Santa Clara, CA 95051, and the
|
160
|
+
Individual or Organization ("Licensee") accessing and otherwise using
|
161
|
+
this software in source or binary form and its associated
|
162
|
+
documentation ("the Software").
|
163
|
+
|
164
|
+
2. Subject to the terms and conditions of this BeOpen Python License
|
165
|
+
Agreement, BeOpen hereby grants Licensee a non-exclusive,
|
166
|
+
royalty-free, world-wide license to reproduce, analyze, test, perform
|
167
|
+
and/or display publicly, prepare derivative works, distribute, and
|
168
|
+
otherwise use the Software alone or in any derivative version,
|
169
|
+
provided, however, that the BeOpen Python License is retained in the
|
170
|
+
Software, alone or in any derivative version prepared by Licensee.
|
171
|
+
|
172
|
+
3. BeOpen is making the Software available to Licensee on an "AS IS"
|
173
|
+
basis. BEOPEN MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
|
174
|
+
IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, BEOPEN MAKES NO AND
|
175
|
+
DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
|
176
|
+
FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE WILL NOT
|
177
|
+
INFRINGE ANY THIRD PARTY RIGHTS.
|
178
|
+
|
179
|
+
4. BEOPEN SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE
|
180
|
+
SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS
|
181
|
+
AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE, OR ANY
|
182
|
+
DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
|
183
|
+
|
184
|
+
5. This License Agreement will automatically terminate upon a material
|
185
|
+
breach of its terms and conditions.
|
186
|
+
|
187
|
+
6. This License Agreement shall be governed by and interpreted in all
|
188
|
+
respects by the law of the State of California, excluding conflict of
|
189
|
+
law provisions. Nothing in this License Agreement shall be deemed to
|
190
|
+
create any relationship of agency, partnership, or joint venture
|
191
|
+
between BeOpen and Licensee. This License Agreement does not grant
|
192
|
+
permission to use BeOpen trademarks or trade names in a trademark
|
193
|
+
sense to endorse or promote products or services of Licensee, or any
|
194
|
+
third party. As an exception, the "BeOpen Python" logos available at
|
195
|
+
http://www.pythonlabs.com/logos.html may be used according to the
|
196
|
+
permissions granted on that web page.
|
197
|
+
|
198
|
+
7. By copying, installing or otherwise using the software, Licensee
|
199
|
+
agrees to be bound by the terms and conditions of this License
|
200
|
+
Agreement.
|
201
|
+
|
202
|
+
|
203
|
+
CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1
|
204
|
+
---------------------------------------
|
205
|
+
|
206
|
+
1. This LICENSE AGREEMENT is between the Corporation for National
|
207
|
+
Research Initiatives, having an office at 1895 Preston White Drive,
|
208
|
+
Reston, VA 20191 ("CNRI"), and the Individual or Organization
|
209
|
+
("Licensee") accessing and otherwise using Python 1.6.1 software in
|
210
|
+
source or binary form and its associated documentation.
|
211
|
+
|
212
|
+
2. Subject to the terms and conditions of this License Agreement, CNRI
|
213
|
+
hereby grants Licensee a nonexclusive, royalty-free, world-wide
|
214
|
+
license to reproduce, analyze, test, perform and/or display publicly,
|
215
|
+
prepare derivative works, distribute, and otherwise use Python 1.6.1
|
216
|
+
alone or in any derivative version, provided, however, that CNRI's
|
217
|
+
License Agreement and CNRI's notice of copyright, i.e., "Copyright (c)
|
218
|
+
1995-2001 Corporation for National Research Initiatives; All Rights
|
219
|
+
Reserved" are retained in Python 1.6.1 alone or in any derivative
|
220
|
+
version prepared by Licensee. Alternately, in lieu of CNRI's License
|
221
|
+
Agreement, Licensee may substitute the following text (omitting the
|
222
|
+
quotes): "Python 1.6.1 is made available subject to the terms and
|
223
|
+
conditions in CNRI's License Agreement. This Agreement together with
|
224
|
+
Python 1.6.1 may be located on the Internet using the following
|
225
|
+
unique, persistent identifier (known as a handle): 1895.22/1013. This
|
226
|
+
Agreement may also be obtained from a proxy server on the Internet
|
227
|
+
using the following URL: http://hdl.handle.net/1895.22/1013".
|
228
|
+
|
229
|
+
3. In the event Licensee prepares a derivative work that is based on
|
230
|
+
or incorporates Python 1.6.1 or any part thereof, and wants to make
|
231
|
+
the derivative work available to others as provided herein, then
|
232
|
+
Licensee hereby agrees to include in any such work a brief summary of
|
233
|
+
the changes made to Python 1.6.1.
|
234
|
+
|
235
|
+
4. CNRI is making Python 1.6.1 available to Licensee on an "AS IS"
|
236
|
+
basis. CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
|
237
|
+
IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND
|
238
|
+
DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
|
239
|
+
FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6.1 WILL NOT
|
240
|
+
INFRINGE ANY THIRD PARTY RIGHTS.
|
241
|
+
|
242
|
+
5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON
|
243
|
+
1.6.1 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS
|
244
|
+
A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 1.6.1,
|
245
|
+
OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.
|
246
|
+
|
247
|
+
6. This License Agreement will automatically terminate upon a material
|
248
|
+
breach of its terms and conditions.
|
249
|
+
|
250
|
+
7. This License Agreement shall be governed by the federal
|
251
|
+
intellectual property law of the United States, including without
|
252
|
+
limitation the federal copyright law, and, to the extent such
|
253
|
+
U.S. federal law does not apply, by the law of the Commonwealth of
|
254
|
+
Virginia, excluding Virginia's conflict of law provisions.
|
255
|
+
Notwithstanding the foregoing, with regard to derivative works based
|
256
|
+
on Python 1.6.1 that incorporate non-separable material that was
|
257
|
+
previously distributed under the GNU General Public License (GPL), the
|
258
|
+
law of the Commonwealth of Virginia shall govern this License
|
259
|
+
Agreement only as to issues arising under or with respect to
|
260
|
+
Paragraphs 4, 5, and 7 of this License Agreement. Nothing in this
|
261
|
+
License Agreement shall be deemed to create any relationship of
|
262
|
+
agency, partnership, or joint venture between CNRI and Licensee. This
|
263
|
+
License Agreement does not grant permission to use CNRI trademarks or
|
264
|
+
trade name in a trademark sense to endorse or promote products or
|
265
|
+
services of Licensee, or any third party.
|
266
|
+
|
267
|
+
8. By clicking on the "ACCEPT" button where indicated, or by copying,
|
268
|
+
installing or otherwise using Python 1.6.1, Licensee agrees to be
|
269
|
+
bound by the terms and conditions of this License Agreement.
|
270
|
+
|
271
|
+
ACCEPT
|
272
|
+
|
273
|
+
|
274
|
+
CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2
|
275
|
+
--------------------------------------------------
|
276
|
+
|
277
|
+
Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam,
|
278
|
+
The Netherlands. All rights reserved.
|
279
|
+
|
280
|
+
Permission to use, copy, modify, and distribute this software and its
|
281
|
+
documentation for any purpose and without fee is hereby granted,
|
282
|
+
provided that the above copyright notice appear in all copies and that
|
283
|
+
both that copyright notice and this permission notice appear in
|
284
|
+
supporting documentation, and that the name of Stichting Mathematisch
|
285
|
+
Centrum or CWI not be used in advertising or publicity pertaining to
|
286
|
+
distribution of the software without specific, written prior
|
287
|
+
permission.
|
288
|
+
|
289
|
+
STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
|
290
|
+
THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
291
|
+
FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
|
292
|
+
FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
293
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
294
|
+
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
295
|
+
OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
@@ -0,0 +1,38 @@
|
|
1
|
+
This directory contains the Python command line tool gsutil, which Google
|
2
|
+
has released as open source, to demonstrate the Google Storage API and to
|
3
|
+
provide a tool for manipulating data in the system.
|
4
|
+
|
5
|
+
Prerequisites:
|
6
|
+
|
7
|
+
Gsutil requires Python 2.6 or later.
|
8
|
+
|
9
|
+
To install gsutil take the following steps:
|
10
|
+
|
11
|
+
1. Pick a place where you want to install the software. You can
|
12
|
+
install the code wherever you prefer; for brevity the instructions below
|
13
|
+
assume you want to install in $HOME/gsutil.
|
14
|
+
|
15
|
+
2. To install gsutil on Linux/Unix or MacOS, open a shell window, change
|
16
|
+
directories to where you downloaded the gsutil.tar.gz file, and do this:
|
17
|
+
% tar xfz gsutil.tar.gz -C $HOME
|
18
|
+
|
19
|
+
Then add the following line to your $HOME/.bashrc shell initialization
|
20
|
+
file:
|
21
|
+
export PATH=${PATH}:$HOME/gsutil
|
22
|
+
|
23
|
+
The next time you start a shell you should be able to run gsutil from
|
24
|
+
the command line.
|
25
|
+
|
26
|
+
3. To install gsutil on Windows, install cygwin (http://www.cygwin.com/),
|
27
|
+
with at least version 2.6.5 of Python. Once you have that, start a shell
|
28
|
+
and follow the Linux instructions above for unpacking and installing gsutil.
|
29
|
+
|
30
|
+
4. The first time you try to run gsutil, it will detect that you have no
|
31
|
+
configuration file containing your credentials, interactively prompt you,
|
32
|
+
and create the file.
|
33
|
+
|
34
|
+
After this you can use the tool. Running gsutil with with no arguments
|
35
|
+
will print a help summary.
|
36
|
+
|
37
|
+
For more information on installing and using gsutil, see
|
38
|
+
<http://code.google.com/apis/storage/docs/gsutil.html>.
|
@@ -0,0 +1,49 @@
|
|
1
|
+
Package Generation Notes for gsutil
|
2
|
+
|
3
|
+
Gsutil can be distributed in one of three ways:
|
4
|
+
|
5
|
+
1. legacy mode - User unpacks archive file into a private directory tree
|
6
|
+
and maintains his/her own private copy of gsutil, boto, etc. This is the
|
7
|
+
only supported installation mode for Windows users.
|
8
|
+
|
9
|
+
2. enterprise mode - User unpacks the gsutil archive file and runs
|
10
|
+
'python setup.py install' (as root), which installs everything into
|
11
|
+
a shared directory tree (/usr/share/gsutil) with a symlink from
|
12
|
+
/usr/bin/gsutil to /usr/share/gsutil/gsutil to provide easy access to
|
13
|
+
the shared gsutil command. In enterprise mode, the software gets installed
|
14
|
+
in one shared location, which makes it easier to install, update and
|
15
|
+
manage gsutil for a community of users.
|
16
|
+
|
17
|
+
NOTE: Enterprise mode (installing gsutil via setup.py) is no longer
|
18
|
+
officially supported - unpacking the zip file into a directory is the
|
19
|
+
preferred method for installing gsutil for both shared and private
|
20
|
+
configurations.
|
21
|
+
|
22
|
+
3. rpm mode - User installs the gsutil rpm package file on a Red Hat
|
23
|
+
Linux system using the rpm command. The resulting installation image
|
24
|
+
looks precisely the same as the results of installing with enterprise
|
25
|
+
mode, i.e. a shared directory tree (/usr/share/gsutil) with a symlink
|
26
|
+
from /usr/bin/gsutil. rpm mode is intended for enterprises that want
|
27
|
+
a stable release that does not necessarily contain the latest changes.
|
28
|
+
|
29
|
+
All three modes derive their inventory from a common text file called
|
30
|
+
MANIFEST.in. If you want to add one or more new files or directories,
|
31
|
+
you only need to edit that one file and all three installation modes
|
32
|
+
will automatically inherit the change(s).
|
33
|
+
|
34
|
+
GENERATING PACKAGE FILES
|
35
|
+
|
36
|
+
First update the VERSION file and the gsutil.spec files to reflect the
|
37
|
+
new version number.
|
38
|
+
|
39
|
+
Legacy mode and enterprise mode are both embodied in the same gsutil
|
40
|
+
archive file, the only difference being that the latter entails running
|
41
|
+
one additional command after unpacking the gsutil archive file. So the
|
42
|
+
same archive file we've always distributed for gsutil will be used for
|
43
|
+
both legacy and enterprise installation modes.
|
44
|
+
|
45
|
+
For rpm mode, there's a new tool call pkg_gen.sh, which when run with no
|
46
|
+
arguments creates an rpm file at this location:
|
47
|
+
|
48
|
+
$HOME/rpmbuild/RPMS/noarch/gsutil-2.0-1.noarch.rpm
|
49
|
+
|
@@ -0,0 +1,780 @@
|
|
1
|
+
Release 3.23 (release-date: 2013-02-16)
|
2
|
+
|
3
|
+
|
4
|
+
Bug Fixes
|
5
|
+
---------
|
6
|
+
|
7
|
+
- Make version-specific URI parsing more robust. This fixes a bug where
|
8
|
+
listing buckets in certain cases would result in the error
|
9
|
+
'BucketStorageUri' object has no attribute 'version_specific_uri'
|
10
|
+
|
11
|
+
|
12
|
+
================================================================================
|
13
|
+
|
14
|
+
|
15
|
+
Release 3.22 (release-date: 2013-02-15)
|
16
|
+
|
17
|
+
|
18
|
+
New Features
|
19
|
+
------------
|
20
|
+
|
21
|
+
- Implemented new chacl command, which makes it easy to add and remove bucket
|
22
|
+
and object ACL grants without having to edit XML (like the older setacl
|
23
|
+
command).
|
24
|
+
|
25
|
+
- Implemented new "daisy-chain" copying mode, which allows cross-provider
|
26
|
+
copies to run without buffering to local disk, and to use resumable uploads.
|
27
|
+
This copying mode also allows copying between locations and between storage
|
28
|
+
classes, using the new gsutil cp -D option. (Daisy-chain copying is the
|
29
|
+
default when copying between providers, but must be explicitly requested for
|
30
|
+
the other cases to keep costs and performance expectations clear.)
|
31
|
+
|
32
|
+
- Implemented new perfdiag command to run a diagnostic test against
|
33
|
+
a bucket, collect system information, and report results. Useful
|
34
|
+
when working with Google Cloud Storage team to resolve questions
|
35
|
+
about performance.
|
36
|
+
|
37
|
+
- Added SIGQUIT (^\) handler, to allow breakpointing a running gsutil.
|
38
|
+
|
39
|
+
|
40
|
+
Bug Fixes
|
41
|
+
---------
|
42
|
+
|
43
|
+
- Fixed bug where gsutil setwebcfg signature didn't match with
|
44
|
+
HMAC authentication.
|
45
|
+
|
46
|
+
- Fixed ASCII codec decode error when constructing tracker filename
|
47
|
+
from non-7bit ASCII intput filename.
|
48
|
+
|
49
|
+
- Changed boto auth plugin framework to allow multiple plugins
|
50
|
+
supporting requested capability, which fixes gsutil exception
|
51
|
+
that used to happen where a GCE user had a service account
|
52
|
+
configured and then ran gsutil config.
|
53
|
+
|
54
|
+
- Changed Command.Apply method to be resilient to name expansion
|
55
|
+
exceptions. Before this change, if an exception was raised
|
56
|
+
during iteration of NameExpansionResult, the parent process
|
57
|
+
would immediately stop execution, causing the
|
58
|
+
_EOF_NAME_EXPANSION_RESULT to never be sent to child processes.
|
59
|
+
This resulted in the process hanging forever.
|
60
|
+
|
61
|
+
- Fixed various bugs for gsutil running on Windows:
|
62
|
+
- Fixed various places from a hard-coded '/' to os.sep.
|
63
|
+
- Fixed a bug in the cp command where it was using the destination
|
64
|
+
URI's .delim property instead of the source URI.
|
65
|
+
- Fixed a bug in the cp command's _SrcDstSame function by
|
66
|
+
simplifying it to use os.path.normpath.
|
67
|
+
- Fixed windows bug in tests/util.py _NormalizeURI function.
|
68
|
+
- Fixed ZeroDivisionError sometimes happening during unit tests
|
69
|
+
on Windows.
|
70
|
+
|
71
|
+
- Fixed gsutil rm bug that caused exit status 1 when encountered
|
72
|
+
non-existent URI.
|
73
|
+
|
74
|
+
- Fixed support for gsutil cp file -.
|
75
|
+
|
76
|
+
- Added preconditions and retry logic to setmeta command, to
|
77
|
+
enforce concurrency control.
|
78
|
+
|
79
|
+
- Fixed bug in copying subdirs to subdirs.
|
80
|
+
|
81
|
+
- Fixed cases where boto debug_level caused too much or too little
|
82
|
+
logging:
|
83
|
+
- resumable and one-shot uploads weren't showing response headers
|
84
|
+
when connection.debug > 0.
|
85
|
+
- payload was showing up in debug output when connection.debug
|
86
|
+
< 4 for streaming uploads.
|
87
|
+
|
88
|
+
- Removed XML parsing from setacl. The previous implementation
|
89
|
+
relied on loose XML handling, which could truncate what it sends
|
90
|
+
to the service, allowing invalid XML to be specified by the
|
91
|
+
user. Instead now the ACL XML is passed verbatim and we rely
|
92
|
+
on server-side schema enforcement.
|
93
|
+
|
94
|
+
- Added user-agent header to resumable uploads.
|
95
|
+
|
96
|
+
- Fixed reporting bits/s when it was really bytes/s.
|
97
|
+
|
98
|
+
- Changed so we now pass headers with API version & project ID
|
99
|
+
to create_bucket().
|
100
|
+
|
101
|
+
- Made "gsutil rm -r gs://bucket/folder" remove xyz_$folder$ object
|
102
|
+
(which is created by various GUI tools).
|
103
|
+
|
104
|
+
- Fixed bug where gsutil binary was shipped with protection 750
|
105
|
+
instead of 755.
|
106
|
+
|
107
|
+
|
108
|
+
Other Changes
|
109
|
+
---------
|
110
|
+
|
111
|
+
- Reworked versioned object handling:
|
112
|
+
- Removed need for commands to specify -v option to parse
|
113
|
+
versions. Versioned URIs are now uniformly handled by all
|
114
|
+
commands.
|
115
|
+
- Refactored StorageUri parsing that had been split across
|
116
|
+
storage_uri and conveience; made versioned URIs render with
|
117
|
+
version string so StorageUri is round-trippable (boto change).
|
118
|
+
- Implemented gsutil cp -v option for printing the version-specific
|
119
|
+
URI that was just created.
|
120
|
+
- Added error detail for attempt to delete non-empty versioned
|
121
|
+
bucket. Also added versioning state to ls -L -b gs://bucket
|
122
|
+
output.
|
123
|
+
- Changed URI parsing to use pre-compiled regex's.
|
124
|
+
- Other bug fixes.
|
125
|
+
|
126
|
+
- Rewrote/deepened/improved various parts of built-in help:
|
127
|
+
- Updated 'gsutil help dev'.
|
128
|
+
- Fixed help command handling when terminal does not have the
|
129
|
+
number of rows set.
|
130
|
+
- Rewrote versioning help.
|
131
|
+
- Added gsutil help text for common 403 AccountProblem error.
|
132
|
+
- Added text to 'gsutil help dev' about legal agreement needed
|
133
|
+
with code submissions.
|
134
|
+
- Fixed various other typos.
|
135
|
+
- Updated doc for cp command regarding metadata not being
|
136
|
+
preserved when copying between providers.
|
137
|
+
- Fixed gsutil ls command documentation typo for the -L option.
|
138
|
+
- Added HTTP scheme to doc/examples for gsutil setcors command.
|
139
|
+
- Changed minimum version in documentation from 2.5 to 2.6 since
|
140
|
+
gsutil no longer works in Python 2.5.
|
141
|
+
- Cleaned up/clarify/deepen various other parts of gsutil
|
142
|
+
built-in documentation.
|
143
|
+
|
144
|
+
- Numerous improvements to testing infrastructure:
|
145
|
+
- Completely refactored infrastructure, allowing deeper testing
|
146
|
+
and more readable test code, and enabling better debugging
|
147
|
+
output when tests fail.
|
148
|
+
- Moved gslib/test_*.py unit tests to gslib/tests module.
|
149
|
+
- Made all tests (unit and integration, per-command and modules
|
150
|
+
(like naming) run from single gsutil test command.
|
151
|
+
- Moved TempDir functions from GsUtilIntegrationTestCase to
|
152
|
+
GsUtilTestCase.
|
153
|
+
- Made test runner message show the test function being run.
|
154
|
+
- Added file path support to ObjectToURI function.
|
155
|
+
- Disabled the test command if running on Python 2.6 and unittest2
|
156
|
+
is not available instead of breaking all of gsutil.
|
157
|
+
- Changed to pass GCS V2 API and project_id from boto config
|
158
|
+
if necessary in integration_testcase#CreateBucket().
|
159
|
+
- Fixed unit tests by using a GS-specific mocking class to
|
160
|
+
override the S3 provider.
|
161
|
+
- Added friendlier error message if test path munging fails.
|
162
|
+
- Fixed bug where gsutil test only cleaned up first few test files.
|
163
|
+
- Implemented setacl integration tests.
|
164
|
+
- Implemented StorageUri parsing unit tests.
|
165
|
+
- Implemented test for gsutil cp -D.
|
166
|
+
- Implemented setacl integration tests.
|
167
|
+
- Implemented tests for reading and seeking past end of file.
|
168
|
+
- Implemented and tests for it in new tests module.
|
169
|
+
- Changed cp tests that don't specify a Content-Type to check
|
170
|
+
for new binary/octet-stream default instead of server-detected
|
171
|
+
mime type.
|
172
|
+
|
173
|
+
- Changed gsutil mv to allow moving local files/dirs to the cloud.
|
174
|
+
Previously this was disallowed in the belief we should be
|
175
|
+
conservative about deleting data from local disk but there are
|
176
|
+
legitimate use cases for moving data from a local dir to the
|
177
|
+
cloud, it's clear to the user this would remove data from the
|
178
|
+
local disk, and allowing it makes the tool behavior more
|
179
|
+
consistent with what users would expect.
|
180
|
+
|
181
|
+
- Changed gsutil update command to insist on is_secure and
|
182
|
+
https_validate_certificates.
|
183
|
+
|
184
|
+
- Fixed release no longer to include extraneous boto dirs in
|
185
|
+
top-level of gsutil distribution (like bin/ and docs/).
|
186
|
+
|
187
|
+
- Changed resumable upload threshold from 1 MB to 2 MB.
|
188
|
+
|
189
|
+
- Removed leftover cloudauth and cloudreader dirs. Sample code
|
190
|
+
now lives at https://github.com/GoogleCloudPlatform.
|
191
|
+
|
192
|
+
- Updated copyright notice on code files.
|
193
|
+
|
194
|
+
|
195
|
+
================================================================================
|
196
|
+
|
197
|
+
|
198
|
+
Release 3.21 (release-date: 2012-12-10)
|
199
|
+
|
200
|
+
New Features
|
201
|
+
------------
|
202
|
+
|
203
|
+
- Added the ability for the cp command to continue even if there is an
|
204
|
+
error. This can be activated with the -c flag.
|
205
|
+
|
206
|
+
- Added support for specifying src args for gsutil cp on stdin (-I option)
|
207
|
+
|
208
|
+
|
209
|
+
Bug Fixes
|
210
|
+
---------
|
211
|
+
|
212
|
+
- Fixed gsutil test cp, which assumed it was run from gsutil install dir.
|
213
|
+
|
214
|
+
- Mods so we send generation subresource only when user requested
|
215
|
+
version parsing (-v option for cp and cat commands).
|
216
|
+
|
217
|
+
|
218
|
+
Other Changes
|
219
|
+
-------------
|
220
|
+
|
221
|
+
- Updated docs about using setmeta with versioning enabled.
|
222
|
+
|
223
|
+
- Changed GCS endpoint in boto to storage.googleapis.com.
|
224
|
+
|
225
|
+
|
226
|
+
================================================================================
|
227
|
+
|
228
|
+
|
229
|
+
Release 3.20 (release-date: 2012-11-30)
|
230
|
+
|
231
|
+
New Features
|
232
|
+
------------
|
233
|
+
|
234
|
+
- Added a noclobber (-n) setting for the cp command. Existing objects/files
|
235
|
+
will not be overwritten when using this setting.
|
236
|
+
|
237
|
+
|
238
|
+
Bug Fixes
|
239
|
+
---------
|
240
|
+
|
241
|
+
- Fixed off-by-one error when reporting bytes transferred.
|
242
|
+
|
243
|
+
|
244
|
+
Other Changes
|
245
|
+
-------------
|
246
|
+
|
247
|
+
- Improved versioning support for the remove command.
|
248
|
+
|
249
|
+
- Improved test runner support.
|
250
|
+
|
251
|
+
|
252
|
+
================================================================================
|
253
|
+
|
254
|
+
|
255
|
+
Release 3.19 (release-date: 2012-11-26)
|
256
|
+
|
257
|
+
New Features
|
258
|
+
------------
|
259
|
+
- Added support for object versions.
|
260
|
+
|
261
|
+
- Added support for storage classes (including Durable Reduced Availability).
|
262
|
+
|
263
|
+
|
264
|
+
Bug Fixes
|
265
|
+
---------
|
266
|
+
- Fixed problem where cp -q prevented resumable uploads from being performed.
|
267
|
+
|
268
|
+
- Made setwebcfg and setcors tests robust wrt XML formatting variation.
|
269
|
+
|
270
|
+
|
271
|
+
Other Changes
|
272
|
+
-------------
|
273
|
+
|
274
|
+
- Incorporated vapier@ mods to make version command not fail if CHECKSUM file
|
275
|
+
missing.
|
276
|
+
|
277
|
+
- Refactored gsutil such that most functionality exists in boto.
|
278
|
+
|
279
|
+
- Updated gsutil help dev instructions for how to check out source.
|
280
|
+
|
281
|
+
|
282
|
+
================================================================================
|
283
|
+
|
284
|
+
|
285
|
+
Release 3.18 (release-date: 2012-09-19)
|
286
|
+
|
287
|
+
Bug Fixes
|
288
|
+
---------
|
289
|
+
|
290
|
+
- Fixed resumable upload boundary condition when handling POST request
|
291
|
+
when server already has complete file, which resulted in an infinite
|
292
|
+
loop that consumed 100% of the CPU.
|
293
|
+
|
294
|
+
- Fixed one more place that outputted progress info when gsutil cp -q
|
295
|
+
specified (during streaming uploads).
|
296
|
+
|
297
|
+
|
298
|
+
Other Changes
|
299
|
+
-------------
|
300
|
+
|
301
|
+
- Updated help text for "gsutil help setmeta" and "gsutil help metadata", to
|
302
|
+
clarify and deepen parts of the documentation.
|
303
|
+
|
304
|
+
|
305
|
+
================================================================================
|
306
|
+
|
307
|
+
|
308
|
+
Release 3.17 (release-date: 2012-08-17)
|
309
|
+
|
310
|
+
Bug Fixes
|
311
|
+
---------
|
312
|
+
|
313
|
+
- Fixed race condition when multiple threads attempt to get an OAuth2 refresh
|
314
|
+
token concurrently.
|
315
|
+
|
316
|
+
|
317
|
+
Other Changes
|
318
|
+
-------------
|
319
|
+
|
320
|
+
- Implemented simplified syntax for setmeta command. The old syntax still
|
321
|
+
works but is now deprecated.
|
322
|
+
|
323
|
+
- Added help to gsutil cp -z option, to describe how to change where temp
|
324
|
+
files are written.
|
325
|
+
|
326
|
+
|
327
|
+
================================================================================
|
328
|
+
|
329
|
+
|
330
|
+
Release 3.16 (release-date: 2012-08-13)
|
331
|
+
|
332
|
+
Bug Fixes
|
333
|
+
---------
|
334
|
+
|
335
|
+
- Added info to built-in help for setmeta command, to explain the syntax
|
336
|
+
needed when running from Windows.
|
337
|
+
|
338
|
+
================================================================================
|
339
|
+
|
340
|
+
|
341
|
+
Release 3.15 (release-date: 2012-08-12)
|
342
|
+
|
343
|
+
New Features
|
344
|
+
------------
|
345
|
+
- Implemented gsutil setmeta command.
|
346
|
+
|
347
|
+
- Made gsutil understand bucket subdir conventions used by various tools
|
348
|
+
(like GCS Manager and CloudBerry) so if you cp or mv to a subdir you
|
349
|
+
created with one of those tools it will work as expected.
|
350
|
+
|
351
|
+
- Added support for Windows drive letter-prefaced paths when using Storage
|
352
|
+
URIs.
|
353
|
+
|
354
|
+
|
355
|
+
Bug Fixes
|
356
|
+
---------
|
357
|
+
|
358
|
+
- Fixed performance bug when downloading a large object with Content-
|
359
|
+
Encoding:gzip, where decompression attempted to load the entire object
|
360
|
+
in memory. Also added "Uncompressing" log output if file is larger than
|
361
|
+
50M, to make it clear the download hasn't stalled.
|
362
|
+
|
363
|
+
- Fixed naming bug when performing gsutil mv from a bucket subdir to
|
364
|
+
and existing bucket subdir.
|
365
|
+
|
366
|
+
- Fixed bug that caused cross-provider copies into Google Cloud Storage to
|
367
|
+
fail.
|
368
|
+
|
369
|
+
- Made change needed to make resumable transfer progress messages not print
|
370
|
+
when running gsutil cp -q.
|
371
|
+
|
372
|
+
- Fixed copy/paste error in config file documentation for
|
373
|
+
https_validate_certificates option.
|
374
|
+
|
375
|
+
- Various typo fixes.
|
376
|
+
|
377
|
+
Other Changes
|
378
|
+
-------------
|
379
|
+
|
380
|
+
- Changed gsutil to unset http_proxy environment variable if it's set,
|
381
|
+
because it confuses boto. (Proxies should instead be configured via the
|
382
|
+
boto config file.)
|
383
|
+
|
384
|
+
================================================================================
|
385
|
+
|
386
|
+
|
387
|
+
Release 3.14 (release-date: 2012-07-28)
|
388
|
+
|
389
|
+
New Features
|
390
|
+
------------
|
391
|
+
- Added cp -q option, to support quiet operation from cron jobs.
|
392
|
+
|
393
|
+
- Made config command restore backed up file if there was a failure or user
|
394
|
+
hits ^C.
|
395
|
+
|
396
|
+
Bug Fixes
|
397
|
+
---------
|
398
|
+
|
399
|
+
- Fixed bug where gsutil cp -R from a source directory didn't generate
|
400
|
+
correct destination path.
|
401
|
+
|
402
|
+
- Fixed file handle leak in gsutil cp -z
|
403
|
+
|
404
|
+
- Fixed bug that caused cp -a option not to work when copying in the cloud.
|
405
|
+
|
406
|
+
- Fixed bug that caused '/-' to be appended to object name for streaming
|
407
|
+
uploads.
|
408
|
+
|
409
|
+
- Revert incorrect line I changed in previous CL, that attempted to
|
410
|
+
get fp from src_key object. The real fix that's needed is described in
|
411
|
+
http://code.google.com/p/gsutil/issues/detail?id=73.
|
412
|
+
|
413
|
+
Other Changes
|
414
|
+
-------------
|
415
|
+
|
416
|
+
- Changed logging to print "Copying..." and Content-Type on same line;
|
417
|
+
refactored content type and log handling.
|
418
|
+
|
419
|
+
|
420
|
+
================================================================================
|
421
|
+
|
422
|
+
|
423
|
+
Release 3.13 (release-date: 2012-07-19)
|
424
|
+
|
425
|
+
Bug Fixes
|
426
|
+
---------
|
427
|
+
|
428
|
+
- Included the fix to make 'gsutil config' honor BOTO_CONFIG environment
|
429
|
+
variable (which was intended to be included in Release 3.12)
|
430
|
+
|
431
|
+
|
432
|
+
================================================================================
|
433
|
+
|
434
|
+
|
435
|
+
Release 3.11 (release-date: 2012-06-28)
|
436
|
+
|
437
|
+
New Features
|
438
|
+
------------
|
439
|
+
|
440
|
+
- Added support for configuring website buckets.
|
441
|
+
|
442
|
+
Bug Fixes
|
443
|
+
---------
|
444
|
+
|
445
|
+
- Fixed bug that caused simultaneous resumable downloads of the same source
|
446
|
+
object to use the same tracker file.
|
447
|
+
|
448
|
+
- Changed language code spec pointer from Wikipedia to loc.gov (for
|
449
|
+
Content-Language header).
|
450
|
+
|
451
|
+
|
452
|
+
================================================================================
|
453
|
+
|
454
|
+
|
455
|
+
Release 3.10 (release-date: 2012-06-19)
|
456
|
+
|
457
|
+
New Features
|
458
|
+
------------
|
459
|
+
|
460
|
+
- Added support for setting and listing Content-Language header.
|
461
|
+
|
462
|
+
|
463
|
+
Bug Fixes
|
464
|
+
---------
|
465
|
+
|
466
|
+
- Fixed bug that caused getacl/setacl commands to get a character encoding
|
467
|
+
exception when ACL content contained content not representable in ISO-8859-1
|
468
|
+
character set.
|
469
|
+
|
470
|
+
- Fixed gsutil update not to fail under Windows exclusive file locking.
|
471
|
+
|
472
|
+
- Fixed gsutil ls -L to continue past 403 errors.
|
473
|
+
|
474
|
+
- Updated gsutil tests and also help dev with instructions on how to run
|
475
|
+
boto tests, based on recent test refactoring done to in boto library.
|
476
|
+
|
477
|
+
- Cleaned up parts of cp help text.
|
478
|
+
|
479
|
+
|
480
|
+
================================================================================
|
481
|
+
|
482
|
+
|
483
|
+
Release 3.9 (release-date: 2012-05-24)
|
484
|
+
|
485
|
+
Bug Fixes
|
486
|
+
---------
|
487
|
+
|
488
|
+
- Fixed bug that caused extra "file:/" to be included in pathnames with
|
489
|
+
doing gsutil cp -R on Windows.
|
490
|
+
|
491
|
+
|
492
|
+
================================================================================
|
493
|
+
|
494
|
+
|
495
|
+
Release 3.8 (release-date: 2012-05-20)
|
496
|
+
|
497
|
+
Bug Fixes
|
498
|
+
---------
|
499
|
+
|
500
|
+
- Fixed problem with non-ASCII filename characters not setting encoding before
|
501
|
+
attempting to hash for generating resumable transfer filename.
|
502
|
+
|
503
|
+
|
504
|
+
================================================================================
|
505
|
+
|
506
|
+
|
507
|
+
Release 3.7 (release-date: 2012-05-11)
|
508
|
+
|
509
|
+
Bug Fixes
|
510
|
+
---------
|
511
|
+
|
512
|
+
- Fixed handling of HTTPS tunneling through a proxy.
|
513
|
+
|
514
|
+
|
515
|
+
================================================================================
|
516
|
+
|
517
|
+
|
518
|
+
Release 3.6 (release-date: 2012-05-09)
|
519
|
+
|
520
|
+
Bug Fixes
|
521
|
+
---------
|
522
|
+
|
523
|
+
- Fixed bug that caused wildcards spanning directories not to work.
|
524
|
+
- Fixed bug that gsutil cp -z not to find available tmp space correctly
|
525
|
+
under Windows.
|
526
|
+
|
527
|
+
|
528
|
+
================================================================================
|
529
|
+
|
530
|
+
|
531
|
+
Release 3.5 (release-date: 2012-04-30)
|
532
|
+
|
533
|
+
Performance Improvement
|
534
|
+
-----------------------
|
535
|
+
|
536
|
+
- Change by Evan Worley to calculate MD5s incrementally during uploads and
|
537
|
+
downloads. This reduces overall transfer time substantially for large
|
538
|
+
objects.
|
539
|
+
|
540
|
+
Bug Fixes
|
541
|
+
---------
|
542
|
+
|
543
|
+
- Fixed bug where uploading and moving multiple files to a bucket subdirectory
|
544
|
+
didn't work as intended.
|
545
|
+
(http://code.google.com/p/gsutil/issues/detail?id=93).
|
546
|
+
- Fixed bug where gsutil cp -r sourcedir didn't copy to specified subdir
|
547
|
+
if there is only one file in sourcedir.
|
548
|
+
- Fixed bug where tracker file included a timestamp that caused it not to
|
549
|
+
be recognized across sessions.
|
550
|
+
- Fixed bug where gs://bucket/*/dir wildcard matches too many objects.
|
551
|
+
- Fixed documentation errors in help associated with ACLs and projects.
|
552
|
+
- Changed GCS ACL parsing to be case-insensitive.
|
553
|
+
- Changed ls to print error and exit with non-0 status when wildcard matches
|
554
|
+
nothing, to be more consistent with UNIX shell behavior.
|
555
|
+
|
556
|
+
|
557
|
+
================================================================================
|
558
|
+
|
559
|
+
|
560
|
+
Release 3.4 (release-date: 2012-04-06)
|
561
|
+
|
562
|
+
Bug Fixes
|
563
|
+
---------
|
564
|
+
|
565
|
+
- Fixed problem where resumable uploads/downloads of objects with very long
|
566
|
+
names would generate tracking files with names that exceeded local file
|
567
|
+
system limits, making it impossible to complete resumable transfers for
|
568
|
+
those objects. Solution was to build the tracking file name from a fixed
|
569
|
+
prefix, SHA1 hash of the long filename, epoch timestamp and last 16
|
570
|
+
chars of the long filename, which is guarantee to be a predicable and
|
571
|
+
reasonable length.
|
572
|
+
|
573
|
+
- Fixed minor bug in output from 'gsutil help dev' which advised executing
|
574
|
+
an inconsequential test script (test_util.py).
|
575
|
+
|
576
|
+
|
577
|
+
================================================================================
|
578
|
+
|
579
|
+
|
580
|
+
Release 3.3 (release-date: 2012-04-03)
|
581
|
+
|
582
|
+
Bug Fixes
|
583
|
+
---------
|
584
|
+
|
585
|
+
- Fixed problem where gsutil ver and debug flags crashed when used
|
586
|
+
with newly generated boto config files.
|
587
|
+
|
588
|
+
- Fixed gsutil bug in windows path handling, and make checksumming work
|
589
|
+
across platforms.
|
590
|
+
|
591
|
+
- Fixed enablelogging to translate -b URI param to plain bucket name in REST
|
592
|
+
API request.
|
593
|
+
|
594
|
+
|
595
|
+
================================================================================
|
596
|
+
|
597
|
+
|
598
|
+
Release 3.2 (release-date: 2012-03-30)
|
599
|
+
|
600
|
+
Bug Fixes
|
601
|
+
---------
|
602
|
+
|
603
|
+
- Fixed problem where gsutil didn't convert between OS-specific directory
|
604
|
+
separators when copying individually-named files (issue 87).
|
605
|
+
|
606
|
+
- Fixed problem where gsutil ls -R didn't work right if there was a key
|
607
|
+
with a leading path (like /foo/bar/baz)
|
608
|
+
|
609
|
+
|
610
|
+
================================================================================
|
611
|
+
|
612
|
+
|
613
|
+
Release 3.1 (release-date: 2012-03-20)
|
614
|
+
|
615
|
+
Bug Fixes
|
616
|
+
---------
|
617
|
+
|
618
|
+
- Removed erroneous setting of Content-Encoding when a gzip file is uploaded
|
619
|
+
(vs running gsutil cp -z, when Content-Encoding should be set). This
|
620
|
+
error caused users to get gsutil.tar.gz file uncompressed by the user
|
621
|
+
agent (like wget) while downloading, making the file appear to be of the
|
622
|
+
wrong size/content.
|
623
|
+
|
624
|
+
- Fixed handling of gsutil help for Windows (previous code depended on
|
625
|
+
termios and fcntl libs, which are Linux/MacOS-specific).
|
626
|
+
|
627
|
+
|
628
|
+
================================================================================
|
629
|
+
|
630
|
+
|
631
|
+
Release 3.0 (release-date: 2012-03-20)
|
632
|
+
|
633
|
+
|
634
|
+
Important Notes
|
635
|
+
---------------
|
636
|
+
|
637
|
+
- Backwards-incompatible wildcard change
|
638
|
+
|
639
|
+
The '*' wildcard now only matches objects within a bucket directory. If
|
640
|
+
you have scripts that depend on being able to match spanning multiple
|
641
|
+
directories you need to use '**' instead. For example, the command:
|
642
|
+
|
643
|
+
gsutil cp gs://bucket/*.txt
|
644
|
+
|
645
|
+
will now only match .txt files in the top-level directory.
|
646
|
+
|
647
|
+
gsutil cp gs://bucket/**.txt
|
648
|
+
|
649
|
+
will match across all directories.
|
650
|
+
|
651
|
+
- gsutil ls now lists one directory at a time. If you want to list all objects
|
652
|
+
in a bucket, you can use:
|
653
|
+
|
654
|
+
gsutil ls gs://bucket/**
|
655
|
+
|
656
|
+
or:
|
657
|
+
|
658
|
+
gsutil ls -R gs://bucket
|
659
|
+
|
660
|
+
|
661
|
+
New Features
|
662
|
+
------------
|
663
|
+
|
664
|
+
- Built-in help for all commands and many additional topics. Try
|
665
|
+
"gsutil help" for a list of available commands and topics.
|
666
|
+
|
667
|
+
- A new hierarchical file tree abstraction layer, which makes the flat bucket
|
668
|
+
name space look like a hierarchical file tree. This makes several things
|
669
|
+
possible:
|
670
|
+
- copying data to/from bucket sub-directories (see “gsutil help cp”).
|
671
|
+
- distributing large uploads/downloads across many machines
|
672
|
+
(see “gsutil help cp”)
|
673
|
+
- renaming bucket sub-directories (see “gsutil help mv”).
|
674
|
+
- listing individual bucket sub-directories and for listing directories
|
675
|
+
recursively (see “gsutil help ls”).
|
676
|
+
- setting ACLs for objects in a sub-directory (see “gsutil help setacl”).
|
677
|
+
|
678
|
+
- Support for per-directory (*) and recursive (**) wildcards. Essentially,
|
679
|
+
** works the way * did in previous gsutil releases, and * now behaves
|
680
|
+
consistently with how it works in command interpreters (like bash). The
|
681
|
+
ability to specify directory-only wildcards also enables a number of use
|
682
|
+
cases, such as distributing large uploads/downloads by wildcarded name. See
|
683
|
+
"gsutil help wildcards" for details.
|
684
|
+
|
685
|
+
- Support for Cross-Origin Resource Sharing (CORS) configuration. See "gsutil
|
686
|
+
help cors" for details.
|
687
|
+
|
688
|
+
- Support for multi-threading and recursive operation for setacl command
|
689
|
+
(see “gsutil help setacl”).
|
690
|
+
|
691
|
+
- Ability to use the UNIX 'file' command to do content type recognition as
|
692
|
+
an alternative to filename extensions.
|
693
|
+
|
694
|
+
- Introduction of new end-to-end test suite.
|
695
|
+
|
696
|
+
- The gsutil version command now computes a checksum of the code, to detect
|
697
|
+
corruption and local modification when assisting with technical support.
|
698
|
+
|
699
|
+
- The gsutil update command is no longer beta/experimental, and now also
|
700
|
+
supports updating from named URIs (for early/test releases).
|
701
|
+
|
702
|
+
- Changed gsutil ls -L to also print Content-Disposition header.
|
703
|
+
|
704
|
+
|
705
|
+
Bug Fixes
|
706
|
+
---------
|
707
|
+
|
708
|
+
- The gsutil cp -t option previously didn't work as documented, and instead
|
709
|
+
Content-Type was always detected based on filename extension. Content-Type
|
710
|
+
detection is now the default, the -t option is deprecated (to be removed in
|
711
|
+
the future), and specifying a -h Content-Type header now correctly overrides
|
712
|
+
the filename extension based handling. For details see "gsutil help
|
713
|
+
metadata".
|
714
|
+
|
715
|
+
- Fixed bug that caused multi-threaded mv command not to percolate failures
|
716
|
+
during the cp phase to the rm phase, which could under some circumstances
|
717
|
+
cause data that was not copied to be deleted.
|
718
|
+
|
719
|
+
- Fixed bug that caused gsutil to use GET for ls -L requests. It now uses HEAD
|
720
|
+
for ls -L requests, which is more efficient and faster.
|
721
|
+
|
722
|
+
- Fixed bug that caused gsutil not to preserve metadata during
|
723
|
+
copy-in-the-cloud.
|
724
|
+
|
725
|
+
- Fixed bug that prevented setacl command from allowing DisplayName's in ACLs.
|
726
|
+
|
727
|
+
- Fixed bug that caused gsutil/boto to suppress consecutive slashes in path
|
728
|
+
names.
|
729
|
+
|
730
|
+
- Fixed spec-non-compliant URI construction for resumable uploads.
|
731
|
+
|
732
|
+
- Fixed bug that caused rm -f not to work.
|
733
|
+
|
734
|
+
- Fixed UnicodeEncodeError that happened when redirecting gsutil ls output
|
735
|
+
to a file with non-ASCII object names.
|
736
|
+
|
737
|
+
|
738
|
+
Other Changes
|
739
|
+
-------------
|
740
|
+
|
741
|
+
- UserAgent sent in HTTP requests now includes gsutil version number and OS
|
742
|
+
name.
|
743
|
+
|
744
|
+
- Starting with this release users are able to get individual named releases
|
745
|
+
from version-named objects: gs://pub/gsutil_<version>.tar.gz
|
746
|
+
and gs://pub/gsutil_<version>.zip. The version-less counterparts
|
747
|
+
(gs://pub/gsutil.tar.gz and gs://pub/gsutil.zip) will contain the latest
|
748
|
+
release. Also, the gs://pub bucket is now publicly readable (so, anyone
|
749
|
+
can list its contents).
|
750
|
+
|
751
|
+
|
752
|
+
================================================================================
|
753
|
+
|
754
|
+
Release 2.0 (release-date: 2012-01-13)
|
755
|
+
|
756
|
+
|
757
|
+
New Features
|
758
|
+
------------
|
759
|
+
|
760
|
+
- Support for for two new installation modes: enterprise and RPM.
|
761
|
+
Customers can now install gsutil one of three ways:
|
762
|
+
|
763
|
+
- Individual user mode (previously the only available mode): unpacking from
|
764
|
+
a gzipped tarball (gs://pub/gsutil.tar.gz) or zip file
|
765
|
+
(gs://pub/gsutil.zip) and running the gsutil command in place in the
|
766
|
+
unpacked gsutil directory.
|
767
|
+
|
768
|
+
- Enterprise mode (new): unpacking as above, and then running the setup.py
|
769
|
+
script in the unpacked gsutil directory. This allows a systems
|
770
|
+
administrator to install gsutil in a central location, using the Python
|
771
|
+
distutils facility. This mode is supported only on Linux and MacOS.
|
772
|
+
|
773
|
+
- RPM mode (new). A RedHat RPM can be built from the gsutil.spec.in file
|
774
|
+
in the unpacked gsutil directory, allowing it to be installed as part of
|
775
|
+
a RedHat build.
|
776
|
+
|
777
|
+
- Note: v2.0 is the first numbered gsutil release. Previous releases
|
778
|
+
were given timestamps for versions. Numbered releases enable downstream
|
779
|
+
package builds (like RPMs) to define dependencies more easily.
|
780
|
+
This is also the first version where we began including release notes.
|