diff --git a/.github/workflows/ci_suite.yml b/.github/workflows/ci_suite.yml index 46871b3852..454a3bc43b 100644 --- a/.github/workflows/ci_suite.yml +++ b/.github/workflows/ci_suite.yml @@ -8,18 +8,18 @@ on: - master jobs: run_linters: - if: !contains(github.event.head_commit.message, '[ci skip]') + if: ( !contains(github.event.head_commit.message, '[ci skip]') ) name: Run Linters runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Restore SpacemanDMM cache - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/SpacemanDMM key: ${{ runner.os }}-spacemandmm-${{ secrets.CACHE_PURGE_KEY }} - name: Restore Yarn cache - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: tgui/.yarn/cache key: ${{ runner.os }}-yarn-${{ secrets.CACHE_PURGE_KEY }}-${{ hashFiles('tgui/yarn.lock') }} @@ -29,7 +29,7 @@ jobs: ${{ runner.os }}- - name: Install Tools run: | - pip3 install setuptools + pip3 install setuptools --upgrade bash tools/ci/install_node.sh bash tools/ci/install_spaceman_dmm.sh dreamchecker tools/bootstrap/python -c '' @@ -51,13 +51,13 @@ jobs: outputFile: output-annotations.txt compile_all_maps: - if: !contains(github.event.head_commit.message, '[ci skip]') + if: ( !contains(github.event.head_commit.message, '[ci skip]') ) name: Compile Maps runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Restore BYOND cache - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: ~/BYOND key: ${{ runner.os }}-byond-${{ secrets.CACHE_PURGE_KEY }} @@ -67,7 +67,7 @@ jobs: source $HOME/BYOND/byond/bin/byondsetup tools/build/build --ci dm -DCIBUILDING -DCITESTING -DALL_MAPS run_all_tests: - if: !contains(github.event.head_commit.message, '[ci skip]') + if: ( !contains(github.event.head_commit.message, '[ci skip]') ) name: Integration Tests runs-on: ubuntu-22.04 services: @@ -79,14 +79,14 @@ jobs: - 3306 options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Restore BYOND cache - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: ~/BYOND key: ${{ runner.os }}-byond-${{ secrets.CACHE_PURGE_KEY }} - name: Restore Yarn cache - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: tgui/.yarn/cache key: ${{ runner.os }}-yarn-${{ secrets.CACHE_PURGE_KEY }}-${{ hashFiles('tgui/yarn.lock') }} @@ -103,9 +103,6 @@ jobs: mysql -u root -proot tg_ci_prefixed < SQL/tgstation_schema_prefixed.sql - name: Install rust-g run: | - sudo dpkg --add-architecture i386 - sudo apt update || true - sudo apt install -o APT::Immediate-Configure=false libssl1.1:i386 bash tools/ci/install_rust_g.sh - name: Install auxmos run: | @@ -118,13 +115,13 @@ jobs: tools/build/build --ci -DCIBUILDING bash tools/ci/run_server.sh test_windows: - if: !contains(github.event.head_commit.message, '[ci skip]') + if: ( !contains(github.event.head_commit.message, '[ci skip]') ) name: Windows Build runs-on: windows-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Restore Yarn cache - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: tgui/.yarn/cache key: ${{ runner.os }}-yarn-${{ secrets.CACHE_PURGE_KEY }}-${{ hashFiles('tgui/yarn.lock') }} @@ -141,7 +138,7 @@ jobs: md deploy bash tools/deploy.sh ./deploy - name: Deploy artifact - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: deploy path: deploy diff --git a/.github/workflows/generate_documentation.yml b/.github/workflows/generate_documentation.yml index 265e179ff0..b1bf902c69 100644 --- a/.github/workflows/generate_documentation.yml +++ b/.github/workflows/generate_documentation.yml @@ -8,9 +8,9 @@ jobs: if: "!contains(github.event.head_commit.message, '[ci skip]')" runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup cache - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/SpacemanDMM key: ${{ runner.os }}-spacemandmm-${{ secrets.CACHE_PURGE_KEY }} diff --git a/.github/workflows/update_tgs_dmapi.yml b/.github/workflows/update_tgs_dmapi.yml index 19a72d6702..e3400bf3c3 100644 --- a/.github/workflows/update_tgs_dmapi.yml +++ b/.github/workflows/update_tgs_dmapi.yml @@ -11,7 +11,7 @@ jobs: name: Update the TGS DMAPI steps: - name: Clone - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Branch run: | diff --git a/dependencies.sh b/dependencies.sh index a9f562ade7..c172f033ff 100644 --- a/dependencies.sh +++ b/dependencies.sh @@ -8,17 +8,18 @@ export BYOND_MAJOR=515 export BYOND_MINOR=1634 #rust_g git tag -export RUST_G_VERSION=0.4.10 +export RUST_G_VERSION=3.3.0 #node version -export NODE_VERSION=16 -export NODE_VERSION_PRECISE=16.13.1 +export NODE_VERSION_LTS=20.13.0 +# compatiblility mode MUST work with windows 7 +export NODE_VERSION_COMPAT=20.2.0 # SpacemanDMM git tag -export SPACEMAN_DMM_VERSION=suite-1.8 +export SPACEMAN_DMM_VERSION=suite-1.9 # Python version for mapmerge and other tools -export PYTHON_VERSION=3.7.9 +export PYTHON_VERSION=3.9.0 # Auxmos git tag export AUXMOS_VERSION=v2.5.1 diff --git a/tools/bootstrap/node_.ps1 b/tools/bootstrap/node_.ps1 index ac8d3b343f..53dd65ae60 100644 --- a/tools/bootstrap/node_.ps1 +++ b/tools/bootstrap/node_.ps1 @@ -29,7 +29,16 @@ $Cache = "$BaseDir\.cache" if ($Env:TG_BOOTSTRAP_CACHE) { $Cache = $Env:TG_BOOTSTRAP_CACHE } -$NodeVersion = Extract-Variable -Path "$BaseDir\..\..\dependencies.sh" -Key "NODE_VERSION_PRECISE" +# Get OS version +$OSMajor = (Get-WmiObject -Class Win32_OperatingSystem).Version.Split(".")[0] +# Set Node version based on OS version +if ($OSMajor -lt 10) { + # Anything under Windows 10 + $NodeVersion = Extract-Variable -Path "$BaseDir\..\..\dependencies.sh" -Key "NODE_VERSION_COMPAT" +} +else { + $NodeVersion = Extract-Variable -Path "$BaseDir\..\..\dependencies.sh" -Key "NODE_VERSION_LTS" +} $NodeSource = "https://nodejs.org/download/release/v$NodeVersion/win-x64/node.exe" $NodeTargetDir = "$Cache\node-v$NodeVersion-x64" $NodeTarget = "$NodeTargetDir\node.exe" diff --git a/tools/ci/install_node.sh b/tools/ci/install_node.sh index c21b8f0110..906984ed3f 100755 --- a/tools/ci/install_node.sh +++ b/tools/ci/install_node.sh @@ -5,6 +5,6 @@ source dependencies.sh if [[ -e ~/.nvm/nvm.sh ]]; then source ~/.nvm/nvm.sh - nvm install $NODE_VERSION - nvm use $NODE_VERSION + nvm install $NODE_VERSION_COMPAT + nvm use $NODE_VERSION_COMPAT fi diff --git a/tools/requirements.txt b/tools/requirements.txt index 059bd45d7e..e64c8d7b46 100644 --- a/tools/requirements.txt +++ b/tools/requirements.txt @@ -1,7 +1,7 @@ -pygit2==1.0.1 -bidict==0.13.1 -Pillow==10.0.1 +pygit2==1.11.1 +bidict==0.22.1 +Pillow==10.3.0 # changelogs -PyYaml==5.4 +PyYaml==6.0.1 beautifulsoup4==4.9.3