Upgrading to 0.4.3 broke my forum

Bug Reports
  • @zenkamal

    1. Was the git pull clean?
    2. What happens when you shut down NodeBB and run it using ./nodebb dev? Any errors shown?
  • @julian

    I think the git pull was clean, but close the window already.

    ./nodebb dev results in only these warnings:

    warn: You have no redis password setup!
    warn: [plugins/nodebb-plugin-sso-facebook] staticDir is deprecated, use staticDi              rs instead
    warn: [plugins/nodebb-plugin-sso-google] staticDir is deprecated, use staticDirs               instead
    warn: [plugins/nodebb-widget-essentials] staticDir is deprecated, use staticDirs               instead
    error: [meta/css] Could not minify LESS/CSS: './nodebb-widget-essentials/css/wid              get.css' wasn't found

    What does development mode do? Can I roll back to 0.4.2?

  • @zenkamal Can you give this a shot?

    npm i nodebb-widget-essentials

  • @julian

    Got this:

    npm WARN package.json [email protected] No repository field.
    npm WARN package.json [email protected] No repository field.
    npm WARN package.json [email protected] No repository field.
    npm http GET https://registry.npmjs.org/nodebb-widget-essentials
    npm http 200 https://registry.npmjs.org/nodebb-widget-essentials
    npm http GET https://registry.npmjs.org/nodebb-widget-essentials/-/nodebb-widget-essentials-0.0.21-13.tgz
    npm http 200 https://registry.npmjs.org/nodebb-widget-essentials/-/nodebb-widget-essentials-0.0.21-13.tgz
    npm http GET https://registry.npmjs.org/marked
    npm http 200 https://registry.npmjs.org/marked
    [email protected] node_modules/nodebb-widget-essentials
    └── [email protected]
  • Yes, that should update your widget-essentials to the newest version (not sure if you needed it, but nevertheless)...

    Now try running your forum in dev mode again. All it does is run it in interactive mode (so you can ctrl-C out faster), and show all errors in the console itself.

  • @julian

    Ran it in dev mode and these were the final lines:

    info: NodeBB attempting to listen on:
    info: NodeBB Ready
    info: [socket] An anonymous user (wDTMOA6QMsnqG1W-E_3C) has successfully reconnected.
    ^Cinfo: [app] Shutdown (SIGTERM/SIGINT) Initialised.
    info: [app] Database connection closed.
    info: [app] Shutdown complete.

    And now it works again, with colors reset to blue. If that meant my old widget-essentials broke the upgrade, do I need to update other stuff each time I upgrade NodeBB? And I noticed that starting NodeBB doesn't result in the "NodeBB listening on 0.0.blah" anymore now that I've updated. Is that okay?

  • @julian

    And some more stuff seems to be messed up as well. Like when I log in by google SSO, it results in this message:

    {"error":"Cannot read property '_csrf' of undefined"}

    EDIT: also, when I reclick the homepage, no content shows up.
    Waaaah I wanna role back to my old, functional, purple forum! 😛

  • EDIT: also, when I reclick the homepage, no content shows up.

    Yikes, that's the 3rd time I've heard this bug in the past day... seems custom-homepage is the culprit. It might need fixing, so can you disable it?

    Edit: As for google SSO, please do the same to that plugin to update it: npm i nodebb-plugin-sso-google nodebb-plugin-sso-facebook

  • @julian

    Okay, I disabled it, but even after updating SSO, I get this error in the browser after google OR normal email sign-in:

    {"error":"Cannot read property '_csrf' of undefined"}

    Also, when I updated SSO, I got these warnings again.

    npm WARN package.json [email protected] No repository field.
    npm WARN package.json [email protected] No repository field.
    npm WARN package.json [email protected] No repository field.

    By the way, how do I get back to the purple/lavender color scheme?

  • I think Lavender used to be hardcoded purple, but recent updates removed that so the "category colour" can be selected.

    Check this guide out: https://community.nodebb.org/topic/713/howto-overriding-lavender-s-purple

  • Coolio, that seems easy enough. Any idea what I can do about the email/SSO sign on error?

    {"error":"Cannot read property '_csrf' of undefined"}

  • @zenkamal Hm, updating the SSO plugins should resolve that -- it still happens? Was it Google SSO?

  • @julian

    Yup, it's happened about a third of the time, from either SSO or plain email. I can try to recreate and pinpoint when it happens.

  • Thanks, please let me know. Possibly registration vs. login...

  • @julian

    Okay, this reproduces it:

    1. Try to log in to nutritionask.com using email, not SSO

    2. It (usually/always) results in this error:

      {"error":"Cannot read property '_csrf' of undefined"}

  • Hmm... Please take a look at the file /logs/output.log... It might contain information about what caused the db connection to die...

  • @julian

    Does this mean anything? (from output.log)

    ^[[32minfo^[[39m: [Auth] Session qiMn3JE_1AWce13a2lK4IWtL logout (uid: 1)
    node_redis: no callback to send error: ERR unknown command 'pexpire'

    Also, the heart buttons on each post turned into blocks...I'm trying to decide whether to hack away at this or find another route -- like is there a way to just make the recent topics list the homepage, without using the custom homepage plugin?


  • node_redis: no callback to send error: ERR unknown command 'pexpire'

    Looks like your Redis version isn't quite up to date... NodeBB requires a minimum of v2.6

  • @julian

    Mayhaps @psychobunny could add "redis needs to be updated like so" that to the NodeBB for Dummies install guide? I just followed those instructions like a robot, and robots don't know what needs updating 😛

    Like now I'm trying to update redis and got this message when running the install script:

    Starting Redis server...
    Reading the configuration file, at line 55
    >>> 'tcp-backlog 511'
    Bad directive or wrong number of arguments
    ERROR: Failed starting service.... Aborting!

    ...and I still get this message when trying to log in to my forum using email+password, with the latest stable redis downloaded but not working apparently?

    {"error":"Cannot read property '_csrf' of undefined"}

    I just used the digitalocean guide to getting the newest redis, but changed the path to get the latest stable version. Is there any way to roll back to 0.4.2? My forum is all jacked up now!

  • sudo apt-get install -y python-software-properties
    sudo add-apt-repository -y ppa:rwky/redis
    sudo apt-get update
    sudo apt-get install -y redis-server

Suggested Topics