Node.js Release Notes

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

September 19, 2018

  • Support for the Yarn package manager: if a yarn.lock file is present, dependencies will be installed using yarn.
  • When deploying, you can now force Node.js dependencies to be installed by using gcloud beta app deploy --no-cache. This will skip the caching mechanism that the builder uses to speed up the builds.

August 24, 2018

  • The Node.js runtime has been updated to Node.js version 8.11.4.

August 10, 2018

  • Added support for a custom build step: If a script named gcp-build is present in package.json, this script will be executed at deployment time alongside dependencies declared in devDependencies.
  • package.json can now reference local dependencies, e.g: "my-local-module: "file:./my-path".

July 10, 2018

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

July 4, 2018

  • The Node.js runtime has been updated to Node.js version 8.11.3.

July 2, 2018

Fixed a bug in auto scaling configuration where App Engine was aggressively shutting down instances when the max_instances setting was used.

June 12, 2018

  • The Node.js runtime for the App Engine standard environment is now in beta, running Node.js version 8.11.2.

May 15, 2018

  • Completed a gradual rollout of an upgrade to the automatic scaling system:
    • Improved efficiency resulting generally in lower instance cost (up to 6% reduction for many users) and up to 30% reduction for loading requests, which are the first request to a new instance.
    • New max instances setting allows you to cap the total number of instances to be scheduled.
    • New min instances setting allows you to specify a minimum number of instance to keep running for your app.
    • New target CPU utilization setting lets you optimize between latency and cost.
    • New target throughput utilization setting lets you optimize for the number of concurrent requests at which new instances are started.
    • No more resident instances in auto scaling. Previously, if you used the min_idle_instances setting, the minimum idle instances were labelled as Resident in the Cloud Console, with the remainder of the instances labelled as Dynamic. The new scheduler simply labels all instances as Dynamic with auto scaling. However, the underlying behavior remains similar to previous behavior. If you use min_idle_instances and enable warmup requests, you will see at least that many dynamic instances running even during periods with no traffic.
    • For more details, see the auto scaling documentation.

April 27, 2018

  • Published alpha documentation for the Node.js runtime for the App Engine standard environment.

December 14, 2017

October 31, 2017

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

October 11, 2017

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

June 6, 2017

May 09, 2017

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

Oct 27, 2016

  • The Channel and XMPP services are now deprecated. These services will be turned down on October 31, 2017.

Aug 1, 2016

Admin API notes

  • Version 1 of the Admin API is now generally available.

Aug 1, 2016 - Version 1.9.42

Node.js runtime notes

  • This release does not include a new Node.js SDK. Node.js users should continue to use the 1.9.40 SDK.

July 18, 2016 - Version 1.9.40

  • Version 1.9.39 was skipped.

  • LeaseTasksByTag requests will be limited to 25 requests per second.

  • Server Errors and Client Errors now more accurately reflect per-URL status errors in the App Engine dashboard.

  • New App Engine guided walkthrough in the GCP Console. Pick your preferred language and launch an interactive tutorial directly in the console.

  • Increases the maximum cron tasks limit to 250.

July 1, 2016

Cloud Datastore

May 25, 2016 - Version 1.9.38

  • The error returned by URL Fetch for a request to a port outside of the permitted ranges (80-90, 440-450, 1024-65535) will now always return INVALID_URL as documented.

Cloud Datastore

  • When committing a cross-group transaction, version numbers returned for new or updated entities are all the same. With the previous behavior, entities within the same group committed as part of a cross-group transaction, had the same version number, but entities in different groups might have had different version numbers. This change ensures all new and updated entities have an identical version number, regardless of their entity group, when committed as part of a cross-group transaction. As before, entities that are not updated will not have a new version number.

May 4, 2016 - Version 1.9.37

Includes general bug fixes and improvements.

May 2, 2016

App Engine flexible environment

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

April 18, 2016 - Version 1.9.36

In response to your requests, the App Engine Users API joins the rest of App Engine in supporting IAM roles and group expansion. This means that any user who is a project Owner, Editor or Viewer or an App Engine Admin is considered an "admin" by the Users API, regardless of whether the user was granted the role directly or by membership in a group. * This release populates error details, when available, in error messages associated with the "OverQuota" exception type.

March 24, 2016 - Version 1.9.35

March 4, 2016 - Version 1.9.34

  • Increases default quota for URL fetch for billed apps. Refer to the Quotas page for details.

February 17, 2016 - Version 1.9.33

  • The URL path "/form" is now allowed and will be forwarded to applications. Previously, this path was blocked.

February 3, 2016 - Version 1.9.32

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

January 14, 2016 - Version 1.9.31

App Engine now supports Google Groups: Adding a Google Group as a member of a project grants the members of the group access to App Engine. For example, if a Google Group is an Editor on a project, all members of the group now have Editor access to the App Engine application.

November 30, 2015 - Version 1.9.30

Headers for push queue requests made for Task Queue tasks with no payload will now contain a Content-Length entry set to '0'. Previously headers for such requests contained no Content-Length entry.

November 30, 2015 - Version 1.9.29

  • Stop calculating and storing queue depth for non-existent queues, queues marked for deletion, and in the case of queue table outages.
  • For developers using the endpoints API, added a discoverable boolean parameter to the @Api annotation to allow users to disable API discovery. Using this feature will prevent some client libraries (e.g. JavaScript) and the API Explorer from working, as they depend on discovery.

October 29, 2015 - Version 1.9.28

The Prospective Search API, which was deprecated on July 14, 2015, is now restricted to existing users. It will fully shutdown on December 1, 2015. * Improved accuracy of Geo filtering in Search queries.

September 25, 2015 - Version 1.9.27

Applications that are newly enabled for billing now default to an unlimited daily budget, and no longer default to a maximum daily budget of $0. This prevents unwanted outages due to running out of budget. To set a ceiling on your application's daily cost, after you enable billing, set a budget in the app engine settings. For more information, see Setting a daily budget.

Datastore

  • Bugfix: Repeated numeric facets are now allowed.
  • Faceted Search is now GA.

August 27, 2015 - Version 1.9.26

  • oauth2client library upgraded to version 1.4.2
  • Adds "show in context" menu for MVM application logs that have thread_id or request_id as a field in their log entry. This allows sorting app logs based on either field.
  • Capability to provision applications for current load and configure elastic provisioning based on both VM and application level metrics.
  • Remote API can now be accessed using OAuth2 credentials using https://developers.google.com/identity/protocols/application-default-credentials
  • Use RequestPayloadTooLargeException for URLFetch requests with payloads that are too large.

August 14, 2015 - Version 1.9.25

  • Added PyAMF version 0.7.2 (Beta).
  • Admin Console menus start redirecting to GCP Console. Select services such as the Admin Logs will continue to be available in the Admin Console.
  • Datastore now allows properties to represent the empty list.
  • Failed tasks in queues configured with a ‘retry_limit’ of zero will no longer be retried.
Was this page helpful? Let us know how we did:

Send feedback about...

App Engine standard environment for Node.js docs