Ending support for Node.js 8.x on December 31, 2019

Hi,

Bunch of us have started receiving the following notification from AWS:

The Node community has decided to end support for Node.js 8.x on December 31, 2019 [1]. From this date forward, Node.js 8.x will stop receiving bug fixes, security updates, and/or performance improvements. To ensure that your new and existing functions run on a supported and secure runtime, language runtimes that have reached their EOL are deprecated in AWS [2].

For Node.js 8.x, there will be 2 stages to the runtime deprecation process:

  1. Disable Function Create – Beginning January 6, 2020, customers will no longer be able to create functions using Node.js 8.10

  2. Disable Function Update – Beginning February 3, 2020, customers will no longer be able to update functions using Node.js 8.10

[1] GitHub - nodejs/Release: Node.js Release Working Group
[2] Lambda runtimes - AWS Lambda

The gist of it is that, of course, we need to update;

  • provider/kaws/formation/rack.yml
  • provider/aws/formation/app.json.tmpl
  • provider/aws/formation/rack.json
  • provider/aws/formation/g1/app.json.tmpl
  • provider/aws/templates/resource/webhook.tmpl

… which all refers to Runtime: nodejs8.10.

Hi @ali,
We will release a rack update that will handle this before then, not to worry! :blush:

Thanks,
Ed

Aren’t many (most? all?) of the Node.js Lambdas just tiny wrappers around a Go program that does the real work? Lambda has supported Go for ~2 years. Why not cut out the overhead and just switch everything to use Go directly?

Almost all of the Lambda functions have been converted to pure Go. The functions in question are inline pure-Javascript embedded in the CloudFormation templates. We rolled this back because CloudFormation had not yet finished rolling out support for inline nodejs10 in all regions.

One more that needs to be converted: the syslog Lambda.

Are there any updates here please about the general availability of the runtime across all regions?

I am unable to upgrade my Rack - because of this issue:

Can I get a heads-up on what I could expect to happen if this date lapses before we have a solution? Our our running systems at serious risk?

We’ve now re-released the update to Nodejs10.x as it appears that AWS has rolled out support across all regions finally!

:blush:

Thanks!

Good morning all

how should I proceed in order to update the lambda/node version? Is there any standard procedure or update the rack is enough?

We’ve updated our racks and apps, but there are still a few lambda functions using node 8:

  • convox-*-NotifierHandler-*
  • *-console-*-Forwarder-*

Is there a way to update these? I think they might be rack resources (syslog/webhook)?

We’re currently unable to launch new resources in AWS due to this error.

020-01-14 10:08:28 UTC+0100 NotifierHandler CREATE_FAILED The runtime parameter of nodejs8.10 is no longer supported for creating or updating AWS Lambda functions. We recommend you use the new runtime (nodejs12.x) while creating or updating functions. (Service: AWSLambdaInternal; Status Code: 400; Error Code: InvalidParameterValueException; Request ID: dd789c70-9912-44de-8010-a726b8102165)

This is when adding the AWS-Convox runtime integration.

@julian, @andreas.nilsson
Thanks for flagging this up, digging in and found the old function so expect an update soon!

Thanks,

@andreas.nilsson I ran into this yesterday. A workaround is to edit the cloudformation template and change the engine to nodejs12.x by hand, then copy the parameters (AccountId, ExternalId, IntegrationUrl) in from the original

Hey guys, the issue with the AWS runtime integration is now fixed. Please try again!

Thanks,
Ed

Seems to working as intended so far. Thanks!

1 Like