Go Release Notes

This page details release note for the flexible environment. You might also want to refer to the App Engine release notes and the Cloud SDK release notes for changes to services and tooling.

In addition to the release notes below, you can also track known issues on the issue tracker.

July 10, 2018

  • App Engine is now available in the us-west2 region (Los Angeles).

March 28, 2018

Go runtime notes

  • The Go runtime now defaults to the latest Go release, version 1.10, for deployments specifying runtime: go in your app.yaml configuration file.
  • Support is still available for the existing Go 1.9 and 1.8 runtimes.
  • Go 1.10 speeds up builds and includes minor changes throughout the standard library. Changes to the bytes and net/url packages require some code changes. For details, see the Go 1.10 release page.
  • You can submit feedback to the google-appengine-go Google Group.

February 14, 2018

The build pipeline is now generally available (GA):

  • You can build your application with a specific Go runtime version. Specifying runtime: go in your app.yaml file uses the latest supported runtime version release, which is currently Go 1.9.
  • Produces an application image with gcr.io/distroless/base as the base image.

The distroless base image contains a minimal Linux, glibc-based system. The application image does not use the Debian Linux distribution, reducing the image size by ~390MB.

Please send feedback to the Google App Engine Go Group.

January 10, 2018

  • App Engine is now available in the northamerica-northeast1 region (Montréal, Canada).

December 14, 2017

October 31, 2017

  • App Engine is now available in the asia-south1 region (Mumbai, India).

October 11, 2017

October 2, 2017

  • For the App Engine flexible environment, all responses are now compressed with gzip by default once you redeploy your app. No changes need to be made to your app.yaml file.

September 27, 2017

The beta build pipeline has been updated:

  • Developers can now build their applications with a specific Go runtime version. For the beta build pipeline, specifying runtime: go in your app.yaml file will use the latest supported runtime version release, which is currently Go 1.9.
  • Produces an application image with gcr.io/distroless/base as the base image. This affects only new deployments, deployed with the gcloud beta app deploy command.

The distroless base image contains a minimal Linux, glibc-based system. The application image will no longer contain the Go SDK or Debian utilities, reducing the image size by ~390MB. If your applications rely on these at runtime, let us know at google-appengine-go.

To try out the new beta build pipeline, ensure you are running gcloud 173.0.0 or later and invoke gcloud beta app deploy. Optionally, specify a supported Go version in your app.yaml file. You can use the existing build pipeline by running gcloud app deploy.

September 26, 2017

  • For the App Engine flexible environment, billing increments for instances are reduced from per-minute increments to per-second increments. Additionally, the minimum usage cost for instance resources is reduced from 10 minutes to 1 minute.

September 18, 2017

  • Updated health checks are now the default for new projects. To upgrade a project from legacy health checks, run the command gcloud app update --split-health-checks. For more information, see Enabling updated health checks.

    Legacy health checks will no longer be available after September 30th, 2018.

September 13, 2017

  • You can now use managed certificates to add SSL to your custom domain. Once you map your custom domain to your application, App Engine provisions an SSL certificate automatically and handles renewing the certificate before it expires and revoking it if you remove the custom domain. Managed certificates are in beta. For more information, see Securing Custom Domains with SSL.

  • If you have an existing domain mapping and SSL certificate, then it continues to function as expected. You can also upgrade to managed SSL certificates.

  • The gcloud commands and Admin API methods used to map custom domains are now generally available. This includes gcloud domains verify and apps.authorizedDomains.list. However, if you want to use managed SSL certificates, use the beta commands and methods that are specified in Securing Custom Domains with SSL.

September 5, 2017

  • App Engine is now available in the southamerica-east1 region (São Paulo, Brazil).

August 23, 2017

August 1, 2017

  • App Engine is now available in the europe-west3 region (Frankfurt, Germany).

July 18, 2017

  • App Engine is now available in the australia-southeast1 region (Sydney, Australia).

July 12, 2017

  • You can now use updated health checks, which allow you to use separate checks to confirm that your instance is running and ready to serve content. You must enable updated health checks, which are currently in Beta. For more information, see Health checks.
  • If you use updated health checks, deployments will fail if your application does not reach a ready state.

June 6, 2017

May 9, 2017

  • App Engine is now available in the us-east4 region (North Virginia).

April 11, 2017

  • Added information about upgrading from the App Engine Task Queue API in the compat runtimes to using Cloud Tasks (alpha) in the flexible environment and added information for how to verify requests from the Task Queue API.

March 28, 2017

March 9, 2017

  • The App Engine flexible environment is now generally available (GA). You can run Node.js, Ruby, Python, Java, and Go applications with a 99.95% SLA.
  • The PHP 7 runtime for the App Engine flexible environment is now in Beta.
  • The .NET core runtime for the App Engine flexible environment is now in Beta.

December 6th, 2016

  • New applications that have not been deployed in the flexible environment must specify env: true in the app.yaml file instead of vm:true. Applications that were previously deployed can continue to use vm:true but will need to switch to env:true in the future. For more details, see upgrade guide.

November 15th, 2016

There is a new release of the App Engine flexible environment. To choose this environment, use env:flex instead of vm:true in your app.yaml configuration file. You can learn more about the details of this release by visiting the upgrade guide.

This release includes a few key new features:

  • Multi-zonal deployment support.
  • A modern networking stack with increased throughput.
  • Custom machine types.
  • Asia-Northeast1 region availability.

This release also marks the deprecation of a few features:

There are also a few breaking changes:

  • HTTP headers have been changed.
  • Environment variables have been changed.
  • There are multiple changes to the app.yaml schema.

For details and a full list of changes, visit the upgrade guide.

May 2, 2016

  • The Ruby runtime is now available for the App Engine flexible environment.

March 24, 2016

February 3, 2016

  • Container construction choices for Managed VMs

    The gcloud preview app deploy (and mvn gcloud:deploy) commands upload your artifacts to our servers and build a container to deploy your app to the Managed VM environment.

    There are two mechanisms for building the container image remotely. The default behavior is to build the container on a transient Compute Engine Virtual Machine which has Docker installed. Alternatively, you can use the Cloud Build service, which is in Beta. To use the Cloud Build service, follow these steps:

    1. Activate the Cloud Build API for your project.
    2. Use the command gcloud config set app/use_cloud_build True. This will cause all invocations of gcloud preview app deploy to use the service. To return to the default behavior, use the command gcloud config set app/use_cloud_build False.
Was this page helpful? Let us know how we did:

Send feedback about...

App Engine flexible environment for Go