Skip to content

Commit

Permalink
Merge branch 'master' into 868-WorldTick
Browse files Browse the repository at this point in the history
  • Loading branch information
wixoaGit authored Jan 28, 2025
2 parents f1f348b + fdc07d9 commit cd46a43
Show file tree
Hide file tree
Showing 672 changed files with 35,594 additions and 22,176 deletions.
3 changes: 3 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ dotnet_style_qualification_for_field = false:suggestion
dotnet_style_qualification_for_method = false:suggestion
dotnet_style_qualification_for_property = false:suggestion
dotnet_style_require_accessibility_modifiers = for_non_interface_members:suggestion
csharp_style_namespace_declarations=file_scoped:warning

[*.csproj]
indent_style = space
Expand Down Expand Up @@ -69,6 +70,8 @@ resharper_place_simple_property_pattern_on_single_line = false
resharper_show_autodetect_configure_formatting_tip = false
resharper_space_within_single_line_array_initializer_braces = false
resharper_use_indent_from_vs = false
resharper_csharp_keep_blank_lines_in_code = 1
resharper_csharp_keep_blank_lines_in_declarations = 1

[*.{dm, dme, dmm, dmf}]
indent_style = tab
Binary file modified .github/assets/screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified .github/assets/screenshot2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/assets/screenshot3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 11 additions & 0 deletions .github/boring-cyborg.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
labelPRBasedOnFilePath:
Client:
- OpenDreamClient/**/*
- OpenDreamShared/**/*
Runtime:
- OpenDreamRuntime/**/*
- OpenDreamServer/**/*
- OpenDreamShared/**/*
Compiler:
- DMCompiler/**/*
- DMDisassembler/**/*
49 changes: 46 additions & 3 deletions .github/workflows/build-test.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build & Test
name: Build, Test & Release

