# Google Cloud SDK - Release Notes

Copyright 2014-2018 Google Inc. All rights reserved.

Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 206.0.0 (2018-06-19)

### Breaking Changes

*   **(Container Registry)** Updated `docker-credential-gcr` to version 1.5.0.
    *   Order of access_token sources has been reversed: by default, `gcloud`
        will now take precedence over environmental sources when operating in
        Kubernetes Engine, Compute Engine, or App Engine Managed VMs.
    *   See docker-credential-gcr v1.5.0 release notes on GitHub:
        https://github.com/GoogleCloudPlatform/docker-credential-gcr/releases/tag/v1.5.0


### Cloud SDK

* The `gcloud` CLI now has experimental support for running using a Python 3.4+
  interpreter. (Prior versions of gcloud required Python 2.7.) All `gcloud`
  commands are supported except for the following command groups:
    * `gcloud app`
    * `gcloud datastore`
    * `gcloud scheduler`
    * `gcloud tasks`
* Python tools other than `gcloud` that are shipped in the Cloud SDK still
  require a Python 2.7 interpreter.
* For more information on how to configure your Python interpreter, run:
  `gcloud topic startup` or visit:
  https://cloud.google.com/sdk/gcloud/reference/topic/startup
* Fixed issue where credentials were written with broad permissions.

### App Engine

* Modified `gcloud app domain-mappings create` to provision an automatically
  managed SSL certificate by default on domain mapping creation.
* Promoted `--certificate-management` flag of
  `gcloud app domain-mappings <create|update>` to GA.

### Cloud Dataproc

* Added the `--gce-pd-kms-key` flag to `dataproc clusters create` in beta to enable protecting clusters with Google Cloud KMS encryption.

### Cloud Machine Learning Engine

* Promoted the `--framework` flag of `gcloud ml-engine versions create` to GA.

### Compute Engine

* Added the `--labels` flag to `gcloud beta compute disks snapshot` to enable setting labels on new snapshots.

### Kubernetes Engine

*   Promoted the `--min-cpu-platform` flag of `gcloud container create` to GA.
*   Promoted `--accelerator` flag of `gcloud container <clusters|node-pools> create` to GA.



Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 205.0.0 (2018-06-12)

### Cloud Bigtable

*   Added new flags to the `cbt` commmand-line tool:
    *   `-user-agent` for specifying a custom User Agent
    *   `-columns` for specifying columns to read with `read` and `lookup`
    *   `-cells-per-column` for limiting number of cells read per column with `read` and `lookup`

### Cloud Datastore

*    Added `gcloud datastore indexes` command group to beta with the following commands:
     *   `gcloud datastore indexes cleanup`
     *   `gcloud datastore indexes create`

### Cloud Interconnect

*   Promoted interconnects attachments partner related commands to GA.

### Cloud Storage


* Updated gsutil component to 4.32

### Cloud TPU

* Added `--preemptible` flag to `gcloud beta compute tpus create`.

### Compute Engine

* Added the `--network` flag to `gcloud compute images export` to allow the
  export process to use a network other than `default`.
* Promoted `--quic-override` flag of `compute target-https-proxies
  <create|update>` to GA.


Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 204.0.0 (2018-06-05)

### Breaking Changes

*   **(Compute Engine)** Replaced `--node-index` with `--node` for `gcloud alpha compute <instance|instance_templates> create`. Node name will replace node index in the API, and nodes can now be targeted directly by node name (as opposed to node index, which was only unique within a group).


### App Engine


* Updated the Java SDK to version 1.9.64.
  Please visit the following release notes for details:
  https://cloud.google.com/appengine/docs/java/release-notes

### Cloud Endpoints

* Fixed an issue where attempting to deploy normalized service configuration
  files in yaml format would error out.

### Cloud Machine Learning Engine

* Added `--framework` flag to `ml-engine local predict`.

### Cloud Source Repositories

*    Added the `gcloud source repos update` command to beta with the following flags:
     *   `--add-topic`
     *   `--remove-topic`
     *   `--update-topic`
*    Added the following flags to `gcloud source project-configs update` in beta:
     *   `--add-topic`
     *   `--remove-topic`
     *   `--update-topic`

### Compute Engine

* Promoted `--response` flag of `gcloud compute health-checks` commands to beta.
* Promoted the following flags to beta to support using KMS keys to protect disks, images, and snapshots:
  *    `--kms-key-*` flags of `gcloud compute <disks|images>`
  *    `--boot-disk-kms-*` flags of `gcloud compute instances`.
* Promoted node affinities in instance and instance template creation to beta.

### Firebase Test Lab

*   Promoted `--type=game-loop` tests for Android from beta to GA.

### Kubernetes Engine

* Promoted `--region` flag of `gcloud container` to GA.


Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 203.0.0 (2018-05-30)

### Breaking Changes

*   **(Cloud SQL)** Deprecated `gcloud sql ssl-certs`. Use `gcloud sql ssl client-certs` instead.


### App Engine

* Fixed issue where attempting to deploy non-yaml config files would report
  success, but silently update configuration incorrectly, e.g. `gcloud app
  deploy cron.xml`. Note that xml-files are not supported with `gcloud app`,
  with the exception of `appengine-web.xml`.


### App Engine Flexible Environment

* Fixed an issue where `gcloud beta app deploy` failed to respect the
  `--image-url` argument during Flex deployments. This issue was introduced in
  Cloud SDK version 195.0.0.

### Cloud Dataproc

*   Added `gcloud beta dataproc workflow-templates instantiate-from-file` to
    enable instantiation of workflow templates directly from a YAML file.
*   Added `gcloud beta dataproc clusters create-from-file` to enable creation
    of clusters directly from a YAML file.

### Cloud SQL

*   Added the `gcloud beta sql ssl server-ca-certs` group to support certificate
    rotation, which includes the following commands:
    *   `gcloud beta sql ssl server-ca-certs list`
    *   `gcloud beta sql ssl server-ca-certs create`
    *   `gcloud beta sql ssl server-ca-certs rotate`
    *   `gcloud beta sql ssl server-ca-certs rollback`

### Cloud Source Repositories

*   Added the following commands to beta:
    *   `gcloud source project-configs describe`
    *   `gcloud source project-configs update`

### Compute Engine

* Promoted `--service-label` flag of `gcloud compute forwarding-rules create`
  to beta.
* Promoted `--shielded-vm-*` flags to beta in `gcloud compute instances create`,
  `gcloud compute instances update` and
  `gcloud compute instance-templates create`.



Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 202.0.0 (2018-05-22)

### Breaking Changes

*   **(Cloud Composer)** Increased minimum `--disk-size` of `gcloud beta composer environments create`
    to 20GB.
*   **(Compute Engine)** Deprecated `gcloud compute interconnects attachments create`. Use `gcloud
  compute interconnects attachments dedicated create` instead.
*   **(Firebase Test Lab)** Deprecated the following Robo test crawler-related flags:
    *   `--max-depth`
    *   `--max-steps`: Use the `--timeout` option instead to limit the test
        length.
    *   `--app-initial-activity`: Use the `--robo-script` option (in beta) to
        guide Robo to a specific part of the app under test.


### App Engine


* Updated the Python SDK to version 1.9.70.
  Please visit the following release notes for details:
  https://cloud.google.com/appengine/docs/python/release-notes

### Cloud Datastore Emulator

* Released Cloud Datastore Emulator version 2.0.0.
  * Java 8 (or later) is now required to run the emulator.
  * When the emulator is run in an App Engine local development server,
    index.yaml parsing errors are bubbled up. Previously the emulator would
    throw a AppEngineConfigException without responding to the development
    server requests.

### Cloud Tools For PowerShell

*   Updated Cloud Tools for PowerShell to version 1.0.1.8.
    *   Fixed a bug where `Get-GcpProject` did not enumerate collection.
    *   Fixed a bug where local SSD option for attach disk cmdlet did not work.

### Compute Engine

* Added help text output upon creating interconnects/interconnect attachments.
  To hide this output, append the `--no-user-output-enabled` flag.
* Promoted `--enable-flow-logs` flag of
  `gcloud compute networks subnets <create|update>` to GA.
* Promoted `gcloud compute sole-tenancy` commands to beta.
* Modified `--delete-nodes` of `gcloud beta compute sole-tenancy node-groups`
  to accept node names instead of node indexes.

### Kubernetes Engine

* Added `--disk-type` to `gcloud beta container <clusters|node-pools> create` to allow setting of the node VM boot disk type.
* Updated Google Kubernetes Engine's kubectl from version 1.8.6 to 1.9.7.


Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 201.0.0 (2018-05-15)

### Breaking Changes

*   **(Compute Engine)** Modified default TPU accelerator type to `v2-8` for `gcloud compute tpus`
  commands. `tpu-v2` has been deprecated.


### Cloud Bigtable

* Added the following commands to the `gcloud beta bigtable instances` command
  group to help manage IAM policies:
    * `set-iam-policy`
    * `get-iam-policy`
    * `add-iam-policy-binding`
    * `remove-iam-policy-binding`

### Cloud Datalab

