Recent plugin upgrade beak everything



  • I was doing my regular check in the admin control panel for plugin updates. I noticed 5 or 6 that have been recently updated and I was told i was using out of date plugins. So my instincts tell me to upgrade.

    NodeBB wont even boot correctly now.

    How come incompatible plugins are being recommended in the ACP when they break NodeBB?

    The basic recommended plugins such as dbsearch, emailer and google analytics dont work and i dont know what versions are compatible with what version of NodeBB.

    Can we get a list up somewhere of plugins and their compatibility with NodeBB?

    I know you guys are working on a better plugin manager but it doesnt really help when the current on tells you to install something that just does not work on the current "stable" nodebb.


  • Global Moderator

    @Scuzz I made this point in a github issue, sort of. The nbbpm plugin system that's being implemented was backported to 0.5.x stable. Which is still technically 0.5.4, the issue with backporting into an existing version, is although their has technically been an update, it's still 0.5.4, so the NodeBB system will tell you you're up to date.

    This basically means that you could be running an old 0.5.4, and I could be running a 0.5.4 with the nbbpm backported software, my version would tell me not to update because of incompatability, your version wouldn't. I have recommended that any changes, no matter how small, be marked under a new version, when a software is released as 0.5.4, this is it. A bugfix or a backport should become 0.5.5 when stable. Which I believe is the steps that are now being taken. I've seen a lot of similar issues, so I feel a sticky or an email to all users on the forums regarding this may be warranted.

    To fix your plugins, you will need to downgrade any affected plugins, this can be done manually through github, look at the commits and look for the latest version before any 0.6.0 compatability commits. For example, widgets essentials should be 0.1.2 etc. Then update as your normally would, but instead add @x.x.x. to the end of the plugin name. Replacing x.x.x with the version of the plugin prior to the 0.6.0 compat changes.

    It's unfortunate that this has happened to so many users, and is probably quite a jarring issue to have. I can't say I have the time to create a topic that will list every plugin and every version people should be using. But, it is something that can be prevented in the future. :+1:


  • Plugin & Theme Dev

    @a_5mith said:

    The nbbpm plugin system that's being implemented was backported to 0.5.x stable. Which is still technically 0.5.4, the issue with backporting into an existing version, is although their has technically been an update, it's still 0.5.4, so the NodeBB system will tell you you're up to date.

    Seriously what's the logic behind this?



  • So is this why doing a simple nodebb upgrade fixed all my problems?


  • Global Moderator

    @Schamper I'd say it was more an oversight, everyone on 0.5.4 requires these changes in order to avoid installing the wrong plugin version, however at the same time, the oversight came in when existing 0.5.4 users, would have to "upgrade" to the same version in order to benefit from this. Not everyone runs git pull that often unless they're changing versions or if they're on master.

    Unfortunately it's one of those things that has to happen to improve on NodeBB, it just happened in the wrong order. Well, I say the wrong order, the nbbpm was implemented, then it was discovered that users on 0.5.x would receive incompatible plugins, so a fix was backported, that not everyone downloaded, so the issue arose anyway for some users. On the plus side, it shouldn't happen again. :D Well, not until plugin authors have to support the rel=nofollow...


  • Plugin & Theme Dev

    @a_5mith said:

    @Schamper I'd say it was more an oversight, everyone on 0.5.4 requires these changes in order to avoid installing the wrong plugin version, however at the same time, the oversight came in when existing 0.5.4 users, would have to "upgrade" to the same version in order to benefit from this. Not everyone runs git pull that often unless they're changing versions or if they're on master.

    I don't understand why this wasn't thought through. Recently npm removed the ability to republish existing version, isn't that a huge giveaway that, ya know, you should probably make it 0.5.5?

    Would really like a comment about this from the dev team.


  • Admin

    The updates to the ACP Plugins panel to utilise the NodeBB Package Manager were backported to v0.5.x, and immediately published (to GitHub) as v0.5.4. v0.5.x branch should have this, and if it doesn't, that's a bit of a problem, I'd say.

    Also, we don't publish NodeBB to npm. Someone beat us to it, but they don't maintain it :stuck_out_tongue:

    @Schamper Thanks for keeping us accountable


  • Plugin & Theme Dev

    @julian said:

    The updates to the ACP Plugins panel to utilise the NodeBB Package Manager were backported to v0.5.x, and immediately published (to GitHub) as v0.5.4. v0.5.x branch should have this, and if it doesn't, that's a bit of a problem, I'd say.

    Also, we don't publish NodeBB to npm. Someone beat us to it, but they don't maintain it :stuck_out_tongue:

    @Schamper Thanks for keeping us accountable

    But was 0.5.4 already released prior to this? The problem here is that no one knows there's an "update" available because they already have 0.5.4.

    My point for npm was that it's probably a bad idea in general to release an update under the same version number.



  • I had a different problem with updating recently. I'm still one v0.5.4, but updated using npm. This updated the Vanilla theme, which my own theme (a Lavender clone with mods) depends on, actually updating after this commit, which broke everything. The csrf thingy was removed from the latest theme release but not from the latest release of NodeBB, breaking login and eventually other stuff that happen after login.

    I changed the required version of nodebb-theme-vanilla to 0.1.38 in NodeBB's package.json and installed the correct version, everything's fine.

    If anyone has the same problem and want a quickfix:

    npm remove nodebb-theme-vanilla
    npm install nodebb-theme-vanilla@0.1.38
    


  • @Schamper even a 0.5.4.1 would do.


  • Admin

    Prior to the backporting, the latest v0.5.x version was v0.5.3, so there should not have been any problems with installing packages on v0.5.4, except if you installed a package that was upgraded to v0.6.0 compatibility but did not properly follow the recommended procedures regarding publishing of a v0.5.x compatible version with compatibility hash.



  • @julian The plugins I installed were the ones the NodeBB look after?
    Google Analytics
    DBSearch
    Markdown
    Widget essentials

    This was on 0.5.4 and then after @a_5mith post i tried to update nodebb and there was an update but the ACP did not know that there was one. Once i updated from 0.5.4 to 0.5.4-newer the plugins worked.


  • Admin

    Ah yes, true. I will admit that the Upgrade Button specifically was not changed for the initial release of v0.5.4.

    They were added after, but not republished as v0.5.5, yet.

    Waiting on gh#2438

    julianlam created this issue in NodeBB/NodeBB

    closed Package Manager Inclusion Criteria #2438


Log in to reply
 


Looks like your connection to NodeBB was lost, please wait while we try to reconnect.