Updating plugin editor to new node version

Hi everyone,

We just wanted to provide a heads up that AWS will be removing support for node 12, which impacts only server-side actions inside plugins that use them, on November 14, 2022. To ensure compatibility, Bubble plans on helping plugin authors upgrade to node 14. This change is safe and not expected to require any code changes from your end, but if you’d like to test your plugin post-upgrade, you’ll have the option to manually upgrade your plugin through November 14, 2022. Afterwards, we’ll automatically upgrade the plugin on your behalf.

I’ll update this post once we have the manual upgrade path ready for plugin authors. We aim to deliver the UI by November 1.

17 Likes

Node 14 will be EOL in 6 months…Node.js | endoflife.date

Perhaps you would rather upgrade to Node 16, giving more headroom ?

1 Like

Thanks for reaching out! We’re aware of the upcoming Node 16 migration, and we will definitely be offering a Node 16 upgrade path in the following months with a longer delay than what’s provided here. Given the timelines involved, we can’t offer Node 16 right away. Rather, we have decided to focus on upgrading to Node 14 since that’s the most low-lift solution to ensure our users’ apps remain unaffected by the deadline.

2 Likes

Hi @grace.hong with this upgrade, kindly consider increasing plugin memory from current 125mb limit to something bigger.

2 Likes

Hi everyone,

We’ve released the upgrade path for plugin authors! You can manually upgrade using the “Upgrade to node 14” button on the Settings page of your plugin until November 14, 2022. After this date, we’ll automatically upgrade the plugin for you!

For plugin authors, if your plugin doesn’t contain any server-side actions, you will not be affected at all. Otherwise, you are almost certainly unaffected, but you can try out switching to the new node 14 runtime on test apps, see if anything is broken, and make changes if that’s the case.

For app users, almost certainly no action is required from your end. If a plugin author submits a new version of a plugin to ensure compatibility with node 14 prior to November 14, 2022, you will need to apply this version in order to prevent breaking. Otherwise, there will be an upgrade automatically applied to you.

3 Likes

Hello Grace @grace.hong

I am curious to see all the plugins whose authors have disappeared and no maintenance is available. My question will be:

How do we do the non Plugin Builders to know if the code will completely wreck our app after the Nov. 14th? :red_circle:

6 Likes

Hey @grace.hong , plugin maker here.

Could you please let me know your thoughts on this:

A quick and easy system for users to identify if a plugin is on the newest version of the Bubble Plugin API (for instance, a supports new responsive mode checkmark) and a “last updated” field on each plugin page?

This would encourage plugin makers to keep their plugins up to date and also communicate to users which plugins are more likely to be still maintained.

Thank you on your input! With newer versions of bubble, many plugins may become outdated. This must be easy to sort through! :slight_smile:

4 Likes

Hey JohnMark!

Sam here, from the success team. This change should be relatively safe - we are upgrading the backend module library behind server-side actions in plugins. There aren’t expected to be any code changes needed for plug-in authors, and the upgrade itself should not break anything outright.

That said, its smart to take inventory of the server-side plugin actions that you use on a regular basis in your app. If you find that you are heavily relying on any third party plugins that are not being maintained, reach out to our support team at support@bubble.io - we can do two things for you:

  1. Reach out to the plug-in author and remind them of our marketplace guidelines which specify that plugin authors must maintain their plugins.
  2. Help you come up with a workaround in your app so that you aren’t relying on that specific plugin.

Again - I do want to stress that there shouldn’t be any issues with any plugins associated with this upgrade, unless the plugin itself was specifically relying on an outdated node module that is not supported in node 14, in which case we wouldn’t recommend relying on that plugin in the first place. Keep in mind, node 14 is not “new” - it was originally released in April of 2020, and is stable.

Let me know if you have any other questions here!

4 Likes

Hi @sam.morgan ,

I have been waiting for this upgrade because I am have been trying to use a service that runs on node v14 and 16.

My code is running very well in test environment but I am getting undisclosed error when I try to run it in bubble:
image

Here is my code which is working well in test environment:

const Kilt = require('@kiltprotocol/sdk-js');
async function main() {
await Kilt.init({ address: 'wss://spiritnet.kilt.io/' })
await Kilt.connect()
console.log("Kilt connected")
await Kilt.disconnect()
console.log("...Kilt disconnected")
}
main()

Here is my code in Bubble:
const Kilt = require('@kiltprotocol/sdk-js');
const fullDID = context.async(async callback => {
try {
await Kilt.init({ address: 'wss://spiritnet.kilt.io/' });
await Kilt.connect();
await Kilt.disconnect()
callback(null, "some response")
}
catch (err) {
callback(err);
}
})

return{"res":fullDID}

Bubble sent out this email notifying plugin authors! :blush:

2 Likes

@sam.morgan does this mean we have support for importing es modules now? or do we still have to use require?

No - “import” syntax for ES6 modules automatically gets sorted to the top of the file which would require a much different architecture than we currently have in place for the plugin builder.

3 Likes

So still no ESM support @sam.morgan ?

good to know, thanks!

there’s a workaround i’m using for packages that only support ESM described here

1 Like

Bom dia , ao tentar atualizar a versão do plugin, estou tendo esse erro .

o que poderia ser ?


What is going on with the plugin submission system? I have not been able to upgrate any plugins for the last 2 days!

1 Like

Hello @grace.hong , @sam.morgan

I encountered today quite some issues (to say the least) with node-14 upgraded plugins on production applications, whereas if executed from the test application of that plugin, everything was fine.

Let’s say one of my plugin user uses this node-14 version plugin (containing node-14 specific syntax) by upgrading from his application from the Plugin panel…is the node-14 upgraded plugin really running on node-14 ?

Just a wild guess here, but it looks like:

  • node-12 is still used on production clusters even though the plugin has been upgraded to node-14 from the plugin editor and published.
  • node-14 is used only when the node-14-upgraded plugin is executed from its test app - test clusters I guess.

So, it means that a fully-tested node14-upgraded-plugin with its test app (on test cluster) may fail on production applications.
Hence, all manually-upgraded the plugins to node-14 by plugin authors MUST still be backward compatible with node-12.

Do you confirm?

3 Likes

We’re also having issues since the update. I haven’t tested in the development environment, but a custom plugin that worked before (offloads bulk data processing to AWS) is now throwing this:

I also note a performance degradation for node-14 upgraded plugins on Server Side Actions.
The cold start is around 40 sec, which is more than three times what was on node-12.

Thanks for raising the point @JohnMark

2 Likes