Skip to content

v4.0.0 Upgrade Support

Uncategorized
  • @karsten13 can you try with nodebb-theme-persona@14.0.9 and let me know if it works?

  • @baris LGTM, Thanks!

    original-9A42DBD3-F001-46B0-AFB6-40495D64D23B.jpeg

    Link Preview Image
  • @karsten13 nice. Off topic but you can add mb-3 class to your header widget so it is not so close to your title.

    <div class="well mb-3" style="border:1px solid lightgrey">...</div>
    

    image.png

    Link Preview Image
  • Just upgraded to 4.0.5 from 3.x (I think it was the latest 3.12.4)

    The following error occurred

    4. Updating NodeBB data store schema...
    Parsing upgrade scripts...
    OK | 6 script(s) found, 145 skipped
      → [2024/11/25] Add website and location as custom profile fields... OK (0.01 seconds)
      → [2024/12/2] Add setting for keeping original image after resize... OK (0.00 seconds)
      → [2024/2/22] Setting up default configs/privileges re: ActivityPub... OK (0.30 seconds)
      → [2024/11/28] Regenerate user slugs for users whose usernames contained periods...
        [##############] (25/25) 100%  OK (0.01 seconds)
      → [2025/1/27] Changing integer search indices to string...
        [##############] (3659/3659) 100%  OK (4.21 seconds)
      → [2025/2/18] Add timestamp field to searchtopic searchpost collections...Error occurred
    Error occurred during upgrade: MongoServerError: Projection cannot have a mix of inclusion and exclusion.
        at Connection.sendCommand (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:296:27)
        at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
        at async Connection.command (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:323:26)
        at async Server.command (/home/nodebb/nodebb/node_modules/mongodb/lib/sdam/server.js:170:29)
        at async FindOperation.execute (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/find.js:36:16)
        at async tryOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:203:20)
        at async executeOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:73:16)
        at async FindCursor._initialize (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/find_cursor.js:60:26)
        at async FindCursor.cursorInit (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:607:27)
        at async FindCursor.fetchBatch (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:641:13)
    2025-02-27T01:21:41.642Z [4567/150701] - error: uncaughtException: Projection cannot have a mix of inclusion and exclusion.
    MongoServerError: Projection cannot have a mix of inclusion and exclusion.
        at Connection.sendCommand (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:296:27)
        at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
        at async Connection.command (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:323:26)
        at async Server.command (/home/nodebb/nodebb/node_modules/mongodb/lib/sdam/server.js:170:29)
        at async FindOperation.execute (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/find.js:36:16)
        at async tryOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:203:20)
        at async executeOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:73:16)
        at async FindCursor._initialize (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/find_cursor.js:60:26)
        at async FindCursor.cursorInit (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:607:27)
        at async FindCursor.fetchBatch (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:641:13) {"date":"Thu Feb 27 2025 12:21:41 GMT+1100 (Australian Eastern Daylight Time)","error":{"code":2,"codeName":"BadValue","errorResponse":{"code":2,"codeName":"BadValue","errmsg":"Projection cannot have a mix of inclusion and exclusion.","ok":0},"ok":0},"exception":true,"os":{"loadavg":[1.08,0.39,0.18],"uptime":1031967.39},"process":{"argv":["/usr/bin/node","/home/nodebb/nodebb/nodebb","upgrade"],"cwd":"/home/nodebb/nodebb","execPath":"/usr/bin/node","gid":1001,"memoryUsage":{"arrayBuffers":19486426,"external":24049422,"heapTotal":104038400,"heapUsed":70664672,"rss":197357568},"pid":150701,"uid":1001,"version":"v22.14.0"},"stack":"MongoServerError: Projection cannot have a mix of inclusion and exclusion.\n    at Connection.sendCommand (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:296:27)\n    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n    at async Connection.command (/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js:323:26)\n    at async Server.command (/home/nodebb/nodebb/node_modules/mongodb/lib/sdam/server.js:170:29)\n    at async FindOperation.execute (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/find.js:36:16)\n    at async tryOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:203:20)\n    at async executeOperation (/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js:73:16)\n    at async FindCursor._initialize (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/find_cursor.js:60:26)\n    at async FindCursor.cursorInit (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:607:27)\n    at async FindCursor.fetchBatch (/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js:641:13)","trace":[{"column":27,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js","function":"Connection.sendCommand","line":296,"method":"sendCommand","native":false},{"column":5,"file":"node:internal/process/task_queues","function":"process.processTicksAndRejections","line":105,"method":"processTicksAndRejections","native":false},{"column":26,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/cmap/connection.js","function":"async Connection.command","line":323,"method":"command","native":false},{"column":29,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/sdam/server.js","function":"async Server.command","line":170,"method":"command","native":false},{"column":16,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/operations/find.js","function":"async FindOperation.execute","line":36,"method":"execute","native":false},{"column":20,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js","function":"async tryOperation","line":203,"method":null,"native":false},{"column":16,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/operations/execute_operation.js","function":"async executeOperation","line":73,"method":null,"native":false},{"column":26,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/find_cursor.js","function":"async FindCursor._initialize","line":60,"method":"_initialize","native":false},{"column":27,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js","function":"async FindCursor.cursorInit","line":607,"method":"cursorInit","native":false},{"column":13,"file":"/home/nodebb/nodebb/node_modules/mongodb/lib/cursor/abstract_cursor.js","function":"async FindCursor.fetchBatch","line":641,"method":"fetchBatch","native":false}]}
    

    I know nothing about mongodb so have no clue to the cause of this issue.

  • @jaromanda please install nodebb-plugin-dbsearch@6.2.13 and try again. Let me know if the upgrade script works.

  • @jaromanda please install nodebb-plugin-dbsearch@6.2.13 and try again. Let me know if the upgrade script works.

    @baris No, that made no difference

    edit: hmm, seems 6.2.12 is still installed

    edit 2: Oh, running ./nodebb upgrade installs 6.2.12

    Yes, editing install/package.json and changing the version of nodebb-plugin-dbsearch to 6.2.13 did the trick

    Thank you

  • upgrade from v1.12.2, but failed when v3.x to v4.x

    4. Updating NodeBB data store schema...
    Parsing upgrade scripts... 
    OK | 4 script(s) found, 147 skipped
      → [2024/2/22] Setting up default configs/privileges re: ActivityPub...Error occurred
    Error occurred during upgrade: Error: &lsqb;&lsqb;error:invalid-data&rsqb;&rsqb;
        at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9)
        at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11)
        at generateHandle (/home/nodebb/src/categories/create.js:154:26)
        at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11)
        at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36
        at Array.map ()
        at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42)
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4)
        at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2)
    2025-04-14T17:03:51.767Z [4567,4568,4569,4570/27865] - error: uncaughtException: &lsqb;&lsqb;error:invalid-data&rsqb;&rsqb;
    Error: &lsqb;&lsqb;error:invalid-data&rsqb;&rsqb;
        at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9)
        at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11)
        at generateHandle (/home/nodebb/src/categories/create.js:154:26)
        at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11)
        at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36
        at Array.map ()
        at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42)
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4)
        at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2) {"date":"Tue Apr 15 2025 01:03:51 GMT+0800 (China Standard Time)","error":{},"exception":true,"os":{"loadavg":[0.5,0.2,0.24],"uptime":21399.08},"process":{"argv":["/root/.nvm/versions/node/v20.19.0/bin/node","/home/nodebb/nodebb","upgrade"],"cwd":"/home/nodebb","execPath":"/root/.nvm/versions/node/v20.19.0/bin/node","gid":0,"memoryUsage":{"arrayBuffers":19370345,"external":23881947,"heapTotal":91189248,"heapUsed":62438072,"rss":182493184},"pid":27865,"uid":0,"version":"v20.19.0"},"stack":"Error: &lsqb;&lsqb;error:invalid-data&rsqb;&rsqb;\n    at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9)\n    at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11)\n    at generateHandle (/home/nodebb/src/categories/create.js:154:26)\n    at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11)\n    at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36\n    at Array.map ()\n    at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42)\n    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n    at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4)\n    at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2)","trace":[{"column":9,"file":"/home/nodebb/src/meta/index.js","function":"Meta.slugTaken","line":34,"method":"slugTaken","native":false},{"column":11,"file":"/home/nodebb/src/promisify.js","function":"Object.wrapperCallback [as slugTaken]","line":46,"method":"wrapperCallback [as slugTaken]","native":false},{"column":26,"file":"/home/nodebb/src/categories/create.js","function":"generateHandle","line":154,"method":null,"native":false},{"column":11,"file":"/home/nodebb/src/promisify.js","function":"Object.wrapperCallback [as generateHandle]","line":46,"method":"wrapperCallback [as generateHandle]","native":false},{"column":36,"file":"/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js","function":null,"line":25,"method":null,"native":false},{"column":null,"file":null,"function":"Array.map","line":null,"method":"map","native":false},{"column":42,"file":"/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js","function":"Object.method","line":23,"method":"method","native":false},{"column":5,"file":"node:internal/process/task_queues","function":"process.processTicksAndRejections","line":95,"method":"processTicksAndRejections","native":false},{"column":4,"file":"/home/nodebb/src/upgrade.js","function":"async Upgrade.process","line":161,"method":"process","native":false},{"column":2,"file":"/home/nodebb/src/upgrade.js","function":"async Upgrade.run","line":110,"method":"run","native":false}]}
    
  • upgrade from v1.12.2, but failed when v3.x to v4.x

    4. Updating NodeBB data store schema...
    Parsing upgrade scripts... 
    OK | 4 script(s) found, 147 skipped
      → [2024/2/22] Setting up default configs/privileges re: ActivityPub...Error occurred
    Error occurred during upgrade: Error: &lsqb;&lsqb;error:invalid-data&rsqb;&rsqb;
        at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9)
        at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11)
        at generateHandle (/home/nodebb/src/categories/create.js:154:26)
        at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11)
        at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36
        at Array.map ()
        at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42)
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4)
        at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2)
    2025-04-14T17:03:51.767Z [4567,4568,4569,4570/27865] - error: uncaughtException: &lsqb;&lsqb;error:invalid-data&rsqb;&rsqb;
    Error: &lsqb;&lsqb;error:invalid-data&rsqb;&rsqb;
        at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9)
        at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11)
        at generateHandle (/home/nodebb/src/categories/create.js:154:26)
        at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11)
        at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36
        at Array.map ()
        at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42)
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4)
        at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2) {"date":"Tue Apr 15 2025 01:03:51 GMT+0800 (China Standard Time)","error":{},"exception":true,"os":{"loadavg":[0.5,0.2,0.24],"uptime":21399.08},"process":{"argv":["/root/.nvm/versions/node/v20.19.0/bin/node","/home/nodebb/nodebb","upgrade"],"cwd":"/home/nodebb","execPath":"/root/.nvm/versions/node/v20.19.0/bin/node","gid":0,"memoryUsage":{"arrayBuffers":19370345,"external":23881947,"heapTotal":91189248,"heapUsed":62438072,"rss":182493184},"pid":27865,"uid":0,"version":"v20.19.0"},"stack":"Error: &lsqb;&lsqb;error:invalid-data&rsqb;&rsqb;\n    at Meta.slugTaken (/home/nodebb/src/meta/index.js:34:9)\n    at Object.wrapperCallback [as slugTaken] (/home/nodebb/src/promisify.js:46:11)\n    at generateHandle (/home/nodebb/src/categories/create.js:154:26)\n    at Object.wrapperCallback [as generateHandle] (/home/nodebb/src/promisify.js:46:11)\n    at /home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:25:36\n    at Array.map ()\n    at Object.method (/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js:23:42)\n    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n    at async Upgrade.process (/home/nodebb/src/upgrade.js:161:4)\n    at async Upgrade.run (/home/nodebb/src/upgrade.js:110:2)","trace":[{"column":9,"file":"/home/nodebb/src/meta/index.js","function":"Meta.slugTaken","line":34,"method":"slugTaken","native":false},{"column":11,"file":"/home/nodebb/src/promisify.js","function":"Object.wrapperCallback [as slugTaken]","line":46,"method":"wrapperCallback [as slugTaken]","native":false},{"column":26,"file":"/home/nodebb/src/categories/create.js","function":"generateHandle","line":154,"method":null,"native":false},{"column":11,"file":"/home/nodebb/src/promisify.js","function":"Object.wrapperCallback [as generateHandle]","line":46,"method":"wrapperCallback [as generateHandle]","native":false},{"column":36,"file":"/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js","function":null,"line":25,"method":null,"native":false},{"column":null,"file":null,"function":"Array.map","line":null,"method":"map","native":false},{"column":42,"file":"/home/nodebb/src/upgrades/4.0.0/activitypub_setup.js","function":"Object.method","line":23,"method":"method","native":false},{"column":5,"file":"node:internal/process/task_queues","function":"process.processTicksAndRejections","line":95,"method":"processTicksAndRejections","native":false},{"column":4,"file":"/home/nodebb/src/upgrade.js","function":"async Upgrade.process","line":161,"method":"process","native":false},{"column":2,"file":"/home/nodebb/src/upgrade.js","function":"async Upgrade.run","line":110,"method":"run","native":false}]}
    

    @Dk please try with the latest commit on master

  • @julian Done, git reset --hard master didn't work for me, but switching to origin/master resolved the issue.
    Thank you

  • When I reply to messages by tagging a user, some numbers appear next to the username. I’m not sure if it’s because of the browser I’m using, but it’s definitely a bug.
    @kereste-6f5c390e

    NodeBB v4.2.1
    Browser: Safari

  • When I reply to messages by tagging a user, some numbers appear next to the username. I’m not sure if it’s because of the browser I’m using, but it’s definitely a bug.
    @kereste-6f5c390e

    NodeBB v4.2.1
    Browser: Safari

    @cagatay does it occur here?

Diese Artikel könnten Dich auch interessieren.