Skip to content

Upgrade Problem from 2.8.3 to 2.8.4

Solved Configure
  • @phenomlab from now like this;

    71faca9a-4e66-4c73-b521-084272c6ab0a-image.png

    but when upgrading;

    97aa618c-efd9-4edd-be72-a294d35a303d-image.png

  • @cagatay does it work if you remove this plugin, perform the upgrade, and then put it back afterwards?

  • @phenomlab i removed the plugin then upgraded but faced same eror…

  • @cagatay @phenomlab

    Maybe reset permissions on all nodebb directory like this ?

    chown -R yournodebbuser:yournodebbuser /home/youruser/yournodebbdirectory
    
    chown -R nodes:nodes /home/nodes/nodebb
    

    because I see permissions error on /home/nodes/nodebb/builds/.... in the last screenshot

    And .upgrade and or rebuild nodebb

    ??

  • @DownPW yes, but we really need to understand why and how these permissions are changing.

  • @DownPW @cagatay I found the reason why. This plugin is in fact faulty. I installed it myself because I wanted to add that feature to Sudonix. Not only does it push socket.io through the roof (and adds at least 2 seconds lag to each transaction)

    https://community.nodebb.org/topic/10225/nodebb-plugin-reactions-reactions-plugin-for-nodebb/60?_=1675778336803

    It also is impossible to remove by using the GUI - see my experience below, which is exactly the same as @cagatay

    5b8bb524-bc24-4376-8f57-9c5656c1d96c-image.png

    Not great. The only way to remove this cleanly is from the CLI

    npm remove @nodebb/nodebb-plugin-reactions
    ./nodebb build
    ./nodebb restart
    

    I remember flagging this a while back - it’s here

    https://github.com/NodeBB/NodeBB/issues/10582

    And here (one I raised)

    https://github.com/NodeBB-Community/nodebb-plugin-reactions/issues/8

    So, my advice is NOT to use this plugin currently as the unnecessary load it places on your forum isn’t worth the functionality it provides.

  • @phenomlab i dont have this plugin Mark. So the problem is currently continue.

  • @cagatay Sorry - my mistake.

  • @phenomlab not fixed yet.

  • @cagatay are you installing this plugin as root, or as the user running NodeBB?

  • @phenomlab as user.
    as a root i dont want to use for Nodebb.
    on the other hand the forum is working normally. it is happening just when i m upgrading.

  • @cagatay I’m not able to replicate this issue within my test environment. What permissions are set for the file and folders on this specific plugin?

  • @phenomlab its not problem as for the this moment. lets forget about it.
    we should focus on v3 🙂

  • @cagatay I can work with that 😃

  • You are getting that message because you have the three plugins below installed which all depend on nodebb-plugin-emoji so you cannot remove the main plugin without first removing those

    1679316592601-a88285fb-6417-419a-9f27-731cae619e78-image.png

    I’ve done it for you anyway 🙂

    image.png

    You should be able to upgrade now.

  • phenomlabundefined phenomlab has marked this topic as solved on
  • Users can not use emoji from now 😞 how i can fix it?

  • @cagatay Did you reinstall the plugins? They were removed so you could complete the upgrade 🙂

  • yes installed but not working.

  • @cagatay any error messages in the logs ? Would be helpful if you could post them here.

  • no just now working emojies 😞

    KAYITLAR
    started
    2023-03-23T05:40:58.276Z [4567/190807] - info: [build] Building in series mode
    2023-03-23T05:40:58.277Z [4567/190807] - info: [build] plugin static dirs build started
    2023-03-23T05:40:58.283Z [4567/190807] - info: [build] plugin static dirs build completed in 0.006sec
    2023-03-23T05:40:58.284Z [4567/190807] - info: [build] requirejs modules build started
    2023-03-23T05:40:58.386Z [4567/190807] - info: [build] requirejs modules build completed in 0.102sec
    2023-03-23T05:40:58.386Z [4567/190807] - info: [build] client js bundle build started
    2023-03-23T05:40:58.389Z [4567/190807] - info: [build] client js bundle build completed in 0.003sec
    2023-03-23T05:40:58.389Z [4567/190807] - info: [build] admin js bundle build started
    2023-03-23T05:40:58.390Z [4567/190807] - info: [build] admin js bundle build completed in 0.001sec
    2023-03-23T05:40:58.390Z [4567/190807] - info: [build] client side styles build started
    2023-03-23T05:41:02.501Z [4567/190807] - info: [build] client side styles build completed in 4.111sec
    2023-03-23T05:41:02.501Z [4567/190807] - info: [build] admin control panel styles build started
    2023-03-23T05:41:05.371Z [4567/190807] - info: [build] admin control panel styles build completed in 2.87sec
    2023-03-23T05:41:05.372Z [4567/190807] - info: [build] templates build started
    2023-03-23T05:41:05.654Z [4567/190807] - warn: [meta/templates] Partial not loaded: admin/partials/save_button.tpl
    2023-03-23T05:41:06.061Z [4567/190807] - info: [build] templates build completed in 0.689sec
    2023-03-23T05:41:06.061Z [4567/190807] - info: [build] languages build started
    2023-03-23T05:41:08.012Z [4567/190807] - info: [build] languages build completed in 1.951sec
    2023-03-23T05:41:08.013Z [4567/190807] - info: [build] Bundling with Webpack.

    [1%] setup (before run)
    [1%] setup (before run NodeEnvironmentPlugin)
    [1%] setup (before run)
    [2%] setup (run)
    [4%] setup (normal module factory)
    [5%] setup (context module factory)
    [6%] setup (before compile)
    [6%] setup (before compile ProgressPlugin)
    [6%] setup (before compile)
    [7%] setup (compile)
    [7%] setup (compile ExternalsPlugin)
    [7%] setup (compile)
    [8%] setup (compilation)
    [8%] setup (compilation ArrayPushCallbackChunkFormatPlugin)
    [8%] setup (compilation JsonpChunkLoadingPlugin)
    [8%] setup (compilation StartupChunkDependenciesPlugin)
    [8%] setup (compilation ImportScriptsChunkLoadingPlugin)
    [8%] setup (compilation FetchCompileWasmPlugin)
    [8%] setup (compilation FetchCompileAsyncWasmPlugin)
    [8%] setup (compilation WorkerPlugin)
    [8%] setup (compilation SplitChunksPlugin)
    [8%] setup (compilation ResolverCachePlugin)
    [8%] setup (compilation)
    [9%] setup (compilation)
    [9%] setup (compilation ProgressPlugin)
    [9%] setup (compilation ChunkPrefetchPreloadPlugin)
    [9%] setup (compilation JavascriptModulesPlugin)
    [9%] setup (compilation JsonModulesPlugin)
    [9%] setup (compilation AssetModulesPlugin)
    [9%] setup (compilation EntryPlugin)
    [9%] setup (compilation RuntimePlugin)
    [9%] setup (compilation InferAsyncModulesPlugin)
    [9%] setup (compilation DataUriPlugin)
    [9%] setup (compilation FileUriPlugin)
    [9%] setup (compilation CompatibilityPlugin)
    [9%] setup (compilation HarmonyModulesPlugin)
    [9%] setup (compilation AMDPlugin)
    [9%] setup (compilation RequireJsStuffPlugin)
    [9%] setup (compilation CommonJsPlugin)
    [9%] setup (compilation LoaderPlugin)
    [9%] setup (compilation NodeStuffPlugin)
    [9%] setup (compilation APIPlugin)
    [9%] setup (compilation ExportsInfoApiPlugin)
    [9%] setup (compilation WebpackIsIncludedPlugin)
    [9%] setup (compilation ConstPlugin)
    [9%] setup (compilation UseStrictPlugin)
    [9%] setup (compilation RequireIncludePlugin)
    [9%] setup (compilation RequireEnsurePlugin)
    [9%] setup (compilation RequireContextPlugin)
    [9%] setup (compilation ImportPlugin)
    [9%] setup (compilation RequireContextPlugin)
    [9%] setup (compilation SystemPlugin)
    [9%] setup (compilation ImportMetaPlugin)
    [9%] setup (compilation URLPlugin)
    [9%] setup (compilation DefaultStatsFactoryPlugin)
    [9%] setup (compilation DefaultStatsPresetPlugin)
    [9%] setup (compilation DefaultStatsPrinterPlugin)
    [9%] setup (compilation JavascriptMetaInfoPlugin)
    [9%] setup (compilation EnsureChunkConditionsPlugin)
    [9%] setup (compilation RemoveEmptyChunksPlugin)
    [9%] setup (compilation MergeDuplicateChunksPlugin)
    [9%] setup (compilation FlagIncludedChunksPlugin)
    [9%] setup (compilation SideEffectsFlagPlugin)
    [9%] setup (compilation FlagDependencyExportsPlugin)
    [9%] setup (compilation FlagDependencyUsagePlugin)
    [9%] setup (compilation InnerGraphPlugin)
    [9%] setup (compilation MangleExportsPlugin)
    [9%] setup (compilation ModuleConcatenationPlugin)
    [9%] setup (compilation NoEmitOnErrorsPlugin)
    [9%] setup (compilation RealContentHashPlugin)
    [9%] setup (compilation WasmFinalizeExportsPlugin)
    [9%] setup (compilation DeterministicModuleIdsPlugin)
    [9%] setup (compilation DeterministicChunkIdsPlugin)
    [9%] setup (compilation DefinePlugin)
    [9%] setup (compilation TerserPlugin)
    [9%] setup (compilation TemplatedPathPlugin)
    [9%] setup (compilation RecordIdsPlugin)
    [9%] setup (compilation WarnCaseSensitiveModulesPlugin)
    [9%] setup (compilation)
    [10%] building
    [10%] building (0/0 modules)
    [10%] building (0/15 modules)
    [10%] building (10/221 modules)
    [10%] building (60/270 modules)
    [10%] building (import loader file-loader/dist/cjs.js)
    [10%] building (131/299 modules)
    [10%] building (234/427 modules)
    [10%] building (368/429 modules)
    [10%] building (577/658 modules)
    [38%] building (870/871 modules)
    [65%] building (871/871 modules)
    [65%] building
    [69%] building (finish)
    [70%] sealing (finish module graph)
    [70%] sealing (finish module graph ResolverCachePlugin)
    [70%] sealing (finish module graph InferAsyncModulesPlugin)
    [70%] sealing (finish module graph FlagDependencyExportsPlugin)
    [70%] sealing (finish module graph InnerGraphPlugin)
    [70%] sealing (finish module graph WasmFinalizeExportsPlugin)
    [70%] sealing (finish module graph)
    [71%] sealing (plugins)
    [71%] sealing (plugins WarnCaseSensitiveModulesPlugin)
    [71%] sealing (plugins)
    [71%] sealing (dependencies optimization)
    [71%] sealing (dependencies optimization SideEffectsFlagPlugin)
    [71%] sealing (dependencies optimization FlagDependencyUsagePlugin)
    [71%] sealing (dependencies optimization)
    [72%] sealing (after dependencies optimization)
    [73%] sealing (chunk graph)
    [73%] sealing (after chunk graph)
    [74%] sealing (optimizing)
    [74%] sealing (module optimization)
    [75%] sealing (after module optimization)
    [76%] sealing (chunk optimization)
    [76%] sealing (chunk optimization EnsureChunkConditionsPlugin)
    [76%] sealing (chunk optimization RemoveEmptyChunksPlugin)
    [76%] sealing (chunk optimization MergeDuplicateChunksPlugin)
    [76%] sealing (chunk optimization SplitChunksPlugin)
    [76%] sealing (chunk optimization RemoveEmptyChunksPlugin)
    [76%] sealing (chunk optimization)
    [76%] sealing (after chunk optimization)
    [77%] sealing (module and chunk tree optimization)
    [78%] sealing (after module and chunk tree optimization)
    [78%] sealing (chunk modules optimization)
    [78%] sealing (chunk modules optimization ModuleConcatenationPlugin)
    [78%] sealing (chunk modules optimization)
    [79%] sealing (after chunk modules optimization)
    [80%] sealing (module reviving)
    [80%] sealing (module reviving RecordIdsPlugin)
    [80%] sealing (module reviving)
    [80%] sealing (before module ids)
    [81%] sealing (module ids)
    [81%] sealing (module ids DeterministicModuleIdsPlugin)
    [81%] sealing (module ids)
    [82%] sealing (module id optimization)
    [82%] sealing (module id optimization)
    [83%] sealing (chunk reviving)
    [83%] sealing (chunk reviving RecordIdsPlugin)
    [83%] sealing (chunk reviving)
    [83%] sealing (before chunk ids)
    [84%] sealing (chunk ids)
    [84%] sealing (chunk ids DeterministicChunkIdsPlugin)
    [84%] sealing (chunk ids)
    [85%] sealing (chunk id optimization)
    [85%] sealing (chunk id optimization FlagIncludedChunksPlugin)
    [85%] sealing (chunk id optimization)
    [85%] sealing (after chunk id optimization)
    [86%] sealing (record modules)
    [86%] sealing (record modules RecordIdsPlugin)
    [86%] sealing (record modules)
    [87%] sealing (record chunks)
    [87%] sealing (record chunks RecordIdsPlugin)
    [87%] sealing (record chunks)
    [87%] sealing (module hashing)
    [88%] sealing (code generation)
    [89%] sealing (runtime requirements)
    [89%] sealing (hashing)
    [90%] sealing (after hashing)
    [91%] sealing (record hash)
    [91%] sealing (module assets processing)
    [92%] sealing (chunk assets processing)
    [92%] sealing (asset processing)
    [92%] sealing (asset processing TerserPlugin)
    [92%] sealing (asset processing RealContentHashPlugin)
    [92%] sealing (asset processing)
    [93%] sealing (after asset optimization)
    [94%] sealing (recording)
    [94%] sealing (after seal)
    [95%] emitting (emit)
    [95%] emitting (emit CleanPlugin)
    [95%] emitting (emit)
    [98%] emitting (after emit)
    [98%] emitting (after emit SizeLimitsPlugin)
    [98%] emitting (after emit)
    Build finished at 05:41:16 by 0.000s
    Build finished at 05:41:16 by 0.000s
    Build finished at 05:41:16 by 0.000s
    Build finished at 05:41:16 by 0.000s
    Build finished at 05:41:16 by 0.000s
    Build finished at 05:41:16 by 0.000s
    Build finished at 05:41:16 by 0.000s
    330 assets
    897 modules

    WARNING in asset size limit: The following asset(s) exceed the recommended size limit (244 KiB).
    This can impact web performance.
    Assets:
    6aa13e92b5cf7d479e73acdc7c05abf3.js (502 KiB)
    nodebb.min.js (445 KiB)
    admin.min.js (395 KiB)
    4793.dcf82000e95f412bc916.min.js (565 KiB)
    8522.0f42740e78005fe716a3.min.js (501 KiB)
    1083.65b10fecdfacafc29c2c.min.js (800 KiB)

    WARNING in entrypoint size limit: The following entrypoint(s) combined asset size exceeds the recommended limit (244 KiB). This can impact web performance.
    Entrypoints:
    nodebb (445 KiB)
    nodebb.min.js
    admin (395 KiB)
    admin.min.js

    webpack 5.75.0 compiled with 2 warnings in 8293 ms
    2023-03-23T05:41:16.774Z [4567/190807] - info: [build] Asset compilation successful. Completed in 18.495sec.
    [cluster] Restarting…
    2023-03-23T05:41:16.786Z [4567/190807] - info: [app] Shutdown (SIGTERM/SIGINT) Initialised.
    Clustering enabled: Spinning up 1 process(es).

    2023-03-23T05:41:16.791Z [4567/190807] - info: [app] Web server closed to connections.
    2023-03-23T05:41:16.794Z [4567/190807] - info: [app] Live analytics saved.
    2023-03-23T05:41:16.798Z [4567/190807] - info: [app] Database connection closed.
    2023-03-23T05:41:16.798Z [4567/190807] - info: [app] Shutdown complete.
    [cluster] Child Process (190807) has exited (code: 0, signal: null)
    2023-03-23T05:41:17.044Z [4567/194647] - info: Initializing NodeBB v2.8.9 https://efelsefe.com
    2023-03-23T05:41:18.464Z [4567/194647] - info: [socket.io] Restricting access to origin: https://efelsefe.com😘
    (node:194647) [LRU_CACHE_UNBOUNDED] UnboundedCacheWarning: TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.
    (Use node --trace-warnings ... to show where the warning was created)

    2023-03-23T05:41:18.688Z [4567/194647] - warn: [plugins/load] The following plugins may not be compatible with your version of NodeBB. This may cause unintended behaviour or crashing. In the event of an unresponsive NodeBB caused by this plugin, run ./nodebb reset -p PLUGINNAME to disable it.

    • nodebb-plugin-google-analytics
    • nodebb-rewards-essentials
    • nodebb-plugin-custom-pages
    • nodebb-plugin-poll
    • nodebb-plugin-recent-cards
    • nodebb-plugin-question-and-answer
    • nodebb-plugin-iframely
    • nodebb-plugin-browsing-users
    • @nodebb/nodebb-plugin-user-level
    • nodebb-plugin-dbsearch

    2023-03-23T05:41:18.707Z [4567/194647] - warn: [helpers.setupAdminPageRoute(/admin/plugins/custom-pages)] passing middleware as the third param is deprecated, it can now be safely removed
    2023-03-23T05:41:18.728Z [4567/194647] - warn: [helpers.setupAdminPageRoute(/admin/plugins/browsing-users)] passing middleware as the third param is deprecated, it can now be safely removed
    2023-03-23T05:41:18.728Z [4567/194647] - warn: [helpers.setupPageRoute(/user-levels)] passing middleware as the third param is deprecated, it can now be safely removed
    2023-03-23T05:41:18.728Z [4567/194647] - warn: [helpers.setupAdminPageRoute(/admin/plugins/user-level)] passing middleware as the third param is deprecated, it can now be safely removed
    2023-03-23T05:41:18.747Z [4567/194647] - info: [api] Adding 1 route(s) to api/v3/plugins
    2023-03-23T05:41:18.759Z [4567/194647] - info: [router] Routes added
    2023-03-23T05:41:23.760Z [4567/194647] - warn: [plugins] Callback timed out, hook ‘static:privileges.categories.init’ in plugin ‘nodebb-plugin-poll’
    2023-03-23T05:41:23.767Z [4567/194647] - warn: [meta/blacklist] 1 invalid blacklist rule(s) were ignored.
    2023-03-23T05:41:23.769Z [4567/194647] - info: 🎉 NodeBB Ready
    2023-03-23T05:41:23.771Z [4567/194647] - info: 🤝 Enabling ‘trust proxy’
    2023-03-23T05:41:23.773Z [4567/194647] - info: 📡 NodeBB is now listening on: …
    2023-03-23T05:41:23.773Z [4567/194647] - info: 🔗 Canonical URL: https://…


