Skip to content
This repository has been archived by the owner on Jul 24, 2024. It is now read-only.

Node 16 support #3077

Closed
4 tasks
nschonni opened this issue Mar 29, 2021 · 37 comments · Fixed by #3090
Closed
4 tasks

Node 16 support #3077

nschonni opened this issue Mar 29, 2021 · 37 comments · Fixed by #3090
Assignees
Labels
Node 16 Related to Node 16

Comments

@nschonni
Copy link
Contributor

nschonni commented Mar 29, 2021

Node 16 is currently scheduled for April 20 2021 https://github.com/nodejs/Release

/cc @xzyfer @saper

@nschonni nschonni added the Node 16 Related to Node 16 label Mar 29, 2021
@nschonni nschonni pinned this issue Mar 29, 2021
@saper
Copy link
Member

saper commented Mar 29, 2021

Test PR: nodejs/node#37678
NODE_MODULE_VERSION: 93

@pedrofurtado

This comment has been minimized.

@laoshaw

This comment has been minimized.

@benjamingr
Copy link

Hey Nick, is there an ETA for this? This is blocking us from updating to Node.js 16 :)

Would you like help doing the https://github.com/sass/node-sass/blob/master/lib/extensions.js#L83 update or anything similar?

@saper
Copy link
Member

saper commented Apr 25, 2021

Hey Nick, is there an ETA for this? This is blocking us from updating to Node.js 16 :)

It is a volunteer project, so no ETAs or SLAs. Could you do a quick research for this about the compilers used and the C++ standard required to build nodes 10 (likely to drop #3094), 12, 14 and 16? This is for #3091

@benjamingr
Copy link

It is a volunteer project, so no ETAs or SLAs.

I'm asking a fellow maintainer for an estimation - other projects we're both involved in (like Node.js) are volunteer projects (at least for me) but we have ETAs and SLAs. That said: I was more trying to figure out how to help and less trying to demand a timely release.

Could you do a quick research for this about the compilers used and the C++ standard required to build nodes 10 (likely to drop #3094), 12, 14 and 16? This is for #3091

Sure, I work on Node.js so I actually know this one :D we support the following toolchains in https://github.com/nodejs/node/blob/master/BUILDING.md#official-binary-platforms-and-toolchains

We also have previous versions of this document for Node.js 14, 12 and 10 :)

@xzyfer
Copy link
Contributor

xzyfer commented Apr 26, 2021

ETA is unclear atm. We ran into nodejs/node#38367 and are figuring out how we want to handle it. Currently we plan to release Node 16 support in a major version bump which will also drop support for Node 10 (as it's about to reach EOL).

@xzyfer
Copy link
Contributor

xzyfer commented Apr 26, 2021

I expect the linked toolchain document answers our outstanding questions.

@xzyfer xzyfer closed this as completed Apr 26, 2021
@xzyfer xzyfer reopened this Apr 26, 2021
@cbix
Copy link

cbix commented Apr 26, 2021

@benjamingr we found this temporary workaround for a local/dev node 16 environment on Arch Linux (didn't want to downgrade again). For production, you should definitely wait for a proper release. Also, no warranty whatsoever.

  1. add this to node_modules/node-sass/lib/extensions.js
    case 83: return 'Node.js 14.x';
    case 88: return 'Node.js 15.x';
+    case 93: return 'Node.js 16.x';
    default: return false;
  }
}
  1. change node_modules/node-sass/binding.gyp (otherwise I'd get a gcc error about remove_cv_tmissing in std::)
        ['OS!="win"', {
          'cflags_cc+': [
-            '-std=c++0x'
+            '-std=c++14'
          ]
        }]
  1. run npm rebuild node-sass

@benjamingr
Copy link

@cbix I appreciate that (thanks!) though in all honesty I am in no rush to upgrade node-sass in the projects I'm involved with - I asked mostly because I wanted to know when to schedule the Node 16 update (currently scheduled for in ±3 months and can be delayed with little consequence).

I said I'm happy to help because that sounds... useful and fun to do and I enjoy that sort of thing.

I get why that might be confusing since I came here and asked "when will this be ready?" which implies I'm pushing for a timely release when I was actually just trying to figure out my schedule 😅

@saper
Copy link
Member

saper commented Apr 27, 2021

@hohol92 can you post a whole log somewhere?

@vinayakkulkarni

This comment has been minimized.

@allenwyma

This comment has been minimized.

@vinayakkulkarni

This comment has been minimized.

@chovyprognos
Copy link

here's my log: http://sprunge.us/W8yJ4l

@michaelbrewer

This comment has been minimized.

@vinayakkulkarni

This comment has been minimized.

@michaelbrewer

This comment has been minimized.

@KristianH

This comment has been minimized.

@davidflores2

This comment has been minimized.

@ilkkao

This comment has been minimized.

@ghost

This comment has been minimized.

@yuicer

This comment has been minimized.

@michaelbrewer

This comment has been minimized.

@adamreisnz

This comment has been minimized.

@gouku

This comment has been minimized.

@ilkkao

This comment has been minimized.

@marcinn
Copy link

marcinn commented May 7, 2021

Especially because even bootstrap made the switch without issues. I guess >99% projects won't need to make any changes except the change the library.

When node-sass is a dependency for core libs like BlueprintJS, which uses some non compatible directives, switching to sass is not possible. For me, the issue is related to 100% of my projects. I'm stuck with Node 15.14.0.

Why so many comments suggest you migrate from node-sass to sass marked as off-topic?

Because the issue is about node-sass incompatibility with Node 16, and node-sass is a dev dependency for many projects?

@pedrofurtado
Copy link

Anyway, happy to see this resolved (node 16 support) asap 🍻 Thanks guys for your hard work on it! 🥇

@sass sass locked as too heated and limited conversation to collaborators May 7, 2021
@nschonni
Copy link
Contributor Author

nschonni commented May 7, 2021

If switching to dart-sass has worked for you, great! That's not related to adding support in this library for Node 16
We have a PR in #3090 that just has a question on the minimum compilers and then a release needs to be cut with new binaries built for 16

@xzyfer
Copy link
Contributor

xzyfer commented May 7, 2021 via email

@nschonni nschonni unpinned this issue Jun 8, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Node 16 Related to Node 16
Projects
None yet
Development

Successfully merging a pull request may close this issue.