Yes it's better !
We will release 2.0 I am going to keep a list of plugins here that are compatible already. If you have any plugins that are not in this list let us know and we will try to get them updated before release.
The migration guide is here.
thanks @baris , we have many that are not on the list yet...
nodebb-plugin-audio-embed nodebb-plugin-calendar nodebb-plugin-cards nodebb-plugin-customize nodebb-plugin-dwnvtr
nodebb-plugin-emoji-one nodebb-plugin-extended-markdown nodebb-plugin-hashtags nodebb-plugin-image-mentions nodebb-plugin-knowledge-base nodebb-plugin-night-mode
nodebb-plugin-shoutbox nodebb-plugin-twitter nodebb-plugin-two-way-block
@crazycells Updated most of these plugins and the list in the main post.
nodebb-plugin-email-blacklistdoesn't work due to the changeds to registration and email being optional.
nodebb-plugin-embedwhich fork are you using for this?
@baris thanks! crossed out the updated ones...
embed plugin is this one:
I missed this plugin:
And these four are in our development, we are planning to use them soon:
actually since we have switched to extended-markdown , we do not use mega-colors anymore; but I thought it might be useful for others.
I got a couple that we will definitely need on 2.0, really mostly all by @yariplus
Not really a breaking change (yet), but the module definitions in plugin.json are kinda, odd...
I would expect the key to be the module name, but it's actually the filename. That makes sense in RJS world, where the file name needs to end in .js, but not so much in plugin.json world. You end up with this weirdness:
Where you could just use the module name and add the .js in the build step:
destPath: path.join(__dirname, '../../build/public/src/modules', relPath + ".js"),
It would make this more readable too since both the json and js would use the string 'jquery'.
Yes, I am very nit-picky.
@yariplus That's good feedback, and yes, it is an unfortunate artefact of our RJS implementation.
I even remember the headspace I was in that day... I had implemented the
moduleslogic and my brain was basically scrambled egg at that point, since for whatever reason I can never wrap my head around module loaders. I ended up with an implementation that worked, and called it quits. That's likely why the key is a relative path, simply appended to the base directory (and resolved if needed, to get rid of
../, etc.), and ends in js. They're symlinks, and so I needed to build an absolute path out of them.
Webpack upends this behaviour, so it's no longer necessary, so it's something we can consider. If anything, we can just make the
.jssuffix optional, and check for
.min.jsif no extension is passed in.
Out of the top 30 plugins requested via nbbpm, the following are not in the list at top:
- nodebb-plugin-category-notifications (@baris done)
- nodebb-plugin-embed (which @crazycells mentioned above)
- nodebb-plugin-discord-notification (https://github.com/amargon/nodebb-plugin-discord-notification/pull/12)
- nodebb-plugin-adsense (@baris done)
maybe this :
@baris There seems to be an error in
2022-03-08T17:38:48.973Z [4567/50454] - error: [build] requirejs modules build failed 2022-03-08T17:38:48.973Z [4567/50454] - error: [build] Encountered error during build step Error: ENOENT: no such file or directory, stat '/home/sudonix/nodebb/node_modules/nodebb-plugin-poll/vendor/dayjs.min.js' 2022-03-08T17:38:48.973Z [4567/50454] - error: admin.reload Error: ENOENT: no such file or directory, stat '/home/sudonix/nodebb/node_modules/nodebb-plugin-poll/vendor/dayjs.min.js'