Going to need another Node update [Discord.js + Node 16.6.0 requirement]

Discord.JS is officially releasing their latest v13. Their docs say that node 16.6.0 is a required minimum. The latest is 16.6.1. The latest version of NPM is 7.20.3 (I believe) as well so if plans could be made to have these available that would help.

I am going to install my updated Discord bot soon and don’t anticipate any issues but (as always) it needs to install the required version of node first.

3 Likes

Hi there - we typically only support LTS versions of Node, and 16 won’t be LTS until October (Releases | Node.js), but I’ll see if we can make this work.

Hi Jenn. I noticed that as well. October is coming soon. I finally installed nvm-windows on my PC is there any way for Glitch to support some version of nvm? If so that might be a way to handle it. Thanks for looking into it in any case.

Hi today discord.js v13 is released officially and you need to use node 16.6 or higher version so is there any way to download it?

Glitch doesn’t have Node 16. I don’t know that there’s a way to download Node 16 onto a glitch project as I don’t know how to do. Glitch may have Node 16 LTS in October or later.

Hi there, I moved your post to this Feedback thread of a similar topic. We do not have Node 16 on containers yet, but I did put in a request today to see if it can be added sooner than its LTS date in October. I’ll post an update here when I have one!

1 Like

I just tried installing my updated bot and it looks like Gltch cannot locate the version of node specified in package.json “Could not find node ^16.6.1, using 10”

I tried adjust a few things but nothing worked. It appears that Glitch cannot locate that specific version, I assume it isn’t in the path they check. I’m going to have to test setting it back to 14.x which may (depending upon what parts of DiscordJs are being used) work. I tend to doubt it however.

So for those following along that was a no-go. I tried using 14.6 locally and it throws an error, I believe it is using something introduced in Node 15 which wouldn’t exist. I’m a bit stuck right now and will have to rollback a copy in GitHub in order to get it working in Glitch again. That can only be considered a temporary fix of course as no new development can take place on the project.

Yes, this is expected because we don’t have any Node 16 version installed on containers. I recommend you don’t upgrade Discord.js to the version that requires Node 16.6 until we add it to containers.

More or less understood but I was using 14.6 before it was officially added (in so far as I know). This creates something of a dilemma as the published version can not be updated any longer or I have to target the pre-release version of DiscordJS.

If any bugs are discovered DiscordJs will simply tell me to upgrade to the release.

In any case I know you are looking into it… if nothing else perhaps there can be support for pre-release versions of things like the libraries offer. There is a warning, we are told it is a prerelease but there may be rational reasons to use it and we accept the risk.

I understand your dilemma and if you do need to use the prerelease, we understand if you end up hosting the bot elsewhere. We are focused on sticking to the official Node LTS release schedule, not of different NPM package prereleases. That being said, I did put a request in for the team to discuss and see what we can do!

1 Like

I have been using discord.js v13 dev version on node 14.17.3 for about 2 months and that is still working.
To install it you can run npm install discord.js@dev

Hi Crypto. Yes but that isn’t the release version as far as I can tell. If you encounter a bug and you post it to the DiscordJs discord group I will guess they will tell you to upgrade and get back to them.

Hello,

Is there any way to update to Node.js v16? Currently, glitch is restricted to Node v14 at the latest which causes great limitations for projects and packages.

Hi there, I’ve moved your post to this thread so you can follow updates on Node 16. In short, Glitch containers do not have Node 16 because it’s not an LTS release yet, but we know there is interest in it being available.

2 Likes

Support for Node 16 would be greatly appreciated as Node 14 is a limitation to a lot of applications.

Hello, I was just wondering if there is any update on the situation regarding Node 16 implementation.

If you only need node 16 for discordjs v13, I’m currently using an AbortController polyfill with node 14.15, and I haven’t had any problems (yet). Just install abortcontroller-polyfill and then add the following to the top of your main file:

const { AbortController } = require('abortcontroller-polyfill/dist/cjs-ponyfill');
global.AbortController = AbortController;

For any other library that needs node >14, take a look at what errors you get when runninv it in node 14, and see if there are polyfills for it - there will almost certainly be.

3 Likes

Yes this works as a temporary solution to the problem but hopefully, Glitch will add support for Node 16.X

Edit:
I don’t think this is possible as Discord.JS doesn’t use the global keyword.

Also, regarding this, it still throws the error AbortController is not defined. (AbortController is declared before anything)