Team-Silver-Sphere / SquadJS

Squad Server Script Framework
Boost Software License 1.0
163 stars 123 forks source link

Update dependancies to latest version and remove deprecated ones #355

Closed Aezox13 closed 4 months ago

Aezox13 commented 4 months ago

Description of Issue

When performing 'Yarn install' as mention in ReadMe I get the below terminal errors and I am unable to perform my installation of SquadJS. Something I don't understand is how an outdated version of Discord.js for example is get while package.json refers to a newer one. The problem appears to be the same on Windows and MacOS

Please investigate and fix/update dependancies accordingly

Errors or Screenshots of Issue

yarn install v1.22.19 info No lockfile found. [1/4] 🔍 Resolving packages... warning squad-server > discord.js@12.5.3: no longer supported warning squad-server > discord.js > @discordjs/collection@0.1.6: no longer supported warning squad-server > discord.js > @discordjs/form-data@3.0.1: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. warning squad-server > tedious > @azure/identity > @azure/msal-node@1.18.4: A newer major version of this library is available. Please upgrade to the latest available version. warning squad-server > gamedig > gbxremote > event-to-promise@0.7.0: Use promise-toolbox/fromEvent instead warning squad-server > sqlite3 > node-gyp > make-fetch-happen > cacache > @npmcli/move-file@1.1.2: This functionality has been moved to @npmcli/fs warning eslint-plugin-standard@5.0.0: standard 16.0.0 and eslint-config-standard 16.0.0 no longer require the eslint-plugin-standard package. You can remove it from your dependencies with 'npm rm eslint-plugin-standard'. More info here: https://github.com/standard/standard/issues/1316 warning workspace-aggregator-f756ce76-4dc5-4db4-a87d-68bb7c841855 > eslint-plugin-standard@5.0.0: standard 16.0.0 and eslint-config-standard 16.0.0 no longer require the eslint-plugin-standard package. You can remove it from your dependencies with 'npm rm eslint-plugin-standard'. More info here: https://github.com/standard/standard/issues/1316 [2/4] 🚚 Fetching packages... error @azure/msal-node@1.18.4: The engine "node" is incompatible with this module. Expected version "10 || 12 || 14 || 16 || 18". Got "20.12.2" error Found incompatible module. info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

Squad Information

If potentially relevant, please provide regarding the state of the Squad server at the time of error, e.g. the current layer.

System Information

watchful-eyes commented 4 months ago

use NodeJS version 18 instead of 20

Aezox13 commented 4 months ago

Installed NodeJS 18.20.2 (LTS) instead of 20 Moved further in the install process but yet still facing issues

yarn install v1.22.22 info No lockfile found. [1/4] Resolving packages... warning squad-server > discord.js@12.5.3: no longer supported warning squad-server > discord.js > @discordjs/collection@0.1.6: no longer supported warning squad-server > discord.js > @discordjs/form-data@3.0.1: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. warning squad-server > gamedig > gbxremote > event-to-promise@0.7.0: Use promise-toolbox/fromEvent instead warning squad-server > tedious > @azure/identity > @azure/msal-node@1.18.4: A newer major version of this library is available. Please upgrade to the latest available version. warning squad-server > sqlite3 > node-gyp > make-fetch-happen > cacache > @npmcli/move-file@1.1.2: This functionality has been moved to @npmcli/fs warning eslint-plugin-standard@5.0.0: standard 16.0.0 and eslint-config-standard 16.0.0 no longer require the eslint-plugin-standard package. You can remove it from your dependencies with 'npm rm eslint-plugin-standard'. More info here: https://github.com/standard/standard/issues/1316 warning workspace-aggregator-415462d8-0cae-4407-93e7-16d7c839342b > eslint-plugin-standard@5.0.0: standard 16.0.0 and eslint-config-standard 16.0.0 no longer require the eslint-plugin-standard package. You can remove it from your dependencies with 'npm rm eslint-plugin-standard'. More info here: https://github.com/standard/standard/issues/1316 [2/4] Fetching packages... [3/4] Linking dependencies... [4/4] Building fresh packages... error G:\SquadJS-4.0.1\node_modules\sqlite3: Command failed. Exit code: 1 Command: prebuild-install -r napi || node-gyp rebuild Arguments: Directory: G:\SquadJS-4.0.1\node_modules\sqlite3 Output: prebuild-install warn install unable to verify the first certificate gyp info it worked if it ends with ok gyp info using node-gyp@8.4.1 gyp info using node@18.20.2 | win32 | x64 gyp info find Python using Python version 3.12.3 found at "C:\Python312\python.exe" gyp http GET https://nodejs.org/download/release/v18.20.2/node-v18.20.2-headers.tar.gz gyp WARN install got an error, rolling back install gyp ERR! configure error gyp ERR! stack FetchError: request to https://nodejs.org/download/release/v18.20.2/node-v18.20.2-headers.tar.gz failed, reason: unable to verify the first certificate gyp ERR! stack at ClientRequest. (G:\SquadJS-4.0.1\node_modules\minipass-fetch\lib\index.js:110:14) gyp ERR! stack at ClientRequest.emit (node:events:517:28) gyp ERR! stack at TLSSocket.socketErrorListener (node:_http_client:501:9) gyp ERR! stack at TLSSocket.emit (node:events:529:35) gyp ERR! stack at emitErrorNT (node:internal/streams/destroy:151:8) gyp ERR! stack at emitErrorCloseNT (node:internal/streams/destroy:116:3) gyp ERR! stack at process.processTicksAndRejections (node:internal/process/task_queues:82:21) gyp ERR! System Windows_NT 10.0.22631 gyp ERR! command "C:\Program Files\nodejs\node.exe" "G:\SquadJS-4.0.1\node_modules\node-gyp\bin\node-gyp.js" "rebuild" gyp ERR! cwd G:\SquadJS-4.0.1\node_modules\sqlite3 gyp ERR! node -v v18.20.2 gyp ERR! node-gyp -v v8.4.1 gyp ERR! not ok info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

werewolfboy13 commented 4 months ago

We can not move or change dependencies. Try running yarn install --ignore-scripts --ignore-engines. This may be a tad wrong if so I can find the correct ones. You are missing some dependencies usually. Like python.

Changing major versions requires major rewrites.