* Updated the `datalab` component to the 20180503 release.
  Released changes are documented in its tracking issue at
      [https://github.com/googledatalab/datalab/issues/1999](https://github.com/googledatalab/datalab/issues/1999).

### Compute Engine

* Promoted `--create-disk` flag of `gcloud compute instances create` to GA.
  These flags allow creating new disks during instance creation.
* Added the TYPE column to `gcloud compute interconnects attachments list`
  table format.
* Added `--labels` flag to `gcloud beta compute instance-templates create-with-container`.

### Firebase Test Lab

*   Firebase Test Lab now supports mobile app testing for iOS. Please request access here: [https://docs.google.com/forms/d/e/1FAIpQLSf5cx1ot8ndHU9YrFkCn6gPoQZLxgW_6H13e_bot3he90n7Ng/viewform](https://docs.google.com/forms/d/e/1FAIpQLSf5cx1ot8ndHU9YrFkCn6gPoQZLxgW_6H13e_bot3he90n7Ng/viewform). Added the following commands:
    *   `gcloud beta firebase test ios models <list|describe>`
    *   `gcloud beta firebase test ios versions <list|describe>`
    *   `gcloud alpha firebase test ios run`

### Kubernetes Engine

* Promoted `--enable-stackdriver-kubernetes` of `gcloud container clusters create` to beta.


Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 200.0.0 (2018-05-01)

### Breaking Changes

*   **(Cloud DNS)** Modified `gcloud beta dns dnskeys describe` command to remove the `dsRecord`
  field for closer correspondence to the Google Cloud DNS API. Please use
  the flag ` --format "value(ds_record())"` instead.
*   **(Cloud DNS)** Moved the `gcloud beta dns dnskeys` commands to `gcloud beta dns dns-keys`;
  the old commands are deprecated and will soon be removed.
*   **(Cloud Interconnect)** Deprecated `gcloud compute interconnects patch` and renamed it to
  `gcloud compute interconnects update`.


### App Engine Flexible Environment

* Fixed a bug due to which some Flexible deployments would fail with
  LargeFileError.

### Cloud Composer

* Initial (beta track) release of the `gcloud beta composer` command group.
  Cloud Composer is a managed Apache Airflow service. To learn more, see
  [https://cloud.google.com/composer/docs/](https://cloud.google.com/composer/docs/).


### Cloud DNS

* Promoted `gcloud dns dns-keys <list|describe>` commands to GA.

### Cloud SQL

* Added `--source-ip-address` and `--source-port` flags to
  `gcloud beta sql instances create` to support creating external primary
  instances.
*   Added the following flags to `gcloud beta sql instances create` to support
    creating read replicas of external primary instances:
    *   `--master-username`
    *   `--master-password`,
    *   `--prompt-for-master-password`
    *   `--master-dump-file-path`,
    *   `--master-ca-certificate-path`
    *   `--client-certificate-path`
    *   `--client-key-path`

### Cloud Storage

* Updated gsutil component to 4.31

### Compute Engine

* Promoted support for disabling firewall rules to beta.

### Kubernetes Engine

* Added `--enable-stackdriver-kubernetes` flag to enable Stackdriver logging and
  monitoring beta experience.


Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 199.0.0 (2018-04-24)

### Breaking Changes

*   **(App Engine)** Deprecated the `gcloud app gen-config` command and "app.yaml" generation
  feature of the `gcloud app deploy` command (both in beta).
  As an alternative, create an app.yaml file yourself using the [App Engine
  Flexible
  Environment](https://cloud.google.com/appengine/docs/flexible/python/configuring-your-app-with-app-yaml)
  directions or the [App Engine Standard
  Environment](https://cloud.google.com/appengine/docs/standard/python/config/appref) directions for your application's language.


### Cloud Bigtable

*   Updated the Cloud Bigtable `cbt` tool for regional replication.
    *    Added the following commands:
         *   `createcluster`
         *   `updatecluster`
         *   `deletecluster`
         *   `waitforreplication`
    *    Added application profile support in `read`, `lookup` and `set`
*   Added the following commands to beta:
    *    `app-profiles` to manage application profiles for your instances.
    *    `clusters create` to create additional clusters within an existing
         instance.
    *    `clusters delete` to delete clusters from an instance.

### Cloud Billing API

* Added `gcloud billing accounts <get|set>-iam-policy` in alpha and beta.
* Modified output of `gcloud billing accounts list` in beta to include the
  master account ID of any subaccounts.

### Cloud DNS

* Promoted `gcloud dns operations <list|describe>` commands to GA.

### Cloud Datalab

* Updated the `datalab` component to the 20180412 release.
  Released changes are documented in its tracking issue at
      [https://github.com/googledatalab/datalab/issues/1989](https://github.com/googledatalab/datalab/issues/1989).

### Cloud Spanner

*   The following commands are now available in beta:
  *     `gcloud spanner rows delete`
  *     `gcloud spanner rows insert`
  *     `gcloud spanner rows update`

### Kubernetes Engine

* Updated for Python 3 compatibility.
*   Promoted `gcloud container clusters create --enable-ip-alias` to GA.
    *   `--enable-ip-alias` no longer requires the `--create-subnetwork`
        option to be specified when creating a cluster.


Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 198.0.0 (2018-04-18)

### Breaking Changes

*   **(Cloud Endpoints)** Deprecated support for uploading uncompiled .proto files with `gcloud
  endpoints services deploy`. Support will be removed in a future release.


### App Engine

* Fixed a rare, intermittent bug where deployments would fail with an error
  message about "copying files to App Engine".

* Updated the Python SDK to version 1.9.69.
  Please visit the following release notes for details:
  https://cloud.google.com/appengine/docs/python/release-notes
* Added [PyTz version 2017.3](https://pypi.python.org/pypi/pytz/2017.3) to the
  built-in third-party libraries.

### BigQuery

* Added support for reauth. Reauth allows using two-factor authentication for
  end-user credentials.

### Cloud DNS

* Promoted `gcloud dns managed-zones update` to GA.

### Cloud TPU

* Added `gcloud compute tpus accelerator-types <list|describe>` to beta.

### Compute Engine

* Promoted the `--region` flag of `gcloud compute disks` and related commands to beta
* Updated `gcloud compute instances create` command to support
  blank disk creation.
* Modified `gcloud compute sign-url` to accept HTTP URLs in addition to HTTPS URLs
  for signing.
* Promoted the following Cloud CDN Signed URL commands to beta:
    *   `gcloud beta compute sign-url`
    *   `gcloud beta compute backend-buckets add-signed-url-key`
    *   `gcloud beta compute backend-buckets delete-signed-url-key`
    *   `gcloud beta compute backend-services add-signed-url-key`
    *   `gcloud beta compute backend-services delete-signed-url-key`
* Promoted `--signed-url-cache-max-age` flag to beta in the following commands:
    *   `gcloud beta compute backend-buckets create`
    *   `gcloud beta compute backend-buckets update`
    *   `gcloud beta compute backend-services create`
    *   `gcloud beta compute backend-services update`

### Firebase Test Lab

* Added `--other-files` flag to `gcloud beta firebase test android run` to support running tests with non-OBB files pushed to device.

### Kubernetes Engine

* Added `gcloud alpha container subnets list-usable` command for listing subnets
  usable for creating clusters in Google Kubernetes Engine.
* Fixed `--node-locations` of `gcloud containers clusters create` to correctly
  specify what node-pools should be created during the creation of a cluster.


Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 197.0.0 (2018-04-11)

### Breaking Changes

*   **(Cloud Bigtable)** Removed deprecated `--instance-type` flag for `gcloud beta bigtable instances
  update`. Use `gcloud beta bigtable instances upgrade` instead.
*   **(Cloud Bigtable)** Removed deprecated `--description` flag from `gcloud beta bigtable instances
  <create|update>`. Use `--display-name` instead.
*   **(Kubernetes Engine)** Added warning that the default value of `--enable-autorepair` will change for
  `container <clusters|node-pools> create` commands. Use
  `--[no-]enable-autorepair` flag  to suppress this warning.


### App Engine


* Updated the Python SDK to version 1.9.68.
  Please visit the following release notes for details:
  https://cloud.google.com/appengine/docs/python/release-notes

### App Engine Flexible Environment

* Added deprecation warning in `gcloud app deploy` for apps on the App Engine
flexible environment using Python version 3.4. For more information about this
deprecation, see
<https://cloud.google.com/appengine/docs/deprecations/python34>.

### Cloud DNS

* Promoted `--labels` flag of `gcloud dns managed-zones create` to GA.

### Cloud Endpoints

* Changed `gcloud services list` to sort by name by default.

### Cloud TPU

* Added gcloud compute tpus <reimage|start|stop> commands to beta.

### Compute Engine

* Promoted `--network-tier` flag of `gcloud compute <addresses|forwarding-rules> create` to beta.
* Promoted `--default-network-tier` flag of `gcloud compute project-info update` to beta.
* Promoted `--network-tier` flag of `gcloud compute instances <add-access-config|create|create-with-container>` to beta.
* Promoted `--network-tier` flag of `gcloud compute instance-templates <create|create-with-container>` to beta.

### Container Registry

* Updated  `auth configure-docker` to work even when `docker` is not installed
  or cannot be found on the system PATH. This is primarily useful for Bazel
  `rules_docker` users.

### Firebase Test Lab

* Added `--additional-apks` flag to `gcloud beta firebase test android run` to support running tests with additionally installed APKs.

### Vision API

* Added '--include-geo-results' flag to `beta ml vision detect-web`.
* Added `--model-version` flag to `beta ml vision` commands.


Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 196.0.0 (2018-04-04)

### Breaking Changes

*   **(Compute Engine)** Renamed the `--no-translate` flag of `gcloud compute images import` to
  `--data-disk`.
*   **(Docker)** `gcloud docker` will not be supported for Docker client versions above 18.03.
  Please use `gcloud auth configure-docker` to configure `docker` to use
  `gcloud` as a credential helper; then, use `docker` as you would for non-GCR
  registries, e.g. `docker pull gcr.io/project-id/my-image`.
    *   See: [https://cloud.google.com/container-registry/docs/support/deprecation-notices#gcloud-docker](https://cloud.google.com/container-registry/docs/support/deprecation-notices#gcloud-docker)
*   **(Kubernetes Engine)** Modified the default value of deprecated property `container/use_v1_api`,
  whose alias is `container/use_v1_api_client`, from `true` to `false`.


### Cloud DNS

* Promoted the following DNSSEC flags of `gcloud dns managed-zones` to GA:
    * `--denial-of-existence`
    * `--dnssec-state`
    * `--ksk-algorithm`
    * `--ksk-key-length`
    * `--zsk-algorithm`
    * `--zsk-key-length`

### Cloud Interconnect

*   Promoted interconnects attachments partner related commands to beta.

### Cloud TPU

* Added `gcloud compute tpus versions <list|describe>` to beta.
* Added `gcloud compute tpus locations <list|describe>` to beta.

### Cloud Tools For PowerShell

*   Updated Cloud Tools for PowerShell to version 1.0.1.7.
    *   Fixed a bug where `Get-GceMetaData` failed when called twice.

### Compute Engine

* Promoted `gcloud compute images import` to GA.
* Promoted the following to GA:
    *  `gcloud compute instances network-interfaces update`
    *  `--add-secondary-ranges` and `--remove-secondary-ranges` flags of
       `gcloud compute networks subnets update`
* Promoted `gcloud compute instances simulate-maintenance-event` to beta.
* Added three flags (`--prefix-length`, `--purpose` and `--network`) to `gcloud
  compute addresses create` in alpha to support reserving IP range from virtual
  network for peering.
* Promoted `--enable-flow-logs` flag of
  `gcloud compute networks subnets <create|update>` to beta.
*   Promoted SSL policies support to GA.
    *   Promoted the following commands to GA:
        *   `compute ssl-policies create`
        *   `compute ssl-policies describe`
        *   `compute ssl-policies list`
        *   `compute ssl-policies update`
        *   `compute ssl-policies delete`
        *   `compute ssl-policies list-available-features`
    *   Promoted `--ssl-policy` flag of `compute
        <target-https-proxies|target-ssl-proxies> create` to GA.
    *   Promoted `--ssl-policy` and `--clear-ssl-policy` flags of
        `compute <target-https-proxies|target-ssl-proxies> update` to GA.
* Promoted `--custom-request-headers` and `--no-custom-request-headers` flags of
  `gcloud compute backend-services <create|update>` to beta.

### Container Registry

* Promoted `gcloud auth configure-docker` to GA.
* Modified `container images add-tag` to allow the specification of multiple destination tags.

### Kubernetes Engine

* Restored `container/use_client_certificate` option functionality. It was
  accidentally removed in the previous release.


Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 195.0.0 (2018-03-28)

### Breaking Changes

*   **(Kubernetes Engine)** Fixed issue where `--service-account` flag did not add `userinfo.email` scope
  in `gcloud container`.


### App Engine

* Updated the Go SDK to version 1.9.64.
* Updated `go-app-stager` to use Go version 1.10 for staging App Engine Flexible apps with `runtime: go` in app.yaml.

### Cloud Dataproc

* Added `PREEMPTIBLE_WORKER_COUNT` to `gcloud dataproc clusters list`.
* Removed unnecessary zone flag from `dataproc workflow-templates create`.

### Cloud Endpoints

* Updated the `gcloud endpoints services deploy` command to recognize files
  ending in `.proto.bin` as protobuf binary descriptor files, improving
  interoperability with [Bazel](https://bazel.build/)'s
  [`proto_library`](https://docs.bazel.build/versions/master/be/protocol-buffer.html#proto_library)
  rule which outputs protobuf descriptors with this extension.

### Cloud Machine Learning Engine

*   Added `--python-version` flag to `gcloud beta ml-engine versions create`.

### Cloud SQL

* Promoted `--availability-type` of `gcloud sql instances <create|patch>` to GA.

### Compute Engine

* Added support for internationalized domain names to `alpha ssl-certificates`.
* Promoted `--source-instance-template` flag of `gcloud compute instances
  create` command to GA.
* Promoted `gcloud compute images export` to GA.
*   Promoted QUIC support to beta
    *   Promoted `--quic-override` flag of `compute target-https-proxies
        <create|update>` to beta.


## 194.0.0 (2018-03-21)

### Breaking Changes

* Removed `--disable-addons` from `gcloud container clusters create`.


### Cloud Machine Learning Engine

*   Added `--python-version` flag to `gcloud ml-engine jobs submit training`.

### Compute Engine

* Added `--disk-scope` flag to `detach-disk` operation in alpha.
* Promoted `gcloud compute networks subnets list-usable` to beta.
* Promoted `--guest-os-features` flag of `gcloud compute disks create` to GA.
  This flag allows create disks with additional specified GuestOS features.
* Removed `gcloud compute networks switch-mode`. Please use `gcloud compute
  networks update --switch-to-custom-mode` instead.
* Removed `--mode` flag from `gcloud compute networks create`. Please use
  `--subnet-mode` instead.
* Promoted `gcloud compute images export` to beta.


## 193.0.0 (2018-03-14)

### Breaking Changes

* (REMOVED) Removed `gcloud sql instances set-root-password` command.
* (MODIFIED) Changed default scopes for Kubernetes 1.10 when creating clusters
  or node pools: `compute-rw` and `devstorage-ro` are no longer always added.
  (This is the default behavior for all Kubernetes versions for alpha and beta
  tracks or if `container/new_scopes_behavior` property is set to true.) The
  version of Kubernetes does not affect the behavior of
  `--[no-]enable-cloud-endpoints`.


### App Engine

* Show server side warnings to the user.

### BigQuery

* Added DEFLATE and SNAPPY compression types for Avro exports.
* Added flag 'require\_partition\_filter' for creating and updating partitioned
  tables. This will require a partition filter for any queries over the table.
* Added flags to filter jobs based on creation time when running `bq ls -j`:
  'min\_creation\_time' and 'max\_creation\_time'.

### Cloud Dataproc

* Added `get-iam-policy` and `set-iam-policy` commands to the
  `gcloud beta dataproc jobs`, `gcloud beta dataproc operations`, and
  `gcloud beta dataproc workflow-templates` command groups.

### Cloud Machine Learning Engine

* Added `gcloud alpha ml-engine locations` command group.


### Cloud Tools For PowerShell

*   Updated Cloud Tools for PowerShell to version 1.0.1.6.
    *   Added `region` support for Google Compute Engine Managed Instance cmdlets.

### Compute Engine

* Added `rhel-sap-cloud` project to the default public image list.
* Promoted Flexible Route Advertisement commands and flags to GA:
    *  `gcloud compute routers update`
    *  `--advertisement-mode`, `--set-advertisement-groups`,
       `--set-advertisement-ranges` in `gcloud compute routers create` and
       `gcloud compute routers add-bgp-peer`
    *  `--advertisement-mode`, `--set-advertisement-groups`,
       ``--set-advertisement-ranges`, `--add-advertisement-groups`,
       `--add-advertisement-ranges`, `--remove-advertisement-groups`,
       `--remove-advertisement-ranges` in
       `gcloud compute routers update-bgp-peer`
* Promoted `--source-snapshot` flag of `gcloud compute images create` command to
  GA. This flag allows creating images from snapshots.

### Deployment Manager

*  Added `--create-policy` to `gcloud <alpha|beta> deployment-manager
   deployments create`.
*  Added the create-policy CREATE to Deployment Manager alpha and beta tracks.


### Firebase Test Lab

* Added `--robo-script` flag to `gcloud beta firebase test android run` to support running a Robo test with a Robo Script.


## 192.0.0 (2018-03-07)

### Breaking Changes

* **(REMOVED)** Removed the deprecated `--port` flag from
  `gcloud compute backend-services`. Use `--port-name` instead.
* **(REMOVED)** Removed `gcloud compute images translate`. The functionality of this command
  is now a part of the `gcloud compute images import` command.
* **(MODIFIED)** Changed the flags used with `gcloud compute images import`. This command now
  requires the user to specify either the `--os` or `--no-translate` flag.


### App Engine


* Updated the Java SDK to version 1.9.63.
  Please visit the following release notes for details:
  [https://cloud.google.com/appengine/docs/java/release-notes](https://cloud.google.com/appengine/docs/java/release-notes)

### Compute Engine

* Promoted `gcloud compute images import` to beta; removed `gcloud alpha compute
  images translate`. The translate command was combined with the import command.
* Added `--shielded-vm-integrity-monitoring` flag to
  `gcloud compute instance-templates create` in alpha to support the
  configuration of shielded VMs.
* Added `--shielded-vm-learn-integrity-policy` flag to
  `gcloud compute instance update` in alpha to support configuration of the
  shielded VM integrity policy.
* Modified `gcloud compute sign-url` to accept HTTP URLs in addition to HTTPS URLs
  for signing.
* Added support for managed ssl certificates to `gcloud alpha compute
  ssl-certificates`

### Container Registry

* Fixed a bug with `auth configure-docker` when `~/.docker` doesn't exist.

### Kubernetes Engine

* Added `--private-cluster` flag to enable PrivateCluster creation:
  `gcloud beta container clusters create --private-cluster --master-ipv4-cidr <CIDR>
* Added `--workload-metadata-from-node` flag to `gcloud beta container
  <clusters|node-pools> create` to allow enabling metadata concealment on
  clusters and node pools.  See
  [https://cloud.google.com/kubernetes-engine/docs/how-to/metadata-proxy](https://cloud.google.com/kubernetes-engine/docs/how-to/metadata-proxy)
  for more information.  This feature is scheduled to be deprecated in the
  future and later removed.


## 191.0.0 (2018-02-28)

### Breaking Changes

* **(DEPRECATED)** Deprecated `--instance-type` flag for `gcloud beta bigtable
  instances update`. Use `gcloud beta bigtable instances upgrade` instead.
* **(DEPRECATED)** Renamed the `--description` flag to `--display-name` for
  `gcloud beta bigtable instances <create|update>`.
* **(MODIFIED)** The behavior of `--trigger-bucket` flag for
   `gcloud functions deploy` has changed and now corresponds to the new
   `object.finalize` event on file creation. To get the legacy behavior, use the
   `--trigger-event` and `--trigger-resource` flags  e.g.
   gcloud functions deploy --trigger-event \
   providers/cloud.storage/eventTypes/object.change \
   --trigger-resource <your_bucket_name>
* **(MODIFIED)** The schema for pub/sub events has changed. `eventId`,
  `timestamp`, `resource`, and `eventType` have all been moved inside the
  context property e.g., context.timestamp. All functions deployed using
  `--trigger-topic` flag will use the new schema. To get the legacy behavior,
  use the `--trigger-event` and `--trigger-resource` flags e.g.
  gcloud functions deploy --trigger-event \
  providers/cloud.pubsub/eventTypes/topic.publish \
  --trigger-resource <your_topic_name>
* Please see https://cloud.google.com/storage/docs/pubsub-notifications for more
  information on storage event types.
* **(REMOVED)** Removed `functions/use_new_pubsub_trigger` and
  `functions/use_new_object_trigger` properties.
* Deprecated `gcloud sql instances export`. Use `gcloud sql export sql` instead.
* Deprecated `gcloud sql instances import`. Use `gcloud sql import sql` instead.
* Region is now inferred from `--gce-zone` flag during `gcloud sql instances
  create` calls, and will override any value set with `--region`.
*  **(REMOVED)** Removed the deprecated `--port` flag from
   `gcloud compute backend-services`. Use `--port-name` instead.
* (DEPRECATED) Deprecated `--additional-zones` (replaced by `--node-locations`)


### App Engine

* The Python SSL 2.7 library will be decommissioned on 2 April 2018. After this
date, apps will be blocked from deploying until you specify the SSL library
(latest) or (2.7.11).

* Updated the Go SDK to version 1.9.63.
  Please visit the following release notes for details:
  https://cloud.google.com/appengine/docs/go/release-notes

### Cloud Bigtable

* Added `gcloud beta bigtable instances upgrade` command which upgrades
  an existing development instance to a production instance.

### Cloud Datastore

* Promoted `gcloud datastore import` and `gcloud datastore export` to GA.

### Cloud Machine Learning Engine

* Added `--framework` flag to `gcloud ml-engine versions create` to specify
  the machine learning framework (TensorFlow, scikit-learn, or XGboost) for ML
  Engine versions.

### Cloud SQL

* Promoted `gcloud sql export` to GA.
* Promoted `gcloud sql import` to GA.
* Added warnings when calling `gcloud sql instances create` with both the
  `--region` and `--gce-zone` flags, or with neither. These flags will become
  mutually exclusive, with exactly one being required for create calls.

### Container Engine

* Added `container/use_v1_api_client` property as an alias of `container/use_v1_api`.
  `container/use_v1_api` is still supported.

### Kubernetes Engine

* Added `--enable-pod-security-policy` flag to enable PodSecurityPolicy enforcement in clusters:
  `gcloud <alpha|beta> container clusters <create|update> --enable-pod-security-policy`

### Stackdriver Debugger

* Changed `gcloud beta source upload` command to use the `.gcloudignore` file if
  present. If not present and `.gitignore` is, `.gitignore` will still be used.
  See `gcloud topic gcloudignore` to learn more.


## 190.0.1 (2018-02-22)

*  Hotfix for UnicodeDecodeError issue affecting logging.


## 190.0.0 (2018-02-21)

### Breaking Changes

* The `--class` and `--jar` flags for the `hadoop` and `spark` commands in
  `gcloud dataproc jobs submit` are now mutually exclusive. The previous usage
  had been deprecated for more than a year.
*  **(MODIFIED)** Soon changing the default event schema returned by Cloud
   Functions with a pub/sub trigger(e.g. `--trigger-topic`). The `eventId`,
   `timestamp`, `eventType`, and `resource` properties will all be moved into
   the `event.context` property.
   *   To opt-in to the new behavior early, run
       `gcloud config set functions/use_new_pubsub_trigger True`.
   *   To restore old behavior, run
       `gcloud config set functions/use_new_pubsub_trigger False` or use
       the `--trigger-event` flag e.g. `gcloud functions deploy --trigger-
       event providers/cloud.pubsub/eventTypes/topic.publish \
       --trigger-resource <TOPIC_NAME>`
   *   Please see
       https://cloud.google.com/functions/docs/writing/background#event_parameter
       for more information on the new schema.
* In alpha and beta:
  * Removed `iot <configs|credentials>` command groups. Please use
    `iot devices <configs|credentials>` instead.
  * Removed the `--enable-device` flag from `iot devices <create|update>`. Please
    use `--blocked` instead.
  * Removed the `--pubsub-topic` flag and deprecated the `--event-pubsub-topic`
    flag from `iot registries <create|update>`. Please use the
    `--event-notification-config` flag instead.
*  **(REMOVED)** Removed `NAME` and `--regexp` args from
   `compute target-ssl-proxies list`. Please use the `--filter` flag instead.
* Added the `container/use_v1_api` property, which replaces the
  `container/use_v1_api_client` property. If true, all gcloud Kubernetes Engine
  commands (regardless of release track) will use the v1 API; otherwise,
  gcloud beta track commands will use v1beta1 API and gcloud alpha track
  commands will use v1alpha1 API. By default, it is set to true. The default
  will be changed to false by the end of March.


### App Engine


* Updated the Python SDK to version 1.9.67.
  Please visit the following release notes for details:
  https://cloud.google.com/appengine/docs/python/release-notes
* `gcloud app deploy` can now deploy App Engine Java Standard apps, by providing
  the path to appengine-web.xml.
* Staging is now supported in appengine-web.xml. Information on staging tags is
  available in the [appengine-web.xml reference](https://cloud.google.com/appengine/docs/standard/java/config/appref).

### Cloud Datalab

* Updated the `datalab` component to the 20180213 release.
  Released changes are documented in its tracking issue at
    [https://github.com/googledatalab/datalab/issues/1959](https://github.com/googledatalab/datalab/issues/1959).

### Cloud Dataproc

* Added `--image` flag to `gcloud beta dataproc clusters` and `gcloud beta
  dataproc workflow-templates`.

### Cloud IoT

* Promoted `gcloud iot` commands to GA.

### Cloud Machine Learning Engine

* Added `--description` flag to `gcloud <models|versions> <create|update>`
  to manage model and version descriptions, respectively.

### Cloud SDK

* Modified `--log-http` to redact oauth tokens by default.

### Cloud SQL

* Added `--database` flag to `gcloud beta sql connect`.
* Change `gcloud sql instances list` default table format REGION column to
  LOCATION, containing either the gceZone if defined or the region.

### Compute Engine

* Promoted `public-ptr` and `public-ptr-domain` flags of
  `gcloud compute instances <create|add-access-config|update-access-config>` to
  GA. These flags allow setting up the PTR record for the external IPs of
  Compute Engine instances.
* Added `--shielded-vm-secure-boot` and `--shielded-vm-vtpm` flags to
  `gcloud compute instance-templates create` in alpha to support the
  configuration of shielded VMs.
* Added `--enable-flow-logs` flag to `gcloud compute networks subnets create`
  and `gcloud compute networks subnets update` to toggle between enabling and
  disabling flow logs for the subnet.
* Changed `gcloud alpha compute images vulnerabilities list` to display the
  image name instead of image id to match images command group usage.
* Promoted `--create-disk` flag of `gcloud compute instances create` to beta.
  These flags allow creating new disks during instance creation.
* Modified `gcloud compute machine-types list` to filter out OBSOLETE types by
  default. Specify a `--filter`=... flag, or `--filter=""` to list all types.

### Container Builder

* Modified `gcloud container builds submit` such that if no source is specified
  and the `--no-source` flag is omitted, the current working directory will be
  used.

### Container Engine

* `gcloud container clusters list` changed to display `initialNodeCount` in the
  *NUM_NODES* column if `currentNodeCount` is undefined. This shows a usable
  value during upgrading.
* The `--region` flag is now available in all 'gcloud beta|alpha container' commands.

### Kubernetes Engine

* Added `--issue-client-certificate` to `gcloud container clusters create` in
  GA. This allows users to create clusters without global admin key pair (using
  `--no-issue-client-certificate`) to improve security.


## 189.0.0 (2018-02-14)

### Breaking Changes

* **(REMOVED)** Removed the `--ssl-certificate` flag from `gcloud compute <target-https-proxies|target-ssl-proxies> <create|update>`. Use `--ssl-certificates` instead.


### App Engine

* Updated the Java SDK to version 1.9.62.
  Please visit the following release notes for details:
  https://cloud.google.com/appengine/docs/java/release-notes
  * Fixed the [issue with missing QuickStartGenerator class](https://issuetracker.google.com/issues/72808542)
* Changed `gcloud app deploy` to use a new runtime build pipeline to deploy apps for
  Go (in the Flexible Environment). This enables more robust and flexible
  deployments in some cases. To revert to the legacy builder, run
  `gcloud config set app/use_runtime_builders false` from the command line.

### BigQuery

* Added experimental support for import of ORC files into BigQuery.
* Added Cloud KMS key rotating for customer-managed encryption key protected
  BigQuery tables.
* Added `--location` flag to specify the geographic location in which BigQuery
  jobs will run. No changes are required for commands in the existing US and EU
  regions.

### Cloud Datalab

* Updated the `datalab` component to the 20180206 release.
  Released changes are documented in its tracking issue at
  [https://github.com/googledatalab/datalab/issues/1945](https://github.com/googledatalab/datalab/issues/1945).

### Cloud Datastore Emulator

*   Released Cloud Datastore Emulator version 1.4.1.
    *   Recommended: Use the health check endpoint to confirm
        emulator startup instead of relying on the "Dev App Server is now
        running." message.
    *   Fixed issue where the emulator server would close HTTP connections
        before shutting down, which was a problem for /shutdown. This issue
        can be tracked at [https://github.com/GoogleCloudPlatform/google-cloud-datastore/issues/188](https://github.com/GoogleCloudPlatform/google-cloud-datastore/issues/188).

### Compute Engine

* Modified the preview field to be optional when importing using
  `gcloud compute security-policies import` or
  `gcloud compute security-policies create`.

### Container Engine

* Promoted `--cluster-secondary-range-name`, `--create-subnetwork`,
  `--enable-autorepair`, `--enable-ip-alias`, `--enable-kubernetes-alpha`,
  `--enable-legacy-authorization`, `--enable-network-policy`, `--labels`,
  `--local-ssd-count`, `--maintenance-window`,
  `--enable-master-authorized-networks`, `--master-authorized-networks`,
  `--min-cpu-platform`, `--node-locations`, `--node-taints`, `--node-version`,
  `--preemptible`, `--service-account`, `--services-ipv4-cidr`,
  `--services-secondary-range-name` of `gcloud container clusters create` to GA.

* Promoted `--complete-ip-rotation`, `--enable-legacy-authorization`,
  `--enable-master-authorized-networks`, `--enable-network-policy`,
  `--logging-service`, `--maintenance-window`, `--remove-labels`,
  `--start-ip-rotation`, `--update-labels`, `--node-locations`,
  `--master-authorized-networks` of `gcloud container clusters update` to GA.

* Promoted `--enable-autorepair`, `--local-ssd-count`, `--min-cpu-platform`,
  `--node-taints`, `--preemptible`, `--node-version` of
  `gcloud container node-pools create` to GA.

* Promoted `--enable-autorepair` of `gcloud container node-pools update` to GA.


## 188.0.1 (2018-02-08)

*  Hotfix for https://issuetracker.google.com/73044966 affecting Cloud SDK
   installations in environments with inconsistent access to the Compute Engine
   metadata server.


## 188.0.0 (2018-02-07)

### Breaking Changes

* **(REMOVED)** Removed deprecated `gcloud service-management`. Use
  `gcloud endpoints` and `gcloud services` instead.
*  **(MODIFIED)** The default trigger event behavior for `--trigger-bucket` flag
    on the `gcloud functions deploy` command will soon change.
    `google.storage.object.finalize` will replace
    `providers/cloud.storage/eventTypes/object.change` as default trigger event.
    To opt-in to the new behavior early, run
    `gcloud config set functions/use_new_object_trigger True`.


### Cloud SDK

* Added `gcloud topic command-conventions` for details on command line
  conventions and processing.

### Compute Engine

* Promoted `gcloud compute security-policies rules` to beta.
* Added `--file-name` and `--file-format` flags to
  `gcloud compute security-policies create`. These flags allow creating security
  policies from predefined templates by importing from the specified file.
* Modified the default file format for `gcloud compute security-policies import`
  and `gcloud compute security-policies export` from json to yaml.

### Container Builder

* Fixed issue where a `.gcloudignore` entry matching "." caused `gcloud
  container builds submit` to not upload any files.

### Firebase Test Lab

* Added default`as a possible device orientation. When orientation is
  `default`, the most appropriate orientation for your app is picked.
   Usually, this is any app-specified orientation for the main activity or
  `portrait`, if none is specified in the app manifest.

### Identity and Access Management

*   **(MODIFIED)** Promoted `gcloud beta iam roles`,
    `gcloud beta iam list-testable-permissions` to GA.

### Miscellaneous

* Updated the Pubsub Emulator
  * Pubsub emulator now spams the console less.
  * Pubsub emulator properly sets the default value for Subscription.message_retention_duration.


Subscribe to these release notes at [https://groups.google.com/forum/#!forum/google-cloud-sdk-announce](https://groups.google.com/forum/#!forum/google-cloud-sdk-announce).


## 187.0.0 (2018-01-31)

### App Engine


* Updated the Java SDK to version 1.9.61.
  Please visit the following release notes for details:
  [https://cloud.google.com/appengine/docs/java/release-notes](https://cloud.google.com/appengine/docs/java/release-notes)

### App Engine Flexible Environment

* Added `--use-container-optimized-os` flag to `gcloud alpha|beta app update` to
  enable [Container-Optimized OS](https://cloud.google.com/container-optimized-os/docs/)
  as Flex VM base image by default on new deployments.

### Cloud DNS

*   Added Cloud labels flags to `gcloud beta managed-zones <create|update>`
    commands.

### Cloud Interconnect

* Promoted support for labels on interconnects to beta.

### Cloud Pub/Sub

* Added `gcloud alpha pubsub snapshots describe` command.

### Cloud TPU

* Promoted `gcloud compute tpus` to beta.

### Compute Engine

* Promoted `gcloud compute target-vpn-gateways update` and `gcloud compute
vpn-tunnels update` to beta. These commands allow adding/modifying/clearing
labels.
* Promoted `stackdriver-metric` flag family of `gcloud compute instance-groups
  managed set-autoscaling` to beta. These flags allow setting up per-group
  autoscaling and metric filtering, as well as provide an improved interface to
  the existing per-instance autoscaling.
* Promoted `--source-snapshot` flag of `gcloud compute images create` command to
  beta. This flag allows creating images from snapshots.
* Promoted `--guest-os-features` flag of `gcloud compute disks create` to beta.
  This flag allows create disks with additional specified GuestOS features.
* Promoted `--licenses` flag of `gcloud compute disks create` to GA.
  This flag allows create disks with additional specified licenses.

### Container Builder

* Changed `gcloud container builds submit` command to no longer create a
  `.gcloudignore` file on disk. Git files are still ignored by default, see
  `gcloud topic gcloudignore` to learn more.

### Container Engine

* Promoted `--accelerator` flag of `gcloud container clusters create` and `gcloud container node-pools create` to beta.

### Container Registry

* Removed public read-only endpoints from default registries used by
  `gcloud docker` and `docker-credential-gcloud` for authentication.

### Kubernetes Engine

* Fixed an issue causing relative `KUBECONFIG` paths to fail when used with the
  `gcloud container clusters get-credentials` command.

### Miscellaneous

* Fixed crash when attempting to use a SOCKS proxy [https://issuetracker.google.com/72407295](https://issuetracker.google.com/72407295).


## 186.0.0 (2018-01-24)

### Breaking Changes

* **(REMOVED)** Removed support for the format `--scopes=[ACCOUNT=]SCOPE,[[ACCOUNT=]SCOPE,…]]` in `gcloud compute instances <create|create-with-container>` and `gcloud compute instance-templates <create|create-with-container>`. Please use `--scopes=[SCOPE, …]` and `--service-account=ACCOUNT` instead.

*   **(MODIFIED)** Added cautionary 'y/n' prompts to
    `gcloud beta iam roles create`, `gcloud beta iam roles update`, and
    `gcloud beta iam roles copy` commands when using permissions with `TESTING`
    `customRolesSupportLevel`. The prompt needs to be answered to finish the
    request. Specify `--quiet` to prevent prompting confirming intent.


### Cloud Datalab

* Updated the `datalab` component to the 20180119 release.

  Released changes are documented in its tracking issue at
  [https://github.com/googledatalab/datalab/issues/1921](https://github.com/googledatalab/datalab/issues/1921).

### Cloud Datastore Emulator

*   Released Cloud Datastore Emulator version 1.4.0.
    *   The emulator now returns error codes that match the Cloud Datastore
        service for two scenarios: inserts of entities that already exist and
        updates to ones that don't.

### Cloud Functions

* Modified behaviour of `gcloud beta functions deploy` when
  re-deploying existing function without --source flag. `beta functions deploy`
  will now always upload source code (whether or not --source flag is supplied)
  from current directory if function was previously deployed from local source.

### Cloud SDK

* The `[all-box]` attribute has been added to the table format. It draws a rule
  around all table cells and may be useful for visualizing list data or data
  with embedded newlines. Usage: `--format="table[all-box](...)`
* Added `gcloudignore/enabled` property to allow turning off default
  file-skipping behavior on commands that upload source. Run
  `$ gcloud config set gcloudignore/enabled false` (and see
  `$ gcloud topic gcloudignore` for more details).


## 185.0.0 (2018-01-17)

### Cloud Datalab

* Updated the `datalab` component to the 20180105 release.

  Released changes are documented in its tracking issue at
    [https://github.com/googledatalab/datalab/issues/1892](https://github.com/googledatalab/datalab/issues/1892).

### Compute Engine

*   Promoted `gcloud compute os-login` commands to GA.

*   Promoted SSL policy commands to beta
    *   Promoted `compute ssl-policies` to beta.
    *   Promoted `--ssl-policy` flag in `compute target-https-proxies create`
        and `compute target-ssl-proxies create` to beta.
    *   Promoted `--ssl-policy` and `--clear-ssl-policy` flags in
        `compute target-https-proxies update` and
        `compute target-ssl-proxies update` to beta.

### Container Registry

* Added `staging-k8s.gcr.io` to the default set of registries authenticated by
  `gcloud docker`.

### Kubernetes Engine

* Removed `--disable-addons` flag in gcloud container alpha|beta clusters create.
* Added `--addons` flag to gcloud container clusters create.
* Deprecated `--disable-addons` flag in gcloud container clusters create.


## 184.0.0 (2018-01-10)

### Breaking Changes

* (REMOVED) Removed `gcloud ml-engine init-project`. This step is now performed
  automatically.
* Removed `--discard-local-ssd` flag from `gcloud compute instances stop`
  (beta and GA). This flag wasn't working as intended. Stopping an instance
  that uses a local SSD is not currently supported; delete and recreate the
  instance instead.
* (DEPRECATED) Deprecated the `gcloud container` `--[no-]enable-cloud-endpoints`
  flag (removed in alpha and beta).
* (MODIFIED) Added the `gcloud container` `container/new_scopes_behavior`
  property, which will, in a future release, be the default behavior. If set
  to true, `compute-rw`, `devstorage-ro`, `service-control`, and
  `service-management` scopes are no longer added to what is specified in
  `--scopes`, `compute-rw` is no longer inluded in the default scopes, and
  `--[no-]enable-cloud-endpoints` flags are not allowed. This is now the
  default behavior for alpha and beta, so this property has no effect for
  those tracks.

### App Engine

* Fixed an issue where `queue.yaml` deployments failed due to a permission
  error.
* Updated the Python SDK for App Engine to version 1.9.65.
  * Added [SetupTools version 36.6.0](https://pypi.python.org/pypi/setuptools/36.6.0){: target="_blank" class="external"}
    to the built-in third-party libraries.
* Updated Java SDK to version 1.9.60.
  Please visit the following release notes for details:
  https://cloud.google.com/appengine/docs/java/release-notes
* Updated the Go SDK for App Engine to version 1.9.62
  * Includes internal updates for how applications are deployed.
* Fixed inaccurate warning about "module" in `app.yaml` configuration file

### BigQuery

* Fixed issue where page token switch (`-k` or `--page_token`) was not passed to
  `list --transfer_config` command.
* Fixed issue where `list --transfer_run` command filter condition failed due
  to field name error.
* Added time partitioning field to `show` command.

### Cloud Datalab

* Updated the `datalab` component to the 20171222 release.

  Released changes are documented in its tracking issue at
  [https://github.com/googledatalab/datalab/issues/1868](https://github.com/googledatalab/datalab/issues/1868).

### Cloud Dataproc

* Added boot disk type configuration flags to the
  `gcloud beta dataproc clusters create` command:
  * `--master-boot-disk-type`
  * `--worker-boot-disk-type`
  * `--preemptible-worker-boot-disk-type`

### Cloud Machine Learning Engine

* Added `--labels` flag to `gcloud ml-engine <models|versions> create`.
* Added `--labels` flag to `gcloud ml-engine jobs <prediction|training> submit`.
* Added `gcloud ml-engine <models|versions|jobs> update` commands which update
  Cloud Machine Learning resources.

### Cloud Pub/Sub

*   Added `--wait` flag to `gcloud beta pubsub subscriptions pull`.

### Cloud SQL

* Added `--user` flag to `gcloud beta sql import sql` to add support for
  specifying a Postgres user to import with.
* Added `--user` flag to `gcloud beta sql import csv` to add support for
  specifying a Postgres user to import with.

### Container Builder

Added support for `.gcloudignore` files to `container builds submit` command.

### Container Engine

* Updated Google Kubernetes Engine's kubectl from version 1.8.4 to 1.8.6.
* Promoted `--node-version` flag of `gcloud container <clusters|node-pools>
  create` to GA. Clusters/node-pools can now be created with a node version
  different from that of the master, via the `--node-version` flag.

### Container Registry

* Updated `docker-credential-gcr` to v1.4.2:
  * Refreshes the cloud SDK's access token when retrieving it, when configured
    to use `gcloud` as a token source.


## 183.0.0 (2017-12-13)

### Breaking Changes

* Modified the default output for `gcloud beta logging metrics list` to display
  in YAML format. To view metrics in the previous table format, use
  `gcloud beta logging metrics list --format
  "table(name, description, filter)"`.
* Deprecated the `gcloud alpha source captures` group. Please see the `gcloud
  debug source upload` command.
    * Made 'gke-default' the default for --scopes in `gcloud container
      [clusters|node-pools] create`.  It includes storage-ro, logging-write,
      monitoring, service-control, service-management, and trace.
    * Fixed issue in `gcloud container [clusters|node-pools] create` where, if
      --scopes included cloud endpoints scopes and --no-enable-cloud-endpoints
      was also specified, the cloud endpoints scopes were still included.  They
      are now filtered out.
* **(MODIFIED)** Modified `gcloud alpha deployment-manager deployments
  <create|update|describe>` and `gcloud alpha deployment-manager resources list`
  commands to show the 'RUNTIME_POLICIES' instead of 'INTENT' of the resources
  under deployment that have not been previewed.


### App Engine

*  Updated App Engine Python components to 1.9.64.
   Please visit the following release notes for details:
   <https://cloud.google.com/appengine/docs/python/release-notes>

### Cloud Dataproc

* Promoted `--num-masters` flag for Dataproc Cluster High Availability mode
  in the `gcloud dataproc clusters create` command to GA.
* Promoted `--graceful-decommission-timeout` flag of `gcloud dataproc clusters
  update` command for Dataproc Graceful Downscale to GA.
* Added `--master-min-cpu-platform` and `--worker-min-cpu-platform` flags to
 `gcloud beta dataproc clusters create

### Cloud Logging

* Added a `--config-from-file` flag to the `gcloud logging metrics create` and
  `update` commands in beta. This flag is mutually exclusive with
  `--description` and `--log-filter` and can be used to configure a new metric
  or update the configuration of a metric.

### Cloud ML Product Search

* Launched ML Product Search (`gcloud ml products`) to ALPHA.

### Compute Engine

  * Added the `gcloud beta compute os-login ssh-keys describe` command, which
    displays the details of an OS Login user profile SSH key.
  * Promoted `--labels` flag of `gcloud compute instance-templates` create to
    GA.
* Added `--configure-disk` flag to beta command
  `compute instance-templates create`.
* Added `gcloud beta compute os-login remove-profile` command which removes
  posix account information for OS Login users.

### Deployment Manager

*  Modified `gcloud alpha deployment-manager deployments
   <create|update|describe>` and 'gcloud alpha deployment-manager
   resources list' commands to show additional 'TO_RUN' or
   'NOT_RUN' intent for action resources under previewed
   deployment.

### Speech API

* Promoted `gcloud ml speech` to GA.

### Stackdriver Debugger

* Added `gcloud beta debug source upload` to replace the `gcloud alpha source
  captures` group.

### Vision API

* Promoted `gcloud ml vision` to GA.


## 182.0.0 (2017-12-06)

### Breaking Changes

* Renamed the `--language` flag to `--language-code` for the
  `gcloud beta ml speech` commands.
* For `gcloud [alpha|beta] container [clusters|node-pools] create`,
  `--service-account` is now mutually exclusive with `--scopes` and
  `--[no-]enable-cloud-endpoints`, and sets the `cloud-platform` scope when
  specified.
* **(REMOVED)** Removed ability to use `--backup-pool` flag without an
  argument in `gcloud compute target-pools set-backup`. Use
  `--no-backup-pool` instead.
* **(REMOVED)** Removed ability to use `--bucket` flag without an argument in
  `gcloud compute project-info set-usage-bucket`. Use `--no-bucket` instead.

### Cloud Video Intelligence API

* Promoted `gcloud ml video` to GA.

### Cloud Natural Language API

* Promoted `gcloud ml language classify-text` to GA.

### Speech API

* Added the `--include-word-time-offsets` flag to the `gcloud beta ml speech`
  commands.

### Google Container Engine

* Regional clusters are in beta. The `--region` flag is now supported in the
  `gcloud beta container clusters` surface.
* Added the `--machine-type` and `--disk-size` flags to the
  `gcloud container builds submit` command.
* Updated Google Container Engine's kubectl from version 1.8.3 to 1.8.4.
* Added `--allow-route-overlap` flag in `gcloud beta container clusters create`
  to allow the provided cluster CIDRs to overlap with some existing routes.

### Google Cloud Bigtable

* Updated the version of `cbt` to 0.2.3. Changes in this version:
  *    Fixed spurious error message for many commands
  *    Added the ability to apply a regex to `read` command

### Google Container Builder

* Updated the version to 0.2.6. Changes in this version:
  *   Added build's timing information: build steps, image pulls and pushes.
  *   Simplified logs package.

### Google Cloud Functions

* The `--stage-bucket` flag of the beta `functions deploy` command is now
  optional, even when deploying from local sources. The command now uploads
  sources to signed URLs generated by the API.

## 181.0.0 (2017-11-30)

* NOTE: This release was hidden and the Cloud SDK was rolled back to version
  180.0.1.

### Breaking Changes

* Promoted `gcloud pubsub` to GA. There are breaking changes in beta.
  * `pubsub subscriptions modify-ack-deadline` has been renamed to
    `pubsub subscriptions modify-message-ack-deadline`.
    * **(BETA - DEPRECATED)** Deprecated `modify-ack-deadline`. It will be
      removed in the future.
  * In `pubsub subscriptions <ack|modify-message-ack-deadline|modify-ack-deadline>`,
    the positional argument `ACK_ID` has been replaced by `--ack-ids`.
    * **(BETA - DEPRECATED)** Deprecated the positional. It will be removed
      in the future.
  * Removed the `--max-messages` flag from `pubsub subscriptions pull`.
    Use the `--limit` flag to achieve the same behavior.
    * **(BETA - DEPRECATED)** Deprecated `--max-messages`. It will be removed
      in the future.
  * Replaced the positional argument `MESSAGE_BODY` with `--message` in
    `pubsub topics publish` .
    * **(BETA - DEPRECATED)** Deprecated the positional. It will be removed
      in the future.
  * Added `pubsub <subscriptions|topics> describe` commands to all
    release tracks.
  * All commands in `pubsub <subscriptions|topics>` now output exactly the
    API response. Extra fields have been removed. See the following for
    output
    documentation: https://cloud.google.com/pubsub/docs/reference/rest/
    * **(BETA)**, this is also the new default behavior. You can set the
      `pubsub/legacy_output` property to get the old output. This will
      eventually be removed.
* **(ALPHA - DEPRECATED)** `gcloud alpha shell` has been renamed
  `gcloud alpha interactive`.

### Google Cloud SDK

* `gcloud alpha interactive` has been added with these features:
  * auto-completion and active help for *gcloud* commands, flags and resource
    arguments
  * auto-completion and active help for *bq*, *gsutil* and *kubectl*
  * support for running non-gcloud commands
  * state preservation across commands: *cd*, *pwd*, local and environment
  variables


### Compute Engine

* Promoted `--source-instance-template` flag of `gcloud compute instances
  create` command to beta.
* Added `--async` flag to `gcloud alpha compute instances suspend`.
  * Added wait polling for synchronous case.
  * Removed zone prompting support.
  * Moved tests to autogen test framework.

### Cloud Machine Learning

* `gcloud beta ml vision suggest-crop` is now available.


### Google App Engine

* Fixed issue where Python 2.7 apps using App Engine managed libraries, such as
  Django and Flask, would result in ImportError when running `dev_appserver.py`.
  Now, `dev_appserver.py` offers to install the `app-engine-python-extras`
  component which contain the missing libraries. Only applies to apps specifying
  the `libraries`-section in app.yaml.


### Google Cloud Dataproc

* Renamed `run` to `instantiate` in `gcloud beta dataproc workflow-templates`
  command group.

### Google Cloud Source Repositories

* Corrected warning message from `gcloud source repos clone` when cloning a
  mirror.


### Google Cloud Deployment Manager

* `deployment-manager deployments create/update --config` no longer accepts
  templates. Please use the `--template` argument.


## 180.0.1 (2017-11-20)

*   Hotfix for `gcloud compute project-info add-metadata/remove-metadata`
    crashes.


## 180.0.0 (2017-11-15)

### Breaking Changes

*   **(REMOVED)** Removed the capability to deploy Endpoints configuration when
    using `gcloud beta app deploy`.

### Google Container Engine

*   Updated Google Container Engine's kubectl from version 1.8.2 to 1.8.3.

### Google Cloud SQL

*   Updated `gcloud sql instances import` to show full source URI.

### Google App Engine

*   Updated components to 1.9.63.
*   Added deprecation warning in `gcloud app deploy` for Python apps using the
    library `ssl 2.7`. For information about this deprecation, see
    <https://cloud.google.com/appengine/docs/deprecations/python-ssl-27>.
*   Fixed issue affecting the Go runtime in which `gcloud app deploy` failed at
    finding dependencies that are not required.
*   Added `--go_debugging` flag to `dev_appserver.py` to enable delve debugging
    for the Go runtime.

### Google Cloud ML

*   Made Google Cloud ML Engine scale tier BASIC_TPU available in gcloud command
    line tool.

### Google Cloud Deployment Manager

*   Updated `gcloud deployment-manger` to use latest public API version.


## 179.0.0 (2017-11-08)

### Breaking Changes

*   **(DEPRECATED)** Deprecated `gcloud service-management` in favor of
    `gcloud endpoints` and `gcloud services`. See help text for details.
*   Removed the `gcloud alpha bio` command group.

### Google Container Engine

*   Added the --enable-basic-auth flag to `gcloud container clusters create`.
*   Added the --username, --enable-basic-auth, and --password flags to
    `gcloud container clusters update`.  These allow a user to enable/disable
    basic auth on an existing cluster or change the username.

### Google Compute Engine

*   Promote these commands to beta:
    *   `gcloud beta compute instance-templates create-with-container`
    *   `gcloud beta compute instances create-with-container`
    *   `gcloud beta compute instances update-container`
*   Added alpha commands for creating, describing, listing, deleting, updating
    SSL policies and listing available SSL policy features:
    *   `gcloud alpha compute ssl-policies create`
    *   `gcloud alpha compute ssl-policies describe`
    *   `gcloud alpha compute ssl-policies list`
    *   `gcloud alpha compute ssl-policies delete`
    *   `gcloud alpha compute ssl-policies update`
    *   `gcloud alpha compute ssl-policies list-available-features`
*   Added alpha commands for attaching SSL policies to Target HTTPS proxies
    and Target SSL proxies:
    *   `gcloud alpha compute target-https-proxies create`
    *   `gcloud alpha compute target-https-proxies update`
    *   `gcloud alpha compute target-ssl-proxies create`
    *   `gcloud alpha compute target-ssl-proxies update`

### Google App Engine

*   Components updated to 1.9.59. Please visit the following release notes for
    details:
    *   Java - https://cloud.google.com/appengine/docs/java/release-notes

### Firebase Test Lab

*   Added Firebase Test Lab support for testing Android apps that include a
    network profile setting. Run tests as follows:

      gcloud firebase test android run \
        --network-profile=LTE  # or LTE-poor, HSPA, etc.

### Cloud Pub/Sub

*  Added the following commands to the `gcloud beta pubsub topics` and `gcloud
   beta pubsub subscriptions` groups, which enable managing IAM policies:
    * `set-iam-policy`
    * `get-iam-policy`
    * `add-iam-policy-binding`
    * `remove-iam-policy-binding`
*  Added labels flags (`--labels`, `--<update|remove>-labels`) to
   `gcloud pubsub <topics|subscriptions|snapshots> <update|create>` in release
   tracks where these commands exist. Use these labels to organize your Google
   Cloud Pub/Sub subscriptions.

### Cloud Machine Learning

*   All `gcloud ml` commands in all release tracks can now be used with standard
    user credentials (no longer requires a service account). For this to work,
    you must have the appropriate ML API enabled on your current gcloud project.


## 178.0.0 (2017-11-01)


### Google App Engine

*   The Java development server for Standard is now available as
    `java_dev_appserver.sh` (`java_dev_appserver.cmd` for Windows). It is
    equivalent to the dev_appserver.sh/cmd from the Java Standalone
    App Engine SDK.

### Google Cloud Datastore Emulator

*   Cloud Datastore Emulator version changed from 1.3 to 1.3.0 for gcloud
    emulator package compatibility, with no other changes.

### Google Compute Engine

*   Added --async flag to gcloud computes instances stop command.
    Added wait polling for synchronous cases.
*   Promoted `compute instance-templates create-with-container`,
   `compute instances create-with-container`, and
   `compute instances update-container` commands to beta.
*   Promoted `--deletion-protection` flag in
    `gcloud compute instances create/update` to GA.
*   Added `source-service-accounts` and `target-service-accounts` in
    `gcloud compute firewall-rules {describe, list, create, update}` commands.

### Google Container Engine

*   Updated Google Container Engine's kubectl from version 1.7.6 to 1.8.2
*   Removed `--wait` flag in `container node-pools delete`.
    Please use `--async` instead.
*   Added warning prompt to be displayed when using
    `gcloud alpha/beta container clusters`, to avoid failure due to incorrect
    configuration.

### Google Cloud SQL

*   `gcloud sql database create` now returns with non-zero exit code on
    database creation failure.
*   Added `beta sql import csv`, to support importing data from CSV files into
    Cloud SQL instances.
*   Added `beta sql import sql`, with the eventual goal of replacing
    `sql instances import`.
*   `gcloud beta sql instances create` and `gcloud beta sql instances patch`
    commands now support the `--availability-type` flag, for use in toggling
    high availability on Postgres instances.

### Google Cloud Spanner

*   Promoted the Spanner Databases Sessions command group to GA.


## 177.0.0 (2017-10-25)

### Breaking Changes

*   **(BETA - DEPRECATED)** The `--include-ignored-file` flag of `gcloud beta
    functions deploy` is now deprecated. Added support for using a
    `.gcloudignore` file instead.
*   The `gcloud pubsub <snapshots|subscriptions|topics> <create|update>` and
    `gcloud pubsub subscriptions update` commands have been updated:
      *   These now throw an exception when any of the API requests fail. The
          exception contains the list of failed requests.
      *   These now only output the resources corresponding to successful
          requests.
      *   The `success` and `reason` fields have been removed from the output of
          these commands.

### Google Cloud Endpoints

*   `gcloud endpoints` and `gcloud services` are now generally available.

### Google App Engine

*   `gcloud app deploy` now uses a new runtime build pipeline to deploy apps for
    Python. This enables more robust and flexible deployments in some cases. To
    revert to the legacy builder, run `gcloud config set
    app/use_runtime_builders false` from the command line.
*   Go 1.8 is now generally available and the default Go runtime.
*   Google App Engine components have been updated to 1.9.62.
    Please visit the following release notes for details:
      *   Python - https://cloud.google.com/appengine/docs/python/release-notes

### Google Compute Engine

*   (ALPHA) Added support to update the default network tier on a Compute Engine
    project: `gcloud alpha compute project-info update --default-network-tier
    DEFAULT_NETWORK_TIER`.

### Google Cloud SQL

*   (BETA) Added `gcloud beta sql export csv` to support exporting data from a
    Cloud SQL instance to a CSV file.
*   (BETA) Added `gcloud beta sql export sql` with the eventual goal of
    replacing `gcloud sql instances export`.

### Google Cloud Storage

*   Updated gsutil component to 4.28

## 176.0.0 (2017-10-18)

### Breaking Changes

*   (DEPRECATED) Deprecated the `switch-mode` command from
    `gcloud compute networks`, replaced by the
    `update --switch-to-custom-subnet-mode` command.
*   The `--force` flag is removed from `gcloud source repos delete`.

### Google Cloud SDK

*   On 64-bit Windows platforms Google Cloud SDK will use 64-bit python version
    2.7.13. Previously it was using 32-bit version. Existing Windows
    installations using Cloud SDK with included python will see their python
    swapped for new version when upgrading to this release.

### Google Compute Engine

*   CPU Platform Selection is now generally available. The `--min-cpu-platform`
    flag can now be used in the following commands to set the minimum desired
    CPU Platform of the virtual machine instance.
    *   `gcloud compute instances create`
    *   `gcloud compute instances update`
    *   `gcloud compute instance-templates create`
*   `gcloud beta compute os-login` commands are now available for using Google
    Compute Engine OS Login.
*   `gcloud compute images create` now has a `--guest-os-features` flag for
    enabling specific OS supported features.
*   Added alpha support for labels for the
    `gcloud compute target-vpn-gateways update` command.
*   Added static internal IP reservation to `gcloud compute addresses create`.
    Users can now:
    *   reserve a specific address and then associate it with a specific
        resource
    *   specify an ephemeral internal IP address for a resource and then promote
        the address

### Google App Engine

*   Components updated to 1.9.58. Please visit the following release notes
    for details:
    *   Java - https://cloud.google.com/appengine/docs/java/release-notes

### Google Container Engine

*   Added the `--node-taints` flag to `gcloud container clusters create` and
    `gcloud container node-pools create` in beta to support Kubernetes taints.

### Firebase Test Lab

*   The `--use-orchestrator` flag for `gcloud firebase test android run` is now
    generally available.

### Google Cloud Spanner

*   The following commands are now available in beta:
    *   `gcloud spanner databases sessions list` (to list active sessions in a
        Spanner database)
    *   `gcloud spanner databases sessions delete` (to delete an active session
        in a Spanner database)

### Google Cloud Dataflow

*   The `--region` flag has been added to all `gcloud dataflow` commands to
    support Dataflow Regional Endpoints.
    *   Most commands will function without the `--region` flag, and will
        continue to default to `us-central1` without the flag.
    *   The `jobs list` command will default to listing jobs from all regions
        unless the `--region` flag is specified, at which point it will only
        query that regional endpoint.
    *   Added a `--staging-location` flag to the `jobs run` command to permit
        running of templates where the template is location-only readable, not
        writeable.

### Google Cloud Container Builder Local Builder

*   Updated container-builder-local to version 0.2.5. This:
    *  Adds a flag to export workspace to host

### Google Cloud Datastore Emulator

*   Updated cloud-datastore-emulator to version 1.3. Cloud Datastore emulator
    now supports ID reservation in the Cloud Datastore V1 API.

## 175.0.0 (2017-10-11)

### Breaking Changes

*   Behavior of `--segments` flag for all `gcloud ml video detect-*` commands
    changed. The flag now accepts a list of duration pair strings
    (e.g. 0:1m40s,3m50s:5m10.232265s) instead of pairs of microseconds.
    Microseconds can still be specified using fractional seconds. For example,
    0.000569s represents 569 microseconds.
*   The `--mode` flag for the `gcloud compute networks create` command has been
    deprecated. Please use the `--subnet-mode` flag instead.
*   The output of the `gcloud container images describe` command has been
    updated to be more consistent with other commands.

### Google Compute Engine

*   `gcloud compute networks update` is now generally available.
*   `--bgp-routing-mode` and `--subnet-mode` flags added to
    `gcloud compute networks create`.
*   Ability to configure reverse DNS (PTR) records for instances through the
    `gcloud beta compute instances create --public-ptr-*` flags and the
    `gcloud beta compute instances update-access-config` command now available.

### Google App Engine

*   `gcloud app firewall-rules` is now generally available.

### Google Cloud Resource Manager

*   `gcloud projects create --folder` is now generally available. This command
    enables creation of projects within folders.

### Google Cloud KMS

*   `gcloud kms update` is now generally available.

### Google Cloud Video Intelligence

*   `gcloud beta ml video detect-explicit-content` is now available.

### Google Cloud Datalab

*   Updated the `datalab` component to the 20171003 release. Changes in that
    release are documented
    [here](https://github.com/googledatalab/datalab/issues/1716).

### Google Cloud Deployment Manager

*   The `--credential` flag for
    `gcloud alpha deployment-manager deployments create/update` commands is now
    available. Using this flag, a custom service account can be provided as the
    deployment credential.

### Google Cloud SDK

*   Nested command line argument groups have been enabled. The groups are
    clearly labelled and indented in `--help` documents. Also, argument group
    conflict error messaging is uniform across all `gcloud` commands.

## 174.0.0 (2017-10-04)

### Google App Engine

*   App Engine components updated to 1.9.61. Please visit the following release
    notes for details:
    https://cloud.google.com/appengine/docs/python/release-notes
*   The App Engine flexible environment now defaults to Python 3.6 when Python
    3 is requested. To revert to Python 3.5, specify `python_version: 3.5` in
    the `runtime_config` element of your
    [`app.yaml` configuration file](https://cloud.google.com/appengine/docs/flexible/python/configuring-your-app-with-app-yaml)
*   The `aspnetcore` runtime is now available using `gcloud app deploy` in the
    GA track. It remains available via the beta track as well. See
    https://cloud.google.com/appengine/docs/flexible/dotnet/ for more
    details.
*   Auto-generated app.yaml for Go under Flexible no longer contains
    `api_version` (which is for the Standard only).

### Google Compute Engine

*   Adding/Removing IP alias ranges are now supported in `gcloud beta compute
    instances network-interfaces update`. Subnetwork secondary ranges can be
    modified using `gcloud beta compute networks subnets update`.
*   Add `gcloud alpha compute sign-url` for generating Cloud CDN Signed URLs.
*   Add *--signed-url-cache-max-age* flag to the following alpha commands
    related to Cloud CDN Signed URL:
    *   `gcloud alpha compute backend-buckets create`
    *   `gcloud alpha compute backend-buckets update`
    *   `gcloud alpha compute backend-services create
    *   `gcloud alpha compute backend-services update`
*   Add alpha commands for adding and deleting Cloud CDN Signed URL keys to
    backend buckets and services:
    *   `gcloud alpha compute backend-buckets add-signed-url-key`
    *   `gcloud alpha compute backend-buckets delete-signed-url-key`
    *   `gcloud alpha compute backend-services add-signed-url-key`
    *   `gcloud alpha compute backend-services delete-signed-url-key`

### Google Cloud Dataproc

*   Added `gcloud beta dataproc workflow-templates` group for managing Dataproc
    Workflow Templates.

## 173.0.0 (2017-09-27)

### Google App Engine

*   Add build tag for Go 1.9 to go-app-stager
*   Fixed build tags when using dev_appserver.py with the Go 1.8 beta

### Google Cloud Dataproc

*    Added `gcloud beta dataproc clusters get-iam-policy` and
     `gcloud beta dataproc clusters set-iam-policy` commands to manage IAM
     permissions on a cluster.

### Google Cloud IOT

*   `gcloud iot` is now in public beta.
*   The --enable-device boolean flag for `beta iot device create/update` is
    now deprecated and renamed to --blocked.
*   Added `--enable-http-config` flag to `beta iot registries create/update`.
*   Added new flag `--state-pubsub-topic` flag to
    `beta iot registries create/update`
*   Added two new key types for
    `iot device` credentials and renamed existing types.
*   Added --metadata[-from-file] flag to `beta iot devices create/update`.
*   Added `beta iot registries credentials` command group and added the
    `--public-key-path` flag to `beta iot registries create`.
*   Added `beta iot devices states list` surface.

### Google Compute Engine

*   Fix validation in `gcloud compute routers update-interface` to disallow
    --mask-length to be specified without --ip-address.
*   Add `--zones` flag to `beta compute instance-groups managed create` command.

### Google Container Engine

*   The `--enable-network-policy` flag is now available in the
    `gcloud beta container clusters update` command. To use this command on an
    existing cluster, first run
    `gcloud beta container clusters update --update-addons network-policy=ENABLED`.
*   Added --maintenance-window flag to `gcloud beta container clusters create`
    and `gcloud beta container clusters update`.
*   Updated Google Container Engine's kubectl from version 1.7.5 to 1.7.6.
*   The `--enable-autoupgrade` flag is now GA, available for
    `gcloud container cluster create`, `gcloud container node-pools create`
    and `gcloud container node-pools update` commands.

### Google Container Registry

*   gcloud auth configure-docker is now in BETA. This is the new preferred
    method to configure gcloud/docker integration.

### Google Cloud Machine Learning Engine

*   Added `--summarize` flag to `gcloud ml-engine jobs describe` command.
    Prints job resource in human readable table format.

### Google Cloud Machine Learning Language

*   `gcloud ml language analyze-entity-sentiment` is now in GA

## 172.0.1 (2017-09-21)

### Google Cloud Service Management

*  Fixing crash in gcloud service-management deploy

## 172.0.0 (2017-09-20)

### Google App Engine

*   `gcloud app update` is now available.
*   `gcloud app deploy` now uses a new runtime build pipeline to deploy apps for
    `runtime: java`. This enables more robust and flexible deployments in some
    cases. Consult the runtime release notes for your language at
    https://cloud.google.com/appengine/docs/flexible/ for more details. To
    revert to the legacy builder, you can set the `app/use_runtime_builders`
    config to `false`.
*   Updated App Engine Java components to version 1.9.56. For more details, see
    the release notes at:
    https://cloud.google.com/appengine/docs/java/release-notes.

### Google Container Registry

*   `gcloud container images describe` is now available.
*   `gcloud alpha container images describe` now has additional functionality
    for whitelisted users.
*   Fixed a timestamp issue in `gcloud container images list-tags`.

### Google Compute Engine

*   Added support for Cloud KMS keys with Disks, Snapshots, Images, and
    Instances.
*   Added the `--autoscaling-config-file` flag to `gcloud beta compute
    instance-groups managed set-autoscaling`.

### Firebase Test Lab

*   Added the `--no-record-video` and `--no-performance-metrics` flags to
    `gcloud firebase test android run`. This supports running tests without
    recording video and/or performance metrics. Disabling these options may
    reduce test post-processing time.

### Google Cloud Service Management
*   Commands in `gcloud service-management` will soon be deprecated.
      *   The preferred commands to list, enable, and disable services are now
          under `gcloud <alpha|beta> services`.
      *   The preferred commands to produce services for consumption are now
          under `gcloud <alpha|beta> endpoints services`.

### Google Cloud SQL

*   Fixed the `--async` flag in `gcloud sql backups delete` to work as expected.

### Google Cloud BigQuery CLI

*   Updated the bq command-line tool to version 2.0.26.
*   Added support for Data Transfer Service commands. You can now do the
    following:
      *   Transfer config: Show, List, Add, Delete, Edit
      *   Transfer run: Show, List, Schedule, Delete
      *   Transfer log: List
*   Added support for customer-managed encryption keys with Cloud KMS. You
    can specify your Cloud KMS crypto key in the following operations:
      *   A query that creates a destination table: `bq query
          --destination_kms_key {key name}`.
      *   A load job that creates a destination table: `bq load
          --destination_kms_key {key name}`.
      *   When creating a new table: `bq mk --destination_kms_key {key name}`.
*   Partitioned tables can now be created using the `query` and `load` commands.
      *   Use the `--time_partitioning_xxx` flags and the `--destination_table`
          flag to write or load data into a new partitioned table.

### Google Cloud Container Builder Local Builder

*   Updated container-builder-local to version 0.2.3. This:
    *  Upgrades server docker to version 17.06.1.
    *  Adds the `--no-source` flag and related tests.
    *  Always pulls the latest `gcr.io/cloud-builders/metadata` container.
    *  Increases the limit on encrypted secrets to 100.


## 171.0.0 (2017-09-13)

### Breaking changes

*   **(MODIFIED)** `beta functions deploy` will set `deployment-tool` label to
    `cli-gcloud`. Manually setting labels starting with "deployment" will no
    longer be allowed.

### Google Cloud SDK

*   Implemented command line TAB completion cache using sqlite. You
    can use the `gcloud meta cache list` command to view the cache.

### Google App Engine

*   Updated App Engine components for Python to version 1.9.60.
    Please visit the release notes for details:
    <https://cloud.google.com/appengine/docs/python/release-notes>.
*   Updated App Engine components for Java to version 1.9.55.
    Please visit the following release notes for details:
    <https://cloud.google.com/appengine/docs/java/release-notes>.
*   Improved client-side traffic split validation in `gcloud app services
    set-traffic`.
*   Promoted `gcloud app ssl-certificates` command group to GA and beta.
*   Promoted `gcloud app domain-mappings` command group to GA and beta.
*   Promoted `gcloud app domains` command group to GA.
*   Promoted `gcloud app update` command to GA.

### Google Cloud Compute Engine

*   Promoted `gcloud compute commitments` command group to GA.

### Google Cloud Source Repositories

*   `gcloud source repos` commands now accept slashes `/` in repository names.

## 170.0.1 (2017-09-08)

### Google Compute Engine

*   Revert a change which inadvertently removed `gcloud compute xpn` commands.

## 170.0.0 (2017-09-06)

### Google Cloud SDK

*   You can now use the \[json-decode\] --format printer attribute to JSON
    decode resource values that are compact JSON encodings.  For example,
    *--format="yaml\[json-decode\]"*.

*   `gcloud init` will now give the choice to enter a project id, create a
    project, or list all projects if a user has a large number of projects.

*   `gcloud components list` now has the `--only-local-state` flag which shows
    only locally installed components.

### Google App Engine

*   A bug in which traffic split exhibited a rounding error has been fixed.

### Google Cloud Bigtable

*   An error with reading the results of Read-Modify-Write operations has been
    fixed.

### Google Cloud Dataproc

*    The flags `--max-age`, `--max-idle`, and `--expiration-time` have been
     added to `gcloud beta dataproc clusters create`.

### Google Cloud Functions

*   The `--update-labels` and `--remove-labels` flags have been added to
    `gcloud beta functions deploy`.

### Google Cloud KMS

*   The `gcloud beta kms keys update` command is new. This command allows users
    to update a key's labels, rotation period, next rotation time, and primary
    version. Effective with this change, use the following commands instead of
    `remove-rotation-schedule`, `set-rotation-schedule`, and
    `set-primary-version`:
      *   Use `gcloud beta kms keys update --remove-rotation-schedule` to remove
      a key's rotation schedule instead of
      `gcloud kms keys remove-rotation-schedule`.
      *   Use
      `gcloud beta kms keys update --next-rotation-time --rotation-period` to
      set the next rotation time and rotation period instead of
      `gcloud kms keys set-rotation-schedule`.
      *   Use `gcloud beta kms keys update --primary-version` to set a key's
      primary version instead of `gcloud kms keys set-primary-version`.

*   The `--labels` argument has been added to `cloud kms keys create`. This
    argument allows users to create labels during key creation. Related to
    labels in Cloud KMS:
      *   Use `gcloud beta kms keys update --update-labels` to modify a key's
      labels.
      *   Use `gcloud beta kms keys update --remove-labels` to remove a key's
      labels.

### Google Compute Engine

*   The `--ssl-certificates` flag in
    `compute target-{https|ssl}-proxies {create|update}` has been promoted to
    GA. The `--ssl-certificate` flag in the same command groups has been
    deprecated. Please use `--ssl-certificates` as an alternative.

*   The hidden `compute diagnose routes` command is now available. It enables
    (trace)routing to/from VMs in Compute Engine.

*   The `gcloud compute shared-vpc` command is now available as an alias of
    `gcloud compute xpn`.

### Google Container Engine

*   Google Container Engine's kubectl version has been updated from 1.7.4 to
    1.7.5.

*   The following flags are now available in `gcloud beta containers create` for
    enabling the use of IP aliases with an existing subnetwork:
    `-enable-ip-alias`, `--cluster-secondary-range-name`,
    `--services-secondary-range-name`.

## 169.0.0 (2017-08-30)

### Breaking Changes

*   *(DEPRECATION)* `gcloud compute networks subnets list` `NAMES`, `--regions`
    and `--regexp` arguments. Use `--filter` instead.

### Google Cloud Functions

*   When deploying an update to a existing function
    `gcloud beta functions deploy` will keep the old trigger by default.
    Specifying trigger is now required only when deploying a new function.

*   Added the `--retry` flag to `gcloud beta functions deploy`.

*   `gcloud beta function deploy` now keeps old field values unless they're
    explicitly overridden.

### Google App Engine

*   `gcloud app deploy` now uses a new runtime build pipeline to deploy apps for
    `runtime: nodejs` and `runtime: ruby`. This enables more robust and flexible
    deployments in some cases. Consult the runtime release notes for your
    language on https://cloud.google.com/appengine/docs/flexible/ for more
    details. To revert to the legacy builder, you can set the
    `app/use_runtime_builders` config to false.

### Google Compute Engine

*   The max metadata value size has been increased to 256 KiB.

### Google Compute Engine (Networking)

*   The `--bgp-routing-mode` flag in `gcloud beta compute networks create` and
    `gcloud beta compute networks update` is now available.

### Google Cloud Datastore

*   Import and export Cloud Datastore data using `gcloud beta datastore import`
    and `gcloud beta datastore export`. For more information see
    https://cloud.google.com/datastore/docs/export-import-entities

*   Manage active imports and exports using `gcloud beta datastore operations`
    commands.

### Google Machine Learning Engine

*   `gcloud alpha ml *` commands now work with user account authentication (in
    addition to service accounts). For this to work, you must have a current
    project set in gcloud's config and you must be a writer or an editor on that
    project.

### Google Container Engine

*   Updated Google Container Engine's kubectl from version 1.7.3 to 1.7.4.

### Google Cloud Datalab

*   Updated the `datalab` component to the 20170818 release. Changes in that
    release are documented in its tracking issue
    [here](https://github.com/googledatalab/datalab/issues/1593).

## 168.0.0 (2017-08-23)

### Breaking Changes

*   Removed support for the deprecated `--instance` flag from
    `gcloud sql operations describe` and `gcloud sql operations wait`;
    removed support for the deprecated `DUE_TIME` argument from
    `gcloud sql backups describe` and the equivalent `--due-time` flag of
    `gcloud sql instance restore_backup`.
*   The `--mode` flag in `gcloud beta compute networks create` and
    `gcloud beta compute networks update` has been renamed to `--subnet-mode`.

### Google Compute Engine

*   The `--ip-version` flag is now available in
    `gcloud compute addresses create` and
    `gcloud compute forwarding_rules create`.
*   IP aliases are now supported in `gcloud compute instances create` and
    `gcloud compute instance-templates create` commands.
*   Subnetwork secondary ranges are now supported in
    `gcloud compute networks subnets create`.
*   Added `--action`, `--rules`, `--direction`, `--destinationRanges`,
    and `--priority` flags to
    `gcloud compute firewall-rules {describe, list, create, update}` commands.
*   **(DEPRECATED)**  Deprecated
    `gcloud alpha compute instances create-from-container`. Use
    `gcloud alpha compute instances create-with-container` instead.
*   **(DEPRECATED)**  Deprecated
    `gcloud alpha compute instance-templates create-from-container`. Use
    `gcloud alpha compute instance-templates create-with-container` instead.
*   **(DEPRECATED)**  Deprecated the `names` and `--regexp` flags from the
    following compute commands. Use `--filter` instead.
      *   `gcloud compute backend-buckets list`
      *   `gcloud compute firewalls list`
      *   `gcloud compute groups list`
      *   `gcloud compute http-health-checks list`
      *   `gcloud compute https-health-checks list`
      *   `gcloud compute images list`
      *   `gcloud compute instance-templates list`
      *   `gcloud compute networks list`
      *   `gcloud compute operations list`
      *   `gcloud compute routes list`
      *   `gcloud compute target-http-proxies list`
      *   `gcloud compute url-maps list`
      *   `gcloud compute users list`
*   **(DEPRECATED)**  Deprecated the `names`, `--regexp`, and `--regions` flags
    from the following compute commands. Use `--filter` instead.
      *   `gcloud compute addresses list`
      *   `gcloud compute backend-services list`
      *   `gcloud compute forwarding-rules list`
*   **(DEPRECATED)**  Deprecated the `names`, `--regexp`, `--zones`, and
    `--regions` flags from the following compute commands. Use `--filter`
    instead.
      *   `gcloud alpha compute disks list`
      *   `gcloud compute instance-groups managed list`

### Google Cloud Logging

*   The `gcloud logging` command group is now available in GA.
    `gcloud beta logging` will be removed in three months' time.

### Google App Engine

*   Added the following commands:
      *   `gcloud beta app firewall-rules create`
      *   `gcloud beta app firewall-rules delete`
      *   `gcloud beta app firewall-rules describe`
      *   `gcloud beta app firewall-rules list`
      *   `gcloud beta app firewall-rules test-ip`
      *   `gcloud beta app firewall-rules update`

### Google Cloud KMS

*   Added user-defined labels (key/value pairs) to Cloud KMS. Users will be
    able to attach labels to their CryptoKey resources.

### Google ML Engine

*   Fixed a bug where `gcloud ml-engine local train` did not work on Windows.

### Google Container Registry

*   Fixed a warning that users of Docker 17.07 were seeing.

### Google Cloud Deployment Manager

*   Fixed the `deployment manager create` output format.

### Google Cloud Container Builder

*   The local builder was upgraded to version 0.2.1. Release notes:
    *   `Volumes` feature added.
    *   `Secrets` feature added.
    *   Integration test for $PROJECT_ID substitution.
    *   Stop channel to terminate the goroutines that refresh the auth tokens.
    *   Clean some unnecessary stdout.


## 167.0.0 (2017-08-16)

### Breaking Changes

*   **(DEPRECATED)** Deprecated the `names` and `--regexp` flags for the following
    commands. Use the `--filter` flag instead:
      * `gcloud compute snapshots list`
      * `gcloud compute regions list`
      * `gcloud compute target-https-proxies list`
      * `gcloud compute ssl-certificates list`
      * `gcloud compute zones list`
*   **(DEPRECATED)** Deprecated the following flags from `gcloud compute
    instance-groups list`: `names`, `--regexp`, `--zones`, `--region`; these are
    replaced by the `--filter` flag.
*   **(DEPRECATED)** Deprecated the `--pubsub-topic` flag from `gcloud beta/alpha iot
    registries create/update`; this is replaced by the `--event-pubsub-topic` flag.
*   **(DEPRECATED)** Deprecated `gcloud iot credentials` command group. This is
    replaced by `gcloud iot devices credentials`.
*   **(DEPRECATED)** Deprecated `gcloud iot configs` command group. This is
    replaced by `gcloud iot devices configs`.
*   **(DEPRECATED)** Deprecated the `--force-create` flag from `gcloud compute
    images create`. This is replaced by the `--force` flag.

### Google Cloud SDK

*   Upgraded Windows bundled python version from 2.7.10 to 2.7.13.
*   Cloud Tools for PowerShell:
    * Added `New-GceNetwork` and `Remove-GceNetwork` to add and remove Google Compute
      Engine Networks.
    * Added `-MaxBadRecords` parameter to `Start-BqJob` cmdlet.
    * Fixed a bug in `Fix-GkeCluster` cmdlet where `-NodeVersion` parameter is
      not processed correctly.

### Google Container Engine

*   Added `--min-cpu-platform` flag to `gcloud alpha container` commands.
*   Updated `gcloud alpha container clusters resize` and `gcloud beta container
    clusters resize` commands to safely drain nodes before removal.
*   Updated Google Container Engine's kubectl from version 1.7.2 to 1.7.3.
*   Added `--logging-service` flag to `gcloud beta container clusters update`.
    This flag controls the enabling and disabling of Stackdriver Logging integration.
    Use `--logging-service=logging.googleapis.com` to enable and `--logging-service=none`
    to disable.
*   Modified the `--scopes` flag in `gcloud beta container clusters create` and
    `gcloud beta container node-pools create` commands to default to
    `logging.write,monitoring` and support passing an empty list.


### Google Compute Engine

*   Promoted `gcloud compute interconnects` commands to beta. These commands
    allow you to provision an interconnection between your network and Google Cloud VPCs.
    For more details see online documentation,
     * https://cloud.google.com/interconnect/docs
*   Fixed a bug in `gcloud compute update routers` where removing interfaces/peers was
    failing.
*   Added `--security-policy` flag to `gcloud beta compute backend-services update`.
*   `gcloud compute security-policies` commands now in beta.
*   Added `gcloud beta compute instance-groups managed rolling-action` command group.
*   Updated `gcloud compute instance-templates create` to support labels

### Google Cloud Deployment Manager

*   Added `--composite-type` and `--template` flags to `gcloud deployment-manager
    deployments create`. Also, added a warning when using `--config` with a template
    instead of the new `--template` flag. This behavior will be deprecated 2017-11-08.

### Google App Engine

*   Updated `gcloud app services set-traffic` to support `--split-by=random` to
    split traffic randomly between versions.

### Firebase Test Lab

*  Promoted Firebase Test Lab to beta for running instrumentation test with
   Android Test Orchestrator. Use `--use-orchestrator` to run with Orchestrator.

## 166.0.0 (2017-08-09)

### Breaking Changes

*   Demoted `gcloud container images describe` to the alpha track.
*   **(DEPRECATED)** Deprecated the following flags from `gcloud beta functions
    deploy`: `--local-path`, `--source-path`, `--source-url`, `--source-revision`,
    `--source-branch`, `--source-tag`; these are replaced by the `--source`
    flag.
*   **(DEPRECATED)** Deprecated the `--region` flag from `gcloud beta functions
    list`, replaced by the `--regions` flag.
*   **(DEPRECATED)** Deprecated the `--regions` and `--regexp` flags from
    `gcloud compute routers list names`, use `--filter` instead.

### Google Compute Engine
*   Added support for multiple network interface cards for `gcloud compute
    instances create` and `gcloud compute instance-templates create`.

### Google Cloud IAM
*   Updated `gcloud iam surfaces` to also accept uniqueId as service account
    names.

### Google Container Engine
*   Added `--node-locations` flag to `gcloud alpha container clusters create`
    and `gcloud alpha container clusters update`.
*   Modified `gcloud alpha container images list` to properly handle
    domain-scoped project ids when `--project` is omitted.

### Google Container Registry
*   Fixed concurrent docker pull calls that used the same container name.

### Google App Engine
*   Modified `gcloud app deploy` to use the new PHP Runtime Builder pipeline to
    deploy apps. You can set `app/use_runtime_builders` config to false if you
    need the old behavior.
*   Go's `aetest` package now reuses http connections, fixing a bug that exhausted
    file descriptors when running tests.
*   Go 1.8 uses the new standard library context package when calling
    `appengine.NewContext()`.

### Google Cloud SQL
*   Modified Cloud SQL replica creation to no longer require specification of
    database version, tier, or region.

### Google Cloud Logging
*   Modified `gcloud beta logging metrics list` to no longer display version
    number.

## 165.0.0 (2017-08-02)

### Breaking Changes

*   **(DEPRECATED)** Deprecated `names`, `--regions` and `--regexp` flags for
    the following commands. Use `--filter` instead.

    * `gcloud compute target-vpn-gateways list`
    * `gcloud compute target-pools list`
    * `gcloud compute vpn-tunnels list`
    * `gcloud compute commitments list`

### Google Cloud BigQuery

*   Changed the structure of the `bq ls` command output when the `format` flag
    is set to `json`, `prettyjson` or `csv`.
*   Added `--schema` option to `bq show` command that outputs the
    JSON-formatted schema for a table, suitable for use as a schema input
    file for `bq load` or `bq mk --schema`.


### Google Cloud Functions

*   Added `--source` flag to alpha and beta functions deploy commands.

### Google Cloud IAM

*   `gcloud beta iam roles` command group is now available. These commands
    allow you to create and manipulate IAM predefined/custom roles:

    * `gcloud beta iam roles create`
    * `gcloud beta iam roles describe`
    * `gcloud beta iam roles update`
    * `gcloud beta iam roles copy`
    * `gcloud beta iam roles list`
    * `gcloud beta iam roles delete`
    * `gcloud beta iam roles undelete`

*   `gcloud beta iam list-testable-permissions` is now available. This command
    allows you to list all the permissions that apply to the given resource,
    which also includes the `customRolesSupportLevel` field.

### Google Container Engine

*   Updated Google Container Engine's `kubectl` from version 1.7.0 to 1.7.2.

### Google Cloud Logging

* `gcloud beta logging sinks list` will stop working for gcloud versions 161
  and earlier.

## 164.0.0 (2017-07-26)

### Breaking Changes

* Removed the `--show-execution-ids`, `--show-function-names`,
`--show-log-levels`, and `--show-timestamps` flags from the
`gcloud alpha function logs read` and `gcloud beta function logs read` commands.

* Removed `appengine.gcr.io` from the list of default repositories that
`gcloud docker` authenticates for.

### Deprecations

* Deprecated the `NAME...` argument, `--zones` flag, and `--regexp` flag for
the commands listed below. Please use the `--filter` flag instead.
  * `gcloud compute disks list`
  * `gcloud compute disk-types list`
  * `gcloud compute instance-groups unmanaged list`
  * `gcloud compute instances list`
  * `gcloud compute machine-types list`
  * `gcloud compute target-instances list`

### Google Cloud Container Builder

* First release of the local builder. Install the `container-builder-local`
component, and run `container-builder-local` to try it out.

### Google Compute Engine

* `gcloud beta compute ssh` can now connect to instances using their private IP.

* Added the `gcloud alpha compute instances simulate-maintenance-event` command.

### Google Container Engine

* `gcloud beta container clusters create` now supports enabling authorized
networks for Kubernetes Master via `--enable-master-authorized-networks` and
`--master-authorized-networks` flags.

* `gcloud beta container clusters update` now supports configuring authorized
networks for Kubernetes Master via `--enable-master-authorized-networks`,
`--no-enable-master-authorized-networks`, and `--master-authorized-networks`
flags.

* `gcloud container clusters create` now allows the Kubernetes Dashboard to be
disabled for a new cluster via the `--disable-addons=KubernetesDashboard` flag.

* `gcloud container clusters update` now allows the Kubernetes Dashboard to be
disabled on existing clusters via the
`--update-addons=KubernetesDashboard=DISABLED` flag.


## 163.0.0 (2017-07-19)

### Google Cloud BigQuery

*   Table list command (bq ls [dataset]) now displays Time Partitioning information about listed tables.

### Google Cloud SQL

*   'gcloud sql instance create' now defaults to the Second Generation 'db-n1-standard-1' tier instead of the First Generation 'D1' tier. 'create' commands in which a tier is specified, will be unaffected.
*   'sql instances list' and 'beta sql instances list' commands now list DATABASE_VERSION of each instance.

### Google Cloud Container Builder

*   Fix bug where permission bits weren't set on directories in tar files uploaded to Cloud Storage

### Google Compute Engine

*   `gcloud beta compute images list` shows BLOCKED_BY_POLICY status for images blocked by compute.trustedImageProjects for user project.
*   Changed the default value of the `--image-family` flag to debian-9 for the `gcloud compute instances create` and `gcloud compute instance-templates create` commands.

### Google Container Engine

*   `gcloud container clusters get-credentials` now correctly respects the HOMEDRIVE/HOMEPATH and USERPROFILE environment variables when generating the kubectl config file.
*   Added --region flag to gcloud alpha containers to manage regional clusters.


## 162.0.0 (2017-07-12)

### Breaking Changes

*   Removed `gcloud alpha compute instance-groups managed rolling-action
    recreate`. Instead, use `gcloud alpha compute instance-groups managed
    rolling-action replace`.

### Google Compute Engine

*   `gcloud compute networks peerings` is now generally available. The alpha and
    beta tracks remain.
*   `gcloud alpha compute networks list-ip-owners` is now available in the
    alpha track.
*   Added `source-service-accounts` and `target-service-accounts` to the `gcloud
    beta compute firewall-rules <describe|list|create|update>` commands.
*   Added the `--custom-extensions` flag to:
    *   `gcloud compute instances create`
    *   `gcloud compute instances set-machine-type`
    *   `gcloud compute instance-templates create`.
*   Forwarding rules with a standard network tier can now accept global targets.
*   Added support for updating network tiers in the `gcloud alpha compute
    forwarding-rules update` commands.

### Google App Engine

*   Google App Engine components updated to 1.9.57. Please visit the following
    release notes for more details:
    https://cloud.google.com/appengine/docs/python/release-notes.
*   Added `gcloud beta app update` to support configuring an application's
    feature settings.
*   `gcloud app deploy` now allows deployments of Go 1.8 apps on App Engine
    Standard. During this open beta period you may opt-in to Go 1.8 by
    specifying `api_version: go1.8` in your `app.yaml`.
*   Added support for standard scheduler settings.

### Google Cloud Deployment Manager

*   `gcloud deployment-manager deployments create
    --automatic-rollback-on-failure` will now delete the new deployment after
    creation if it contains operation errors.
*   `gcloud beta deployment-manager deployments create` can now create
    deployments with a list of key-value pairs as labels using the `--labels`
    flag. `gcloud beta deployment-manager deployments update` can now
    update/remove labels of the deployment using the `--update-labels` and
    `--remove-labels` flags.

### Google Cloud Machine Learning Engine

*   Added the `gcloud ml-engine models <get-iam-policy|set-iam-policy|remove-iam-policy-binding|add-iam-policy-binding>`
    commands. These read and modify IAM policy data for ML Engine models. See
    https://cloud.google.com/iam/docs/managing-policies for details.

### Google Cloud Machine Learning APIs

*   The `gcloud ml language analyze-entity-sentiment` command is now available
    in the beta track. This command allows for entity-level sentiment analysis.
    Please visit https://cloud.google.com/natural-language/pricing to learn more
    about pricing for this feature.

### Google Cloud Resource Manager

*   The following Organization Policy commands are now available in the beta
    track: `gcloud beta resource-manager org-policies
    <allow|delete|deny|describe|disable-enforce|enable-enforce|list|set-policy>`.

### Google Cloud SQL

*   The `beta sql instances create` and `beta sql instances patch` commands have
    been updated to support storage auto-resize limits using
    `--storage-auto-increase-limit`.

### Google Container Engine

*   Added the `--enable-ip-alias`, `--services-ipv4-cidr`, and
    `--create-cluster` flags to support IP aliases.
*   Updated `kubectl` from version 1.6.6 to version 1.7.0.

### Google Cloud Storage

*   Updated the gsutil component to 4.27.

### Google Cloud Container Builder

*   Fixed bug: defining substitutions with the command-line `--substitutions`
    flag no longer causes all substitutions defined in cloudbuild.yaml to be
    deleted.

### Google Cloud Logging

*   `gcloud beta logging sinks` commands now use only V2 of the API instead of
    a mix of V1 and V2 calls.

### Google Cloud Source Repositories

*   `gcloud source repos clone` now gives a warning if the repository is
    mirrored.


## 161.0.0 (2017-06-28)

### Breaking Changes

*   Removed `gcloud beta test android devices`. Please use `gcloud firebase test
    android models` as an alternative.
*   Renamed the `--account-id` flag in `gcloud alpha billing projects link` to
    `--billing-account`. The old flag is still available but deprecated.
*   Renamed the `ACCOUNT_ID` flag in the `gcloud alpha billing projects
    list` command to `--billing-account`.
*   Renamed `gcloud billing accounts projects` to `gcloud billing projects`.
    The old commands are available but deprecated.

### Billing

*   Promoted `gcloud billing` to beta. The alpha surface remains and is
    identical; the changes listed in the "Breaking Changes" section apply to
    the beta release track and the old flag and commands are not available in
    beta.

### Google App Engine

*   Promoted `gcloud app instances <ssh|scp>` to GA. The beta commands remain
    and are identical.
*   Updated App Engine components for Python to version 1.9.55.
    Please visit the release notes for details:
    <https://cloud.google.com/appengine/docs/python/release-notes>.
*   Updated App Engine components for Java to version 1.9.54.
    Please visit the following release notes for details:
    <https://cloud.google.com/appengine/docs/java/release-notes>.
*   Added support for deploying Standard Environment Java applications to
    `gcloud beta app deploy`; use either `gcloud beta app deploy
    $APP_DIR/WEB-INF/appengine-web.xml` or `gcloud beta app deploy $APP_DIR`.
*   Added support for directories as positional arguments to `gcloud app
    deploy`, in addition to YAML files. In each directory, the command uses the
    `app.yaml` file if present, or interactively creates one otherwise.

### Google Cloud Dataproc

*   Promoted `--region` flag to beta and GA for every `gcloud dataproc` command.
    The flag remains available in alpha and is identical.
*   Added URL support for zonal resource flags `--zone`,
    `--master-machine-type`, `--worker-machine-type`,
    `--master-accelerator-type`, and `--worker-accelerator-type` in `gcloud
    dataproc` commands in addition to short names; for instance,
    `https://www.googleapis.com/compute/v1/projects/zones/us-central1-f` as
    well as `us-central1-f`.

### Google Cloud Natural Language

*   Promoted `gcloud ml language` commands to GA to allow the analysis of text
    using the Cloud Natural Language API. The commands remain in alpha and beta
    and are identical.

### Google Cloud SQL

*   Added `--labels` flag to `gcloud beta sql instances create` and
    `--<update|remove|clear>-labels` flags to `gcloud beta sql instances patch`
    to support the application of labels to SQL instances.

### Google Compute Engine

*   Added `--source-instance-template` flag to `gcloud beta compute instances
    <create|create-from-container>` to allow instance creation based on an
    instance template (see `gcloud compute instance-templates` command group).
*   Added `--ssl-certificates` flag to `gcloud alpha compute
    <target-https-proxies|target-ssl-proxies> <create|update>` to allow the
    specification of multiple ssl certificates when creating or updating a
    target proxy.
*   Added for option `STANDARD` for
    *   `--network-interface` sub-flag `network-tier` in
        `gcloud alpha compute instances create` and
        `gcloud alpha compute instances <create|create-from-container>`
    *   `--network-tier` flag in
        `gcloud alpha compute instances
        <create|add-access-config|update-access-config>`, `gcloud alpha compute
        instance-templates <create|create-from-container>`, and `gcloud alpha
        compute <addresses|forwarding-rules> create`.
*   Added command `gcloud beta compute addresses update` for
    modification of addresses (in particular, modifying labels).
*   Added command `gcloud beta compute forwarding-rules update` for
    modification of forwarding rules (in particular, modifying labels).
*   Promoted flag `--force-create` of `gcloud compute images create` to beta.
    By default, image creation fails when it is created from a disk that is
    attached to a running instance. When this flag is used, image creation from
    disk will proceed even if the disk is in use.

### Google Container Engine

*   Promoted `gcloud container node-pools rollback` command to GA. The alpha
    and beta command remains available and is identical.
*   Added `--enable-network-policy` flag to `gcloud alpha container clusters
    <create|update>` to enable network policy enforcement.
*   Updated `kubectl` from version 1.6.4 to version 1.6.6.


## 160.0.0 (2017-06-21; abandoned: all changes available in 161.0.0)

### Breaking Changes

*   Removed the deprecated `gcloud ml-engine init-project` command. It is no
    longer needed by other Google Cloud ML Engine commands.

### Google Cloud SDK

*   GA cmdlets for Stackdriver Logging, Google Cloud Pub/Sub, Google Cloud IAM
    are now available in Cloud Tools for PowerShell.

### Google App Engine

*   `gcloud beta app deploy` now uses the new PHP Runtime Builder pipeline to
    deploy apps. The normal `gcloud app deploy` remains unchanged.
*   Previously, `gcloud app` list commands would only show the first 50 results.
    Now, all relevant results will be shown.

### Google Compute Engine

*   It is now supported to delete both zonal and regional Managed Instance
    Groups in one `gcloud` invocation.
*   Using labels in `gcloud` for the following Google Compute Engine resources
    is now in GA: disks, images, instances, and snapshots.

### Google Cloud Container Builder

*   Fixed a bug affecting concurrent invocations of `gcloud container builds
    submit` wherein objects could be uploaded to the same location,
    resulting in collisions and corrupted/broken builds.

### Google Cloud Video Intelligence

*   The `gcloud ml video` command group is now available in the beta track.
    These commands allow you to use the Cloud Video Intelligence API to analyze
    videos and manage long-running video analysis operations.

## 159.0.0 (2017-06-14)

### Google App Engine

*   Added commands to support automatically managed certificates:
    *   `gcloud alpha app domain-mappings`
    *   `gcloud alpha app ssl-certificates`
*   Added `--no-launch-browser` flag to all `gcloud app browse` commands:
    *   Allows the user to specify that they don't want a browser, they just
        want the url.
    *   Detects situations that the user probably can't launch a browser (no
        DISPLAY, etc.) and just prints the URL instead of attempting to launch
        a browser.

### Google Cloud Bigtable

*   `cbt ls <table>` now shows the GC policy for each column family.

### Google Compute Engine

*   Added `gcloud compute instances set-service-account`
*   `gcloud compute disks snapshot` now waits for the operation to finish
    indefinitely.
*   Removed the `--zone` flag in:
    *   `gcloud compute backend-services add-backend`
    *   `gcloud compute backend-services remove-backend`
    *   `gcloud compute backend-services update-backend`
*   Removed the `--region` flag in:
    *   `gcloud functions` command group (alpha and beta)
    *   `gcloud functions regions list`
*   Promoted Google cloud TCP proxy to GA.
    https://cloud.google.com/compute/docs/load-balancing/tcp-ssl/tcp-proxy

### Google Container Registry

*   Fixed an issue that affected `docker build` while using
    docker-credential-gcr.

### Google Cloud KMS

*   Promoted KMS `gcloud kms encrypt` and `gcloud kms decrypt` commands from
    beta to GA.

## 158.0.0 (2017-06-07)

### Breaking Changes

*   The App Engine Go externalized runtime will detect Go apps using only the
    files in the root of the app directory. This means that
    `gcloud beta app gen-config` (and `gcloud app deploy` in an app directory
    with no app.yaml file) will not recognize a Go runtime if .go files are in
    subdirectories. To override this behavior, run
    `gcloud beta app gen-config --runtime go` to generate an app.yaml with the
    Go runtime.

### Google App Engine

*   `gcloud beta app deploy` now uses the new Ruby Runtime Builder pipeline to
     deploy apps. The normal `gcloud app deploy` remains unchanged.

### Google Cloud Bigtable Emulator

*    Fixes compatibility with latest HBase client library.
*    Performance improvements for large bulk mutations.

### Google Cloud SQL

*    `gcloud sql instances patch` commands will stop asking for confirmation
      that existing networks have been included in case of authorized networks
      being updated, unless the `--authorized-networks` flag is being used.

### Google Compute Engine

*     POTENTIALLY BREAKING: Most `gcloud compute` commands that involve
      specifying instances will now only prompt with relevant zones and no
      longer show all Google Cloud Platform zones when the `--zone` flag is
      omitted.
*     gcloud shared VPC network (XPN) commands are now in GA.

## 157.0.0 (2017-05-31)

### Google Cloud SDK

*   Added the auth/disable_credentials property that allows gcloud to
    make requests without loading credentials. This is only useful if you are
    behind a proxy that adds authentication to your requests automatically.
*   Cloud Tools for PowerShell:
    *   Added BigQuery beta cmdlets to manage BigQuery datasets.
    *   Added Container beta cmdlets to manage Container clusters.

### Google App Engine

*   Added command `gcloud beta app instances scp` for securely copying files
    between an App Engine Flexible instance and the local machine.
*   Updated App Engine components to 1.9.54.

### Google Compute Engine

*   Added ability to set the min-cpu-platform of an instance or
    instance-template in beta.

### Google Cloud BigQuery

*   gcloud config set proxy/* settings are now propagated to bq.


### Google Cloud IOT

*   Added `gcloud beta iot` command group to the beta release track. Commands in
    this group manage IoT devices and data.

### Google Cloud Datalab

*   Updated the `datalab` component to the 20170525 release. Changes in this
    release are documented in its tracking issue
    [here](https://github.com/googledatalab/datalab/issues/1385).

### Google Cloud Container Engine

*   Updated Google Container Engine's kubectl from version 1.6.3 to 1.6.4.

### Google Cloud ML Engine

*   Removed `gcloud beta ml` alias for `gcloud beta ml-engine`
    commands. Please use `gcloud ml-engine` directly.
*   Removed `gcloud ml-engine models versions` group in favor of the identical
    `gcloud ml-engine versions` group.
*   `gcloud ml-engine` commands in the beta track now run
    against the `v1` API, since the `v1beta1` API is turning down.
    These changes do not affect `gcloud ml` commands for Google Cloud Natural
    Language, Google Cloud Speech, or Google Cloud Vision.

### Google Cloud SQL

*   Promoted `gcloud sql connect` to GA.

### Google Cloud KMS

*   Added `encrypt` and `decrypt` commands to `gcloud beta kms`.

## 156.0.0 (2017-05-24)

### Breaking Changes

*   `gcloud container builds submit` will host build logs in a bucket owned
    by the Container Builder team by default, rather than one owned by the
    customer. If the customer does specify a bucket,
    The command `gcloud container builds submit` will no longer create that
    bucket if it does not already exist.

*   `gcloud sql instances set-root-password` is now deprecated and will be
    removed in version 162.0.0. Please use `gcloud sql users set-password`
    as an alternative.

*   `gcloud computes copy-files` is now deprecated. Use `gcloud compute scp`
    instead. Note that recursive copy is not turned on by default for `scp`.
    Add `--recurse` to the invocation to turn it on.

*   The ISO time string format for the `DUE_TIME` argument to retrieve a backup
    in `gcloud beta sql backups describe` is now deprecated in favor of
    integer format (now known as the `ID` argument). Instead of running:

    $ gcloud beta sql backups describe 2017-05-24T00:00:00.000Z --instance a1

    please run:

    $ gcloud beta sql backups describe 1490238000769 --instance a1

### Google App Engine

*   Google App Engine components have been updated to 1.9.53.
    Please visit the following release notes for details:
    *   Python: https://cloud.google.com/appengine/docs/python/release-notes
    *   Java: https://cloud.google.com/appengine/docs/java/release-notes

*   The App Engine Flexible environment includes Python 3.6 support (beta).
    To preview this runtime, specify `python_version: 3.6` in the
    `runtime_config` stanza of your `app.yaml` file.

*   `gcloud beta app instances ssh` now accepts remote commands in the
    following fashion: `gcloud beta app instances ssh -- echo hello world`.

### Google Cloud Bigtable

*   Add versioning information to the `cbt` commandline tool. The tool
    version is displayed in help output and by the new `cbt version` command.

### Google Cloud Bigtable Emulator

*   The Cloud Bigtable Emulator is now supported on Windows hosts.

### Google Cloud Container Engine

*   Update Google Container Engine's kubectl from version 1.6.2 to 1.6.3.

### Google Cloud Logging

*   Print the correct resource name in `gcloud logging beta sinks create` for
    non-project resources.

### Google Cloud Resources

*   The new `gcloud alpha resources list` command lists all indexed resources
    accessible from your account.

### Google Cloud Source Repositories

*   The `gcloud source repos` command group is now available in the GA release
    track.

*   The `gcloud source repos list` command is now paginated.

### Google Cloud SQL

*   All functionality  from `gcloud beta sql instances` commands is now
    available in `gcloud sql instances`.

*   Promoted `gcloud sql backups` to the GA release track.

### Google Cloud Storage

*   `gcloud config set proxy/*` settings are now propagated to gsutil. Users
    no longer need to update gsutil .boto file with these settings.

### Google Compute Engine

*   The `--container` flag in `gcloud compute ssh` uses `docker exec` command
    instead of `nsenter` in order to attach to container. The `--container`
    flag can be used with any VM instance that has docker installed.

*   Promoted Identity-Aware Proxy support to the GA release track for
    `gcloud compute backend-services`.

*   Add the `suse-sap-cloud` project to the default public image list.

*   Fixed a bug in `gcloud compute ssh` where SSH commands were incorrectly
    assembled when using `-- [SSH_ARGS]` for passing extra arguments and
    commands.

*   Promoted `gcloud compute scp` to the GA release track.

*   Add the `--custom-extensions` flag to
    `gcloud beta compute <instances create|instances set-machine-type|instance-templates create`

### Firebase Test Lab

*   Firebase Test Lab now has beta support for testing Android game apps
    that include game test loops. You run tests as follows:

      $ gcloud beta firebase test android run --type game-loop ...

    To learn more, see https://firebase.google.com/docs/test-lab/game-loop.

*   Added support for network shaping to alpha and beta release tracks
    for Firebase Test Lab. You can add a network profile to your tests with
    the `--network-profile` flag, followed by the name of the network profile
    you would like to use. Firebase Test Lab provides information about the
    network profiles available for network shaping through the `list` and
    `describe` commands. You can use them as follows:
    *   $ gcloud beta firebase test network-profiles --help
    *   $ gcloud beta firebase test network-profiles list
    *   $ gcloud beta firebase test network-profiles describe PROFILE_ID

### Go SDK

*   Go SDK has been upgraded to go1.6.4.

## 155.0.0 (2017-05-11)

### Google App Engine

*   Added `gcloud beta domains` command group.

*   Added `gcloud beta app domain-mappings` command group.

*   Added `gcloud beta app ssl-certificates` command group.

*   Added a goroot specific to Go 1.6 in preparation for the Go 1.8 beta.

### Google Cloud Datalab

*   Updated the datalab component.
    This is a bugfix-only release. Details of the fixed issue are available
    here:
    https://github.com/googledatalab/datalab/issues/1356

### Google Cloud DNS

*   Added beta track for `gcloud dns` which uses the new v2beta1 API.

### Google Cloud Logging

*   BUG FIX: `gcloud beta logging sinks update` would remove any start time or
    end time from a sink.

### Google Cloud SDK

*   Upgraded `gsutil` component to version 4.26.

### Google Cloud SQL

*   Promoted `gcloud sql users` to GA.

### Google Compute Engine

*   Modified `gcloud compute instances attach-disk` to output full urls of zones
    and machine types instead of outputting just their names.

*   Added `--force-create` flag to `gcloud compute images create`. Applicable to
    alpha track only.

### Google Container Engine

*   Added `--async` flag and deprecated `--wait` flag in
    `gcloud container node-pools delete`. Users should use `--async` in place of
    `--wait`.

*   Moved `gcloud container operations cancel` to beta.

*   Moved `gcloud container node-pools rollback` to beta.

*   Added ability to specify `--labels` when creating a Container Engine cluster
    in gcloud alpha or beta. These labels can be changed by using the
    `--update-labels` or `--remove-labels` flags now available in `gcloud
    container clusters update`. Labels will then be applied to Google Cloud
    Platform resources that the cluster creates.

## 154.0.1 (2017-05-04)

### Cloud SDK

*  Fixed issue in for gcloud init command. See https://issuetracker.google.com/37968909.

## 154.0.0 (2017-05-03)

### Cloud SDK

*   Added support for project creation during the `gcloud init` flow.

### Google Cloud Logging


*   BUG FIX: gcloud beta logging sinks update would remove any start time or end time from a sink

*   gcloud beta logging sinks describe now reports values of start_time, end_time and include_children

*   The `--include-children` flag is now available for `gcloud beta logging sinks create` to create sinks that apply to an organization or folder and also to all of its child projects and folders.

### Google Compute Engine

*   Workaround problems with alpha and beta versions of compute ssh command fail an attempt to use clouduseraccounts APIs.


### Google Container Engine

*    Promote --cluster-version from beta to GA in gcloud container clusters create.

*    '--no-source' flag for 'gcloud container builds submit' allows builds with no source input.

### Google Cloud ML Engine

*   Added --config parameter to `gcloud ml-engine versions create`; this parameter allows specifying scaling settings for a version.

### Google Cloud Speech

*   The `gcloud ml speech` commands to recognize spoken words in recorded speech using the Cloud Speech API are now available in beta. Please run `gcloud beta ml speech --help` or visit https://cloud.google.com/speech/docs/ to learn more.

### Google App Engine

*   `gcloud beta app deploy` now attempts to use the Service Management API to enable the Appengine Flexible Environment API for Flexible deployments, if needed. Before deploying a Flexible app, please ensure that the Flexible Environment API is enabled on the app's project.

*   The new Node.js Runtime Builder pipeline will now be used to deploy apps when using `gcloud beta app deploy`.

### Google Cloud SQL

*   Promote `gcloud sql operations` to GA. The beta surface still remains and is identical.

### Google Cloud Source Repositories

*    Add a source repos describe command to describe a repository to the beta track.


## 153.0.0 (2017-04-26)

### Breaking Changes

*    (Cloud SQL)`gcloud beta sql instances restore-backup` no longer accepts short flag
     `-b`. Use `--backup-id` instead.

### Google App Engine

*    Components updated to 1.9.52.
     *    Please visit the following release notes for details:
          Python - https://cloud.google.com/appengine/docs/python/release-notes

### Google BiqQuery

*    Scope-related warnings when using `bq` with Google Compute Engine service
     accounts have been fixed.
*    Small improvements to error messages and flag descriptions in `bq`.

### Google Cloud Dataproc

*    `gcloud datapoc clusters create` now accepts the `--no-address` flag

### Google Cloud SDK

*     Added choice to enable the API and retry if attempting to contact
      a disabled API.

### Google Cloud Source Repositories

*    `repos list` no longer reports repo size.

### Google Cloud Spanner

*    Different query modes (normal, plan, and profile) now supported.
     *    A table with aggregate statistics for queries run in 'profile'
          mode added.

### Google Cloud SQL

*    `gcloud sql databases` is now in GA.
     *    The beta surface still remains and is identical.

### Google Compute Engine

*    alpha and beta `compute instances set-machine-type` commands now
     require specifying the new machine type.
*    Label support for `instance`, `snapshot` and `images` resources added.
*    `gcloud beta compute instance-templates create` now accepts
     the `--accelerator` flag.
*    `compute addresses create` and `compute forwarding_rules create` flag
     `--ip-version` is now in beta
*    `gcloud compute networks peerings` commands are now in alpha and beta.
     These commands allow you to manage peering connections in your
     Google Cloud Platform VPC network.

### Google Container Engine

*    `kubctl` version is now 1.6.2 instead of 1.6.0

### Google Service Management

*    `gcloud beta service-management deploy` command will now scan for
      potentially hazardous changes to service configurations and abort
      if any actionable advice is returned. These can be overridden with
      the new `--force` flag.


## 152.0.0 (2017-04-19)

### Breaking Changes

*   (Compute Engine) The `--force-creation` flag is no longer supported in
    `gcloud compute images create`.

### Google Container Registry

*   `gcloud container images` is now globally available.

### Google Compute Engine

*   The `--force-creation` flag is no longer supported in `gcloud compute images
    create`.
*   The `gcloud compute instance-groups managed
    <abandon|delete|recreate>-instances` commands now support more than 1000
    instances.
*   Custom cache keys are now v1, adding the following flags to `gcloud compute
    backend-services <create|update>`:
    *    `--cache-key-include-host`
    *    `--cache-key-include-protocol`
    *    `--cache-key-include-query-string`
    *    `--cache-key-query-string-blacklist`
    *    `--cache-key-query-string-whitelist`
*   (Alpha, Beta) Added the `gcloud <alpha|beta> compute disks
    <add-labels|remove-labels|update>` commands to support labels for Compute
    Engine disk resources.

### Google Cloud SQL

*   Starting on 2017-06-30, the `--instance` flag in `gcloud sql operations
    wait` and `gcloud sql operations describe` will no longer be supported. You
    can still run the same command by omitting this flag.

### Google Cloud Containers

*   Added the `--start-ip-rotation` and `--complete-ip-rotation` flags to
    `gcloud container clusters update`.
*   Improved the performance of `gcloud container images list-tags` in certain
    cases.

### Miscellaneous

*   (Cloud Bigtable Emulator) The Cloud Bigtable Emulator no longer crashes when
    not configured with a host_port.
*   (Cloud SDK) Fixed a bug in the fish shell $PATH script that caused the $PWD
    to change (<https://issuetracker.google.com/issues/35906130>).


## 151.0.1 (2017-04-14)

### Cloud SDK

*  Fixed issue in which some users could not use the Windows installer or
   "bundled python" version of the Cloud SDK for installation.


## 151.0.0 (2017-04-12)

### Google App Engine

*   Added command `gcloud beta app repair`, for restoring resources needed by
    App Engine.
*   Updated Google App Engine components to 1.9.51.
    Please visit the following release notes for details:
    *    Java - https://cloud.google.com/appengine/docs/java/release-notes
    *    Python - https://cloud.google.com/appengine/docs/python/release-notes

### Google Cloud Datalab

*   Updated the datalab component to the 20170330 build:
    *    Fixed a race condition on `create` when mounting /tmp that caused
         intermittent mount failures.
    *    Added `.gitignore` and `README.md` files to newly created user
         notebooks.

### Google Cloud Source Repositories

*   Added `--use-full-gcloud-path` flag to `gcloud source repos clone` command
    in alpha and beta tracks. Fixes issue
    <https://issuetracker.google.com/issues/35907670>.

### Google Cloud Storage

*    Updated gsutil component to 4.25.

### Google Compute Engine

*   Added `--action`, `--rules`, `--direction`, `--destination-ranges`, and
    `--priority` flags to
    `gcloud beta compute firewall-rules {describe,create,update}` commands.
*   Added `size=SIZE` parameter to the `--local-ssd` flag for
    `gcloud compute {instances,instance-templates} create{,-from-container}`
    commands in the alpha track.

### Google Service Management

*   Added `gcloud service-management operations list` command in the alpha and
    beta tracks.


## 150.0.0 (2017-04-05)

### Breaking Changes

*   The v1beta1 API for Google Cloud ML Engine is deprecated and will be turned
    off on 2017-05-31. Please switch to the `gcloud ml-engine` commands, which
    use the v1 API, by that date; at that time, the `gcloud beta ml-engine`
    commands will switch over to the v1 API.

### Cloud Tools for PowerShell

*   Added beta cmdlets for Google Container Engine.
*   Fixed a bug where `Get-GcdChange` and `Get-GcdResourceRecordSet` were not
    returning more than 1000 items.

### Google App Engine

*   Fixed an issue in `gcloud app operations list` which resulted in sporadic
    crashes.

### Google Compute Engine

*   Added Google Cloud TCP proxy commands to the Beta track. For more
    information see `gcloud beta compute target-tcp-proxies` group and the
    online documentation:
    *   https://cloud.google.com/compute/docs/load-balancing/tcp-ssl/tcp-proxy

### Google Container Engine

*   `gcloud container clusters create|get-credentials` will now configure
    kubectl to use the credentials of the active gcloud account by default,
    instead of using application default credentials. This requires kubectl
    1.6.0 or higher. You can update kubectl by running
    `gcloud components update kubectl`.
    If you prefer to use application default credentials to authenticate kubectl
    to Google Container Engine clusters, you can revert to the previous behavior
    by setting the `container/use_application_default_credentials` property:
    *   `gcloud config set container/use_application_default_credentials true`
    *   `export CLOUDSDK_CONTAINER_USE_APPLICATION_DEFAULT_CREDENTIALS=true`
*   Added `--[no-]enable-legacy-abac` option to
    `gcloud container clusters create` and `gcloud container clusters update`.
    For more details see online documentation:
    *   https://cloud.google.com/container-engine/docs/role-based-access-control
*   Added `--set-password` and `--generate-password` options to the
    `gcloud container cluster update` command.
*   Modified the `gcloud container images list-tags` command to consider 10
    recent images by default, instead of all.
*   Updated Google Container Engine's kubectl from version 1.5.4 to 1.6.0.

### Google Cloud IAM

*   Added tab completion to `gcloud iam service-accounts` commands.

### Google Cloud Logging

*   Removed deprecated "unique-writer-identity" flag. All created/updated sinks
    will use custom service accounts to increase security.
    Please see documentation for more details:
    *   https://cloud.google.com/logging/docs/export/configure_export_v2#dest-auth
*   Remove support for creating/updating sinks with legacy V1 format.

### Google Cloud Resource Manager

*   Updated `gcloud projects set-iam-policy` and
    `gcloud organizations set-iam-policy` commands to allow users to edit audit
    configs. Changes to IAM policy should be handled via a read-modify-write
    command sequence.

### Google Cloud Storage

*   Update gsutil component to 4.24.

### Google Cloud SQL

*   Added `gcloud beta sql instances set-root-password` for consistency with
    the GA set of commands.
    This command is deprecated in favor of `gcloud beta sql users set-password`.

### Google Cloud Source Repositories

*   `gcloud source repos` command group promoted to Beta track.

### Emulators

*   Datastore emulator now defaults to port 8081, and pubsub emulator to 8085.


## 149.0.0 (2017-03-29)

### Breaking Changes

*   The Cloud SDK installer on `*nix` will no longer attempt to update your RC
    files in non-interactive mode.
*   Support for creating/updating legacy sinks has been removed from
    `gcloud beta logging`.

### Cloud SDK

*   SHA256 checksums, instead of SHA1 checksums, are now being published for
    Cloud SDK versioned archives and other downloadable assets.

### Firebase Test Lab

*   The `gcloud test` commands have been promoted to GA and renamed
    `gcloud firebase test ...`.  All `gcloud beta test ...` commands are
    deprecated.
*   The preferred way to specify test devices is the new `--device` argument,
    which allows more precise control over which device dimensions are included
    in a test matrix. See `gcloud firebase test android run --help` and
    `gcloud topic arg-files` for details.

### Google App Engine

*   Updated Python SDK to version 1.9.51.
*   Support Server Name Indication (SNI) for remote API shell.

### Google Cloud Datalab

*   Update the datalab component to the 20170323 build. With this release, the
    entire `/content` directory of newly created instances will be persisted to
    the attached disk rather than just the `/content/datalab` directory.

### Google Cloud Natural Language

*   The `gcloud beta ml language` command group is now available. Use commands
    in this group to analyze text with the Natural Language API. For more
    information, see: https://cloud.google.com/natural-language/.

### Google Cloud Runtime Configuration

*   The optional flag `--values` has been added to
    `gcloud beta runtime-config configs variables list`; it can be used to
    return values along with variables.

### Google Cloud SQL

*   Argument validation for instance arguments has been added to
   `gcloud beta sql instances create`, `gcloud sql instances create`, and
   `gcloud sql instances set-root-password`

### Google Compute Engine

*   `gcloud alpha compute ssh` can now connect to instances using private IP
    addresses.
*   `gcloud alpha compute images create` now has a `--force-creation` flag.

### Google Container Engine

*   `gcloud container images delete` has been modified to delete the underlying
    image, and all associated tags, when given a tag reference. For the
    remainder of beta, `--resolve-tag-to-digest` will be required when deleting
    an image by tag, to avoid accidental deletion. This will become default
    behavior when the command graduates from beta.


## 148.0.1 (2017-03-24)

### Google Cloud Functions

*   Fixed a bug where `gcloud beta functions deploy` did not work without the
    `--region` flag specified.


## 148.0.0 (2017-03-22)

### Breaking Changes

*   The `gcloud ml-engine jobs submit training`
    command is now asynchronous by default; pass `--stream-logs` to get the
    old behavior.
*   `gcloud ml-engine local predict` now only supports
    prediction using models in SavedModel format. For details, see:
    https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/saved_model/README.md

### Cloud SDK

*   Windows users upgrading to the new version might see an error after
    running `gcloud components update`. This is because the update modifies
    the gcloud.cmd file. The update should have finished successfully
    regardless of the error. To make sure, run `gcloud components update`
    again. It should say it's already up to date.

### Google Cloud BigQuery

*   Added support for updating field descriptions on query destination table.
    See the `destination_schema` flag within the `query` command.
*   Added support for showing only a subset of selected table fields.
    See the `selected_fields` flag within the `head` command.
*   Added support for setting labels on tables.
    See the `label` flag within the `mk` command.

### Google Cloud Datalab

*   Updated the datalab component to the 20170316 build.
    This release includes two bug fixes in how the tool looks up
    Datalab instances:

    1. No longer prompt for a zone if the specified instance does not exist.
    2. Report an error if the specified instance was not created by the tool.

### Deployment Manager

*   Promote `gcloud alpha deployment-manager` commands to the beta
    release track.

### Google Cloud ML Engine

*   The default log polling interval for logs has been raised;
    this should prevent streaming from using too much quota.

### Google Container Engine

*   Update Google Container Engine's kubectl from version 1.5.3 to 1.5.4.

### Google Container Registry

*   `untag` has been added to the `container images` command group. In the
    future, `container images delete` will be modified to delete the underlying
    image (and all associated tags) and this will be the primary method of
    removing tags from images.

### Google Service Management

*   `--validate-only` flag added to `service-management deploy` command

### Google Cloud Key Management Service

*   `gcloud beta kms` commands have been promoted to general availability
     as `gcloud kms`.

### Google Cloud Storage

*   Promote `compute backend-buckets` commands to general availability.
*   Update gsutil component to 4.23


## 147.0.0 (2017-03-15)

### Breaking Changes

*   Modified argument parsing for commands that pass arguments through to
    another program.
    The `--` argument must be specified between gcloud specific args on the
    left and the rest of the command on the right.
    Commands will no longer allow the omission of the `--`, and unparsed
    arguments will not be treated as implementation args.
*   Made the `--config-name` flag mandatory for
    `runtime-config configs variables` and `runtime-config configs waiters`
    commands.
*   Renamed `gcloud kms cryptokeys` as `gcloud kms keys`.
    Renamed the `--cryptokey` flag as `--key`.
    Deprecated the `cryptokey` variants.
*   Modified `alpha source repos clone` to produce an error message if the
    repository being cloned is a mirror. The command no longer asks to create
    the repo if it does not exist.

### Cloud SDK

*   The gcloud interactive shell auto completes gcloud commands and flags, and
    displays help, as command lines are typed into the shell.
    Run `gcloud alpha shell` to launch the shell.

### Google Compute Engine

*   Promoted custom cache keys to beta.
*   Promoted `gcloud compute networks subnets` to beta.

### Google App Engine

*   Modified Google App Engine Flexible Environment runtimes that
    require `entrypoint:` to automatically prepend `exec` to
    entrypoints, to ensure signals are passed through to the application
    process.
*   Java SDK updated to 1.9.50. For more details, please see
    *   https://cloud.google.com/appengine/docs/java/release-notes

### Google Cloud Bigtable

*   Updated binaries for the `cbt` commandline tool to allow for creation of
    tables with initial splits.

### Google Cloud Datalab

*   Updated the datalab component to the 20170309 build. This is a small update
    that only updates the name of the project from which we fetch the
    Container OS images to the new `cos-cloud` project.

### Google Container Engine

*   Added `--enable-autorepair` flag to
    `gcloud beta container clusters create` and
    `gcloud beta container node-pools create`.

### Google Cloud Resource Manager

*   Promoted the `gcloud projects create` command to GA.

### Google Cloud Vision

*   The `gcloud beta ml vision` command group is now available. These commands
    allow you to analyze images with Google Cloud Vision:

    * `gcloud beta ml vision detect-documents`
    * `gcloud beta ml vision detect-faces`
    * `gcloud beta ml vision detect-image-properties`
    * `gcloud beta ml vision detect-labels`
    * `gcloud beta ml vision detect-landmarks`
    * `gcloud beta ml vision detect-logos`
    * `gcloud beta ml vision detect-safe-search`
    * `gcloud beta ml vision detect-text`
    * `gcloud beta ml vision detect-web`

### Google Service Management

*   Modified `--format` flag for `gcloud service-management deploy` to make
    the new service configuration available for formatting with `--format`

### Google Cloud Source Repositories

*   Mirrored respositories now display the url of the repository being mirrored.

### Cloud Tools for PowerShell

*   Added beta cmdlets for managing access control and visibility of
    Google Cloud IAM bindings. For more information, see
    https://googlecloudplatform.github.io/google-cloud-powershell/#/google-cloud-iam

### Google Container Registry

*   Updated `docker-credential-gcr` to support the Docker client's
    new chronological version numbering during `configure-docker` for Docker
    client versions of 17.03.xx and above.

### Firebase Test Lab

*   Added new `--results-dir` flag for the `gcloud test android run` command
    to specify a predetermined storage location for test results. The value
    must be unique per each test matrix created. This avoids the need to parse
    stderr to find the path to the raw test results.
*   Added new commands `beta test android versions describe` and
    `beta test android locales describe`.

### Google Cloud Key Management Service (Beta)

*   Tab completion for the Cloud KMS --location flag is now supported.

## 146.0.0 (2017-03-02)

### Google Cloud ML

*   `gcloud ml` has been promoted to GA and renamed `gcloud ml-engine`
*   Add `--max-worker-count` to `gcloud ml-engine jobs submit prediction` to
    specify maximum number of workers to use.
*   Add `--model-dir` in `gcloud ml-engine jobs submit prediction` to use model
    files saved in Google Cloud Storage.

### Google Cloud Source Repositories

*   `gcloud source repos set-iam-policy` and `gcloud source repos
    get-iam-policy` commands now available on alpha release track.

### Google Cloud Datalab

*   Add a `--verbosity` flag to `gcloud datalab` command
*   Change `gcloud datalab` to use the `latest` Docker image by default, rather
    than the `local` image.
*   Fix bug where `gcloud datalab connect` would seemingly hang until `ENTER`
    was pressed.

### Google Cloud Bigtable

*   Add support for development instances that can be upgraded to production
    instances later.

### Google Compute Engine/Networking

*   `gcloud compute xpn` commands now available in the beta release track. These
    commands configure cross-project networking.
*   `gcloud compute disks snapshot` --guest-flush flag now generally available
    for creating application-consistent snapshots. Currently only supported on
    Windows instances using the Volume Shadow Copy Service (VSS)
*   Add `gcloud compute networks subnets list-usable` to alpha release track for
    listing subnetworks that the user has compute.subnetworks.use permission on.
*   Add support for multiple network interface cards in `gcloud compute
    instances create` and `gcloud compute instance-templates create` command on
    the beta release track.

### Google Container Engine

*   Updated Google Container Engine's `kubectl` from version 1.5.2 to 1.5.3.

### Google Cloud Container Builder

*   `gcloud container builds submit` now takes a `--substitutions` flag for
    user-defined templating; see
    <https://cloud.google.com/container-builder/docs/api/build-requests#substitutions>
    for more details.

### Google Cloud SQL

*   `gcloud sql instances create` now shows a clear error message if user tries
    to exceed instance limit.

### Firebase Test Lab

*   `gcloud test android run` now directs the user to the test results page
    within the Firebase console instead of the deprecated Test Lab section of
    the Google Developer's Console.

## 145.0.0 (2017-02-22)

### Breaking Changes

*   The `gcloud beta runtime-configs` group has been renamed `gcloud beta
    runtime-config`. All commands previously under `gcloud beta runtime-configs`
    have been moved to the `gcloud beta runtime-config configs` command group.

### Google App Engine

*   `gcloud app deploy` now deploys Go apps for both Standard and Flexible
    environments. All usage of `aedeploy` can now use `gcloud app deploy`
    directly instead.
*   When passing a directory to dev_appserver.py, dev_appserver.py searches for
    yaml in the directory so that gcloud can check missing components and prompt
    to install.
*   Java SDK updated to 1.9.49. For more details, please see
    *   https://cloud.google.com/appengine/docs/java/release-notes
*   `gcloud app logs tail` is now available in GA.

### Google Cloud Datalab

*   Update the `datalab` command line tool to the 20170215 build. This
    incorporates the following changes to the datalab tool:
    1.  Allow specifying a service account when creating a Datalab instance.
    2.  Move the `/tmp` directory outside of the VM's boot disk.

### Google Cloud Dataproc

*   Cluster and job labels support in `gcloud dataproc` is now available in GA.
*   The `--network-tier` flag has been added to the following commands:
    *   `gcloud alpha compute addresses create`
    *   `gcloud alpha compute forwarding-rules create`
    *   `gcloud alpha compute instance-templates create`
    *   `gcloud alpha compute instances add-access-config`
    *   `gcloud alpha compute instances create`
    *   `gcloud alpha compute instances create-from-container`
    *   `gcloud alpha compute instances update-access-config`

### Google Cloud SQL

*   A `--database-version` flag has been added to `gcloud sql flags list` and
    `gcloud beta sql flags list` to allow filtering. An 'applies to' column has
    been added to tabular output.
*   Added the following commands:
    *   `gcloud beta sql databases create`
    *   `gcloud beta sql databases delete`
    *   `gcloud beta sql databases describe`
    *   `gcloud beta sql databases list`
    *   `gcloud beta sql databases patch`

### Google Compute Engine

*   The `--network-tier` flag has been added to the following commands:
    *   `gcloud alpha compute addresses create`
    *   `gcloud alpha compute forwarding-rules create`
    *   `gcloud alpha compute instance-templates create`
    *   `gcloud alpha compute instances add-access-config`
    *   `gcloud alpha compute instances create`
    *   `gcloud alpha compute instances create-from-container`
    *   `gcloud alpha compute instances update-access-config`

## 144.0.0 (2017-02-15)

### Breaking Changes

* Many Cloud SQL commands now prompt for confirmation in more circumstances:
  * `gcloud sql instances import`
  * `gcloud beta sql instances import`
  * `gcloud beta sql instances failover`
  * `gcloud sql instances promote-replica`
  * `gcloud beta sql instances promote-replica`
  * `gcloud sql instances reset-ssl-config`
  * `gcloud beta sql instances reset-ssl-config`
  * `gcloud sql instances restart`
  * `gcloud beta sql instances restart`
  * `gcloud sql ssl-certs delete`
  * `gcloud beta sql ssl-certs delete`
  * `gcloud beta sql users delete`
* `gcloud compute backend-services` now requires an explicit scope.
  Pass `--global` to retain the old behavior.

### Deployment Manager

* `deployment-manager deployments {update,stop,cancel-preview}` can take
  `--fingerprint` flag to ensure optimistic locking.
* The `gcloud deployment-manager runtime-configs` command group is now available
  as a top-level command group: `gcloud runtime-configs`.

### Google App Engine

* Fixed a bug in `gcloud app instances list` where instances were always listed
  as NOT in debug mode.
* Added `--container` flag to `gcloud beta app instances ssh`, which lets you
  SSH straight into the app container within the instance VM.
* Deployments using `vm: true` have been deprecated. Please update your app.yaml
  to use `env: flex`. To learn more, please visit
  <https://cloud.google.com/appengine/docs/flexible/migration>.
* Added Google Analytics reporting to the dev_appserver.py binary. This is only
  enabled for users who have opted in during installation.

### Google Cloud Datalab

* Update the datalab command line tool to the 20170208 build.
  This update includes the following changes:
  1. All subcommands of the `datalab` tool now support a `--quiet` flag for
     disabling interactive prompts.
  2. You can now configure the logging threshold for messages that Datalab
     instances write to StackDriver logging. The default is `warn`, but
     this can be overridden by passing in the `--log-level` flag.
  3. The `datalab create` and `datalab connect` commands are more intelligent
     about when they should open a browser. In particular, they detect if
     the configured browser is a text-only browser or if the command is
     being run from inside of Google Cloud Shell, and do not attempt to
     launch the browser in those cases.
  4. The tool will now detect and warn if two users try to share a single
     Datalab instance, as that use case is not supported.
  5. Newly created Datalab instances use the Container Optimized OS
     rather than the older Container VM OS.

### Google Cloud Functions

* The `gcloud functions` commands are now available in the beta release track as
  `gcloud beta functions`.

### Google Cloud Spanner

* Initial (beta track) release of the `gcloud beta spanner` command group.

### Google Cloud SQL

* `gcloud sql instances create` and `gcloud sql instances patch` now support
  specifying custom machine types on psql instances by using the `--memory` and
  `--cpu` flags.
* Add ability to delete backups in SQL beta CLI
  (`gcloud beta sql backups delete`).
* If a user does not confirm a backup deletion, immediately cancel the
  operation. Also bringing this function into line with others in the SQL CLI.
  Affects one command:
  * `gcloud beta sql backups delete`

### Google Compute Engine

* Accelerators (e.g. GPUs) can now be attached to instances by passing
  `--accelerator` to `gcloud beta compute instances create`.
* `gcloud beta compute accelerator-types` is now available in beta.


## 143.0.1 (2017-02-09)

* Fixed issue in which some downloads of the Cloud SDK were missing critical
  libraries.
  * https://code.google.com/p/google-cloud-sdk/issues/detail?id=1525

## 143.0.0 (2017-02-08)

### Google App Engine

* `gcloud beta app instances ssh` is now available in beta.
* Updated app-engine-go component to the 1.9.50 SDK.
* Fixed a bug where `gcloud beta app deploy` failed while deploying Go apps.
* Python SDK updated to 1.9.50. For more details, please see
  https://cloud.google.com/appengine/docs/python/release-notes

### Google Compute Engine

* Show Cloud OS Images (COS) in 'gcloud compute images list' output.
* Added beta for 'compute xpn get-xpn-host' and 'compute xpn organizations list-xpn-hosts'.

### Cloud Tools for Powershell

* Added beta cmdlets for Log Sinks and Log Metrics.

### Google Cloud Pub/Sub

* The pubsub emulator now adheres to the documented topic and subscription
name constraints, including support for '+' and '%25' in names via
REST.

### Google Cloud ML

* The `--job-dir` flag for `gcloud beta ml jobs submit training` may
now be used for staging code in the absence of the (now optional)
`--staging-bucket` flag.
* `--staging-bucket` flag is only required in `jobs submit training`
if a file upload is necessary.
* Add `--job-dir` flag to `ml jobs submit training`

### Google Cloud Deployment Manager/Runtime Configuration

* `gcloud beta deployment-manager runtime-configs` is now available in beta.


## 142.0.0 (2017-02-01)

### Breaking Changes

* (Google Cloud Logging) Renamed `--only-project-sinks` flag for gcloud logging
  beta sinks list to `--only-v2-sinks`
* (Google Cloud ML) Support for space-separated values with the `--packages`
  flag for `gcloud beta ml jobs submit training` has been removed. Please
  separate your packages with commas.

### Google App Engine

* Added `gcloud beta app logs tail` command.

### Google Cloud Dataproc

* Cluster labels can now be updated

### Google Cloud IAM

* `gcloud beta iam service-accounts sign-jwt` is now available in beta.
* `gcloud beta iam service-accounts keys get-public-key` is now available in
  beta.

### Google Cloud Storage

* Add the `backend-buckets` command to the beta release track.

### Google Cloud Logging

* Added support for sinks for organizations, folders and billing accounts

### Google Cloud SQL

* Prompt for confirmation when user restores an SQL instance from backup.
  Affects three commands:
  * `gcloud beta sql backups restore`
  * `gcloud sql instances restore-backup`
  * `gcloud beta sql instances restore-backup`

### Google Cloud BigQuery

* Preparation for new API features. If `bq ls` begins failing,
  updating to this release should fix it.

### Google Cloud Datalab

* Update the datalab command line tool to the 20170119 build.
  With this update, the `datalab create` command will ensure
  that a `datalab-notebooks` Cloud Source Repository exists
  in the project, and newly created persistent disks will
  include a clone of that repository in the `datalab/notebooks`
  directory.
  Creating that repository can be disabled by passing in the
  `--no-create-repository` flag to the `datalab create` command.


## 141.0.0 (2017-01-25)

### Breaking Changes

* (Google Cloud SDK) The deprecated `gcloud preview app` and
  `gcloud preview datastore` have been removed. Commands are available under the
  GA release track.

### Google App Engine

* `gcloud app operations` is now in GA.
* Added support for using Yarn with Node.js applications.

### Google Cloud ML

* Added a `--regions` flag in `gcloud beta ml models create` to set the
  region(s) where the model will be deployed.
* Implemented `gcloud beta ml operations` commands.
* Fixed a bug where `gcloud beta ml local train --distributed` did not work with
  TensorFlow >= 0.12

### Google Compute Engine

* Deprecated old `--scopes` format in `gcloud compute instances create` in favor
  of `--scopes` format consistent with `gcloud compute set-scopes`.
* Deprecated old `--scopes` format in `gcloud compute instance-templates create`
  in favor of `--scopes` format consistent with `gcloud compute set-scopes`.
* Added support for creating Google Compute Engine VMs with GPU accelerators.

### Google Container Engine

* Updated Google Container Engine's `kubectl` from version 1.5.1 to 1.5.2.

### Google Container Registry

* Mitigated an issue regarding gcr.kubernetes.io's certificate when users
  invoked `gcloud docker`.

### Google Cloud Bigtable Emulator

* Bigtable emulator now supports `value_range`, `condition`,
  `strip_value_transformer`, `timestamp_range` and `row_key_regex` filters.

### Google Service Management

* Full resource URI parsing now supported

### Google Cloud Key Management Service (Beta)

* Fixed an issue that prevented setting next-rotation-time in
  `gcloud beta kms crytpokeys set-rotation-schedule`.


## 140.0.0 (2017-01-18)

### Cloud SDK

* `gcloud alpha search-help` is now available in alpha.
  Run `gcloud alpha search-help [TERM]` to find gcloud commands whose help text
  contains [TERM].

### Google Cloud ML

* `gcloud ml jobs submit training` now supports packages already in Google
   Cloud Storage via the `--packages` flag.

### Google Cloud Datalab

* Upgrade the Datalab CLI to the 20170110 build.

### Google Cloud Debugger

* The `gcloud debug` command group is now available in GA.

### Google Container Registry

* An issue that affected Docker client version parsing during
  `docker-credential-gcr configure-docker` has been fixed.

### Google Cloud Deployment Manager

* 'deployment-manager deployments update' can update deployments with a new
  description using --description flag.

### Emulators

* The pubsub emulator now accepts web-safe Base64 encoded data.


## 139.0.1 (2017-01-12)

*   Fixed crash in `gcloud dataproc clusters create`
    *   https://issuetracker.google.com/issues/35907682


## 139.0.0 (2017-01-11)

### Breaking Changes

* (Google Cloud Logging) The default value of the `--unique-writer-identity`
  flag to `gcloud beta logging sinks create` and
  `gcloud beta logging sinks update` is now true. Please consult the
  documentation before using these commands.
* (Google Cloud Logging) Remove 'struct' option from `gcloud logging write`.
  Use 'json' instead
* (Google Cloud Logging) `logging beta metrics create` and
  `logging beta metrics update` commands have changed their flags and
   importantly now use Logging V2 filter syntax. See the help for more
  information.
* (Google App Engine) Flexible deployments now skip files matching
  `node_modules` and `.git` by default, but no longer skip other hidden files by
  default. Standard deployments are not changing.
* (Google Compute Engine)
  `gcloud compute target-pools set-backup --backup-pool` and
  `gcloud compute project-info set-usage-bucket --bucket` flags now warn if you
  provide an empty argument; use `--no-backup-pool` and `--no-bucket instead`.
* (Google Cloud Bigtable) Removed `gcloud alpha bigtable` command group; please
  use `gcloud beta bigtable` for all Cloud Bigtable operations.
* (Stackdriver Debugger) Added a `--location` option to several
  `gcloud beta debug` commands, to separate out the processing of resource IDs
  from filename patterns. These commands now take only resource IDs as
  positional parameters.

### Google Cloud Datalab

* Added the command-line tool for Google Cloud Datalab in the Cloud SDK; call
  it via the `datalab` script.

### Google Cloud Key Management Service

* Added the `gcloud beta kms` commands for key management.

### Google Cloud Logging

* Add `--billing-account` flag to `gcloud logging read`
* gcloud beta logging metrics list/describe now output the version of the filter
  associated with the metric

### Google Cloud ML

* The `gcloud beta ml jobs submit training` now takes a `--scale-tier` flag.
* Support gzipped TFRecord file type for
  `gcloud beta ml jobs submit prediction`.


### Google App Engine

* (Google App Engine) Fixed bug with `gcloud app instances describe`.  --service
  and --version flags are now required.
* `gcloud beta app deploy` now uses multi-threading rather than
  multi-processing for file uploads; if you've been seeing issues on Windows,
  please try the `beta` command out.
* `gcloud app versions migrate` is now GA.
* `gcloud app instances delete` is now GA.
* Added `gcloud beta app operations` commands.
* Added `gcloud beta app instances delete` command.

### Google Compute Engine

* `gcloud beta compute images create` now has a `--guest-os-features` flag for
  enabling specific OS supported features.
* Use the new scopes format (see `--help` for deetails) for
  - `gcloud alpha compute instances create`
  - `gcloud alpha compute instances create-from-container`
  - `gcloud alpha compute instance-templates create`
  - `gcloud alpha compute instance-templates create-from-container`
  - `gcloud beta compute instances create`
  - `gcloud beta compute instance-templates create`
* Add `--custom-extensions` flag to:
  `gcloud alpha compute instances create`,
  `gcloud alpha compute instances set-machine-type`, and
  `gcloud alpha compute instance-templates create`

### Google Compute Engine (Networking)

* The `--host` flag for `gcloud alpha compute url-maps invalidate-cdn-cache` is
  now available in the GA version of the command.

### Stackdriver Debugger

* Fixed log view URLs in the debug logpoints commands to use the V2 query
  syntax.

### Google Service Management

* `--validate-only` flag added to `gcloud service-management deploy` command

### Google Cloud Functions

* The `--trigger-params` flag has been renamed to `--trigger-path`
  (the `path=` specifier is no longer necessary). The old flag has been
  deprecated and will be removed or `gcloud alpha functions deploy`.
* Restore `gcloud alpha functions get-logs` command.
* Restore deprecated flags `--trigger-topic`, `--trigger-bucket`, `--source`,
  `--bucket`, and `--trigger-gs-uri` to `gcloud alpha functions deploy`
  command.

### Google Container Engine

* Update Google Container Engine's kubectl from version 1.4.6 to 1.5.1.

### Google Cloud Bigtable

* The `cbt` command line tool component is now available. See:
  https://cloud.google.com/bigtable/docs/go/cbt-reference

### Google Cloud Datastore

* `gcloud datastore create-indexes` and `cleanup-indexes` are now GA

### Google Container Registry

* `docker-credential-gcr` has been upgraded to v1.3 and now supports Docker
  client v1.14 credential helpers. `docker-credential-gcr` will now
  preferentially act as a credential helper (as opposed to credential store) on
  Docker client versions 1.14+. Update (or install) the `docker-credential-gcr`
  component and run `docker-credential-gcr configure-docker` to configure your
  Docker client to use `docker-credential-gcr` to authenticate operations on
  your GCR repositories.

### Google Cloud Deployment Manager

* Added labels support to the
  `gcloud alpha deployment-manager deployments create` and `update` commands
  (via the `--labels` and `--{update,remove}-labels` flags respectively).
* Introduce new syntax `key:val,foo:bar` for `--properties` flag in all
  `gcloud deployment-manager` commands. The old `key=val,foo=bar` syntax is
  deprecated.


## 138.0.0 (2016-12-14)

### Cloud SDK

* Introduce --(no-)force-key-file-overwrite flags to all gcloud commands using
  SSH key files. These new flags control overwrite behavior when SSH key files
  are broken. Without these flags, interactive sessions will ask for
  confirmation before regenerating key files. Old non-interactive behavior
  (permissive) is deprecated and will be removed in 6 months. To preserve old
  behavior in your scripts, use new flag --force-key-file-overwrite
  (though this is discouraged).

* Credential store format for service accounts has changed. Your credentials
  will get auto-upgraded to new format upon usage; however, if gcloud is
  downgraded to previous version those credentials will not be usable and users
  will have to reactivate their service account.

### Google Cloud ML

* `gcloud beta ml jobs submit training` is now blocking by default. Use the
  `--async` flag to finish immediately after job submission.

### Google Compute Engine

* `gcloud compute instances create` creates instance with no scopes by default
  if project has no default service account.
* `compute target-ssl-proxies list` deprecated `--regex` and names argument.
  Please use `--filter` flag instead.
* `gcloud compute connect-to-serial-port` allows for interactive connections to
  the serial port for instances.
* Promote `compute instances set-scopes` command from alpha to beta.

### Google App Engine

* Java SDK updated to 1.9.48. For more details, please see
  https://cloud.google.com/appengine/docs/java/release-notes
* Python SDK updated to 1.9.49. For more details, please see
  https://cloud.google.com/appengine/docs/python/release-notes
* `gcloud app describe` is now GA.
* Added `gcloud beta app instances delete`, which deletes a specific App Engine
  instance.
* Added `gcloud beta app versions migrate`.
* Added support for `env: flex` (Flexible Environment) instances to
`gcloud app instances enable-debug` and `gcloud app instances disable-debug`.
* Added support for skip_files in Flexible Environment deployments.

### Google Container Engine

* Users can create clusters/nodepools with node autoupgrade enabled in Beta by
  adding `--enable-auto-upgrade`. Please refer to
  `gcloud beta container clusters create --help` and
  `gcloud beta container node-pools create --help` for more details.
* node-pool upgrades can now be rolled back using the
  `gcloud alpha container node-pools rollback <pool-name>` command.
  See `gcloud alpha container node-pools rollback --help` for more details.

### Google Cloud Container Builder

* Container Builder timeouts are now unlimited (with a default of ten minutes),
  and can be specified with the --timeout flag.

### Google Cloud Dataflow

* The `gcloud dataflow jobs` command group now has the following commands in GA:
  cancel, describe, drain, list, show

### Google Cloud Functions

* Remove `gcloud alpha functions get-logs` command.
* Remove deprecated flags --trigger-topic --trigger-bucket --source --bucket
  --trigger-gs-uri from `gcloud alpha functions deploy` command.


## 137.0.1 (2016-12-08)

### Google Cloud ML

* `gcloud beta ml jobs submit training`: Fix crash when `--packages` was not
  specified.


## 137.0.0 (2016-12-07)

### Google Cloud Functions

* Add `gcloud alpha functions deploy` `--trigger-provider`, `--trigger-event`,
  `--trigger-resource` and `--trigger-params` flags.
* Add `gcloud alpha functions event-types list` command.

### Google Cloud ML

* The `gcloud beta ml models versions` command group has been moved to
  `gcloud beta ml versions`. The old commands still work, but are deprecated.
* The `--origin` flag for the `gcloud beta ml versions create` command now
  accepts local file paths in addition to Google Cloud Storage (`gs://`) paths.
* `gcloud beta ml jobs training`: `--packages` now takes a comma-separated list
  instead of a space-separated list.

### Google Compute Engine

* Internal Load Balancing is now available in GA.
* It is no longer allowed to pass an empty scope in
  `gcloud compute instances create --scopes` flag.

### Google Container Engine

* `gcloud container images describe` has some breaking changes to its
  --format=JSON output.

### Google Service Management

* The gcloud service-management surface is now available in the GA and beta
  release tracks. Please use `gcloud service-management` instead of
  `gcloud beta service-management`.


## 136.0.0 (2016-12-01)

### Cloud SDK

* `gcloud config get-value` is now GA.

### Google Cloud Service Management

* Add `gcloud beta service-management undelete`.

### Google Container Engine

* Add `gcloud beta container image describe` to list container analysis data.
* Update Google Container Engine's kubectl from version 1.4.4 to 1.4.6.

### Google Cloud Container Builder

* `gcloud container builds ...` are now GA.

### Google Cloud Resource Manager

* `gcloud organizations ...` are now GA.
* Removed `gcloud organizations update`.

### Google Cloud ML

* Add `gcloud beta ml local predict` to do local prediction.
* Deprecate '--instances' flag in `gcloud beta ml predict`.

### Google App Engine

* `gcloud app instances describe` is now GA.
* `gcloud app services describe` is now GA.
* `gcloud app logs read` will now show request logs by default as well as
  stdout, stderr, and crash.log.
* Add `gcloud beta app describe`, which prints information about the current
  App Engine application.
* `gcloud beta app deploy` can now deploy go apps, without the use of `aedeploy`
  or `goapp deploy`. Both App Engine Standard and Flexible environments are
  supported. If you are using `runtime: custom` with `aedeploy`, you will need
  to vendor your dependencies into the app directory manually.
* Deprecated the configuration property `app/gsutil`. Affected users are warned
  during `gcloud app deploy` with instructions on how to update their
  configuration appropriately.
* The App Engine flexible environment now defaults to Python 3.5 when Python 3
  is requested. To temporarily revert to Python 3.4, specify
  `python_version: 3.4` in the `runtime_config` stanza of your
  [`app.yaml`](https://cloud.google.com/appengine/docs/flexible/python/configuring-your-app-with-app-yaml).
* Updated app-engine-go component to the 1.9.48 SDK.

### Google Compute Engine

* Add `--service-label` flag to `gcloud alpha compute forwarding-rules create`.

### Cloud Tools for Powershell

* Add cmdlets to manage Cloud Storage ACLs.

### Google Cloud Deployment Manager/Runtime Configuration

* Fixed `gcloud deployment-manager deployments describe` when resource
  expansion fails.

### Bigtable Emulator

* Bigtable emulator now supports `column_range_filter`.

### Google Cloud Dataproc

* Add `--service-account` flag to `gcloud dataproc clusters create`.


## 135.0.0 (2016-11-16)

### Google Cloud Service Management

* `gcloud service-management deploy` command now supports providing multiple
  service configuration or API specification inputs simultaneously. This change
  allows creating .proto and YAML based configurations for gRPC services.

### Google Container Engine

* Change the `gcloud container list-tags` command to support user-specified
  filters on occurrences and exposes a column summarizing vulnerability
  information.

### Google Cloud Resource Manager

* `gcloud organizations update` is now deprecated.


### Google Cloud Deployment Manager/Runtime Configuration

* Runtime configuration variables can now be set and retrieved using text
  values.

### Bigtable Emulator

* Now supports macOS Sierra.

### Google App Engine

* The App Engine flexible environment now includes Python 3.5 support (beta).
  To preview this runtime, specify `python_version: 3.5` in the `runtime_config`
  stanza of your [`app.yaml`](https://cloud.google.com/appengine/docs/flexible/python/configuring-your-app-with-app-yaml)
  file.
* Added the `gcloud beta app services describe` command, which prints
  information about a given service.


## 134.0.0 (2016-11-09)

### Cloud SDK

* `gcloud info --run-diagnostics` flag is now available to diagnose common
  installation and local network issues.
* `gcloud init` now has a `--skip-diagnostics` flag.

### Google App Engine

* App Engine Java SDK updated to 1.9.46.
  Please visit the following release notes for details:
  https://cloud.google.com/appengine/docs/java/release-notes
* Added `gcloud app create` command, which creates an App Engine app in the
  current project.
* Added `gcloud app regions list` command, which lists support for App Engine
  Standard and Flexible environments for each geographical region.
* `gcloud app deploy` now offers to create an App Engine app interactively, if
  the current project does not have an app yet.

### Google Cloud BigQuery

* Add support for specifying a null marker when loading data. See the
  `null_marker` flag within the `load` command.

### Google Compute Engine

* `gcloud compute instance-groups managed delete` shows clean error message
  instead of bare exception on attempt to delete zonal and regional Managed
  Instance Groups in one gcloud invocation. Old behavior was to accept and
  invoke such request and then fail on waiting for operation complete.
* Remove OpenSUSE as a default image option. OpenSUSE images are still available
  in the opensuse-cloud project.


## 133.0.0 (2016-11-02)

### Google Cloud Container Builder

* `gcloud alpha container builds` promoted to beta. The following has changed:
  * The 'create' command is now called 'submit'.
  * The 'stream-logs' command is now called 'log', and will only stream the log
    if the '--stream' flag is used. Otherwise, it will print only the log
    contents available at the time the command was run.

The alpha commands will remain, as is, until at least March of 2017.

### Google Compute Engine

* regional instance groups are now GA. `gcloud compute instance-groups managed`

* Customer-Supplied Encryption Keys (CSEK) for image creation is now GA. See
  https://cloud.google.com/compute/docs/disks/customer-supplied-encryption for
  details.

### Google Container Engine

* Update kubectl to version 1.4.4.


## 132.0.0 (2016-10-26)

### Breaking Changes

* (Cloud SDK-wide) Command line flag abbreviations are no longer supported.
* (Cloud SDK-wide) Python 2.6 is no longer supported by the Cloud SDK and
  commands may not function correctly when run under an Python 2.6 interpreter.
  Please update your Python installation to 2.7 to ensure compatibility.
  * If you have a 2.7 interpreter on your system that is not the default, you
    can use the CLOUDSDK_PYTHON environment variable to point to it.
  * The last version of the SDK that supports Python 2.6 is 131.0.0, which can
    be downloaded from our archive:
    <https://cloud.google.com/sdk/downloads#earlier_versions>
* (Google Compute Engine/Google Cloud Source Repositories): Google Cloud Source
  Repositories scope no longer added by default on instance creation.
* (Stackdriver Debugger) Changed the default to true for the `--all-users`
  option on `gcloud beta debug logpoints list` command.

### Google Cloud Storage

* Update gsutil component to 4.22
  See: <https://github.com/GoogleCloudPlatform/gsutil/blob/v4.22/CHANGES.md>

### Google Compute Engine

* Allow specifying both `--network` and `--subnet` for the same network
  interface card.

### Google Cloud Dataproc

* Jobs and clusters now support labels on creation
* Jobs and clusters now support filtering by labels and state

### Google Container Engine

* Google Container Engine cluster upgrade operations can now be cancelled using
  the `gcloud alpha container operations cancel` command.  See
  `gcloud alpha container operations cancel --help` for more details.

### Cloud Tools for Powershell

* Fix a bug where the module is not picking up the active user credentials
  correctly.
* Make `New-GcsObject` `-ObjectName` parameter optional when uploading a file.
* Add ability to pipeline `GcsObject` to `Write-GcsObject` cmdlet.

## 131.0.0 (2016-10-19)

### Cloud SDK

* Added PowerShell provider for Google Cloud Storage; allows navigation of
  Google Cloud Storage buckets as if they were a local file system.
  When using Cloud Tools for PowerShell `cd` into gs:\ and type `dir` to begin.
  Learn more at https://cloud.google.com/tools/powershell/docs/backup.

* App Engine updated to 1.9.45. Java SDK updated to 1.9.44.
  Please visit the following release notes for details:
  https://cloud.google.com/appengine/docs/java/release-notes

* `gcloud config configurations create` will now automatically activate
  specified empty configuration. Use `gcloud config set` to populate its
  properties.

### Google Cloud Compute

* The Customer-Supplied Encryption Keys (CSEK) feature for Google Compute Engine
  image creation is now available in the beta release track. See
  https://cloud.google.com/compute/docs/disks/customer-supplied-encryption for
  details.

### Google Container Engine

* Added support for for creating new clusters and nodepools on preemptible
  VM instances in Beta by adding `--preemptible`. See
  `gcloud beta container clusters create --help` and
  `gcloud beta container node-pools create --help` for more details.

* Fixed a bug in `gcloud alpha container clusters update` that
  prevented disabling cluster autoscaling. Cluster autoscaling
  can now be disabled by running:
  `gcloud alpha container clusters update --disable-autoscaling`

* Update kubectl to version 1.4.1.

### Google Cloud BigQuery

* Added support for setting labels on query jobs.
  Example usage: `bq query --label "foo:bar" "select 123"`.
  The `show` command outputs any labels set on a job.

### Google Source Repository

* Change the Cloud Source Repositories scope given by default to Google Compute
  Engine Instances and Instance Templates to read_only from full control.


## 130.0.0 (2016-10-12)

### Breaking Changes

* Breaking change to --network-interface in `alpha compute instances create`,
  and `alpha compute instance-images create` commands. By default
  interfaces will have ephemeral IP (was: no external ip).

### Google App Engine

* App Engine: The `gcloud app deploy` command no longer blocks when stopping the
  previous version; this should speed up deployment times. Instructions for
  checking the status of the stop-version operation are included in the command
  output.

* Support ramdisk volumes in App Engine flexible environments Alpha.

### Google Cloud Functions

* Add `alpha functions regions list` command.

### Google Cloud ML

* Change '--instances=' to
  '(--json-instances=, --instances= | --text-instances=)' to allow
  `gcloud beta ml predict` to read files in UTF-8 encoded text format.

### Google Cloud Platform Projects

* Add the `gcloud alpha projects create` command.

### Google Compute Engine

* Add new key to --network-interface in `alpha compute instances create`,
  and `alpha compute instance-images create` commands: no-address.

* Make flag --network-interface visible in `alpha compute instances create`,
  and `alpha compute instance-templates create` commands.

### Google Container Engine

* Fix a bug in `gcloud beta container images list-tags`.

* Add support for kubernetes labels on new clusters and nodepools by passing
  `--node-labels=label1=value1,label2=value2...`. See
  `gcloud container clusters create --help` and
  `gcloud container nodepools create --help` for more details and
  examples.

## 129.0.0 (2016-10-05)

### Google Cloud Bigtable

* `gcloud alpha bigtable` commands are deprecated and will be removed in
  release 134.0.0. All users should migrate to `gcloud beta bigtable` commands.

### Google Cloud ML

* Add `gcloud beta ml jobs stream-logs` JOB [--allow-multiline-logs]
  [--polling-interval=POLLING_INTERVAL; default="60"] [GLOBAL-FLAG ...]
  to show logs from a running Cloud ML job.

### Google Compute Engine

* The --replacement flag is no longer required in the
  `gcloud compute images deprecate` command.

* Add --create-disk flag to `gcloud alpha compute instances create`.

* Add --create-disk flag to `gcloud alpha compute instance-templates create`.

### Google Container Engine

* Can now specify the cluster-version when creating Google Container Engine
  clusters.

* Update kubectl to version 1.4.0.

### Google Container Registry

* `docker-credential-gcr` bug fixed.

### Go SDK

* Update Go SDK component to use 20160927 release, based on Go 1.6.3.

### Stackdriver Logging

* Added commands to manage logs-based metrics in Stackdriver Logging.

## 128.0.0 (2016-09-28)

### Breaking Changes

* The `gcloud auth application-default` commands are now in GA.
  `gcloud auth login` no longer writes Application Default Credentials, use
  `gcloud auth application-default login` instead.

### Google App Engine

* Java apps that have no app.yaml file are now auto-detected based on a
  WEB-INF/appengine-web.xml file when launching the dev_appserver.

* Fixed timestamp processing issue
  (https://issuetracker.google.com/issues/35907291) in
  `gcloud app logs read`.

### Google Cloud Functions

* Added the `--memory` flag to `gcloud alpha functions deploy` to allow
  configuration of amount of memory available during function execution.

### Google Cloud ML

* Added `gcloud beta ml local train` command which runs user code locally and
  injects the environment variables necessary for running distributed TensorFlow
  jobs in subprocesses.

* `gcloud beta ml jobs submit training` now takes a path to a python package,
  and either (1) builds from the setup.py file at the package root, or (2)
  generates a setup.py file and builds the package. It then uploads the
  generated tar.gz archives to Google Cloud Storage.

### Google Compute Engine

* Internal load balancing is now in beta.

* Cloud Source Repositories control scope is now included in the list of default
  scopes granted to newly created instances and instance templates.

* Added multi-nic support to `gcloud alpha compute instances create` and
  `gcloud alpha compute instance-templates create`.

### Google Container Engine

* Can now create temporary clusters with all kubernetes alpha features enabled
  using `gcloud alpha container clusters create --enable-kubernetes-alpha`.

* Added support for kubernetes labels on new clusters and nodepools by passing
  `--node-labels=label1=value1,label2=value2...`. See
  `gcloud alpha container clusters create --help` and
  `gcloud alpha container nodepools create --help` for more details and
  examples.

### Google Container Repository

* Added the ability to configure where (and in which order)
  docker-credential-gcr searches for Google Container Registry credentials. Run
  `docker-credential-gcr config --help` for more details.


## 127.0.0 (2016-09-21)

### Google BigQuery

*  New load/query option in BigQuery client to support schema update within a
   load/query job.
*  New query option in BigQuery client to specify query parameters in
   Standard SQL.

### Google Cloud Dataproc

* `gcloud dataproc clusters create` flag `--preemptible-worker-boot-disk-size`
   can be used to specify future preemptible VM boot disk size.

### Google Container Engine

*  Update kubectl to version 1.3.7.

### Google Cloud ML

*  New `gcloud beta ml predict` command to do online prediction.
*  New `gcloud beta ml jobs submit prediction` command to submit batch
   prediction job.

### Google Cloud SQL

*  New arguments to beta sql instances create/patch commands for Cloud SQL
   Second Generation instances:
   * `--storage-size` Sets storage size in GB.
   * `--maintenance-release-channel` Sets production or preview channel for
     maintenance window.
   * `--maintenance-window-day` Sets day of week for maintenance window.
   * `--maintenance-window-hour` Sets hour of day for maintenance window.
   * `--maintenance-window-any` (patch only) Clears maintenance window setting.



## 126.0.0 (2016-09-14)

### Breaking changes

* The HTTP error messages for these command groups have changed to a common
  format:

  * `gcloud dns`
  * `gcloud genomics`
  * `gcloud logging`

  Some command groups have not changed yet. That should happen in the next
  release. You can use `--log-http` to see the details of all HTTP requests and
  responses on the standard error.

### Google Compute Engine

* Add `--connection-draining-timeout` flag to `gcloud compute backend-services
  {create,update}` commands.
* Added `gcloud alpha compute instance-groups managed update-instances` and
  `stop-proactive-update-instances` commands.

### Google Cloud Debugger

* The `gcloud beta debug source gen-repo-info-file` command, which generates
  repository information files for the Stackdriver Debugger, is now available.

### Google Container Registry

* The `gcloud container images` command group is now available in the beta
  release track.

### Cloud SDK

* Added `core/custom_ca_certs_file` property to allow use of a custom CA
  certificate file.

### Emulators

* Cloud Datastore emulator now supports proto-over-HTTP and JSON for the v1 API.
  This version of the emulator resolves the deserialization issues in 123.0.0.


## 125.0.0 (2016-09-07)

### Google BigQuery

* `gcloud alpha bigquery` is no longer available.  To use BigQuery, use the `bq`
  tool shipped with the Cloud SDK.

### Google Compute Engine

* Add support to change the default service account on a Compute Engine project
  (alpha release) via the following command:
  `gcloud alpha compute project-info set-default-service-account`

* Support multiple network interface cards in
  `gcloud alpha compute instances create` command.

* Add `gcloud alpha compute instances set-scopes` command.

### Google Container Engine

* Update kubectl to version 1.3.6.

### Google Container Repository

* Released bug fixes for docker-credential-gcr as v1.0.1, please rerun
  `docker-credential-gcr configure-docker` after updating.

### Google Cloud Logging

* `gcloud logging create` and `gcloud logging update` echo back the writer
  identity associated with the sink.

### Google Cloud Dataflow

* The Dataflow CLI is now in Beta.

### Google Cloud Deployment Manager

* `gcloud deployment-manager manifests describe` with no manifest specified will
  show the latest manifest of the given deployment.

### Emulators

* `gcloud beta emulators datastore start` now defaults to the new version of the
  emulator which supports Cloud Datastore API v1 and v1beta3 over gRPC,
  proto-over-HTTP, and JSON-over-HTTP.

## 124.0.0 (2016-08-31)

### Breaking Changes

* Creating a Global Backend Service in Compute Engine will warn you if you don't
  use --global. In the future this will be required.
* Major changes were made to `gcloud alpha dataflow` commands. See Google Cloud
  Dataflow section for more information

### Google App Engine

* Added endpointscfg.py to the app-engine-python component.
* Skipped modules during upload will now be logged at INFO level instead of
  WARN.

### Google Cloud Dataflow

* Changes to `gcloud alpha dataflow` commands:
  * Changed the `jobs list` command now has a "status" filter. This change is
    from the JobsV1B3 API. You can now use the API's filter request as either
    "all", "terminated", or "active".
  * Added the `logs list` command. This dumps the log messages created from the
    workflow. Please see the help docs for more information.
  * Renamed `metrics tail` to `metrics list`.
  * Renamed `metrics list` --origin flag to --source. This can be either "user"
    for custom-made aggregates or "service" otherwise. This defaults to "all".
  * Added `metrics list` --transform flag. This filters all metrics that prefix
    regex matches the argument.
  * Removed `jobs list` --job-name flag.
  * Added `jobs list` --uri flag.

### Cloud Tools for Powershell

* Add Google Cloud Sql and Google Cloud Dns powershell cmdlets.

### Google Cloud Deployment Manager
* `deployment-manager deployments create` with a template file will copy
  the outputs specified in the schema to the generated config file.

### Google Cloud Functions

* Add alpha  functions logs read command

### Google Container Repository

* docker-credential-gcr (GCR's Docker credential helper) has been added as an
  optional component for GCR customers running Docker client v1.11 or newer. Run
  `gcloud components install docker-credential-gcr` followed by
  `docker-credential-gcr configure-docker` in order to configure Docker. You may
  then use Docker normally, without any gcloud interaction at all (e.g.
  `docker pull gcr.io/myproject/myimage`)

### Google Container Engine

* Update kubectl to version 1.3.5.

### Google Compute Engine

* Added `gcloud compute instances stop` --discard-local-ssd flag.
* Added windows-sql-cloud project to the default public image list.

### Cloud SDK

* `gcloud config get-value` is now available in the BETA release track.

### Emulators

* Cloud Datastore emulator now supports proto-over-HTTP and JSON for the v1 API.

### Cloud SQL

* New commands added to beta:
  * `gcloud beta sql backups create`
  * `gcloud beta sql backups create`
  * `gcloud beta sql instances failover`
* New flags for `gcloud beta sql instances create`:
  * --failover-replica-name
  * --replica-type
  * --storage-auto-increase
  * --storage-type
* New flags for `gcloud beta sql instances patch`:
  * --storage-auto-increase
  * --no-storage-auto-increase


## 123.0.0 (2016-08-24)

### Google App Engine

* The `gcloud beta app regions list` command is now available. It shows support
  for the standard and flexible environments for each geographical region.

* `gcloud app versions describe` now shows more extensive information about the
  deployed version, including the container used for App Engine Flexible.

* Built-in versions will no longer appear when listing App Engine versions
  (`gcloud app versions list`).

### Cloud SDK

* Users can now make logs garbage collection optional by changing the value of
  the `core/max_log_days` property to 0.

* The `gsutil` component has been upgraded to version 4.21.

### Google Cloud Machine Learning

* Added `gcloud alpha ml jobs submit training` command to start a Cloud ML
  training job.

### Google Compute Engine/Networking

* `compute networks switch-mode` and `compute networks expand-ip-range` commands
  are now in beta.

### Google Container Engine

* Image Type selection for `gcloud container` commands is now GA.

### Google Cloud Deployment Manager

* `gcloud deployment-manager deployments` will now display `INTENT` when
  applicable.

### Emulators

* A bug causing the rejection of unpadded base64-encoded bytes data in the
  Pub/Sub emulator (INVALID_ARGUMENT: "Payload isn't valid for request") has
  been fixed.


## 122.0.0 (2016-08-17)

### Google App Engine

* Added `gcloud beta app instances describe`, which shows information about a
  running App Engine Flexible instance.

* Add new flags to `gcloud alpha functions deploy`, hide flags that are being
  replaced with new flags, log a warning when someone uses a flag to be
  replaced:

  * *--bucket* to be replaced by *--stage-bucket*.
  * *--source* to be replaced by *--local-path* (for code in local file system)
    and *--source-path* (for code in Google Code Storage).
  * *--trigger-gs-uri* to be replaced by *--trigger-bucket*.

### Cloud SDK

* `gcloud init` now has an opt-in for listing all user projects, which
  could be in the hundreds. The user can now to opt-in to see all projects,
  or they can just type in a known project.

### Google Cloud Machine Learning

* Add `gcloud alpha ml models versions` group to manage Cloud ML model versions.
* Add `gcloud alpha ml models` group to manage Cloud ML models
* Add `gcloud alpha ml jobs` group to manage Cloud ML training and prediction
  jobs.

### Google Cloud Genomics

* The `gcloud genomics pipelines run` command now uses the default Compute
  Engine zone property if the *--zones* flag is not specified.

### Google Cloud Pub/Sub

* Fixed error handling bug in `gcloud beta pubsub subscriptions create`
  (https://issuetracker.google.com/issues/35907190).

### Google Compute Engine

* Enable *--health-checks* flag for the `gcloud beta compute backend-services`
  `create` and `update` commands.

### Google Container Builder

* *RepoSource* is now available as a source for builds.
* *BuildSteps* now respect arbitrary dependencies on each other as defined by
  the `waitFor` field.

### Google Container Engine

* Update kubectl to version 1.3.4.


## 121.0.0 (2016-08-10)

### Google App Engine

* Cloud SDK dev_appserver.py supports running App Engine Standard Go
  applications.

* `gcloud app instances disable-debug` now deletes the instance rather than
  restarting it. New instance(s) may spawn based on the app's scaling settings.

### Google Cloud Dataproc

* Added the `--preemptible-worker-boot-disk-size` flag to
  `gcloud dataproc clusters create`.

### Google Compute Engine

* `gcloud compute backend-services` session affinity flags have been promoted
  from beta to GA.

### Google Container Engine

* Changed the `container/use_client_certificate` property default value to
  `false`. This makes the `gcloud container clusters create` and
  `gcloud container clusters get-credentials` commands configure `kubectl` to
  use Google OAuth2 credentials by default instead of the legacy client
  certificate.

### Google Cloud Dataflow

* Added the `gcloud alpha dataflow jobs drain` command. The `drain` command
  takes a streaming job and stops receiving new data from the sources. It then
  processes the buffered data. For more information please see the documentation
  for stopping a running pipeline at
  <https://cloud.google.com/dataflow/pipelines/stopping-a-pipeline>.

### Google Cloud DNS

* Fix for issue reported in:
  <http://stackoverflow.com/questions/38636010/removing-dns-entries-with-gcloud>.

### Stackdriver Error Reporting

* Added `gcloud beta error-reporting events report` command for reporting
  errors.


## 120.0.0 (2016-08-03)

### Deployment Manager

* `deployment-manager resources list` will show INTENT when the resource STATE
  is `IN_PREVIEW`.

* `deployment-manager deployments describe` will show output values in addition
  to listing the resources.

### Emulators

* Added a `gcloud beta emulators bigtable env-init` command to export
  environment variables required to communicate with the bigtable emulator.

* The Pub/Sub emulator now correctly starts the push loops when creating a push
  subscription.

### Google Cloud DNS

* `gcloud dns` now supports CAA records.

### Google Cloud Storage

* Update gsutil component to 4.20.
  See: <https://github.com/GoogleCloudPlatform/gsutil/blob/v4.20/CHANGES.md>

### Google Compute Engine/Networking

* `gcloud alpha compute instance-groups managed wait-for-stable` command waits
  until all `current_action` fields are set to none and there are only no
  `pending_actions` in managed instance group.

* `gcloud compute xpn` commands now available in the alpha release track. These
  commands configure cross-project networking.

* `gcloud compute networks subnets {get,set}-iam-policy` commands now available
  in alpha.

### Google Container Engine

* Update kubectl to 1.3.3.


## 119.0.0 (2016-07-27)

### Google BigQuery

* Added support for dataset labels. See:
  <https://cloud.google.com/bigquery/docs/labeling-datasets> for more details.

* Now sending progress output to stderr and query output to stdout. This fixes
  <https://issuetracker.google.com/issues/35906906>.

### Google Cloud SDK

* `gcloud auth login` will stop writing application default credentials in a
  future release. See:
  <https://developers.google.com/identity/protocols/application-default-credentials#toolcloudsdk>
  for more information.

* Command line flag abbreviations are now deprecated and produce warning
  messages. Flag abbreviations will be completely disabled in release 130.0.0.
  This pre-empts the problem of future flag additions making some flag
  abbreviations ambiguous, possibly breaking scripts.

### Google Cloud SQL

* Added the `gcloud beta sql users` command group with commands that enable
  management of users on Cloud SQL instances.

### Google Cloud Platform Projects

* `gcloud alpha projects update` now support labels.

### Google Container Engine

* Added the `delete` command to the `gcloud alpha container images` command
  group.


## 118.0.0 (2016-07-20)

### Emulators

* There is a new `gcloud beta emulators start bigtable` command for starting a
  Cloud Bigtable emulator.

### Google Compute Engine/Networking

* `gcloud alpha compute backend-services` and `forwarding-rules` commands now
  support the internal load balancing scheme. Please use
  `--load-balancing-scheme=internal` flag when creating these resources.
  In addition `gcloud alpha compute forwarding-rules create` supports
  `--backend-service` flag to allow forwarding to internal load balancers.

* Beta release of `compute connect-to-serial-port` command for
  Interactive Serial Console support. See
  http://cloud.google.com/compute/docs/instances/interacting-with-serial-console
  for details.

### Google Container Engine

* Bump kubectl from 1.2.4 to 1.2.5.

### SQL

* `gcloud beta sql instances create` supports new database type MYSQL_5_7.

### Cloud Tools for PowerShell

* Beta launch of Google Cloud PowerShell. PowerShell cmdlets for managing
  Google Cloud Storage and Google Compute Engine.
  For more information see
  https://googlecloudplatform.github.io/google-cloud-powershell.


## 117.0.0 (2016-07-13)

### Google Compute Engine

*   Regional Managed Instance Groups commands are now in beta.

*   `target-ssl-proxies` commands are now in beta.

*   Connection-based load balancing commands are now in beta.

*   Added `--connection-draining-timeout` flag to
    `gcloud beta compute backend-services` `create` and `update` commands.

*  `health-checks` command group is now in beta.


### Google Container Engine

*   Local SSDs are now supported for clusters via the `--local-ssd-count`
    flag (in beta).

*   Added `--additional-zones` flag to `gcloud beta container clusters update`.

### Google Container Builder

*   The `gcloud alpha container builds create` command now supports using
    JSON or YAML config files to configure builds, using the `--config` flag.


## 116.0.0 (2016-06-29)

### Breaking Changes

*   `gcloud alpha dataflow list-messages` datetime values are now displayed in
    ISO 8601 format: 2015-01-15T12:31:07 ('T' separating the date and time
    components).

### Google App Engine

*   The `gcloud app` surface is now available in the GA and beta release tracks.
    Please use `gcloud app` instead of `gcloud preview app` (some features only
    available in the beta release track).

*   Add `gcloud app open-console` command, which opens the App Engine dashboard
    in a web browser.

### Google Cloud Datastore emulator

*   The Cloud Datastore emulator can accept an IPv6 address for the
    `--host-port` argument.

*   Cloud Datastore emulator no longer fails when trying to load an index.yaml
    file.

### Google Container Builder

*   The `gcloud alpha container builds` command group creates and manages
    builds using the Google Container Builder service. See
    https://cloud.google.com/container-builder/docs/ for API documentation.

### Google Cloud Dataproc

*   Added `--preemptible-worker-boot-disk-size` flag, which allows configuration
    of preemptible worker boot disk, to `gcloud beta dataproc clusters create`.

### Google BigQuery

*   New query option in BigQuery client to specify a limit on bytes billed for
    the query.

### Google Cloud Bigtable

*   Added `gcloud beta bigtable instances` group to manage Bigtable instances.

*   Added `gcloud beta bigtable clusters` group to manage Bigtable clusters
    within instances.

*   Known issue: `gcloud beta bigtable instances create` is an asynchronous
    operation by default and will not block with or without the `--async` flag.

## 115.0.0 (2016-06-22)

### Breaking Changes

*   (Google Compute Engine) The `debian-7` and `debian-7-backports` image
    aliases have been removed, as Debian 7 has reached end-of-life

*   (Google Compute Engine) The `--port-range` flag in the `gcloud compute
    forwarding-rules create` command has been deprecated; please use the
    `--ports` flag instead. At this time only consecutive ports can be
    specified.

*   (Google Compute Engine) `gcloud alpha compute rolling-updates` commands
    have been deprecated and removed.

*   (Google Container Engine) The `--wait` flag for the `gcloud container
    clusters` command group is now deprecated; please use the `--async` flag
    instead.

### Cloud SDK

*   Users will now be prompted to set Cloud SDK proxy properties if network
    issues are detected while running `gcloud init`.

### Google Compute Engine

*   `gcloud compute backend-services {create,update} --enable-cdn` flag has been
    promoted from beta to GA.
*   `gcloud compute url-maps invalidate-cdn-cache` has been promoted from beta
    to GA.
*   The `--remote-traffic-selector` flag in `gcloud compute vpn-tunnels create`,
    which allows specifying a list of CIDR blocks to be used during IKE\IPsec
    traffic selectors negotiation, is now available in the GA release track.


### Google App Engine

*   Add `gcloud preview app versions describe` command.


### Deployment Manager

*   (beta only) deployment-manager now supports rollbacks with the
    `--manifest-id` flag: `gcloud beta deployment-manager deployments update
    deployment-name --manifest-id=MANIFEST-ID`

### Docker

*   `gcloud docker` now respects the `$DOCKER_CONFIG` environment variable

### Emulators

*   The Cloud Datastore emulator now has an `env-unset` command which prints the
    commands to unset any environment variables set by running the commands in
    the output of the `env-init` command.


## 114.0.0 (2016-06-15)

### Breaking Changes

*   (Google Compute Engine) Deprecated the use of image aliases. Please use
    image families instead. See https://cloud.google.com/compute/docs/images for
    more details.

*   (Google App Engine) Removed the deprecated and unused `--force` flag for
    `gcloud app deploy`.

*   (Google Cloud Debugger) Removed `gcloud alpha debug` command group; debug
    commands are now accessible solely using `gcloud beta debug`.


### Google Compute Engine

*   The Customer-Supplied Encryption Keys (CSEK) feature for Google Compute
    Engine disks is now available in the GA release track. See
    https://cloud.google.com/compute/docs/disks/customer-supplied-encryption for
    more details.

*   Added autocompletion for the URL map name in
    `gcloud compute url-maps invalidate-cdn-cache`.

*   Added `gcloud alpha compute networks switch-mode` command.

*   Added `gcloud alpha compute networks subnets expand-ip-range` command.

*   Added `--remote-traffic-selector` flag, which allows specifying a list of
    CIDR blocks to be used during IKE\IPsec traffic selectors negotiation, to
    `gcloud beta compute vpn-tunnels create`

*   Fixed `gcloud compute routes list` command to display vpn-tunnel as
    `NEXT_HOP`.

### Google App Engine

*   Parallelized source file uploads in `gcloud preview app deploy` for
    increased speed. To revert to the old behavior in event of a problem, please
    run `gcloud config set app/num_file_upload_processes 1`
    and report an issue here:
    https://issuetracker.google.com/issues/new?component=187143

*   Google App Engine components updated to 1.9.38.
    Please visit the following release notes for details:
    *   Python - https://cloud.google.com/appengine/docs/python/release-notes
    *   Java - https://cloud.google.com/appengine/docs/java/release-notes

*   Added support for Managed VMs instances in
    `gcloud preview app instances enable-debug` and
    `gcloud preview app instances disable-debug`.

### Docker

*   Fixed a bug where Windows users experienced docker authentication issues
    when the `%HOME%` variable was set and differed from `%USERPROFILE%`

### Emulators

*   Fixed behavior of pub/sub emulator subscription topic names when their
    respective topics are deleted. They should now be set to `_deleted-topic_`.


## 113.0.0 (2016-06-08)

### Cloud SDK

* gcloud now uses Internet Explorer proxy configuration settings when on
  Windows, or MacOSX SystemConfiguration proxy settings on Mac, if the gcloud
  configurations `proxy/*` are not set.

### Google Compute Engine

* `gcloud compute ssh` no longer generates keys when invoked with --plain flag.
* `gcloud compute routers` is now GA.

### Google Genomics

* `gcloud genomics pipelines run` command supports passing "inputs" and
  "outputs" as repeated parameters.


## 112.0.0 (2016-06-01)

### Cloud SDK

* Updated error messages for `gcloud projects` surface.
* `gcloud docker` commands now take less time to execute when the Docker client
  is not configured to use a credential helper.

### Google App Engine

* The `--docker-build` flag and related `app/docker_build` property, as well as
  `app/use_cloud_build` property have been deprecated and will be removed in a
  future release. By default, Docker images are built remotely using Google
  Container Builder. To perform a Docker build on a different host, you can run:

    docker build -t gcr.io/project/service.version .
    gcloud docker push gcr.io/project/service.version
    gcloud preview app deploy --image-url=project/service.version

### Google Compute Engine

* Added `--licenses` flag to `gcloud compute images create`.

### Google Container Engine

* Fixed bug where only 16-bit kubectl was installed on Windows.
  Now Installs 32 and 64-bit.

### Google Genomics

* `gcloud alpha genomics datasets/callsets` name argument is a flag,
  instead of positional.
* `gcloud alpha genomics pipelines run` command now accepts "zones"
  command-line argument.
* `gcloud alpha genomics datasets restore/update` and
  `variantsets delete/describe` now take string IDs instead of ints.

### Deployment Manager

* `gcloud deployment-manager deployments describe` output only reports errors
  once, includes status for resources, and includes more useful fields.


## 111.0.0 (2016-05-25)

### Google App Engine

*   `gcloud docker` commands are now less verbose during the authentication
    operation.

### Google Container Engine

*   `gcloud container clusters update` command now GA.
*   `gcloud container node-pools` commands are now GA.

### Google Compute Engine

*   Enabled Strict Host Key Checking for SSH connections (after the first
    connection) to instances. Also adds a new flag to `gcloud compute ssh`
    called `--strict-host-key-checking` to control the StrictHostKeyChecking
    option.
*   Add support for customer-supplied encryption keys to `gcloud beta compute
    instances start`. (in beta track)
*   Implemented backend-service connection based balancing mode.

### Google Service Registry

*   Launched `gcloud alpha service-registry`. (alpha track)
    Users will need to sign up
    [here](https://docs.google.com/forms/d/11SfJGB3LUGgT_aSMlVzWoJ0ec2fHKwk0J4e-zTNw0Bs/viewform?edit_requested=true)
    before enabling this API in their projects.

### Deployment Manager

*   Added `gcloud alpha deployment-manager runtime-configs`. Alpha commands for
    Deployment Manager's Runtime Config API.

### Emulators

*   Adds a `--legacy` flag to gcloud beta emulators datastore. The flag is set
    by default and maintains existing behavior with support for Cloud Datastore
    API v1beta2. Passing `--no-legacy` uses a new version of the Cloud Datastore
    Emulator which supports Cloud Datastore API v1beta3 over gRPC, JSON, and
    proto-over-HTTP. The default behavior of the legacy flag will change in a
    future release.

### Organizations

*   Launched `gcloud alpha orgranizations`. (alpha track)

## 110.0.0 (2016-05-18)

### Google IAM

*   The `gcloud iam` command group is now available in GA. The `gcloud beta iam`
    will still be available for several more releases.

### Google App Engine

*   Fixed issue with the `--docker-build=local` flag in the `gcloud preview app
    deploy` command with docker version 1.10+. Note that local Docker builds
    with Docker version 1.11 will still fail when using the new Docker external
    credentials; please downgrade to the plain credential store.
    https://issuetracker.google.com/issues/35906927

### Google Container Engine

*   `gcloud beta container` commands (e.g. `container create`) now support
    specifying ImageTypes.
*   The `gcloud container clusters list` command now sorts the clusters based on
    zone and then on cluster name.
*   The `gcloud container clusters create` command now allows specifying
    --max-nodes-per-pool (default 1000) to create multiple node pools for large
    clusters.

### Google Compute Engine

*   The `gcloud compute backend-services` backend commands now support
    --instance-group-zone and --instance-group-region to qualify instance group
    specifically. Before --zone, --region was used to qualify all resource
    arguments, where as now it is used to qualify backend service.

### Google Genomics

*   The `genomics variantsets create` command now supports the --name and
    --description flags.
*   The `genomics variantsets delete` command displays the name of the variant
    set before prompting the user to delete it.
*   The genomics `variantsets describe/list` commands display variant set names
    and descriptions.

### Emulators

*   The Google Cloud Datastore emulator supports a new environment variable for
    client library configuration.
*   The Google Cloud Datastore emulator flag --store-on-disk has been fixed to
    accept a false value using --no-store-on-disk. Previously,
    --store-on-disk=False could be specified but wasn't respected.

### Debug

*   The `The gcloud debug` command group is now in Beta.

### Misc.

*   The Cloud SDK Windows installer is now dual signed SHA1 and SHA256. The
    executable is signed with both authenticode and RFC3161 signatures.
*   The winkeygen.exe executable is also now dual signed, like above.

## 109.0.0 (2016-05-11)

### Google App Engine

*   Google App Engine components updated to 1.9.37.
    * Please visit the following release notes for details:
      * Python - https://cloud.google.com/appengine/docs/python/release-notes
      * Java - https://cloud.google.com/appengine/docs/java/release-notes
*   Fixed issue with failed uploads in gcloud preview app-deploy
    (https://issuetracker.google.com/issues/35906909).
*   Deprecated --server flag for app commands; its use is unsupported.

### Google Compute Engine

*   Removed the `gcloud alpha compute autoscaler` command group.
*   Removed deprecated `gcloud compute backend-services add-backend` --group
    flag in favor of --instance-group.
*   `gcloud compute copy-files` now exits with the return code of the called
    `scp` process.
*   Added support for customer-supplied encryption keys to the
    `gcloud beta compute disks snapshot` command.
*   Remove google-containers from default gcloud public image project.

### Google Container Engine

*   Fixed bug listing clusters with no node pools.
*   `gcloud container resize` command now supports multi-zone clusters.

### Google Error Reporting

*   Added the `gcloud beta error-reporting events delete` command to cleanup
    Stackdriver Error Reporting data.

## 108.0.0 (2016-05-04)

### Breaking Changes

*   The `gcloud preview app modules get-logs` command is now deprecated. Please
    use the new command `gcloud preview app logs read` instead.

### Google App Engine

*   Fixed a bug which caused `gcloud preview app deploy` to fail when run from a
    git directory.

### Google Cloud SDK

*   Deprecated user property files (~/.config/gcloud/properties) will no longer
    be read by gcloud.  If you are not already using `configurations`, your
    properties will be automatically migrated for you.  No action is required on
    your part.

*   The `--format` flag now supports four more transforms: `extract`, `join`,
    `slice`, and `split`.

### Google Cloud Debugger

*   Added the `gcloud alpha debug snapshots wait` command.

### Google Compute Engine

*   The `gcloud alpha compute instance-groups managed list-instances` command
    output now includes the `INSTANCE_TEMPLATE` and `STATUS` columns.

### Google Container Engine

*   Update kubectl to v1.2.3

### Google Genomics

*   `gcloud alpha genomics variants describe/delete/update` commands now accept
    non-integer variant IDs.


## 107.0.0 (2016-04-27)

### Google Compute Engine

* Enable cursor ("start") support for get-serial-port-output in Beta.
* Add tail-serial-port-output in Beta.
* Image families are now in General Availability (GA).

### Google App Engine

* Google App Engine components updated to 1.9.36.
 * Please visit the following release notes for details:
   * Python - https://cloud.google.com/appengine/docs/python/release-notes
   * Java - https://cloud.google.com/appengine/docs/java/release-notes

### Deployment Manager

* Creating and updating Deployments will now display output values in addition
  to listing the resources.

### Google Container Engine

* `gcloud container clusters resize` now allows specifying a node pool.

### Cloud Debugger

* Added `gcloud alpha debug` command surface to allow control of the
  Cloud Debugger from the command line.

### Google BigQuery

* BigQuery support for partitioned tables.


## 106.0.0 (2016-04-20)

### Breaking Changes

*   Python 2.6 support in the Cloud SDK is deprecated and releases will stop
    supporting Python 2.6 on September 1, 2016.  Please update your Python
    installation to 2.7 to ensure compatibility with future Cloud SDK versions.
*   `gcloud preview app modules` commands are now deprecated (see "Google App
    Engine" section for more details).
*   `module` parameter in application .yaml files is now deprecated (see "Google
    App Engine" section for more details).
*   `--format` printer legend attributes are now deprecated (see "Cloud SDK"
    section for more details).

### Cloud SDK

*   The --format printer legend attributes are deprecated and will be removed in
    release 124.0.0. The legend attribute docs have been removed.
*   The gcloud compute, functions, genomics, logging, and projects list commands
    now  support the `--filter` flag.

### Google Cloud Storage

*   Update gsutil component to 4.18 (https://github.com/GoogleCloudPlatform/gsutil/blob/v4.19/CHANGES.md)

### Google App Engine

*   App Engine "modules" are being renamed to "services".
    *   The `gcloud preview app modules` commands are now deprecated (except
        `gcloud preview app modules get-logs`). Please use the just-added
        `gcloud preview app versions`, `gcloud preview app services`, and
        `gcloud preview app instances` commands instead.
    *   The 'module' parameter in application .yaml files is deprecated; please
        use 'service' instead.
*   Fixed `MaxRetrialsException` for `gcloud preview app deploy` of standard
    (not MVM or flexible) App Engine apps with `.git` directory present
    (<https://issuetracker.google.com/issues/35906804>).
*   Fixed bug in `gcloud preview app deploy` where `--docker-build=local` did
    not work when `app/use_cloud_build` was enabled.

### Google Compute Engine

*   Add `--no-creation-retries` flag to `compute instance-groups managed resize`
    command in alpha and beta.

### Google Container Engine

*   Fix bug that caused kubectl component to be missing from components list on
    Windows.
*   `gcloud container clusters create` now allows specifying multiple zones
    within a region for your cluster's nodes to be created in.
*   Update kubectl to v1.2.2


## 105.0.0 (2016-04-13)

### Breaking Changes

* `health-checks` commands for protocol HTTP2 have been removed.

* Rename the `alpha compute url-maps` `invalidate-cache` and
  `list-cache-invalidations` subcommands to `invalidate-cdn-cache` and
  `list-cdn-cache-invalidations`, respectively.

### Cloud SDK

* Suppress progress tracker animations if not outputting to a terminal.

* `gcloud components list` now supports the `--filter` flag and queries like:
  `gcloud components list --filter=id:app-engine-java
  --format="value(state.name)"`

### Google Compute Engine

* Promote Cloud CDN functionality from alpha to beta.

### Google App Engine

* File uploads during gcloud preview app deploy have been improved. If you have
  any trouble, you can revert to the old behavior with
  `gcloud config set app/use_gsutil true`.

## 104.0.0 (2016-04-06)

### Cloud SDK

* `gcloud init` no longer offers to clone
  [Google Cloud Repositories](https://cloud.google.com/source-repositories/docs/).
  Please use `gcloud source repos clone` at   any time after running
  `gcloud init`.

### Google Compute Engine

* `gcloud beta compute` commands now support image families.

### Google App Engine

* Users of `gcloud preview app deploy` can set the timeout for the
  Container Builder service using the app/cloud_build_timeout
  property.

### Google Container Engine

* kubectl component is now available for Windows (64-bit only).

* `gcloud alpha container clusters update` now allows enabling/disabling
  addons for Container Engine clusters via `--update-addons` flag.

* `gcloud container clusters create` now supports disabling
  HPA and Ingress controller addons via `--disable-addons` flag.

### Google Genomics

* `gcloud alpha genomics variants import` now supports configurable variant info
  field merging via the info_merge_config command line flag.

## 103.0.0 (2016-03-30)

### Google Cloud Storage

 * Update gsutil component to 4.18 (https://github.com/GoogleCloudPlatform/gsutil/blob/v4.18/CHANGES.md)

### Google App Engine

 * Add fingerprinting support for PHP applications. You can now run
   `gcloud preview app gen-config` to auto-generate the necessary configuration
   for deploying PHP applications to the App Engine Flexible Environment.

### Google Container Engine

 * gcloud container clusters create|get-credentials will warn/error
   respectively if the HOME env var isn't set. The variable
   is required to store kubectl credentials (kubeconfig).

### Google Compute Engine

  * Enable support for: gcloud compute disks resize.

## 102.0.0 (2016-03-22)

### Breaking Changes

* The `gcloud alpha container nodepools` commands have been renamed to
  `node-pools`. Functionality and parameters haven't changed.

* `gcloud beta iam list-grantable-roles` now returns a list of roles instead of
  a dictionary with a single key 'roles' with the value of a list of roles.

* `gcloud config configuration describe` output has changed to include the
  configuration `name` and `is_active` fields. All configuration properties are
  now part of the `properties` field.

### Cloud SDK

* --format=json and --format=yaml now list resource attributes with null values.

### Google App Engine

* Use of the Google Container Builder service is now enabled by default for
  all managed VMs deployments.

  This change may require you to enable the Container Builder API. Visit
  <https://console.developers.google.com/apis/api/cloudbuild.googleapis.com/overview?project=*PROJECT_ID*;>
  to enable it, where *PROJECT_ID* is your current project ID.

* Updated Google App Engine components to 1.9.34.
  Please visit the following release notes for details:
  * Python - https://cloud.google.com/appengine/docs/python/release-notes
  * Java - https://cloud.google.com/appengine/docs/java/release-notes

### Google Compute Engine

* Added `gcloud compute backend-services` session affinity commands.

* Added `gcloud compute http-health-checks` and `https-health-checks` commands.

* Added `gcloud alpha compute target-ssl-proxies` commands.

* Extended `gcloud compute forwarding-rules` to support `target-ssl-proxies`.

### Google Container Engine

* `gcloud container clusters list` will output a warning if there were zones
   for which it could not retrieve results.

* Updated kubectl to version 1.2.0.


## 101.0.0 (2016-03-16)

### Billing

* Added [`gcloud alpha billing`](https://cloud.google.com/sdk/gcloud/reference/alpha/billing/)
command surface.

### Google App Engine

* App Engine components updated to 1.9.34. Please visit
  <https://cloud.google.com/appengine/docs/python/release-notes> for the Python
  release notes and <https://cloud.google.com/appengine/docs/java/release-notes>
  for the Java release notes.

### Google BigQuery

* Updated the `bq` tool to version v2.0.24. Also includes fix for
  <https://issuetracker.google.com/issues/35906711>.


## 100.0.0 (2016-03-09)

### Breaking Changes

* `gcloud preview app deploy` deployments that promote the new version to
  receive all traffic will stop the previous version by default.

  To keep the previous behavior, pass the `--no-stop-previous-version` flag,
  or run the following command:

    $ gcloud config set app/stop_previous_version false

### Cloud SDK

* Providing no argument for list- and dict-type flags now results in a warning.
  Instead, please explicitly provide an empty string value. For instance,
  `gcloud command --flag` becomes `gcloud command --flag ''` (for list- and
  dict-type flags only).

### IAM

* Added `gcloud beta iam list-grantable-roles` command for given
  cloud resource.

### Google App Engine

* Fixed `WindowsError: [Error 32]` in the `gcloud preview app deploy` command
  on Windows. Fixes <https://issuetracker.google.com/issues/35906633>.

### Google Container Engine

* Added node pool support to enable heterogeneous clusters (alpha).


## 99.0.0 (2016/3/2)

### Breaking Changes

* Support for the deprecated workspace configurations feature has been removed.
  If you are using gcloud in a workspace, those properties will no longer be
  read.  See `gcloud topic configurations` for information on how to use
  configurations instead.

### Cloud SDK

* Enable gcloud to run in Cygwin 64 bit environments.

* Fail gracefully on unreadable Google Compute Engine credential file. Fixes
  <https://issuetracker.google.com/issues/35906539>.

### Google App Engine

* App Engine components updated to 1.9.33. Please visit
  <https://cloud.google.com/appengine/docs/python/release-notes> for the Python
  release notes and
  <https://cloud.google.com/appengine/docs/java/release-notes> for the Java
  release notes.

* Added `gcloud preview app browse` command.

* Fixed a race condition that caused errors while deploying App Engine Managed
  VM applications.

* Fixed a TLS-related error during gcloud preview app deploy. Alleviates the
  problem in <https://issuetracker.google.com/issues/35906638>.

### Google Compute Engine

* `routers` surface moved to beta and is now accessible via
  `gcloud beta compute routers`

### Google Cloud Dataproc

* Add `--subnet` flag to `gcloud dataproc clusters create`.

### Google Cloud Genomics

* `genomics alpha operations cancel` assumes the `operations/` prefix if not
  present.

### Google Cloud Storage

* Update gsutil component to 4.17


## 98.0.0 (2016/2/24)

* Release 95.0.0 introduced a bug that generated corrupt keys for Windows gcloud
  compute ssh|copy-files. Any keys generated on Windows between 95.0.0 and
  97.0.0 inclusive are rejected by ssh servers. `gcloud compute` has been
  changed to:
  * Fix the winkeygen Windows key generator.
  * Recognize corrupt Windows keys and automatically regenerate them.

* Fixed [#538](https://issuetracker.google.com/issues/35906617).
  Users should no longer get "gsutil ImportError: No module named google"
  errors.

### Google App Engine

* MySqldb "latest" version changed from 1.24b4 to 1.2.5.

### Emulators

* Improves Pub/Sub emulator's ability to handle requests concurrent with HTTP
  pull requests.
* The Pub/Sub emulator attempts to detect and inform users when an unsupported
  API version is used.
* The Pub/Sub emulator now correctly handles absolute URIs in HTTP/Json
  requests.

### Windows support

* Google Cloud SDK no longer needs Python installed when using the Windows
  Installer. The SDK for Windows comes with Python bundled.

## 97.0.0 (2016/2/17)

### Breaking Changes

`gcloud alpha compute routers` now requires manual configuration of interfaces

### Google Compute Engine

* Added flag `--advertised-route-priority` to `gcloud alpha compute routers
  create`
* Added support for regional instance groups in alpha

### Google App Engine

* Ruby runtime now uses the Rack "deployment" environment, instead of "none"

### Google Container Engine

* Added `--master` flag to `gcloud container clusters upgrade`

## 96.0.0 (2016/2/10)

### Breaking Changes

### Google App Engine

* Google App Engine components updated to 1.9.32. Please visit the following
  release notes for details:
  Python - https://cloud.google.com/appengine/docs/python/release-notes
  Java - https://cloud.google.com/appengine/docs/java/release-notes

* The `gcloud preview app gen-config` command now offers to automatically update
  the runtime field in app.yaml if necessary.

### IAM

* The `gcloud beta iam` command group has launched.

### Emulators

* The Pub/Sub emulator now supports Gzip-encoded requests.

### Google Compute Engine

* The gcloud compute copy-files|scp commands on Windows now treat path arguments
  with a drive prefix as local files.

### Configurations

* The `config configurations delete` command now takes multiple configuration
  names.

### Containers

* kubectl is updated to v1.1.7.

* Bugfix on the `gcloud container clusters get-credentials` when run from a
  client without edit permissions.

### Misc. Changes

* The default floating point output format precision is 6. Exponent notation is
  used for abs(n) < 1e-04 and abs(n) >= 1e+09.
* The arrow and page up/down/home/end keys now work in the Windows help pager.

## 95.0.0 (2016/2/3)

### Breaking Changes

* Use `gcloud compute networks create --mode=legacy` to create non-subnet
  networks.

### Google Compute Engine

* `gcloud compute copy-files` and `gcloud compute ssh` on Windows now use
  standard PuTTY plink.exe, pscp.exe and putty.exe. A standalone winkeygen.exe
  generates PuTTY and ssh compatible keys. The Windows PuTTY executables are up
  to date at version 0.66.

### Google Compute Engine subnets

* Added `gcloud compute networks subnets`.

* Added `--mode` flag to `gcloud compute networks create`.

* Added `--subnet` flag to `gcloud compute instances create` and
  `gcloud compute instance-templates create`.

* Added `--local-traffic-selector` flag to `gcloud compute vpn-tunnels create`.

### Google App Engine

* Added support for streaming logs when the `use_cloud_build=1` property is set.

* Moved the nodejs install script into the docker image.

### Projects

* `gcloud projects update|undelete|delete` have been moved to beta.

### gcloud --format

* Added nested table formatting by
  `--format="table(field1,listField2:format=FORMAT-STRING)"` where
  _FORMAT-STRING_ can be any format (json, table, ...).
  Try: `gcloud compute instances list
  --format="table[box](name, disks:format='table[no-heading](deviceName:sort=1,
  kind)')"`

* Added list field aggregation formatting (similar to nested formatting) by
  `--format="table(listField2:format=FORMAT-STRING)"`. When the main table
  has no columns each nested format is aggregated into a single list.
  Try: `gcloud compute instances list
  --format="table(disks:format='table[box](deviceName:sort=1, kind)')"`

## 94.0.0 (2016/1/27)

### Google Compute Engine

* Added `gcloud alpha compute url-maps list-cache-invalidations` command.

### Google App Engine

* Google App Engine components updated to 1.9.31. Please visit the following
  release notes for details:
  Python - https://cloud.google.com/appengine/docs/python/release-notes
  Java - https://cloud.google.com/appengine/docs/java/release-notes

* Added `--runtime` flag to `gcloud preview app gen-config` to specify a runtime
  when a directory identifies as multiple runtimes. This flag can be used in
  conjunction with `--custom`.

### Google Container Engine

* `gcloud container cluster describe` and `list` commands now notify the user
  when their cluster versions are about to go out of support or are unsupported.

### Google Cloud Logging

* `gcloud beta logging write` and `gcloud beta logging logs delete` commands now
  use the V2beta1 API. The `gcloud beta logging write` command now uses the
  global resource descriptor (which translates to "custom.googleapis.com"
  service in V1).

### Cloud Dataproc

* `gcloud beta dataproc clusters create` now supports `--tags` and `--metadata`
  flags to set instance tags and metadata on all instances in the Dataproc
  cluster.

### Pub/Sub Emulator

* A new --host flag can be used to specify the address the emulator should bind
  as. The flag can be left unspecified, set to "localhost", a hostname, or an
  explicit IP address.

### Projects

* Added commands `get-iam-policy`, `set-iam-policy`, `add-iam-policy-binding`,
  and `remove-iam-policy-binding` for the `gcloud beta projects` surface.

* Added the `gcloud projects list` command that can be used to list projects.

## 93.0.0 (2016/1/20)

* kubectrl upgraded to 1.1.4.

* `gcloud beta dataproc cluster create` now supports `--properties` flag to set
  properties for installed packages.

* Datastore emulator's `DATASTORE_LOCAL_HOST` environment variable changed to
  `DATASTORE_EMULATOR_HOST`.

* `gcloud source repos clone` now supports `--dry-run` flag to show equivalent
  git command.

## 92.0.0 (2016/1/13)

*   Because of the rollback of 91.0.0, this release contains all of the changes
    from 91.0.0 in addition to the changes listed below.

### Breaking Changes

*   `gcloud preview app deploy`

    *   Changed deployments to set the deployed versions to receive all traffic
        for their modules by default.

        To keep the old behavior (traffic split remains the same), use the
        `--no-promote` flag or run
        `gcloud config set app/promote_by_default true`.

        Note that your old versions are still running, and must be stopped
        manually. This behavior will change in a future release.

    *   Removed deprecated `--set-default` flag.  Please use `--promote`
        instead.

    *   `gcloud preview app deploy`: Removed deprecated `--env-vars` flag.

*   The output of the `gcloud preview app modules list` command has been
    changed to include the traffic split percentage instead of the 'default
    version' field.

*   Removed deprecated `gcloud preview app modules cancel-deployment` command.

    This command is no longer necessary due to recent improvements in the
    Deployment API.

*   Removed deprecated `gcloud preview app modules download` command.

    This command is no longer necessary due to recent improvements in the
    Deployment API.

*   Removed deprecated `gcloud preview app run` command. Please use
    `dev_appserver.py` instead.

*   Changed behavior of the `--zone`/`-z` flag in the `gcloud dns record-sets`
    command group. This flag can no longer precede the command. For instance,
    `gcloud dns record-sets -z=mz list` will not work, but
    `gcloud dns record-sets list -z=mz` will.

*   Changed `--password-file` option for `sql instances set-root-password`;
    password now does not include trailing newline from password file. This
    matches the documented behavior, but not the previous behavior.
    (Fixes https://issuetracker.google.com/issues/35906498)

*   Removed `meta/active_configuration` from the results of `gcloud config list`
    since it is not a property that can be set. You can continue to use the
    `gcloud config configurations` commands to view and manage your
    configurations.

### Cloud SDK

*   Added `gcloud config` proxy settings. Users can configure `gcloud` to use a
    proxy via the following settings:

    *   `gcloud config proxy/address`

    *   `gcloud config proxy/password`

    *   `gcloud config proxy/port`

    *   `gcloud config proxy/type`

    *   `gcloud config proxy/username`

*   Added `alpha` and `beta` components to Debian packages.

*   Removed unused config properties: `app/hosted_registry`, `app/host`,
   `app/admin_host`, `app/api_host`.

### Google Cloud Logging

*   Migrated to
    [v2beta1](https://cloud.google.com/logging/docs/api/introduction_v2) API
    release.

    *   Moved `gcloud beta logging sinks` commands to `v2beta1`.

    *   Added `gcloud beta logging resource-descriptors` command to display
        supported resources from various services.

    *   Added `gcloud beta logging read` command to retrieve log entries using
        filters.

### Google Container Engine

*   Added `gcloud container clusters resize` for resizing Container Engine
    clusters.

*   Added notifications when node upgrades are available to `gcloud container
    cluster describe` and `list` commands.

### Google App Engine

*   Fixed bug where initial deployments using `--image-url` failed.

*   Changed `gcloud preview app modules set_default` command to use the App
    Engine Admin API.

*   Changed `gcloud preview app modules list` command to use the App Engine
    Admin API.


## 91.0.1 (2015-12-16)

* The Cloud SDK has been rolled back to 90.0.0.

## 91.0.0 (2015-12-16)

### Breaking Changes

* Deprecated command group `gcloud compute replica-pools` has been removed.
* Deprecated command group `gcloud compute resource-views` has been removed.
* App Engine API is now the only supported method for deploying in the
  `gcloud preview app deploy` command.

### Google App Engine

* `DEPLOYABLES` argument for `gcloud preview app deploy` is now optional. If not
   given, the command defaults to `app.yaml` in the current directory; if that
   is not found, it attempts to automatically generate necessary configuration
   files (such as app.yaml) in the current directory before deployment.
*  `--force` argument to `gcloud preview app deploy` is now deprecated and will
   be removed in a future release.

### Container

* `gcloud container` commands that poll long running operations (e.g create,
   delete, upgrade) now display progress details when available.


## 90.0.0 (2015-12-09)

* Cloud SDK release version scheme has changed. Patch version is now treated as
  a major release version which corresponds to SDK weekly releases.
  Any updates/fixes to released version will increment minor/patch version
  number going forward.

### Breaking Changes

* The deprecated flag --clear-target-pool has been removed from
  `gcloud compute instance-groups managed set-target-pools` command.

### Google App Engine

* Components updated to 1.9.30.
  Please visit the following release notes for details:
  * Python - https://cloud.google.com/appengine/docs/python/release-notes
  * Java - https://cloud.google.com/appengine/docs/java/release-notes
* Fixed a bug caused by uploading invalid file names for vm: true applications.

### Compute

* Subnetwork support has been promoted from alpha to beta. For more information
  see https://cloud.google.com/compute/docs/subnetworks.


## 0.9.89 (2015-12-02)

### Breaking Changes

*   Removed flag `--container-ipv4-cidr` for `gcloud container clusters create`;
    please use `--cluster-ipv4-cidr` instead.

*   Renamed `gcloud alpha compute vpn-tunnels create --ike-networks` to
    `--local-traffic-selector`.

*   `gcloud alpha compute resource-views` commands will soon be removed. Please
    use `gcloud compute instance-groups unmanaged` commands instead.

*   `gcloud alpha compute replica-pools` commands will soon be removed. Please
    use `gcloud compute instance-groups` commands instead.

### `gcloud` Core

*   Changed behavior of `gcloud init` git repository clone option. It now takes
    as input a path to the destination directory for the repository,
    rather than the parent directory of the repository destination.

### BigQuery

*   Fixed failure in `gcloud alpha biquery query "select * from ..."` command
    while displaying query results.

### Compute

*   Fixed `gcloud alpha compute instances set-machine-type` failure when
    supplying custom cpu/custom memory, but no zone.

*   Added a new scope alias for Cloud Monitoring: `monitoring-write`. This scope
    is on by default in all new VMs.

### Google Cloud DNS

*   Added `--replace-origin-ns` flag to `gcloud dns record-sets import` command
    to allow importing NS records.

### Google Cloud Storage

*   Updated `gsutil` component to 4.16.

### Google Container Engine

*   Updated kubectl to version 1.1.2.

*   Increased `gcloud container clusters create/delete` timeouts from 20m to
    30m.

*   Added `--subnetwork` flag to `gcloud container clusters create` to allow
    creation of container clusters can now be created in a Google Compute Engine
    subnetwork (https://cloud.google.com/compute/docs/subnetworks).


## 0.9.88 (2015-11-25)

### Breaking Changes

* The `gcloud preview app run` command has now been removed. Please use the
  bundled `dev_appserver.py` script directly instead.

* App Engine: The 'version' and 'application' fields in module and configuration
  files are now illegal. Project name should instead be specified either by
  `gcloud config set project MY_PROJECT` or by setting the `--project` flag on
  individual command executions. Versions are generated automatically by default
  but can also be manually specified by setting the `--version` flag on
  individual command executions.

### App Engine

* Don't do runtime identification for custom runtimes during deploy. This fixes
  issue [#387](https://issuetracker.google.com/issues/35906466).

* The `dev_appserver.py` script no longer requires the installation of all App
  Engine components. It will install only the necessary ones at run time.
  Fixes [#273](https://issuetracker.google.com/issues/35906352)

### Core

* Added the `gcloud components install` command.  This allows you to install
  missing components at the version of the SDK you currently have (it does not
  update your SDK installation).  `gcloud components update` should now only be
  used to update your SDK to the latest version.

* Fixes [#293](https://issuetracker.google.com/issues/35906372) related SSL
  certificate validation issues.

* Use zsh builtins in path.zsh.inc for faster/cleaner shell startup.

## 0.9.87 (2015-11-18)

### Compute

* `gcloud alpha compute instances create` now supports --custom-cpu and
   --custom-memory flags to specify custom machine types.

### Dataproc

* Added `gcloud beta dataproc clusters diagnose` command. See
  <https://cloud.google.com/dataproc/support/diagnose-command> for more info.

### Google Container Engine

* Updated kubectl to version 1.1.1.

## 0.9.86 (2015-11-11)

### App Engine

* Generated node.js Dockerfiles now add the full application context before
  running install hooks.

* For Google App Engine Node.js runtimes, install requested version of node
  prior to doing an npm install.

### Compute

* `gcloud beta compute instances set-machine-type` has been promoted from alpha
  to beta,

## 0.9.85 (2015-11-04)

### Breaking Changes

* `gcloud alpha compute networks create` now requires --mode flag.

### App Engine

* Added the --output-directory option to gen-repo-info-file command. This option
  supersedes --output-file, which is deprecated and will be removed in a future
  release.

* Improved error message when specified yaml file is not found.

### Compute

* Launching `gcloud alpha compute networks subnets`.

* `gcloud compute alpha instance-templates` and `instances` now support
  subnetworks.

* New flag --ike-networks in `gcloud alpha compute vpn-tunnels create`.

* `gcloud compute ssh` now passes through the exit code of the ssh command. This
  fixes issue [#146](https://issuetracker.google.com/issues/35906227).

### Misc. Changes

* Gracefully handle socket timeouts while checking for Google Compute Engine
  metadata server. This fixes issue
  [#339](https://issuetracker.google.com/issues/35906418).

## 0.9.84 (2015-10-28)

### App Engine

* Due to PageSpeed service deprecation, user will receive a warning when
  deploying a new version to App Engine.

* Implemented fingerprinting support for Java.

* The gen-config flag now generates only app.yaml for the matching runtime by
  default, you must use the --custom flag to generate an app.yaml with a runtime
  of "custom" and Dockerfile (and other configs).

### Compute

* GA support for HTTPS load balancing features.

* Deprecated --clear-target-pool flag from compute instance-groups managed
  set-target-pools command.

### Windows support

* Windows Installer can now take a /logtofile flag to write installation logs to
  file CloudSDKInstall.log located in the same directory.

* Windows installer now displays an error message when the installation
  does not succeed.

### Command Line Interface support

* The [page=N] table format attribute prints one or more tables of at most N
  rows. Use this to view paged server data as it arrives at the client.

## 0.9.83 (2015-10-21)

### App Engine

* In a future release, the `gcloud preview app deploy` command will no longer
  support deploying multiple modules in the same invocation.

### Compute

* Ubuntu 14.10 is end of life: https://wiki.ubuntu.com/Releases

* Fixed external issue [#291](https://issuetracker.google.com/issues/35906370),
  related to handling network addresses on Windows.

### Container Engine

* `gcloud container clusters list` now displays the current number of nodes
  for the cluster.

### Windows support

* When running Cloud SDK tools from PowerShell the `gcloud-ps.ps1` wrapper
  scripts now can be used which no longer call to `cmd.exe`. Using `gcloud-ps`,
  complex arguments can be passed without escaping for Windows command line.
  Using `gcloud`, the following command would be correctly escaped when running
  gcloud in PowerShell:

    gcloud fun --arg='"test ^< 123"'

  With the new `gcloud-ps`, the same command can be simply written as:

    gcloud-ps fun --arg='test < 123'

  Permissions to run PowerShell scripts must be given to PowerShell before these
  will work. Permissions can be changed with
  `"Set-ExecutionPolicy RemoteSigned"`.

## 0.9.82 (2015-10-14)

### App Engine

*   The App Engine Admin API is now the default path for deployments in the
    `gcloud preview app deploy` command. This transition should be transparent,
    but if you experience any issues and would like to revert to the old
    behavior, please run `gcloud config set app/use_appengine_api false`.

    See <https://cloud.google.com/appengine/docs/admin-api/> for more
    information about this API.

*   With `env: 2`, valid python runtimes are `python` and `python-compat`.

*   Implemented fingerprinting support for python.

### Container Engine

*   `gcloud container clusters create`: The flag `--container-ipv4-cidr` has
    been deprecated; `--cluster-ipv4-cidr` should be used instead.

### SQL

*   `gcloud beta sql operations describe` and `gcloud beta sql operations wait`
    no longer need `--instance` flag (`gcloud beta sql operations list` still
    does).

*   Fixed issue with `gcloud sql instances clone` when `--bin-log-file-name` and
    `--bin-log-position` are set.
    (<https://issuetracker.google.com/issues/35906280>).

## 0.9.81 (2015-10-07)

### Breaking Changes

*   If you are using a service account to run commands under
    `gcloud preview app`, you must enable the "App Engine Admin API" in the
    Developers Console (<https://console.developers.google.com>; navigate to
    **APIs and Auth > APIs**).

*   In a future Cloud SDK release, deployments that promote the new version to
    receive all traffic will stop the previous version by default.

    To keep the current behavior, pass the `--no-stop-previous-version`
    flag, or run the following command:

       $ gcloud config set app/stop_previous_version false

*   Removed `app get-resource-limits` command.

### App Engine

*   App Engine components updated to 1.9.27. Please see the following release
    notes for details:
    *   Python: <https://cloud.google.com/appengine/docs/python/release-notes>
    *   Java: <https://cloud.google.com/appengine/docs/java/release-notes>
*   The `gcloud preview app deploy` command now requires that users specify or
    omit the runtime: field from app.yaml if a Dockerfile is also specified.
*   The `gcloud preview app deploy` command now supports the "engines" field in
    package.json for node.js applications.

### Misc. Changes

*   Windows Installer has an option to run `gcloud init` after the installation
  finishes.

## 0.9.80 (2015-09-30)

*   `gcloud app`
    *   Soon, deployments will set the deployed version to receive all traffic
        by default.  To keep the current behavior, use the `--no-promote` flag
        or run the following command:

            $ gcloud config set app/promote_by_default false

        To adopt the new behavior early, use the `--promote` flag or run the
        following command:

            $ gcloud config set app/promote_by_default true

    *   The `--set-default` flag is deprecated. Please use the `--promote` flag
        instead.
    *   In a future Cloud SDK release, deployments that promote the new version
        to receive all traffic will stop the previous version by default.  To
        keep the current behavior, pass the `--no-stop-previous-version` flag,
        or run the following command:

            $ gcloud config set app/stop_previous_version true

    *   The `app run` command is deprecated and will soon be removed.  Please
        use dev_appserver (found in the same directory as the `gcloud command)
        instead.
    *   The `gcloud preview app modules download command` is deprecated, and
        will be removed soon.

*   The Windows installer has an option to run `gcloud init` after the
    installation finishes.
*   The `preview` component has been removed.
    *   The `gcloud preview app` commands remain available as usual and
        are still shipped through the `app` component.
    *   Please use `gcloud compute instance-groups unmanaged` instead
        of `gcloud preview instance-groups`.  Note that you will need to
        modify some command invocations when switching to the non-preview
        commands.
    *   Please use `gcloud compute instance-groups managed` instead of
        `gcloud preview managed-instance-groups`.  Note that you will need to
        modify some command invocations when switching to the non-preview
        commands.
*   All Google Compute User Accounts commands have moved to beta.
*   Deployment-manager list commands now support pagination.
*   Minor bug fixes.

## 0.9.79 (2015-09-23)

*   The following commands have been promoted from beta to GA:
    *   gcloud config configurations ...
    *   gcloud source repos clone
    *   gcloud beta init. Old `gcloud init` behavior has been removed, and
        partially replaced by new gcloud init or directly via gcloud source
        repos clone.
*   Release gcloud beta dataproc.
*   The --env-vars flag in gcloud preview app deploy has been removed.
*   Automatic ssh key generation respects the --quiet flag.
*   The --format flag now supports extended format expressions. For details run
    $ gcloud topic formats.
*   Most commands now document the positive Boolean --FLAG form and accept
    --no-FLAG to disable. For the past few releases --log-http accepted an
    optional true/false value. It has been restored to its original definition
    of being a Boolean flag that has no value.
*   `gcloud sql` operations are now automatically retried for 2s in case of
    HttpException: The Cloud SQL instance operation does not exist.
*   Update gcloud's kubectl from 1.0.5 to 1.0.6.
*   Deprecate `gcloud preview app get-resource-limits`.

## 0.9.78 (2015-09-16)

*   App Engine components updated to 1.9.26. Please visit
    <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes> for
    details.
*   Increase the default boot disk size for remote build VMs in
    `gcloud preview app deploy`.
*   The `--instance` flag to the `gcloud preview app modules set-managed-by`
    command now takes an instance name instead of an index.
*   The V1Beta4 API for sqladmin can now be accessed through the
    `gcloud beta sql` surface.
*   Usability enhancements for `gcloud beta init` and named configurations.

## 0.9.77 (2015-09-09)

*   gcloud preview logging is now gcloud beta logging.
*   Update kubectl to version 1.0.5
*   Windows Cloud SDK installer improvements:
    *   Now allows changing the installation mode. You can choose between a
        "current user" installation and an "all users" installation.
    *   Now has an uninstaller and writes "Add/Remove Programs" uninstall
        entries.
*   Removal of unsupported --env-vars argument from gcloud preview app deploy.
*   gcloud compute instance groups: Allow --named-ports flag to be empty and
    clean named ports in set-named-ports commands.
*   Change in gcloud compute backend-services: introduce new flag
    --instance-group which takes advantage of new Instance Groups API.

## 0.9.76 (2015-09-02)

*   Update gsutil component to 4.14.
*   Resource views commands have moved from preview to alpha. Please use `gcloud
    alpha compute resource-views` in place of `gcloud preview resource-views`.
*   Replica pool commands have moved from preview to alpha. Please use `gcloud
    alpha compute replica-pools` in place of `gcloud preview replica-pools`.
*   `gcloud beta source repo` was renamed to `gcloud beta source repos`
*   Created google-cloud-sdk-announce@googlegroups.com
    <https://groups.google.com/d/forum/google-cloud-sdk-announce> email group to
    announce new releases and other important information.
*   'gcloud alpha init' command is now also in beta.
*   Add target size of managed instance group for "compute instance-groups
    managed list" command.
*   Fixed the removal of platform-specific components when running `gcloud
    components remove`.
*   Fixed a bug related to checking for SDK updates when the SDK is installed as
    root (like on Debian Compute Engine images).
    *   Affected users should now see less frequent update messages and overall
        improved gcloud performance
*   `gcloud preview app deploy` won't update local images automatically anymore.

## 0.9.75 (2015-08-26)

*   Container Engine
    *   Container Engine GA commands available under `gcloud container`.
    *   `gcloud beta container get-credentials` now takes cluster name as
        argument instead of `--cluster` flag for consistency with other
        commands.
    *   Added `gcloud alpha container clusters update <cluster>
        --cloud-monitoring=<val>` command.
*   New release notes are printed on upgrade. (This won't take effect until
    an upgrade from this version to a later version.)
*   New `gcloud alpha genomics variantsets export` command.
*   Commands promoted from `gcloud alpha` to `gcloud beta`:
    *    `gcloud beta config configurations ...`
    *    `gcloud beta sources clone`
*   Improvements in error reporting and default output formatting.


## 0.9.74 (2015-08-19)

*   New list and import commands under `gcloud alpha genomics variants`.
*   Removed `--remote` flag. Instead, please use the `--docker-build=remote`
    flag (or use `--docker-build=local` to force a local build).
*   In this release, Docker builds are hosted by default. To opt-in to the old
    behavior, please use the `--docker-build=local` flag.


## 0.9.73 (2015-08-12)

*   gcloud sql instances create default to MySQL 5.6
*   gcloud beta container get-credentials renamed to gcloud beta container
    clusters get-credentials
*   New commands
    *   gcloud beta projects ...
    *   gcloud alpha genomics callsets ...
    *   gcloud beta emulators datastore ...
    *   gcloud beta container get-server-config
    *   gcloud alpha config configurations


## 0.9.72 (2015-08-05)

*   gcloud compute
    *   initial surface changes for the backend-bucket.
    *   `instance-groups set-named-ports`: introduced a new flag
        `--named-ports NAME:PORT,[NAME:PORT,...]` - no need to specify names
        and ports in separate flags.
*   gcloud preview app deploy
    Deprecate `--remote` flag in preparation for hosted Docker builds by
    default. Instead, please use the `--docker-build={remote,local}` flag.
    The default is still a local Docker build; in two releases, the default
    will switch to a hosted build.
*   New gcloud alpha genomics operations {list, cancel, describe} commands


## 0.9.71 (2015-07-29)

*   Launching `gcloud alpha pubsub` commands.
*   Moved `gcloud preview rolling-updates` to `gcloud alpha compute
    rolling-updates`.
*   `gcloud alpha compute disks resize` command enabling resizing of persistent
    disks.
*   Beta launch of customer supplied encryption keys for Compute Engine.
*   Updated kubectl to 1.0.1.
*   `gcloud alpha container` commands now target Container Engine v1 API.
    Options for `gcloud alpha container clusters create` updated accordingly:
    *   `--user` renamed to `--username`
    *   `--cluster-api-version` removed. Cluster version is not selectable in v1
        API; new clusters always created at latest supported version.
    *   `--image` option removed. Source image not selectable in v1 API;
        clusters are always created with latest supported ContainerVM image.
        Note that using an unsupported image (i.e. not ContainerVM) would
        result in an unusable cluster in most cases anyway.
    *   Added `--no-enable-cloud-monitoring` to turn off cloud monitoring
        (on by default).
    *   Added `--disk-size` option for specifying boot disk size of node vms.
*   App Engine components updated to 1.9.24. Please visit
    <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes> for
    details.

    For several months on the Managed VMs team we've been testing a new mode of
    `dockerless` local development on gcloud that makes developing a module for
    Python, Java and Go users similar to development of regular App Engine
    applications. This new mode relaxes the sandbox constraints present in the
    devappserver for `vm: false` applications, and does not require Docker to be
    installed.

    You can currently opt-into this behavior by setting GAE_LOCAL_VM_RUNTIME=1;
    In this release of the Cloud SDK, we will be making this behavior the
    default for Managed VM users who are using gcloud.

    You can still opt-out of this behavior by setting: GAE_LOCAL_VM_RUNTIME=0.

    For custom runtime users, if you are relying on the local Development Server
    to build your application, will now need to pass the `--custom-entrypoint`
    flag to `gcloud preview app run` to provide gcloud with the correct
    command to call.

    This does not affect users developing for non-managed VMs, or for users who
    are not using gcloud."
*   Bug fixes for:
    *   `gcloud preview app deploy` file paths issue on Windows.
    *   `gcloud compute instance-groups managed wait-until-stable` periodic user
        prompting for target zone.


## 0.9.70 (2015-07-22)

*   Add `gcloud compute instance-groups` commands.
*   Move `gcloud beta deployment-manager` commands to general availability as
    `gcloud deployment-manager` and update to use the v2beta3 API. This change
    does not alter the gcloud surface for users of the deployment-manager
    component.
*   Update kubectl to 1.0.0.
*   `gcloud alpha genomics` commands now use the genomics V1 API. The
    --project-number flag for `dataset create` and `dataset list` is now
    obsolete. The configured --project-id is used instead and can be overridden
    with the --project-id flag.
*   Fix hang on errors in `gcloud preview app deploy`.

## 0.9.69 (2015-07-15)

*   Update kubectl to 0.20.2.
*   Fix an authentication issue with 'gcloud docker' affecting docker version
    1.7.0 and later.
*   Remove `gcloud preview dm-v2` command group.
*   Remove `gcloud preview deployment-manager` command group
    (`gcloud beta deployment-manager` still exists; see
    <https://cloud.google.com/sdk/#install-version> if you want to pin your
    installation to an old version).
*   Bug fixes.

## 0.9.68 (2015-07-08)

*   Deprecated gcutil tool is no longer distributed with Cloud SDK.
    It is still available via <https://cloud.google.com/compute/docs/gcutil>.
*   Added support for Container engine BETA commands under the
    `gcloud beta container` command group.  Existing `gcloud alpha container`
    commands are unchanged.
*   The standalone App Engine SDKs are no longer distributed through the Cloud
    SDK.
    *    App Engine functionality can still be used through the
        `gcloud preview app` command group.
    *    The gae-java, gae-python, gae-php, and gae-go components no longer
         exist in the component manager.
    *    If you need to use appcfg or dev_appserver directly, these are still
         available in the App Engine SDK downloads that can be found here:
         <https://cloud.google.com/appengine/downloads>
*   Bug fixes.

## 0.9.67 (2015-07-01)

*   App Engine components updated to 1.9.23. Please visit
    <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes> for
    details.
*   Added the "gen-config" command to app surface to generate configuration
    files for node.js apps.
*   New `compute instance-groups unmanaged` commands group for Instance Groups
    which are not managed by Instance Group Manager
*   Moved `gcloud beta sql instances connect` to `gcloud beta sql connect`.
*   Smarter polling while waiting for SQL operations to finish, reducing the
    number of requests sent to the server.
*   Linux/Mac install script disables prompts if there is no controlling tty.
*   Linux/Mac install script now properly detects zsh and ksh RC files.
*   Bug fixes.

## 0.9.66 (2015-06-24)


*   New commands
    *   `gcloud alpha compute instances set-machine-type` for managing types
    *   `gcloud topic` for supplementary help topics.
*   `gcloud deployment-manager deployments delete` prompt defaults to false.

## 0.9.65 (2015-06-17)

*   Fixes `reset-windows-password` on Windows if `openssl` is present on the
    path.
*   `gcloud compute reset-windows-password` is now available as a GA command.
*   Prevent creation of a user that matches the machine name on Windows.
*   gsutil now runs properly from not-default drive letters on Windows.
*   kubectl updated to 0.18.1.
*   `gcloud preview docker` moved to `gcloud docker`.

## 0.9.64 (2015-06-10)

*   New commands
    *   `gcloud beta compute scp` for secure copy.
    *   `gcloud alpha genomics` commands (on datasets).
    *   `gcloud alpha source list` to lists project repositories.
*   kubectl will no longer be installed by default.
*   Bug fixes for HTTPS load balancing.
*   The help pager is $PAGER or less(1) if available, otherwise a builtin pager.
*   Update of gsutil component to version 4.13.

## 0.9.63 (2015-06-03)

*   2x faster command load times.
*   Fix to allow `preview app` to use oauth service accounts
    <https://issuetracker.google.com/issues/35906214>

## 0.9.62 (2015-05-27)

*   Not released.

## 0.9.61 (2015-05-20)

*   New kubectl component (installed by default)
*   Internal improvements to gcloud preview app deploy; includes changes to
    command output.
*   `gcloud preview projects` moved to `gcloud alpha projects`
*   Tab completion for `gcloud compute ssh`

## 0.9.60 (2015-05-13)

*   VPN moved to GA.
*   Preemptible VM support.
*   Bug fixes.

## 0.9.59 (2015-05-06)

*   Bug fixes.

## 0.9.58 (2015-04-29)

*   gcloud alpha bigquery launch.
*   Better error reporting in Customer Supplied Encryption Key files.
*   Bug fixes.

## 0.9.57 (2015-04-22)

*   gcloud beta deployment-manager launch.
*   gcloud app new deployment behavior.
    *   deploy and run commands no longer take directories, only take a list of
        explicit yaml files.
*   gcloud beta compute reset-windows-password, support for new authentication
    scheme on Windows guest agent versions 3.0.0.0 and later.
*   Bug fixes.

## 0.9.56 (2015-04-15)

*   Bug fixes.

## 0.9.55 (2015/04/8)

*   New and improved gcloud dns surface including:
    *   Transactions for scriptable editing of record-sets.
    *   Importing record-sets from zone files and yaml files.
    *   Exporting record-sets to zone files and yaml files.
*   VPN commands surfaced under gcloud compute.
*   Dataflow CLI commands launched under gcloud alpha!

## 0.9.52 (2015-03-18)

*   Bug Fixes.

## 0.9.51 (2015-03-11)

*   Bug Fixes.

## 0.9.50 (2015-03-04)

*   Introducing the `gcloud beta ...` command group
    *   Existing gcloud commands will be replicated under this new group, but
        use the beta version of their API instead of the GA version.
    *   New command behavior and features that are beta only will first appear
        under this group until the feature gets promoted to general
        availability.
    *   Run `gcloud components update beta` to access the new commands, or it
        will be automatically installed for you on first run attempt.
*   `gcloud beta compute ...` is now available, using the compute 'beta' API.
    Cloud VPN.  See <https://cloud.google.com/compute/docs/vpn>
    for details.
*   Release of `gcloud compute instances move` and `gcloud compute disks move`.

## 0.9.49 (2015-02-25)

*   The Google Container Registry is now used by default for deployment of
    Managed VM applications. See here for more information:
    <https://cloud.google.com/tools/container-registry/>
*   We've increased the speed of the "image push" phase of Managed VM
    deployments.
*   The heavy lifting of retrieving the Go toolchain has been moved into the
    base Go Docker image which dramatically reduces the bandwidth consumed
    locally when running and deploying your images. You must delete your
    Dockerfile to pick up the changes.
*   We've fixed several bugs related to port forwarding in the local
    devappserver.

## 0.9.48 (2015-02-18)

*   A bug fix for running setup-managed-vms multiple times when using the Google
    Container Registry

## 0.9.47 (2015-02-11)

*   Bug fixes that allow tab completion to work for components in preview.
*   GCloud now auto installs components based on command execution.

## 0.9.46 (2015-02-04)

*   We've made significant improvements to the stability and speed of deploying
    Managed VMs by leveraging the new Google Container Registry. See this post
    for details on how to try it out today:
    <https://groups.google.com/forum/#!topic/google-appengine/c543NHZGhKM>

## 0.9.45 (2015-01-28)

*   Several bug fixes in the Dockerfile generated for the 'go' runtime. Delete
    the Dockerfile in your application directory and the Cloud SDK will copy the
    updated Dockerfile on your next deployment.
*   Several bug fixes related to flakiness in the setup-managed-vms command.

## 0.9.44 (2015-01-21)

*   Fixes applied to the google/appengine-gobase image for managed VMs.
*   Tab completion for gcloud SQL commands.

## 0.9.43 (2015-01-14)

*   Support added for authenticating service accounts with JSON keys. If using
    JSON keys, PyOpenSSL is no longer a dependency. Refer to help docs here:
    <https://cloud.google.com/sdk/gcloud/reference/auth/activate-service-account>.

## 0.9.42 (2015-01-08)

*   Suport for local ssds in instance templates for gcloud compute.

## 0.9.41 (2014-12-17)

*   Progress Bars.
*   Compute Instances start/ stop commands.

## 0.9.40 (2014-12-09)

*   Bug Fixes.

## 0.9.39 (2014-12-03)

*   Bug Fixes.

## 0.9.37 (2014-11-19)

*   Added support for local SSD.

## 0.9.36 (2014-11-12)

*   Bug Fixes.

## 0.9.35 (2014-11-04)

*   Added support for Google Container Engine. It is available under the
    'gcloud preview container' command group.

## 0.9.34 (2014-10-14)

*   Added support for Google Compute Engine Instance Templates in
    compute component.
*   Launch of instance-groups and managed-instance-groups in
    preview component.

## 0.9.33 (2014-09-30)

*   Overhaul of 'gcloud sql'
    *   Updated the output for all commands.
    *   Updated usage for 'gcloud sql ssl-certs create'.

## 0.9.32 (2014-09-16)

*   Bug Fixes.

## 0.9.31 (2014-09-02)

*   Added support for creating and maintaining Cloud SQL read replica instances.
    *   Added --master-instance-name property that can be set during replica
        creation to indicate the replication master for the read replica
        instance.
    *   Added --enable-database-replication, --no-enable-database-replication
        flags that can be used to start, stop replication for the read replica
        instance.
    *   Added 'promote-replica' command that promotes a read replica instance
        into a stand-alone Cloud SQL instance.
*   Added several new features to the compute component:
    *   Implemented new subcommands for interacting with HTTP load balancing:
        *   gcloud compute backend-services update
        *   gcloud compute url-maps add-host-rule
        *   gcloud compute url-maps add-path-matcher
        *   gcloud compute url-maps remove-host-rule
        *   gcloud compute url-maps remove-path-matcher
        *   gcloud compute url-maps set-default-service
    *   Added support for automatically generating initial Windows username and
        password when creating a virtual machine instance from a Windows
        image or a disk initializaed from a Windows image.
    *   Added a new scope alias for Cloud SQL administration: 'sql-admin'.

## 0.9.30 (2014-08-19)

*   Bug Fixes.

## 0.9.29 (2014-08-11)

*   The compute component is now in General Availability.
    *   Added new 'compute/zone' and 'compute/region' properties that
        can be used to set a default zone and region. To set the
        properties, run 'gcloud config set compute/zone ZONE' and 'gcloud
        config set compute/region REGION'.
    *   Added support for overriding disk auto-deletion during instance
        deletion.
    *   Updated the output of commands that mutate resources to be more
        human-friendly. The --format flag can be used for more verbose
        output.
    *   Replaced all 'get' subcommands with 'describe' subcommands (e.g.,
        'gcloud compute instances get' has been replaced with 'gcloud
        compute instances describe').
    *   Renamed the 'firewalls' collection to 'firewall-rules'.
    *   Added support to the 'addresses' collection for interacting with
        global addresses.

## 0.9.28 (2014-07-18)

*   Updated gcutil to 1.16.3 and various App Engine runtimes to 1.9.7 binaries.
*   Support running several modules by gcloud app run and fixed output errors.
*   Limit gcloud upgrade nags to once per day.
*   Bring help files up to date (for example improved the documentation for DM
    'templates create' and 'deployments create').
*   Added prompting for regions and zones to most subcommands of the compute
    component.
*   Added new subcommands to the compute component for adding and removing
    backends from backend services.
*   Added --ssh-flags to 'gcloud compute ssh' for passing additional flags to
    ssh.
*   Added image alias support for the --image flag in the compute component.


## 0.9.27 (2014-06-18)

*   Added --shell mode to all gcloud commands
    *   Type a partial command followed by '--shell' to drop into a sub shell at
        that point in the command tree.
    *   Eg:
        $ gcloud compute --shell
        gcloud compute $ instances list
        gcloud compute $ copy-files ...
*   Updated gsutil to 4.3
*   Allow installed crcmod to be used by default with gsutil by enabling site
    packages


## 0.9.26 (2014-06-04)

*   Windows support for SSH and SCP to Compute VMs
    *   The following will now work natively on Windows without the need for
        cygwin:
        *   gcloud compute ssh
        *   gcloud compute copy-files
        *   gcutil ssh
        *   gcutil push
        *   gcutil pull
*   Support for Java apps in 'gcloud preview app run'
*   Updated gsutil to 4.1
*   Updated gcutil to 1.16.0
*   Updated all App Engine tools to 1.9.6
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>


## 0.9.25 (2014-05-21)

*   `gcloud preview app deploy` and `... run` argument updates.
*   `gcloud config ...` argument updates.
*   Updated all App Engine tools to 1.9.5
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>


## 0.9.24 (2014-05-07)

*   gcloud now has App Engine and Cloud Datastore integration.
    *   Commands can be found under `gcloud preview app` and `gcloud preview
        datastore`


## 0.9.23 (2014-05-01)

*   New `gcloud compute` tool for working with compute engine (RC)
    *   Run `gcloud components update compute` to install
    *   Run `gcloud help compute` for more information
*   Updated all App Engine tools to 1.9.4
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>
*   Added color to error and warning messages (on Linux and Mac)
    *   To disable, run `gcloud config set disable_color true`


## 0.9.22 (2014-04-23)

*   New 'gcloud help command'
    *   Displays man style extended help for commands (where available).
*   New 'gcloud auth activate-service-account' command
    *   Used to authenticate with gcloud using a service account key file.
    *   See: <https://developers.google.com/storage/docs/authentication#service_accounts>
*   Bug fixes and improved error handling.


## 0.9.21 (2014-04-09)

*   Minor updates and bug fixes.


## 0.9.20 (2014-03-24)

*   Minor updates and bug fixes.


## 0.9.19 (2014-03-19)

*   Minor updates and bug fixes.


## 0.9.18 (2014-03-05)

*   New 'gcloud init' command
    *   Crpace for your project with a git clone of your Google
        hosted repository.
*   Updated gcutil to 1.14.0


## 0.9.17 (2014-02-11)

*   Updated all App Engine tools to 1.9.0
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>
*   Cloud SDK now distributed under the Apache v2.0 license.  Please see LICENSE
    for more information.


## 0.9.16 (2014-01-28)

*   Added Python2.6 compatibility.
*   Added ability to symlink directly to scripts in the bin/ directory.
*   Fixed bug in default setup of credentials when on a Compute Engine VM.


## 0.9.15 (2014-01-15)

*   Updated gsutil to 3.40
*   Updated all App Engine tools to 1.8.9
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>
*   Fixed broken PHP runtimes on Mac and Windows installs when running
    the dev_appserver.
*   Adding sh/cmd wrapper scripts for bq, gcutil, and gsutil for better PATH
    handling on Windows.
*   Fixed issue with failing `goapp build`


## 0.9.14 (2013-12-17)

*   'gcloud sql' now available.
    *   Find out more: <https://developers.google.com/cloud-sql/docs/cloud-sdk>
*   Added bash completion for gcloud commands.
    *   Choose 'yes' at the prompt during installation to add it to your bash
        profile.
*   Added 'gcloud version' command.
*   More flexible support of virtual env installations.
*   Fix for environments with protobuf installed.


## 0.9.13.1 (2013-12-04)

*   Validate queries to metadata server.


## 0.9.13 (2013-11-19)

*   Updated all App Engine tools to 1.8.8
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>
*   Disabling site packages when running commands, to avoid library conflicts.


## 0.9.12 (2013-11-06)

*   Updated all App Engine tools to 1.8.7
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>
*   Updated bq to 2.0.17
*   A few usability improvements in the component manager and install flow.


## 0.9.11 (2013-10-28)

*   The Cloud SDK is now distributed using a new component manager.
    *   Download a small initial zip file, then install the tools you want on
        demand.
    *   Updates to tools in the Cloud SDK are performed in-place, incrementally,
        without the need to re-download the entire SDK.
    *   The component manager allows you to see when updates are available.
    *   Run 'gcloud components --help' for more information.
*   New authentication features:
    *   The gauth command has been replaced by 'gcloud auth'.  Run
        'gcloud auth --help' for more information.
    *   It now supports authenticating multiple users simultaneously.  Use
        'gcloud config set account <account>' to choose your active account.
*   For more information, please see:
    <https://developers.google.com/cloud/sdk/gettingstarted>


## 0.9.10 (2013-10-20)

*   Upgraded all App Engine tools to 1.8.6.
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>
*   Upgraded bq to 2.0.16.
*   Upgraded gcutil to 1.9.1.
*   A few improvements to the gauth web flow.


## 0.9.9 (2013-09-26)

*   Upgraded all App Engine tools to 1.8.5.
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>
*   Upgraded bq to 2.0.15.
*   Upgraded gcutil to 1.8.4.
*   Upgraded gsutil to 3.37.


## 0.9.8 (2013-08-27)

*   Upgraded all App Engine tools to 1.8.4.
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>
*   Upgraded gcutil to 1.8.3.
*   Upgraded gsutil to 3.35.


## 0.9.7 (2013-08-06)

*   Upgraded all App Engine tools to 1.8.3
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>
*   Upgraded gsutil to 3.34


## 0.9.6 (2013-07-17)

*   Upgraded all App Engine tools to 1.8.2
    *   <https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes>
    *   <https://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes>
*   Upgraded bq to 2.0.14
*   Upgraded gcutil to 1.8.2
*   Upgraded gsutil to 3.33


## 0.9.5 (2013-06-18)

*   App Engine Hotfix


## 0.9.4 (2013-06-12)

*   archive file name changed to google-cloud-sdk
*   Upgraded all App Engine tools to 1.8.1
*   Upgraded gcutil to 1.8.1
*   Upgraded gsutil to 3.31 (3.30 was never released)
*   More improvements to gauth experience
    *   gauth now provides links to the new Cloud Console (for obtaining your
        project ID), as opposed to the API console
    *   Suppression of spurious error related to the Windows Registry


## 0.9.3 (2013-05-24)

*   Upgraded gcutil to 1.8.0
*   Upgraded gsutil to 3.29


## 0.9.2 (2013-05-07)

*   Upgraded all App Engine tools to 1.8.0
*   Upgraded gsutil to 3.27
*   Several improvements to gauth experience
    *   Will not re-run oauth2 flow if you already have valid credentials (you
        can force re-auth with the --login flag)
    *   Added --set-project to change your current project without having to
        re-auth
    *   Renamed gauth.py to gauth for simplicity
    *   gauth will warn you if there are older versions of the cloud tools on
        your path.


## 0.9.1 (2013-04-10)

*   Fixed an issue with gauth that occurred when running a command before
    credentials were created.


## 0.9.0 (2013-04-09)

*   Developer preview release of the Cloud SDK
*   Includes command line tools for:
    *   App Engine
    *   BigQuery
    *   Compute Engine
    *   Cloud Storage
    *   Cloud SQL
*   Includes the new gauth tool for one time common authentication for all tools
