Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Supporting Node.js 14 and 16 LTS as the runtime of JavaScript action #772

Closed
peaceiris opened this issue Oct 28, 2020 · 22 comments
Closed
Assignees
Labels
enhancement New feature or request

Comments

@peaceiris
Copy link

peaceiris commented Oct 28, 2020

Describe the enhancement

Node.js v14.15.0 has been released and the 14.x release line now moves into Active LTS. Can the GitHub Actions runner support it as the runtime of a JavaScript (TypeScript) action? Is there a roadmap for this?

Code Snippet

Today, we can set node12 to runs.using.

runs:
  using: 'node12'
  main: 'main.js'

Can we set node14 (or node16) as follows?

runs:
  using: 'node14'
  main: 'main.js'

Additional information

https://docs.github.com/en/actions/creating-actions/metadata-syntax-for-github-actions#runs-for-javascript-actions

We also need to update the documentation when node14 is available.

@viceice
Copy link

viceice commented Oct 29, 2020

Looks like this is not easy 😭

else if (string.Equals(usingToken.Value, "node12", StringComparison.OrdinalIgnoreCase))
{
if (string.IsNullOrEmpty(mainToken?.Value))
{
throw new ArgumentNullException($"You are using a JavaScript Action but there is not an entry JavaScript file provided in {fileRelativePath}.");
}
else
{
return new NodeJSActionExecutionData()
{
Script = mainToken.Value,
Pre = preToken?.Value,
InitCondition = preIfToken?.Value ?? "always()",
Post = postToken?.Value,
CleanupCondition = postIfToken?.Value ?? "always()"
};
}
}

@ad-m
Copy link

ad-m commented Nov 22, 2020

Is it done via actions/runner-images#1953 ?

@peaceiris
Copy link
Author

peaceiris commented Nov 22, 2020

No. This is a problem of the actions/runner.

peaceiris/actions-gh-pages#539

https://github.com/peaceiris/actions-gh-pages/pull/539/checks?check_run_id=1437553870#step:19:20
Error: System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. (Parameter ''using: node14' is not supported, use 'docker' or 'node12' instead.')

@TingluoHuang
Copy link
Member

We need:

  • compile alpine node14
  • update the ./external.sh script to download the node14
  • update C# code and yaml schema to support node14
  • update documentation

smockle added a commit to smockle-archive/action-package-audit that referenced this issue Jan 5, 2021
This action requires Node.js 14, but Node.js 12 is the currently-supported version. Related: actions/runner#772
smockle added a commit to smockle-archive/action-package-audit that referenced this issue Mar 13, 2021
This action requires Node.js 14, but Node.js 12 is the currently-supported version. Related: actions/runner#772
@littlewall
Copy link

Hello,
Is there any update on this or timeline of when to expect this feature?

Thank you,
Milan Zítka

@ianwalter
Copy link

@TingluoHuang I started working on this but I don't have any significant experience with C# so any help or direction would be much appreciated.

@TingluoHuang
Copy link
Member

Should we just wait for node.js 16 to become LTS and then directly goes to node 16? I don't see too many benefits that go to node 14.

@mktcode
Copy link

mktcode commented Jun 4, 2021

"Active LTS Start: 2021-10-26"
https://nodejs.org/en/about/releases/

not that far away 👍🏻

@bryanmacfarlane
Copy link
Member

bryanmacfarlane commented Jun 4, 2021

... we could even start much sooner with using: node14 support in preview to find and flush out any potential issues. no need to wait till October ... we'll just have to turn the crank it least a couple of times. But I do like going straight to 16.

@rethab
Copy link
Contributor

rethab commented Jun 4, 2021

What would be the benefit of supporting node 14? Any features that would be unlocked by using it?

EvyBongers pushed a commit to Pararius/action-terraform that referenced this issue Jan 3, 2022
eregon pushed a commit to ruby/setup-ruby that referenced this issue May 10, 2022
According to the release policy of Node.js,
Node.js v12 reached EOL (end-of-life).

https://nodejs.org/en/about/releases/

I think ruby/setup-ruby is ready to update Node.js to v16
because GitHub Actions runners support v16.

actions/runner#772
hannesa2 added a commit to hannesa2/action-android-M1 that referenced this issue Jul 2, 2022
According to the release policy of Node.js,
Node.js v12 reached EOL (end-of-life).

https://nodejs.org/en/about/releases/

I think ruby/setup-ruby is ready to update Node.js to v16
because GitHub Actions runners support v16.

actions/runner#772
hannesa2 added a commit to hannesa2/action-android-M1 that referenced this issue Jul 2, 2022
According to the release policy of Node.js,
Node.js v12 reached EOL (end-of-life).

https://nodejs.org/en/about/releases/

I think ruby/setup-ruby is ready to update Node.js to v16
because GitHub Actions runners support v16.

actions/runner#772
Malinskiy pushed a commit to Malinskiy/action-android that referenced this issue Jul 4, 2022
* Update Node.js from v12 to v16

According to the release policy of Node.js,
Node.js v12 reached EOL (end-of-life).

https://nodejs.org/en/about/releases/

I think ruby/setup-ruby is ready to update Node.js to v16
because GitHub Actions runners support v16.

actions/runner#772

* prepare-for-release wiht node 16

* Node16 in Github actions

* Attempt to use node16 in package.json
philr pushed a commit to philr/setup-ruby that referenced this issue Sep 24, 2022
According to the release policy of Node.js,
Node.js v12 reached EOL (end-of-life).

https://nodejs.org/en/about/releases/

I think ruby/setup-ruby is ready to update Node.js to v16
because GitHub Actions runners support v16.

actions/runner#772
(cherry picked from commit e92b797)
jfroche added a commit to jfroche/niv-updater-action that referenced this issue Nov 15, 2022
nodejs 16 supported by runner version 2.285.0

actions/runner#772
jfroche added a commit to jfroche/niv-updater-action that referenced this issue Nov 28, 2022
nodejs 16 supported by runner version 2.285.0

actions/runner#772
jfroche added a commit to jfroche/niv-updater-action that referenced this issue Nov 28, 2022
nodejs 16 supported by runner version 2.285.0

actions/runner#772
jfroche added a commit to jfroche/niv-updater-action that referenced this issue Nov 28, 2022
nodejs 16 supported by runner version 2.285.0

actions/runner#772
knl pushed a commit to knl/niv-updater-action that referenced this issue Dec 27, 2022
nodejs 16 supported by runner version 2.285.0

actions/runner#772
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests