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.
To get the latest product updates delivered to you, add the URL of this page to your
feed
reader, or add the feed URL directly: https://cloud.google.com/feeds/app-engine-flexible-environment-python-runtimes-release-notes.xml
December 9, 2019
App Engine is changing the URLs that you use to send requests to your apps.
You can now include a region ID
to help Google route your requests more efficiently and reliably. For example,
an app can receive requests at
https://PROJECT_ID.REGION_ID.r.appspot.com
.
This new URL is optional for existing apps, and will soon be required for all
new apps.
April 18, 2019
- App Engine is now available in the
asia-northeast2
region (Osaka, Japan).
April 15, 2019
- App Engine is now available in the
europe-west6
region (Zürich, Switzerland).
April 9, 2019
Cloud Tasks is now GA and can be used to set up tasks to be performed asychronously, outside of user requests.
March 4, 2019
Cloud Scheduler is now GA and can be used to set up scheduled units of work (cron jobs).
January 7, 2019
- You can now use WebSockets and session affinity to create persistent connections to an App Engine instance.
October 22, 2018
- App Engine is now available in the
asia-east2
region (Hong Kong).
July 10, 2018
- App Engine is now available in the
us-west2
region (Los Angeles).
May 4, 2018
Applications in the App Engine flexible environment currently use a Debian 8 "Jessie" operating system. The Debian 8 "Jessie" OS will lose full support from the Debian maintainers in June 2018. In advance of this change, Google will migrate customers to an Ubuntu-based OS starting on May 30, 2018. To update your application to the Ubuntu 16.04 OS, re-deploy your application after May 30, 2018.
If for some reason you need to opt-out of this automatic upgrade, you can pin your application to the old Debian 8 "Jessie" OS.
March 29, 2018
- The Python 3.4 runtime is deprecated and will be shut down on March 29, 2019. Update to a more recent Python version as soon as possible.
March 21, 2018
- The Python 3.4 runtime is updated to version 3.4.8. This includes some security and bug fixes.
February 14, 2018
- The Python 3.6 runtime is now updated to version 3.6.4. This includes some security and bug fixes.
- The Python 3.5 runtime is now updated to version 3.5.5. This includes some security and bug fixes.
January 10, 2018
- App Engine is now available in the
northamerica-northeast1
region (Montréal, Canada).
December 14, 2017
Improved access control documentation around deploying apps with IAM roles and service accounts:
October 31, 2017
- App Engine is now available in the
asia-south1
region (Mumbai, India).
October 11, 2017
- Announced general availability of App Engine firewall.
October 4, 2017
- The App Engine flexible environment now defaults to Python 3.6 when Python 3
is requested. Update your
Cloud SDK
to version 174.0.0 or later to use this new default. To revert to Python 3.5,
specify
python_version: 3.5
in theruntime_config
element of yourapp.yaml
configuration file
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 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
.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 includesgcloud domains verify
andapps.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 25, 2017
- The Python 3.5 runtime is now updated to version 3.5.4. This includes some security and bug fixes.
August 23, 2017
- Beta release of the App Engine firewall.
August 1, 2017
- App Engine is now available in the
europe-west3
region (Frankfurt, Germany).
July 25, 2017
- The Python 3.6 runtime is now updated to version 3.6.2. This includes some security and bug fixes.
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
- App Engine is now available in the
europe-west2
region (London). - You can now use the beta-level features in the Admin API and
gcloud
command-line tool to create and manage your custom domains and SSL certificates .
May 24, 2017
- The flexible environment now includes Python 3.6 support (Beta).
To use the Python 3.6 runtime, specify
python_version: 3.6
in theruntime_config
element of yourapp.yaml
configuration file.
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 in the flexible environment and added information for how to verify requests from the Task Queue API.
March 28, 2017
- The flexible environment is now available in the
europe-west
region.
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 theapp.yaml
file instead ofvm:true
. Applications that were previously deployed can continue to usevm:true
but will need to switch toenv:true
in the future. For more details, see upgrade guide.
December 5th, 2016
- Python support updated from version 3.4 to version 3.5 for
flexible environment apps that specify using the latest version of the
Python runtime (
python_version: 3
). Apps can specifically target this version by specifyingpython_version: 3.5
in their [app.yaml
configuration file (/appengine/docs/flexible/python/configuring-your-app-with-app-yaml).
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:
- The python-compat runtime.
- The python27 runtime.
- The java-compat runtime.
- The jetty9-compat runtime.
- The Go App Engine package no longer
works on the App Engine flexible environment. Instead, use the
cloud.google.com/go/...
package.
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
- App Engine Managed VMs is renamed to App Engine flexible environment.
February 3, 2016
Container construction choices for Managed VMs
The
gcloud preview app deploy
(andmvn 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:
- Activate the Cloud Build API for your project.
- Use the command
gcloud config set app/use_cloud_build True
. This will cause all invocations ofgcloud preview app deploy
to use the service. To return to the default behavior, use the commandgcloud config set app/use_cloud_build False
.