Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

FòrumCAT

  1. Home
  2. Uncategorized
  3. NodeBB v4.3.0 — Remote Categories are a go!

NodeBB v4.3.0 — Remote Categories are a go!

Scheduled Pinned Locked Moved Uncategorized
nodebbactivitypubrelease4.3.0
20 Posts 7 Posters 170 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • baris@community.nodebb.orgB This user is from outside of this forum
    baris@community.nodebb.orgB This user is from outside of this forum
    baris@community.nodebb.org
    wrote on last edited by
    #10

    Those having an issue with eslint, can just remove the node_modules folder in their nodebb folder and run ./nodebb upgrade again.

    1 Reply Last reply
    0
    • S This user is from outside of this forum
      S This user is from outside of this forum
      sweetp@community.nodebb.org
      wrote on last edited by
      #11

      @baris it's still crashing for me

      $ rm -rf node_modules
      $ ./nodebb upgrade
      npm error code ERESOLVE
      npm error ERESOLVE could not resolve
      npm error
      npm error While resolving: nodebb@4.3.0
      npm error Found: eslint@8.57.1
      npm error node_modules/eslint
      npm error   peer eslint@"^6.0.0 || ^7.0.0 || >=8.0.0" from @eslint-community/eslint-utils@4.3.0
      npm error   node_modules/@eslint-community/eslint-utils
      npm error     @eslint-community/eslint-utils@"^4.2.0" from eslint@8.57.1
      npm error   peer eslint@"^7.32.0 || ^8.2.0" from eslint-config-airbnb-base@15.0.0
      npm error   node_modules/eslint-config-airbnb-base
      npm error     eslint-config-airbnb-base@"15.0.0" from eslint-config-nodebb@0.2.1
      npm error     node_modules/eslint-config-nodebb
      npm error       dev eslint-config-nodebb@"1.1.4" from the root project
      npm error   3 more (eslint-config-nodebb, eslint-plugin-import, nodebb-plugin-2factor)
      npm error
      npm error Could not resolve dependency:
      npm error dev @stylistic/eslint-plugin-js@"4.2.0" from the root project
      npm error
      npm error Conflicting peer dependency: eslint@9.25.1
      npm error node_modules/eslint
      npm error   peer eslint@">=9.0.0" from @stylistic/eslint-plugin-js@4.2.0
      npm error   node_modules/@stylistic/eslint-plugin-js
      npm error     dev @stylistic/eslint-plugin-js@"4.2.0" from the root project
      npm error
      npm error Fix the upstream dependency conflict, or retry
      npm error this command with --force or --legacy-peer-deps
      npm error to accept an incorrect (and potentially broken) dependency resolution.
      npm error
      npm error
      npm error For a full report see:
      npm error .../.npm/_logs/2025-05-01T13_28_21_731Z-eresolve-report.txt
      npm error A complete log of this run can be found in: .../.npm/_logs/2025-05-01T13_28_21_731Z-debug-0.log
      Error installing dependencies!
      message: Command failed: npm install --omit=dev
      stdout: null
      stderr: null
      .../NodeBB/src/cli/index.js:65
      		throw e;
      		^
      
      Error: Command failed: npm install --omit=dev
          at genericNodeError (node:internal/errors:983:15)
          at wrappedFn (node:internal/errors:537:14)
          at checkExecSyncError (node:child_process:882:11)
          at Object.execSync (node:child_process:954:15)
          at pkgInstall.installAll (.../NodeBB/src/cli/package-install.js:129:9)
          at Object. (.../NodeBB/src/cli/index.js:18:19)
          at Module._compile (node:internal/modules/cjs/loader:1734:14)
          at Object..js (node:internal/modules/cjs/loader:1899:10)
          at Module.load (node:internal/modules/cjs/loader:1469:32)
          at Function._load (node:internal/modules/cjs/loader:1286:12) {
        status: 1,
        signal: null,
        output: [ null, null, null ],
        pid: 2729523,
        stdout: null,
        stderr: null
      }
      
      Node.js v23.11.0
      
      1 Reply Last reply
      0
      • baris@community.nodebb.orgB This user is from outside of this forum
        baris@community.nodebb.orgB This user is from outside of this forum
        baris@community.nodebb.org
        wrote on last edited by
        #12

        Do you have eslint-config-airbnb-base in your package.json? We don't use that dependency anymore so it shouldn't be in package.json.

        1 Reply Last reply
        0
        • S This user is from outside of this forum
          S This user is from outside of this forum
          sweetp@community.nodebb.org
          wrote on last edited by
          #13

          @baris nope:

          {
              "name": "nodebb",
              "license": "GPL-3.0",
              "description": "NodeBB Forum",
              "version": "4.3.0",
              "homepage": "https://www.nodebb.org",
              "repository": {
                  "type": "git",
                  "url": "https://github.com/NodeBB/NodeBB/"
              },
              "main": "app.js",
              "scripts": {
                  "start": "node loader.js",
                  "lint": "eslint --cache ./nodebb .",
                  "test": "nyc --reporter=html --reporter=text-summary mocha",
                  "coverage": "nyc report --reporter=text-lcov > ./coverage/lcov.info",
                  "coveralls": "nyc report --reporter=text-lcov | coveralls && rm -r coverage"
              },
              "husky": {
                  "hooks": {
                      "pre-commit": "npx lint-staged",
                      "commit-msg": "npx commitlint -E HUSKY_GIT_PARAMS"
                  }
              },
              "lint-staged": {
                  "*.js": [
                      "eslint --fix"
                  ]
              },
              "dependencies": {
                  "@adactive/bootstrap-tagsinput": "0.8.2",
                  "@fontsource/inter": "5.2.5",
                  "@fontsource/poppins": "5.2.5",
                  "@fortawesome/fontawesome-free": "6.7.2",
                  "@isaacs/ttlcache": "1.4.1",
                  "[@nodebb](https://community.nodebb.org/user/nodebb)/spider-detector": "2.0.3",
                  "@popperjs/core": "2.11.8",
                  "@resvg/resvg-js": "2.6.2",
                  "@socket.io/redis-adapter": "8.3.0",
                  "@textcomplete/contenteditable": "0.1.13",
                  "@textcomplete/core": "0.1.13",
                  "@textcomplete/textarea": "0.1.13",
                  "ace-builds": "1.40.1",
                  "archiver": "7.0.1",
                  "async": "3.2.6",
                  "autoprefixer": "10.4.21",
                  "bcryptjs": "3.0.2",
                  "benchpressjs": "2.5.5",
                  "body-parser": "2.2.0",
                  "bootbox": "6.0.3",
                  "bootstrap": "5.3.5",
                  "bootswatch": "5.3.5",
                  "chalk": "4.1.2",
                  "chart.js": "4.4.9",
                  "cli-graph": "3.2.2",
                  "clipboard": "2.0.11",
                  "commander": "13.1.0",
                  "compare-versions": "6.1.1",
                  "compression": "1.8.0",
                  "connect-flash": "0.1.1",
                  "connect-mongo": "5.1.0",
                  "connect-multiparty": "2.2.0",
                  "connect-pg-simple": "10.0.0",
                  "connect-redis": "8.0.3",
                  "cookie-parser": "1.4.7",
                  "cron": "4.3.0",
                  "cropperjs": "1.6.2",
                  "csrf-sync": "4.1.0",
                  "daemon": "1.1.0",
                  "diff": "7.0.0",
                  "esbuild": "0.25.3",
                  "express": "4.21.2",
                  "express-session": "1.18.1",
                  "express-useragent": "1.0.15",
                  "fetch-cookie": "3.1.0",
                  "file-loader": "6.2.0",
                  "fs-extra": "11.3.0",
                  "graceful-fs": "4.2.11",
                  "helmet": "7.2.0",
                  "html-to-text": "9.0.5",
                  "imagesloaded": "5.0.0",
                  "ioredis": "5.6.1",
                  "ipaddr.js": "2.2.0",
                  "jquery": "3.7.1",
                  "jquery-deserialize": "2.0.0",
                  "jquery-form": "4.3.0",
                  "jquery-serializeobject": "1.0.0",
                  "jquery-ui": "1.14.1",
                  "jsesc": "3.1.0",
                  "json2csv": "5.0.7",
                  "jsonwebtoken": "9.0.2",
                  "lodash": "4.17.21",
                  "logrotate-stream": "0.2.9",
                  "lru-cache": "10.4.3",
                  "mime": "3.0.0",
                  "mkdirp": "3.0.1",
                  "mongodb": "6.16.0",
                  "morgan": "1.10.0",
                  "mousetrap": "1.6.5",
                  "multiparty": "4.2.3",
                  "nconf": "0.13.0",
                  "nodebb-plugin-2factor": "7.5.9",
                  "nodebb-plugin-composer-default": "10.2.49",
                  "nodebb-plugin-dbsearch": "6.2.15",
                  "nodebb-plugin-emoji": "6.0.2",
                  "nodebb-plugin-emoji-android": "4.1.1",
                  "nodebb-plugin-imgur": "^4.1.0",
                  "nodebb-plugin-markdown": "13.1.1",
                  "nodebb-plugin-mentions": "4.7.3",
                  "nodebb-plugin-ntfy": "1.7.7",
                  "nodebb-plugin-soundpack-default": "^3.0.1",
                  "nodebb-plugin-spam-be-gone": "2.3.1",
                  "nodebb-plugin-web-push": "0.7.3",
                  "nodebb-rewards-essentials": "1.0.1",
                  "nodebb-theme-harmony": "2.1.11",
                  "nodebb-theme-harmony-sweetp": "git+https://git@github.com/sweetppro/nodebb-theme-sweetp.git#master",
                  "nodebb-theme-lavender": "7.1.18",
                  "nodebb-theme-peace": "2.2.40",
                  "nodebb-theme-persona": "14.1.9",
                  "nodebb-theme-slick": "2.0.2",
                  "nodebb-theme-vanilla": "12.1.19",
                  "nodebb-widget-essentials": "7.0.36",
                  "nodemailer": "6.10.1",
                  "nprogress": "0.2.0",
                  "passport": "0.7.0",
                  "passport-http-bearer": "1.0.1",
                  "passport-local": "1.0.0",
                  "pg": "8.15.6",
                  "pg-cursor": "2.14.6",
                  "postcss": "8.5.3",
                  "postcss-clean": "1.2.0",
                  "progress-webpack-plugin": "1.0.16",
                  "prompt": "1.3.0",
                  "rimraf": "5.0.10",
                  "rss": "1.2.2",
                  "rtlcss": "4.3.0",
                  "sanitize-html": "2.16.0",
                  "sass": "1.87.0",
                  "satori": "0.12.2",
                  "semver": "7.7.1",
                  "serve-favicon": "2.5.0",
                  "sharp": "0.32.6",
                  "sitemap": "8.0.0",
                  "socket.io": "4.8.1",
                  "socket.io-client": "4.8.1",
                  "sortablejs": "1.15.6",
                  "spdx-license-list": "6.10.0",
                  "terser-webpack-plugin": "5.3.14",
                  "textcomplete": "0.18.2",
                  "textcomplete.contenteditable": "0.1.1",
                  "timeago": "1.6.7",
                  "tinycon": "0.6.8",
                  "toobusy-js": "0.5.1",
                  "tough-cookie": "5.1.2",
                  "validator": "13.15.0",
                  "webpack": "5.99.7",
                  "webpack-merge": "6.0.1",
                  "winston": "3.17.0",
                  "workerpool": "9.2.0",
                  "xml": "1.0.1",
                  "xregexp": "5.1.2",
                  "yargs": "17.7.2",
                  "zxcvbn": "4.4.2"
              },
              "devDependencies": {
                  "@apidevtools/swagger-parser": "10.1.0",
                  "@commitlint/cli": "19.8.0",
                  "@commitlint/config-angular": "19.8.0",
                  "coveralls": "3.1.1",
                  "@eslint/js": "9.25.1",
                  "@stylistic/eslint-plugin-js": "4.2.0",
                  "eslint-config-nodebb": "1.1.4",
                  "eslint-plugin-import": "2.31.0",
                  "grunt": "1.6.1",
                  "grunt-contrib-watch": "1.1.0",
                  "husky": "8.0.3",
                  "jsdom": "26.1.0",
                  "lint-staged": "15.5.1",
                  "mocha": "11.1.0",
                  "mocha-lcov-reporter": "1.3.0",
                  "mockdate": "3.0.5",
                  "nyc": "17.1.0",
                  "smtp-server": "3.13.6"
              },
              "bugs": {
                  "url": "https://github.com/NodeBB/NodeBB/issues"
              },
              "engines": {
                  "node": ">=18"
              },
              "maintainers": [
                  {
                      "name": "Julian Lam",
                      "email": "julian@nodebb.org",
                      "url": "https://github.com/julianlam"
                  },
                  {
                      "name": "Barış Soner Uşaklı",
                      "email": "baris@nodebb.org",
                      "url": "https://github.com/barisusakli"
                  },
                  {
                      "name": "Barış Soner Uşaklı",
                      "email": "baris@nodebb.org",
                      "url": "https://github.com/barisusakli"
                  }
              ],
              "nyc": {
                  "exclude": [
                      "src/upgrades/*",
                      "test/*"
                  ]
              },
              "resolutions": {
                  "*/jquery": "3.7.1"
              },
              "optionalDependencies": {
                  "sass-embedded": "1.87.0"
              }
          }
          
          1 Reply Last reply
          0
          • baris@community.nodebb.orgB This user is from outside of this forum
            baris@community.nodebb.orgB This user is from outside of this forum
            baris@community.nodebb.org
            wrote on last edited by
            #14

            What happens when you try the below

            npm r eslint-config-airbnb-base
            npm r eslint-config-nodebb
            rm -rf node_modules/
            npm i
            
            1 Reply Last reply
            0
            • S This user is from outside of this forum
              S This user is from outside of this forum
              sweetp@community.nodebb.org
              wrote on last edited by
              #15

              @baris same issue unfortunately:

              Dependencies outdated or not yet installed.
              Installing them now...
              
              npm error code ERESOLVE
              npm error ERESOLVE could not resolve
              npm error
              npm error While resolving: nodebb@4.3.0
              npm error Found: eslint@8.57.1
              npm error node_modules/eslint
              npm error   peer eslint@"^6.0.0 || ^7.0.0 || >=8.0.0" from @eslint-community/eslint-utils@4.3.0
              npm error   node_modules/@eslint-community/eslint-utils
              npm error     @eslint-community/eslint-utils@"^4.2.0" from eslint@8.57.1
              npm error   peer eslint@"^7.32.0 || ^8.2.0" from eslint-config-airbnb-base@15.0.0
              npm error   node_modules/eslint-config-airbnb-base
              npm error     eslint-config-airbnb-base@"15.0.0" from eslint-config-nodebb@0.2.1
              npm error     node_modules/eslint-config-nodebb
              npm error       dev eslint-config-nodebb@"1.1.4" from the root project
              npm error   3 more (eslint-config-nodebb, eslint-plugin-import, nodebb-plugin-2factor)
              npm error
              npm error Could not resolve dependency:
              npm error dev @stylistic/eslint-plugin-js@"4.2.0" from the root project
              npm error
              npm error Conflicting peer dependency: eslint@9.25.1
              npm error node_modules/eslint
              npm error   peer eslint@">=9.0.0" from @stylistic/eslint-plugin-js@4.2.0
              npm error   node_modules/@stylistic/eslint-plugin-js
              npm error     dev @stylistic/eslint-plugin-js@"4.2.0" from the root project
              npm error
              npm error Fix the upstream dependency conflict, or retry
              npm error this command with --force or --legacy-peer-deps
              npm error to accept an incorrect (and potentially broken) dependency resolution.
              npm error
              npm error
              npm error For a full report see:
              npm error .../.npm/_logs/2025-05-01T13_56_37_050Z-eresolve-report.txt
              npm error A complete log of this run can be found in: .../.npm/_logs/2025-05-01T13_56_37_050Z-debug-0.log
              Error installing dependencies!
              message: Command failed: npm install --omit=dev
              stdout: null
              stderr: null
              .../NodeBB/src/cli/package-install.js:138
              		throw e;
              		^
              
              Error: Command failed: npm install --omit=dev
                  at genericNodeError (node:internal/errors:983:15)
                  at wrappedFn (node:internal/errors:537:14)
                  at checkExecSyncError (node:child_process:882:11)
                  at Object.execSync (node:child_process:954:15)
                  at pkgInstall.installAll (.../NodeBB/src/cli/package-install.js:129:9)
                  at Object. (.../NodeBB/src/cli/index.js:50:18)
                  at Module._compile (node:internal/modules/cjs/loader:1734:14)
                  at Object..js (node:internal/modules/cjs/loader:1899:10)
                  at Module.load (node:internal/modules/cjs/loader:1469:32)
                  at Function._load (node:internal/modules/cjs/loader:1286:12) {
                status: 1,
                signal: null,
                output: [ null, null, null ],
                pid: 2732894,
                stdout: null,
                stderr: null
              }
              
              Node.js v23.11.0
              
              1 Reply Last reply
              0
              • baris@community.nodebb.orgB This user is from outside of this forum
                baris@community.nodebb.orgB This user is from outside of this forum
                baris@community.nodebb.org
                wrote on last edited by
                #16

                Try removing package-lock.json as well see what happens.

                npm r eslint-config-airbnb-base
                npm r eslint-config-nodebb
                rm package-lock.json
                rm -rf node_modules/
                npm i
                
                splaS 1 Reply Last reply
                0
                • S This user is from outside of this forum
                  S This user is from outside of this forum
                  sweetp@community.nodebb.org
                  wrote on last edited by sweetp@community.nodebb.org
                  #17

                  @baris that worked!
                  🚀 :smiling_face:

                  1 Reply Last reply
                  0
                  • E esoteric_programmer@social.stealthy.club

                    @julian I'm not sure if you know about this, but your entire post appears both as a content warning and the expanded post, both contain the exact same text. Is that issue known? btw, I'm on go to social, so perhaps that could be a factor too?

                    julian@community.nodebb.orgJ This user is from outside of this forum
                    julian@community.nodebb.orgJ This user is from outside of this forum
                    julian@community.nodebb.org
                    wrote on last edited by julian@community.nodebb.org
                    #18

                    @esoteric_programmer@social.stealthy.club that's likely because GtS handles summary as a content warning for everything. The whole summary and content warning business is in flux right now, so hopefully a standard will be set soon.

                    1 Reply Last reply
                    0
                    • baris@community.nodebb.orgB baris@community.nodebb.org

                      Try removing package-lock.json as well see what happens.

                      npm r eslint-config-airbnb-base
                      npm r eslint-config-nodebb
                      rm package-lock.json
                      rm -rf node_modules/
                      npm i
                      
                      splaS Offline
                      splaS Offline
                      spla
                      wrote on last edited by
                      #19

                      @baris@community.nodebb.org thank you, that worked for me too

                      1 Reply Last reply
                      2
                      • julian@community.nodebb.orgJ julian@community.nodebb.org

                        We're happy to announce the release of NodeBB v4.3.0, which contains native support for remote categories, bringing better integration with other NodeBB forums, WordPress, Lemmy, PieFed, mbin, and other "group-based" implementors on the ActivityPub network!

                        What does this mean? 🤔

                        It means that starting with this release, you will be able to "browse" to other categories simply by searching for them in your /world page. Just like with regular categories, you can "track" or "watch" remote categories — the former will show up in your /unread page, and the latter will also send notifications on new topics.

                        Prior to this change, remote categories were rendered just like regular users, and there was some confusion over who was a user and who was a publisher.

                        The integration with blog platforms like WordPress also mean you'll be able to use NodeBB kind of like a feed reader, with built-in notifications when new content is received. We're hoping to also extend this to support Ghost as well 🤞

                        Some examples of categories loaded remotely in this NodeBB:

                        • "Fediverse" on piefed.social (running Piefed) — @fediverse@piefed.social
                        • "ActivityPub Protocol" on SocialHub (running Discourse) — @protocol@socialhub.activitypub.rocks
                        • Vivaldi Browser Blog (running WordPress) — @blog@vivaldi.com
                        • "General Climbing News" on community.openbeta.io (running NodeBB) — @news@community.openbeta.io
                        • Fediverse memes (running Lemmy) — @fedimemes@feddit.uk

                        da0f00e4-aeac-4b7b-bedd-8d20e2a7a7f7-image.png

                        9b2e5ab5-d2cc-46be-81aa-1e82057e0652-image.png

                        Other notable changes in v4.3.0

                        Chat allow/deny list 🗨

                        There was some desire for more fine-grained support for allow/deny lists for the chat system. This is now available in v4.3.0. Per @baris:

                        > Leaving allow list empty would mean anyone who is not in deny list can message you.
                        > Leaving deny list empty would mean anyone who is in allow list can message you.
                        > If both are empty everyone can message you.
                        > Current restrictChat toggle can be turned into a toggle to disable chat completely.
                        > Upgrade script can add the users following to the allow list if they have restrictChat turned on.

                        Show number of topic watchers 👀

                        You are now able to see the number of users watching a specific topic alongside the existing stats (posts, views, etc.)

                        80bc61e4-0bbd-4dce-ab3b-6ab9df2eb1b1-image.png

                        Accessibility updates

                        • Avatar background colours are now selectable via keyboard navigation
                        • Post drafts are now accessible via keyboard navigation

                        ... and of course

                        • Bug fixes and security updates
                        frankm@community.nodebb.orgF This user is from outside of this forum
                        frankm@community.nodebb.orgF This user is from outside of this forum
                        frankm@community.nodebb.org
                        wrote on last edited by
                        #20

                        For me this was enough to upgrade my test installation.

                        rm package-lock.json
                        
                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        • Login

                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • World
                        • Users
                        • Groups