on:
push:
Expand Down Expand Up @@ -28,11 +28,11 @@ jobs:
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: 7.0.101
dotnet-version: 9.0.100
- name: Install dependencies
run: dotnet restore
- name: Build
run: dotnet build --configuration Release --no-restore /m
run: dotnet build --property WarningLevel=${{ matrix.os == 'ubuntu-latest' && '4' || '0' }} --configuration Release --no-restore /m
- name: Content.Tests
shell: pwsh
run: |
Expand All @@ -43,3 +43,46 @@ jobs:
run: |
$env:COMPlus_gcServer=1
dotnet test --no-build Content.IntegrationTests/Content.IntegrationTests.csproj -v n
- name: Publish OpenDream
if: github.event_name == 'push'
run: |
dotnet run --project OpenDreamPackageTool --no-build --configuration Release -- --server --hybrid-acz --configuration Release --platform ${{ matrix.os == 'windows-latest' && 'win-x64' || 'linux-x64' }} --output output_release/
dotnet run --project OpenDreamPackageTool --no-build --configuration Release -- --server --hybrid-acz --configuration Tools --platform ${{ matrix.os == 'windows-latest' && 'win-x64' || 'linux-x64' }} --output output_tools/
- name: Publish DMCompiler
if: github.event_name == 'push'
run: dotnet publish DMCompiler -c Release -o output_release/DMCompiler_${{ matrix.os == 'windows-latest' && 'win-x64' || 'linux-x64' }}
- name: Gzip releases
if: github.event_name == 'push'
run: |
tar -czvf output_release/DMCompiler_${{ matrix.os == 'windows-latest' && 'win-x64' || 'linux-x64' }}.tar.gz -C output_release DMCompiler_${{ matrix.os == 'windows-latest' && 'win-x64' || 'linux-x64' }}
tar -czvf output_release/OpenDreamServer_${{ matrix.os == 'windows-latest' && 'win-x64' || 'linux-x64' }}.tar.gz -C output_release OpenDreamServer_${{ matrix.os == 'windows-latest' && 'win-x64' || 'linux-x64' }}
tar -czvf output_tools/OpenDreamServer_TOOLS_${{ matrix.os == 'windows-latest' && 'win-x64' || 'linux-x64' }}.tar.gz -C output_tools OpenDreamServer_${{ matrix.os == 'windows-latest' && 'win-x64' || 'linux-x64' }}
- name: Upload artifact
if: github.event_name == 'push'
uses: actions/upload-artifact@v4
with:
name: build-${{ matrix.os }}
path: |
output_release/*.tar.gz
output_tools/*.tar.gz
retention-days: 1

release:
needs: build
runs-on: ubuntu-latest
if: github.event_name == 'push'
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Publish latest release
uses: marvinpinto/action-automatic-releases@latest
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
prerelease: true
title: "Development Build"
files: |
artifacts/*/*/*.tar.gz
85 changes: 68 additions & 17 deletions .github/workflows/compiler-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,34 +18,85 @@ jobs:
run: |
cd main/
git submodule update --init --recursive
- name: Pull engine updates
uses: space-wizards/[email protected]
- name: Update Engine Submodules
run: |
cd main/RobustToolbox/
git submodule update --init --recursive
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: 7.0.101
- name: Install dependencies
run: dotnet restore main/OpenDream.sln
- name: Build
run: dotnet build main/OpenDream.sln --configuration Release --no-restore /m
dotnet-version: 9.0.100
- name: Install compiler dependencies
run: dotnet restore main/DMCompiler/DMCompiler.csproj
- name: Install disassembler dependencies
run: dotnet restore main/DMDisassembler/DMDisassembler.csproj
- name: Build compiler
run: dotnet build main/DMCompiler/DMCompiler.csproj --property WarningLevel=0 --configuration Release --no-restore /m
- name: Build disassembler
run: dotnet build main/DMDisassembler/DMDisassembler.csproj --property WarningLevel=0 --configuration Release --no-restore /m
- name: Compile TestGame
run: main\bin\DMCompiler\DMCompiler.exe main\TestGame\environment.dme
- name: Checkout Modified /tg/station
run: main\bin\DMCompiler\DMCompiler.exe main\TestGame\environment.dme --suppress-unimplemented
- name: Compile TestGame in directory
run: |
cd main\TestGame\
..\bin\DMCompiler\DMCompiler.exe environment.dme --suppress-unimplemented
- name: Checkout /tg/station Master
uses: actions/checkout@v2
with:
repository: wixoaGit/tgstation
repository: tgstation/tgstation
ref: master
path: tg
- name: Compile Modified /tg/station
run: main\bin\DMCompiler\DMCompiler.exe tg\tgstation.dme
- name: Checkout 64-bit Paradise
- name: Compile /tg/station Master
run: main\bin\DMCompiler\DMCompiler.exe tg\tgstation.dme --suppress-unimplemented
- name: Disassemble /tg/station Master
run: main\bin\DMDisassembler\DMDisassembler.exe tg\tgstation.json crash-on-test
- name: Checkout Goonstation Master
uses: actions/checkout@v2
with:
repository: goonstation/goonstation
ref: master
path: goon
- name: Compile Goonstation Master
run: |
New-Item goon\+secret\__secret.dme -type file
main\bin\DMCompiler\DMCompiler.exe goon\goonstation.dme --suppress-unimplemented
- name: Checkout Paradise Master
uses: actions/checkout@v2
with:
repository: ike709/Paradise
ref: rustg_64
repository: ParadiseSS13/Paradise
ref: master
path: para
- name: Compile 64-bit Paradise
run: main\bin\DMCompiler\DMCompiler.exe para\paradise.dme
- name: Compile Paradise Master
run: main\bin\DMCompiler\DMCompiler.exe para\paradise.dme --suppress-unimplemented
- name: Checkout Nebula Dev
uses: actions/checkout@v2
with:
repository: NebulaSS13/Nebula
ref: dev
path: nebula
- name: Compile Nebula Dev
run: main\bin\DMCompiler\DMCompiler.exe nebula\nebula.dme --suppress-unimplemented
- name: Checkout /vg/station Master
uses: actions/checkout@v2
with:
repository: vgstation-coders/vgstation13
ref: Bleeding-Edge
path: vg
- name: Compile /vg/station Master
run: main\bin\DMCompiler\DMCompiler.exe vg\vgstation13.dme --suppress-unimplemented
- name: Checkout CM Master
uses: actions/checkout@v2
with:
repository: cmss13-devs/cmss13
ref: master
path: cm
- name: Compile CM Master
run: main\bin\DMCompiler\DMCompiler.exe cm\colonialmarines.dme --suppress-unimplemented
- name: Checkout Aurora Master
uses: actions/checkout@v2
with:
repository: Aurorastation/Aurora.3
ref: master
path: aurora
- name: Compile Aurora Master
run: main\bin\DMCompiler\DMCompiler.exe aurora\aurorastation.dme --suppress-unimplemented
28 changes: 28 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Lint

on:
pull_request:
branches: [master]
types: [opened, synchronize, reopened, ready_for_review]

jobs:
lint:
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Setup submodule
run: |
git submodule update --init --recursive
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: 9.0.100
- name: Setup Resharper
run: dotnet tool install -g JetBrains.ReSharper.GlobalTools
- name: Run Linter
run: jb inspectcode OpenDream.sln -o="output.json" --project="OpenDream*;DM*" --no-swea
- uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: output.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,14 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check for Merge Conflicts
uses: eps1lon/actions-label-merge-conflict@513a24fc7dca40990863be2935e059e650728400
uses: eps1lon/actions-label-merge-conflict@v3.0.2
with:
dirtyLabel: "Merge Conflict"
repoToken: "${{ secrets.GITHUB_TOKEN }}"
commentOnDirty: "This pull request has conflicts, please resolve those before we can evaluate the pull request."
- name: Apply Size Label
if: (github.event_name == 'pull_request_target' && github.head_ref != 'refs/heads/master')
uses: pascalgn/[email protected]
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"

77 changes: 0 additions & 77 deletions .github/workflows/test-tgs.yml

This file was deleted.

12 changes: 8 additions & 4 deletions Content.IntegrationTests/Content.IntegrationTests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,16 @@
<OutputPath>..\bin\Content.IntegrationTests\</OutputPath>
<IsPackable>false</IsPackable>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<LangVersion>11</LangVersion>
<LangVersion>12</LangVersion>
<NoWarn>NU1507</NoWarn>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<RootNamespace>Content.IntegrationTests</RootNamespace>
<AssemblyName>Content.IntegrationTests</AssemblyName>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NUnit" Version="3.13.2" />
<PackageReference Include="NUnit3TestAdapter" Version="4.2.1" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.0.0" />
<PackageReference Include="NUnit" />
<PackageReference Include="NUnit3TestAdapter" />
<PackageReference Include="Microsoft.NET.Test.Sdk" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\OpenDreamClient\OpenDreamClient.csproj" />
Expand Down
10 changes: 10 additions & 0 deletions Content.IntegrationTests/DMProject/Tests/atom_appearance.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
/obj/thingtocopy
name = "hello"
desc = "this is a thing"

/proc/test_appearance()
var/obj/thingtocopy/T = new()
var/obj/otherthing = new()
otherthing.appearance = T.appearance
ASSERT(otherthing.name == T.name)
ASSERT(otherthing.desc == T.desc)
16 changes: 16 additions & 0 deletions Content.IntegrationTests/DMProject/Tests/filter_initial.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
/obj/blurry
filters = filter(type="blur", size=2)

/obj/veryblurry
filters = list(type="blur", size=4)

/obj/notatallblurry
filters = list()

/proc/test_filter_init()
var/obj/veryblurry/VB = new()
ASSERT(length(VB.filters) == 1)
var/obj/blurry/B = new()
ASSERT(length(B.filters) == 1)
var/obj/notatallblurry/NAB = new()
ASSERT(length(NAB.filters) == 0)
Binary file added Content.IntegrationTests/DMProject/Tests/icons.dmi
Binary file not shown.
16 changes: 16 additions & 0 deletions Content.IntegrationTests/DMProject/Tests/image.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
/image/subclass
plane = 123
icon_state = "subclass"

/proc/test_images()
ASSERT(image('icons.dmi', "mob") != null)

var/image/test = new /image/subclass
ASSERT(test.plane == 123)
ASSERT(test.icon_state == "subclass")
var/image/subclass/test2 = new(icon())
ASSERT(test2.plane == FLOAT_PLANE)
ASSERT(test2.icon_state == null)
var/image/subclass/test3 = new(icon_state="test")
ASSERT(test3.plane == 123)
ASSERT(test3.icon_state == "test")
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,6 @@
out += dir
ASSERT(out == 14)

/proc/RunTest()
/proc/test_nonlocal_var()
var/mob/m = new
m.dodir()
Loading

0 comments on commit cd46a43

Please sign in to comment.