diff --git a/.github/workflows/auto-cl-update-atd.yml b/.github/workflows/auto-cl-update-atd.yml
new file mode 100644
index 00000000000..22b330c4b88
--- /dev/null
+++ b/.github/workflows/auto-cl-update-atd.yml
@@ -0,0 +1,69 @@
+name: Auto CL update
+
+on:
+ push:
+ branches:
+ - master
+
+permissions:
+ contents: write
+ pull-requests: write
+
+jobs:
+ post_merge_job:
+ name: Auto CL update
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v3.6.0
+
+ - name: Pull latest changes for update-changelog branch
+ run: |
+ git fetch origin
+ git checkout -b update-changelog || git checkout update-changelog
+
+ - name: Setup Python
+ uses: actions/setup-python@v3
+ with:
+ python-version: '3.x'
+
+ - name: Install requirements
+ run: pip install requests pyyaml
+
+ - name: Run post-merge script
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ run: python Tools/ATD/auto_cl.py "${{ env.GITHUB_TOKEN }}" "${{ github.repository }}"
+
+ - name: Configure Git
+ run: |
+ git config user.name "github-actions[bot]"
+ git config user.email "github-actions[bot]@users.noreply.github.com"
+
+ - name: Commit changes
+ id: commit-changes
+ run: |
+ git add .
+ git diff-index --quiet HEAD || git commit -m "Auto cl update"
+ continue-on-error: true
+
+ - name: Push changes to a new branch
+ if: steps.commit-changes.outcome == 'success'
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ run: |
+ git push https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }} update-changelog --force
+
+ - name: Create Pull Request
+ if: steps.commit-changes.outcome == 'success'
+ uses: peter-evans/create-pull-request@v4
+ with:
+ token: ${{ secrets.GITHUB_TOKEN }}
+ base: master
+ branch: update-changelog
+ commit-message: "Auto cl update"
+ title: "Auto CL update"
+ body: "No cl, no fun"
+ labels: "auto-update changelog"
+ continue-on-error: true
diff --git a/.github/workflows/labeler-untriaged.yml b/.github/workflows/labeler-untriaged.yml
index 630122aa087..775aab26546 100644
--- a/.github/workflows/labeler-untriaged.yml
+++ b/.github/workflows/labeler-untriaged.yml
@@ -9,5 +9,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions-ecosystem/action-add-labels@v1
+ if: join(github.event.issue.labels) == ''
with:
labels: "Status: Untriaged"
diff --git a/.github/workflows/update-wiki.yml b/.github/workflows/update-wiki.yml
index 2cd13b0d2dc..c93069089d8 100644
--- a/.github/workflows/update-wiki.yml
+++ b/.github/workflows/update-wiki.yml
@@ -1,92 +1,92 @@
-name: Update Wiki
+# name: Update Wiki
-on:
- workflow_dispatch:
- push:
- branches: [ master, jsondump ]
- paths:
- - '.github/workflows/update-wiki.yml'
- - 'Content.Shared/Chemistry/**.cs'
- - 'Content.Server/Chemistry/**.cs'
- - 'Content.Server/GuideGenerator/**.cs'
- - 'Content.Server/Corvax/GuideGenerator/**.cs'
- - 'Resources/Prototypes/Reagents/**.yml'
- - 'Resources/Prototypes/Chemistry/**.yml'
- - 'Resources/Prototypes/Recipes/Reactions/**.yml'
- - 'RobustToolbox/'
+# on:
+# workflow_dispatch:
+# push:
+# branches: [ master, jsondump ]
+# paths:
+# - '.github/workflows/update-wiki.yml'
+# - 'Content.Shared/Chemistry/**.cs'
+# - 'Content.Server/Chemistry/**.cs'
+# - 'Content.Server/GuideGenerator/**.cs'
+# - 'Content.Server/Corvax/GuideGenerator/**.cs'
+# - 'Resources/Prototypes/Reagents/**.yml'
+# - 'Resources/Prototypes/Chemistry/**.yml'
+# - 'Resources/Prototypes/Recipes/Reactions/**.yml'
+# - 'RobustToolbox/'
-jobs:
- update-wiki:
- name: Build and Publish JSON blobs to wiki
- runs-on: ubuntu-latest
+# jobs:
+# update-wiki:
+# name: Build and Publish JSON blobs to wiki
+# runs-on: ubuntu-latest
- steps:
- - name: Checkout Master
- uses: actions/checkout@v3.6.0
+# steps:
+# - name: Checkout Master
+# uses: actions/checkout@v3.6.0
- - name: Setup Submodule
- run: |
- git submodule update --init --recursive
+# - name: Setup Submodule
+# run: |
+# git submodule update --init --recursive
- - name: Pull Engine Updates
- uses: space-wizards/submodule-dependency@v0.1.5
+# - name: Pull Engine Updates
+# uses: space-wizards/submodule-dependency@v0.1.5
- - name: Update Engine Submodules
- run: |
- cd RobustToolbox/
- git submodule update --init --recursive
+# - name: Update Engine Submodules
+# run: |
+# cd RobustToolbox/
+# git submodule update --init --recursive
- - name: Setup .NET Core
- uses: actions/setup-dotnet@v3.2.0
- with:
- dotnet-version: 7.0.x
+# - name: Setup .NET Core
+# uses: actions/setup-dotnet@v3.2.0
+# with:
+# dotnet-version: 7.0.x
- - name: Install Dependencies
- run: dotnet restore
+# - name: Install Dependencies
+# run: dotnet restore
- - name: Build Project
- run: dotnet build --configuration Release --no-restore /p:WarningsAsErrors=nullable /m
+# - name: Build Project
+# run: dotnet build --configuration Release --no-restore /p:WarningsAsErrors=nullable /m
- - name: Generate JSON blobs for prototypes
- run: dotnet ./bin/Content.Server/Content.Server.dll --cvar autogen.destination_file=prototypes.json
- continue-on-error: true
+# - name: Generate JSON blobs for prototypes
+# run: dotnet ./bin/Content.Server/Content.Server.dll --cvar autogen.destination_file=prototypes.json
+# continue-on-error: true
- - name: Upload chem_prototypes.json to wiki
- uses: jtmullen/mediawiki-edit-action@v0.1.1
- with:
- wiki_text_file: ./bin/Content.Server/data/chem_prototypes.json
- edit_summary: Update chem_prototypes.json via GitHub Actions
- page_name: "${{ secrets.WIKI_PAGE_ROOT }}/chem_prototypes.json"
- api_url: ${{ secrets.WIKI_ROOT_URL }}/api.php
- username: ${{ secrets.WIKI_BOT_USER }}
- password: ${{ secrets.WIKI_BOT_PASS }}
+# - name: Upload chem_prototypes.json to wiki
+# uses: jtmullen/mediawiki-edit-action@v0.1.1
+# with:
+# wiki_text_file: ./bin/Content.Server/data/chem_prototypes.json
+# edit_summary: Update chem_prototypes.json via GitHub Actions
+# page_name: "${{ secrets.WIKI_PAGE_ROOT }}/chem_prototypes.json"
+# api_url: ${{ secrets.WIKI_ROOT_URL }}/api.php
+# username: ${{ secrets.WIKI_BOT_USER }}
+# password: ${{ secrets.WIKI_BOT_PASS }}
- - name: Upload react_prototypes.json to wiki
- uses: jtmullen/mediawiki-edit-action@v0.1.1
- with:
- wiki_text_file: ./bin/Content.Server/data/react_prototypes.json
- edit_summary: Update react_prototypes.json via GitHub Actions
- page_name: "${{ secrets.WIKI_PAGE_ROOT }}/react_prototypes.json"
- api_url: ${{ secrets.WIKI_ROOT_URL }}/api.php
- username: ${{ secrets.WIKI_BOT_USER }}
- password: ${{ secrets.WIKI_BOT_PASS }}
+# - name: Upload react_prototypes.json to wiki
+# uses: jtmullen/mediawiki-edit-action@v0.1.1
+# with:
+# wiki_text_file: ./bin/Content.Server/data/react_prototypes.json
+# edit_summary: Update react_prototypes.json via GitHub Actions
+# page_name: "${{ secrets.WIKI_PAGE_ROOT }}/react_prototypes.json"
+# api_url: ${{ secrets.WIKI_ROOT_URL }}/api.php
+# username: ${{ secrets.WIKI_BOT_USER }}
+# password: ${{ secrets.WIKI_BOT_PASS }}
- - name: Upload entity_prototypes.json to wiki
- uses: jtmullen/mediawiki-edit-action@v0.1.1
- with:
- wiki_text_file: ./bin/Content.Server/data/entity_prototypes.json
- edit_summary: Update entity_prototypes.json via GitHub Actions
- page_name: "${{ secrets.WIKI_PAGE_ROOT }}/entity_prototypes.json"
- api_url: ${{ secrets.WIKI_ROOT_URL }}/api.php
- username: ${{ secrets.WIKI_BOT_USER }}
- password: ${{ secrets.WIKI_BOT_PASS }}
+# - name: Upload entity_prototypes.json to wiki
+# uses: jtmullen/mediawiki-edit-action@v0.1.1
+# with:
+# wiki_text_file: ./bin/Content.Server/data/entity_prototypes.json
+# edit_summary: Update entity_prototypes.json via GitHub Actions
+# page_name: "${{ secrets.WIKI_PAGE_ROOT }}/entity_prototypes.json"
+# api_url: ${{ secrets.WIKI_ROOT_URL }}/api.php
+# username: ${{ secrets.WIKI_BOT_USER }}
+# password: ${{ secrets.WIKI_BOT_PASS }}
- - name: Upload mealrecipes_prototypes.json to wiki
- uses: jtmullen/mediawiki-edit-action@v0.1.1
- with:
- wiki_text_file: ./bin/Content.Server/data/mealrecipes_prototypes.json
- edit_summary: Update mealrecipes_prototypes.json via GitHub Actions
- page_name: "${{ secrets.WIKI_PAGE_ROOT }}/mealrecipes_prototypes.json"
- api_url: ${{ secrets.WIKI_ROOT_URL }}/api.php
- username: ${{ secrets.WIKI_BOT_USER }}
- password: ${{ secrets.WIKI_BOT_PASS }}
+# - name: Upload mealrecipes_prototypes.json to wiki
+# uses: jtmullen/mediawiki-edit-action@v0.1.1
+# with:
+# wiki_text_file: ./bin/Content.Server/data/mealrecipes_prototypes.json
+# edit_summary: Update mealrecipes_prototypes.json via GitHub Actions
+# page_name: "${{ secrets.WIKI_PAGE_ROOT }}/mealrecipes_prototypes.json"
+# api_url: ${{ secrets.WIKI_ROOT_URL }}/api.php
+# username: ${{ secrets.WIKI_BOT_USER }}
+# password: ${{ secrets.WIKI_BOT_PASS }}
diff --git a/.gitmodules b/.gitmodules
index 5ba1735ee8c..bda7de5d838 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -2,8 +2,3 @@
path = RobustToolbox
url = https://github.com/space-wizards/RobustToolbox.git
branch = master
-[submodule "Secrets"]
- path = Secrets
- url = git@github.com:corvax-project/secrets.git
- branch = master
- update = none
diff --git a/Content.Client/Administration/UI/CustomControls/PlayerListControl.xaml b/Content.Client/Administration/UI/CustomControls/PlayerListControl.xaml
index 5d630425aba..ef679e778d9 100644
--- a/Content.Client/Administration/UI/CustomControls/PlayerListControl.xaml
+++ b/Content.Client/Administration/UI/CustomControls/PlayerListControl.xaml
@@ -5,7 +5,7 @@
+ PlaceHolder="{Loc player-list-filter}"/>
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/PlayerActionsWindow.xaml b/Content.Client/Administration/UI/Tabs/AdminTab/PlayerActionsWindow.xaml
index dcc1a05bb54..3df57de57b3 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/PlayerActionsWindow.xaml
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/PlayerActionsWindow.xaml
@@ -4,7 +4,7 @@
Title="{Loc admin-player-actions-window-title}" MinSize="425 272">
-
+
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/TeleportWindow.xaml b/Content.Client/Administration/UI/Tabs/AdminTab/TeleportWindow.xaml
index 8f27b17d2dc..cceb21f14d7 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/TeleportWindow.xaml
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/TeleportWindow.xaml
@@ -1,9 +1,9 @@
+ Title="{Loc admin-ui-teleport}" MinSize="425 230">
-
+
diff --git a/Content.Client/Administration/UI/Tabs/AdminbusTab/LoadBlueprintsWindow.xaml b/Content.Client/Administration/UI/Tabs/AdminbusTab/LoadBlueprintsWindow.xaml
index 6157a96f42b..e06fc6e8ac5 100644
--- a/Content.Client/Administration/UI/Tabs/AdminbusTab/LoadBlueprintsWindow.xaml
+++ b/Content.Client/Administration/UI/Tabs/AdminbusTab/LoadBlueprintsWindow.xaml
@@ -1,33 +1,33 @@
+ xmlns="https://spacestation14.io" Title="{Loc admin-ui-blueprint-load}">
-
+
-
+
-
+
-
+
-
+
-
-
-
+
+
+
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml b/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml
index 4a1719cbf8a..a7c4c35494d 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml
@@ -1,11 +1,11 @@
+ xmlns="https://spacestation14.io" Title="{Loc admin-ui-atmos-add}">
-
+
-
+
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml.cs
index 03fd52f446a..72a594469d2 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml.cs
@@ -35,7 +35,7 @@ protected override void EnteredTree()
while (query.MoveNext(out var uid, out var grid))
{
_data.Add((uid, grid));
- GridOptions.AddItem($"{uid} {(playerGrid == uid ? " (Current)" : "")}");
+ GridOptions.AddItem($"{uid} {(playerGrid == uid ? Loc.GetString($"admin-ui-atmos-grid-current") : "")}");
}
GridOptions.OnItemSelected += eventArgs => GridOptions.SelectId(eventArgs.Id);
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml b/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml
index df1c7aee658..6420396788a 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml
@@ -1,31 +1,31 @@
+ xmlns="https://spacestation14.io" Title="{Loc admin-ui-atmos-add-gas}">
-
+
-
+
-
+
-
+
-
+
-
+
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml.cs
index c06d9161334..c516acda2a2 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml.cs
@@ -33,7 +33,7 @@ protected override void EnteredTree()
_gridData.Add(entManager.GetNetEntity(uid));
var player = playerManager.LocalEntity;
var playerGrid = entManager.GetComponentOrNull(player)?.GridUid;
- GridOptions.AddItem($"{uid} {(playerGrid == uid ? " (Current)" : "")}");
+ GridOptions.AddItem($"{uid} {(playerGrid == uid ? Loc.GetString("admin-ui-atmos-grid-current") : "")}");
}
GridOptions.OnItemSelected += eventArgs => GridOptions.SelectId(eventArgs.Id);
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/AtmosTab.xaml b/Content.Client/Administration/UI/Tabs/AtmosTab/AtmosTab.xaml
index 9916972ac16..8a80e74c1f4 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/AtmosTab.xaml
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/AtmosTab.xaml
@@ -6,10 +6,10 @@
Margin="4"
MinSize="50 50">
-
-
-
-
+
+
+
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml b/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml
index 242fcf2b82e..f2dba57bff7 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml
@@ -1,21 +1,21 @@
+ xmlns="https://spacestation14.io" Title="{Loc admin-ui-atmos-fill-gas}">
-
+
-
+
-
+
-
+
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml.cs
index 3353d0873ef..302ca8f21fd 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml.cs
@@ -36,7 +36,7 @@ protected override void EnteredTree()
{
var player = playerManager.LocalEntity;
var playerGrid = entManager.GetComponentOrNull(player)?.GridUid;
- GridOptions.AddItem($"{uid} {(playerGrid == uid ? " (Current)" : "")}");
+ GridOptions.AddItem($"{uid} {(playerGrid == uid ? Loc.GetString($"admin-ui-atmos-grid-current") : "")}");
_gridData.Add(entManager.GetNetEntity(uid));
}
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml b/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml
index dbc65772019..4102912d693 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml
@@ -1,26 +1,26 @@
+ xmlns="https://spacestation14.io" Title="{Loc admin-ui-atmos-set-temperature}">
-
+
-
+
-
+
-
+
-
+
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml.cs
index 1183efb9b5b..b3c4a83ed41 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml.cs
@@ -32,7 +32,7 @@ protected override void EnteredTree()
{
var player = playerManager.LocalEntity;
var playerGrid = entManager.GetComponentOrNull(player)?.GridUid;
- GridOptions.AddItem($"{uid} {(playerGrid == uid ? " (Current)" : "")}");
+ GridOptions.AddItem($"{uid} {(playerGrid == uid ? Loc.GetString($"admin-ui-atmos-grid-current") : "")}");
_data.Add(entManager.GetNetEntity(uid));
}
diff --git a/Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTab.xaml b/Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTab.xaml
index ea89916ba8c..821389150d6 100644
--- a/Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTab.xaml
+++ b/Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTab.xaml
@@ -5,8 +5,8 @@
-
+ Text="{Loc object-tab-object-type}" />
+
diff --git a/Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTab.xaml.cs b/Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTab.xaml.cs
index c8606ca80d5..67e0db01eeb 100644
--- a/Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTab.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTab.xaml.cs
@@ -41,7 +41,7 @@ public ObjectsTab()
foreach (var type in Enum.GetValues(typeof(ObjectsTabSelection)))
{
_selections.Add((ObjectsTabSelection)type!);
- ObjectTypeOptions.AddItem(Enum.GetName((ObjectsTabSelection)type)!);
+ ObjectTypeOptions.AddItem(Loc.GetString($"object-tab-object-type-{((Enum.GetName((ObjectsTabSelection)type))!.ToString().ToLower())}"));
}
ListHeader.OnHeaderClicked += HeaderClicked;
diff --git a/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTab.xaml b/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTab.xaml
index 25a96df1d37..e0723d4bdc5 100644
--- a/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTab.xaml
+++ b/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTab.xaml
@@ -4,7 +4,7 @@
xmlns:co="clr-namespace:Content.Client.UserInterface.Controls">
-
+