MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    Cannot find module '#server_functions'

    Scheduled Pinned Locked Moved Unsolved Troubleshooting
    18 Posts 3 Posters 1.2k Views 3 Watching
    Loading More Posts
    • 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.
    • karsten13K Offline
      karsten13 @chrisfr1976
      last edited by

      @chrisfr1976

      #server_functions is an alias for js/server_functions.js which is defined in package.json:

              "imports": {
                      "#module_functions": {
                              "default": "./js/module_functions.js"
                      },
                      "#server_functions": {
                              "default": "./js/server_functions.js"
                      }
              },
      

      Because axios is the only diff your package.json should contain above lines.

      I have no idea anymore (maybe corrupt sd card).

      1 Reply Last reply Reply Quote 0
      • S Offline
        sdetweil @chrisfr1976
        last edited by sdetweil

        @chrisfr1976 can you do

        Stop MagicMirror

        cd -/MagicMirror
        rm -rf node_modules
        npm install 
        

        Start MagicMirror

        npm start
        

        Also, can you send me the
        ~/MagicMirror/installers/upgrade.log

        My email is same user id as here, at gmail

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        S 1 Reply Last reply Reply Quote 0
        • S Offline
          sdetweil @sdetweil
          last edited by

          I don’t see that error in my test of npm run server.

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          C 1 Reply Last reply Reply Quote 0
          • C Offline
            chrisfr1976 @sdetweil
            last edited by chrisfr1976

            @sdetweil and @karsten13, I think I solved my problem.
            In the beginning when I used the update script it stopped with the node-version but didn’t update. So I updated manually by using the original code from Node JS. So I installed node v22.20.0. Later I went again down to v22.18.0. Maybe this caused some trouble. But Maybe not. rm -rf node_modules and npm install I did already 3 times before.

            But now I modified the calendarfetcher.js and newsfeedfetcher.js:

            This was removed:

            const { getUserAgent } = require("#server_functions");
            const { scheduleTimer } = require("#module_functions");
            
            

            and replaced by this:

            const getUserAgent = () => "MagicMirror v2.33.0";
            const scheduleTimer = (timerRef, interval, callback) => {
                clearTimeout(timerRef);
                return setTimeout(callback, interval);
            };
            

            No errors and Calendar/Newsfeed is displayed as before. I don’t know exactly if there are any new issues now but so far I’m happy.

            Regards, Chris.

            S 1 Reply Last reply Reply Quote 0
            • S Offline
              sdetweil @chrisfr1976
              last edited by

              @chrisfr1976 I’d really like to see the upgrade.log file
              ~/MagicMirror/installers/upgrade.log

              Email to Me , same userid as here at gmail

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              C 1 Reply Last reply Reply Quote 0
              • C Offline
                chrisfr1976 @sdetweil
                last edited by

                @sdetweil Hey, no problem generally but I‘m out until Thursday. I‘ll send it then.

                Regards, Chris.

                S 1 Reply Last reply Reply Quote 1
                • S Offline
                  sdetweil @chrisfr1976
                  last edited by

                  @chrisfr1976 when you have time

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  C 1 Reply Last reply Reply Quote 0
                  • C Offline
                    chrisfr1976 @sdetweil
                    last edited by chrisfr1976

                    @sdetweil

                    Hi Sam,
                    After the update to MagicMirror v2.34.0 I had again this Cannot find module '#server_functions issue. See above.
                    I solved it again manually in the calendarfetcher.js and newsfeedfetcher.js with a relative path.

                    I replaced this:

                    const { getUserAgent } = require("#server_functions");
                    const { scheduleTimer } = require("#module_functions"); //only in newsfeed
                    

                    with

                    const { getUserAgent } = require("../../../js/server_functions");
                    const { scheduleTimer } = require("../../../js/module_functions"); //only in newsfeed
                    
                    

                    This time your update script worked fine without any error.

                    Maybe I’m alone with this behavior, but now everything works fine again as before the update. If anyone else discovers this problem, the code above might help.

                    Regards, Chris.

                    C S 3 Replies Last reply Reply Quote 0
                    • C Offline
                      chrisfr1976 @chrisfr1976
                      last edited by

                      …and I’ll remove axios from my modules. This is causing this trouble.

                      Regards, Chris.

                      1 Reply Last reply Reply Quote 0
                      • S Offline
                        sdetweil @chrisfr1976
                        last edited by sdetweil

                        @chrisfr1976 but that means you dont have the correct node version or dependencies

                        Down level npm, see imports in package.json
                        IMG_4650.png

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        1 Reply Last reply Reply Quote 0
                        • S Offline
                          sdetweil @chrisfr1976
                          last edited by

                          @chrisfr1976 can you send me ~/MagicMirror/installers/upgrade.log

                          Same userid as here at gmail

                          Sam

                          How to add modules

                          learning how to use browser developers window for css changes

                          C 1 Reply Last reply Reply Quote 0
                          • C Offline
                            chrisfr1976 @sdetweil
                            last edited by

                            @sdetweil

                            I have the same. Except my reinstalled Axios library.

                            upgrade.log will follow.

                            @MagicPi:~/MagicMirror $ tail --lines=200 package.json
                            {
                            	"name": "magicmirror",
                            	"version": "2.34.0",
                            	"description": "The open source modular smart mirror platform.",
                            	"keywords": [
                            		"magic mirror",
                            		"magicmirror",
                            		"smart mirror",
                            		"mirror UI",
                            		"modular"
                            	],
                            	"homepage": "https://magicmirror.builders",
                            	"bugs": {
                            		"url": "https://github.com/MagicMirrorOrg/MagicMirror/issues"
                            	},
                            	"repository": {
                            		"type": "git",
                            		"url": "https://github.com/MagicMirrorOrg/MagicMirror"
                            	},
                            	"license": "MIT",
                            	"author": "Michael Teeuw",
                            	"contributors": [
                            		{
                            			"name": "MagicMirror contributors",
                            			"url": "https://github.com/MagicMirrorOrg/MagicMirror/graphs/contributors"
                            		}
                            	],
                            	"type": "commonjs",
                            	"imports": {
                            		"#module_functions": {
                            			"default": "./js/module_functions.js"
                            		},
                            		"#server_functions": {
                            			"default": "./js/server_functions.js"
                            		}
                            	},
                            	"main": "js/electron.js",
                            	"scripts": {
                            		"config:check": "node js/check_config.js",
                            		"postinstall": "git clean -df fonts vendor",
                            		"install-mm": "npm install --no-audit --no-fund --no-update-notifier --only=prod --omit=dev",
                            		"install-mm:dev": "npm install --no-audit --no-fund --no-update-notifier && npx playwright install chromium",
                            		"lint:css": "stylelint 'css/main.css' 'css/roboto.css' 'css/font-awesome.css' 'modules/default/**/*.css' --fix",
                            		"lint:js": "eslint --fix",
                            		"lint:markdown": "markdownlint-cli2 . --fix",
                            		"lint:prettier": "prettier . --write",
                            		"prepare": "[ -f node_modules/.bin/husky ] && husky || echo no husky installed.",
                            		"server": "node ./serveronly",
                            		"server:watch": "node ./serveronly/watcher.js",
                            		"start": "node --run start:x11",
                            		"start:dev": "node --run start:x11 -- dev",
                            		"start:wayland": "WAYLAND_DISPLAY=\"${WAYLAND_DISPLAY:=wayland-1}\" ./node_modules/.bin/electron js/electron.js --ozone-platform=wayland",
                            		"start:wayland:dev": "node --run start:wayland -- dev",
                            		"start:windows": ".\\node_modules\\.bin\\electron js\\electron.js",
                            		"start:windows:dev": "node --run start:windows -- dev",
                            		"start:x11": "DISPLAY=\"${DISPLAY:=:0}\" ./node_modules/.bin/electron js/electron.js",
                            		"start:x11:dev": "node --run start:x11 -- dev",
                            		"test": "vitest run",
                            		"test:calendar": "node ./modules/default/calendar/debug.js",
                            		"test:coverage": "vitest run --coverage",
                            		"test:css": "stylelint 'css/main.css' 'css/roboto.css' 'css/font-awesome.css' 'modules/default/**/*.css'",
                            		"test:e2e": "vitest run tests/e2e",
                            		"test:electron": "vitest run tests/electron",
                            		"test:js": "eslint",
                            		"test:markdown": "markdownlint-cli2 .",
                            		"test:prettier": "prettier . --check",
                            		"test:spelling": "cspell . --gitignore",
                            		"test:ui": "vitest --ui",
                            		"test:unit": "vitest run tests/unit",
                            		"test:watch": "vitest"
                            	},
                            	"lint-staged": {
                            		"*": "prettier --ignore-unknown --write",
                            		"*.js": "eslint --fix",
                            		"*.css": "stylelint --fix"
                            	},
                            	"dependencies": {
                            		"@electron/rebuild": "^4.0.2",
                            		"@fontsource/roboto": "^5.2.9",
                            		"@fontsource/roboto-condensed": "^5.2.8",
                            		"@fortawesome/fontawesome-free": "^7.1.0",
                            		"ajv": "^8.17.1",
                            		"animate.css": "^4.1.1",
                            		"axios": "^1.13.2",
                            		"console-stamp": "^3.1.2",
                            		"croner": "^9.1.0",
                            		"envsub": "^4.1.0",
                            		"eslint": "^9.39.2",
                            		"express": "^5.2.1",
                            		"feedme": "^2.0.2",
                            		"helmet": "^8.1.0",
                            		"html-to-text": "^9.0.5",
                            		"iconv-lite": "^0.7.1",
                            		"ipaddr.js": "^2.3.0",
                            		"moment": "^2.30.1",
                            		"moment-timezone": "^0.6.0",
                            		"node-ical": "^0.22.1",
                            		"nunjucks": "^3.2.4",
                            		"pm2": "^6.0.14",
                            		"socket.io": "^4.8.3",
                            		"suncalc": "^1.9.0",
                            		"systeminformation": "^5.28.2",
                            		"undici": "^7.16.0",
                            		"weathericons": "^2.1.0"
                            	},
                            	"devDependencies": {
                            		"@stylistic/eslint-plugin": "^5.6.1",
                            		"@vitest/coverage-v8": "^4.0.16",
                            		"@vitest/ui": "^4.0.16",
                            		"cspell": "^9.4.0",
                            		"eslint-plugin-import-x": "^4.16.1",
                            		"eslint-plugin-jsdoc": "^61.5.0",
                            		"eslint-plugin-package-json": "^0.85.0",
                            		"eslint-plugin-playwright": "^2.4.0",
                            		"eslint-plugin-vitest": "^0.5.4",
                            		"express-basic-auth": "^1.2.1",
                            		"husky": "^9.1.7",
                            		"jsdom": "^27.4.0",
                            		"lint-staged": "^16.2.7",
                            		"markdownlint-cli2": "^0.20.0",
                            		"playwright": "^1.57.0",
                            		"prettier": "^3.7.4",
                            		"prettier-plugin-jinja-template": "^2.1.0",
                            		"stylelint": "^16.26.1",
                            		"stylelint-config-standard": "^39.0.1",
                            		"stylelint-prettier": "^5.0.3",
                            		"vitest": "^4.0.16"
                            	},
                            	"optionalDependencies": {
                            		"electron": "^39.2.7"
                            	},
                            	"engines": {
                            		"node": ">=22.21.1 <23 || >=24"
                            	}
                            }
                            chris@MagicPi:~/MagicMirror $ 
                            

                            Regards, Chris.

                            S 1 Reply Last reply Reply Quote 0
                            • S Offline
                              sdetweil @chrisfr1976
                              last edited by

                              @chrisfr1976 how are you launching MagicMirror?

                              Sam

                              How to add modules

                              learning how to use browser developers window for css changes

                              C 1 Reply Last reply Reply Quote 0
                              • C Offline
                                chrisfr1976 @sdetweil
                                last edited by

                                @sdetweil
                                I use pm2 script:

                                
                                sleep 21s
                                cd ~/MagicMirror
                                DISPLAY=:0 npm run start
                                
                                

                                Regards, Chris.

                                S 1 Reply Last reply Reply Quote 0
                                • S Offline
                                  sdetweil @chrisfr1976
                                  last edited by sdetweil

                                  @chrisfr1976 weird

                                  Upgrade log looks great.

                                  Can you change to
                                  DISPLAY=:0 npm start

                                  And try

                                  Shouldn’t matter, but such is life

                                  Sam

                                  How to add modules

                                  learning how to use browser developers window for css changes

                                  1 Reply Last reply Reply Quote 0

                                  Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                  Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                  With your input, this post could be even better 💗

                                  Register Login
                                  • 1 / 1
                                  • First post
                                    Last post
                                  Enjoying MagicMirror? Please consider a donation!
                                  MagicMirror created by Michael Teeuw.
                                  Forum managed by Sam, technical setup by Karsten.
                                  This forum is using NodeBB as its core | Contributors
                                  Contact | Privacy Policy