Did this solution help you?
Did you find the suggested solution useful? Why not buy me a coffee? It's a nice gesture, and a great way to show your appreciation 💗

  • Upgrade issues

    Solved Configure
    2
    2 Votes
    2 Posts
    138 Views

    Use this code

    git fetch # Grab the latest code from the NodeBB repository git checkout v3.x git reset --hard origin/v3.x

    And you will have the latest version without specifying it

    https://docs.nodebb.org/configuring/upgrade/

  • Nodebb design

    Solved General
    2
    1 Votes
    2 Posts
    151 Views

    @Panda said in Nodebb design:

    One negative is not being so good for SEO as more Server side rendered forums, if web crawlers dont run the JS to read the forum.

    From recollection, Google and Bing have the capability to read and process JS, although it’s not in the same manner as a physical person will consume content on a page. It will be seen as plain text, but will be indexed. However, it’s important to note that Yandex and Baidu will not render JS, although seeing as Google has a 90% share of the content available on the web in terms of indexing, this isn’t something you’ll likely lose sleep over.

    @Panda said in Nodebb design:

    The “write api” is preferred for server-to-server interactions.

    This is mostly based around overall security - you won’t typically want a client machine changing database elements or altering data. This is why you have “client-side” which could be DOM manipulation etc, and “server-side” which performs more complex operations as it can communicate directly with the database whereas the client cannot (and if it can, then you have a serious security flaw). Reading from the API is perfectly acceptable on the client-side, but not being able to write.

    A paradigm here would be something like SNMP. This protocol exists as a UDP (UDP is very efficient, as it is “fire and forget” and does not wait for a response like TCP does) based service which reads performance data from a remote source, thus enabling an application to parse that data for use in a monitoring application. In all cases, SNMP access should be “RO” (Read Only) and not RW (Read Write). It is completely feasible to assume complete control over a firewall for example by having RW access to SNMP and then exposing it to the entire internet with a weak passphrase.

    You wouldn’t do it (at least, I hope you wouldn’t) and the same ethic applies to server-side rendering and the execution of commands.

  • Composer options on nodebb

    Solved Configure
    8
    3 Votes
    8 Posts
    295 Views

    @Panda You should be able to expose the CSS for these using F12 to get into console

    3591518c-e3a3-4ada-a43c-6b32a5e0359c-image.png

    a2b8ed46-4157-4ff2-85f0-576543380107-image.png

    That should then expose the element once selected

    89d9c545-a47a-40d1-98f4-80cf3b958e8f-image.png

    Here’s the below CSS you need based on the screenshot provided.

    .composer .formatting-bar .formatting-group li[data-format="picture-o"], .composer .formatting-bar .formatting-group li[data-format="spoiler"] { display: none; }
  • NodeBB v3 Android Problem

    Solved Configure
    4
    4 Votes
    4 Posts
    195 Views

    thank you fixed.

  • 0 Votes
    6 Posts
    231 Views

    @mventures You’d need to connect to the server and execute it directly - not on your local terminal. Review the guide below, which will show you how to gain access via SSH to your server

    https://docs.ovh.com/gb/en/dedicated/ssh-introduction/

    Once you have access, you’ll need to navigate to the actual folder where NodeBB is installed

    You’ll then need to change to the directory as shown below

    /home/unbuntu/nodebb

    fdffe673-bf63-4b6d-a728-5506fddc1aff-image.png

    In most cases, initial access takes you to the root of the file system. You can always issue pwd in a Linux terminal which will show you the Present Working Directory. From there, you can issue the command

    cd /home/ubuntu/nodebb

    Once in the NodeBB directory, you’d use the below commands

    ./nodebb stop git fetch && git checkout develop && git reset --hard origin/develop ./nodebb upgrade ./nodebb start

    Line 1 stops the NodeBB instance
    Line 2 gets the latest files from GIT (repository) and then checks out the development branch. It then resets the version you are using to the development branch ready for v3
    Line 3 Runs the upgrade once the new branch is set, and code pulled
    Line 4 Restarts the NodeBB instance after the upgrade has completed

    Note that when you restart NodeBB and log back in, things will look very different to what you had in v2.

  • 0 Votes
    5 Posts
    201 Views

    @mventures Yes, exactly. The other icon will restart NodeBB whilst the first icon I referenced will rebuild (recompile) it.

    The huge strength of NodeBB over Flarum (for example) is that the code is precompiled, and called once at boot. PHP’s code has to repeatedly reload code from source making it much slower.

  • Link vs Refresh

    Solved Customisation
    20
    8 Votes
    20 Posts
    954 Views

    @pobojmoks Do you see any errors being reported in the console ? At first guess (without seeing the actual code or the site itself), I’d say that this is AJAX callback related

  • 9 Votes
    20 Posts
    914 Views

    @crazycells Yeah, looking at the plugin itself, that’s a hard coded limit

    3d6dbc10-185b-4102-9470-0c2731a10750-image.png

    I’ll probably remove that… eventually…