From 5be021b0eb248eede38e8d205bc75bd95b2305df Mon Sep 17 00:00:00 2001 From: Exter-N Date: Thu, 13 Nov 2025 19:53:50 +0100 Subject: [PATCH 01/11] Add integration settings sections --- Penumbra.Api | 2 +- Penumbra/Api/Api/PenumbraApi.cs | 2 +- Penumbra/Api/Api/UiApi.cs | 26 +++-- Penumbra/Api/IpcProviders.cs | 2 + .../IntegrationSettingsRegistry.cs | 110 ++++++++++++++++++ Penumbra/UI/Tabs/SettingsTab.cs | 8 +- 6 files changed, 139 insertions(+), 11 deletions(-) create mode 100644 Penumbra/UI/Integration/IntegrationSettingsRegistry.cs diff --git a/Penumbra.Api b/Penumbra.Api index 874a3773..b97784bd 160000 --- a/Penumbra.Api +++ b/Penumbra.Api @@ -1 +1 @@ -Subproject commit 874a3773bc4f637de1ef1fa8756b4debe3d8f68b +Subproject commit b97784bd7cd911bd0a323cd8e717714de1875469 diff --git a/Penumbra/Api/Api/PenumbraApi.cs b/Penumbra/Api/Api/PenumbraApi.cs index 7304c9c7..c4026c72 100644 --- a/Penumbra/Api/Api/PenumbraApi.cs +++ b/Penumbra/Api/Api/PenumbraApi.cs @@ -17,7 +17,7 @@ public class PenumbraApi( UiApi ui) : IDisposable, IApiService, IPenumbraApi { public const int BreakingVersion = 5; - public const int FeatureVersion = 12; + public const int FeatureVersion = 13; public void Dispose() { diff --git a/Penumbra/Api/Api/UiApi.cs b/Penumbra/Api/Api/UiApi.cs index b14f67ae..6fb116f3 100644 --- a/Penumbra/Api/Api/UiApi.cs +++ b/Penumbra/Api/Api/UiApi.cs @@ -5,20 +5,24 @@ using Penumbra.GameData.Data; using Penumbra.Mods.Manager; using Penumbra.Services; using Penumbra.UI; +using Penumbra.UI.Integration; +using Penumbra.UI.Tabs; namespace Penumbra.Api.Api; public class UiApi : IPenumbraApiUi, IApiService, IDisposable { - private readonly CommunicatorService _communicator; - private readonly ConfigWindow _configWindow; - private readonly ModManager _modManager; + private readonly CommunicatorService _communicator; + private readonly ConfigWindow _configWindow; + private readonly ModManager _modManager; + private readonly IntegrationSettingsRegistry _integrationSettings; - public UiApi(CommunicatorService communicator, ConfigWindow configWindow, ModManager modManager) + public UiApi(CommunicatorService communicator, ConfigWindow configWindow, ModManager modManager, IntegrationSettingsRegistry integrationSettings) { - _communicator = communicator; - _configWindow = configWindow; - _modManager = modManager; + _communicator = communicator; + _configWindow = configWindow; + _modManager = modManager; + _integrationSettings = integrationSettings; _communicator.ChangedItemHover.Subscribe(OnChangedItemHover, ChangedItemHover.Priority.Default); _communicator.ChangedItemClick.Subscribe(OnChangedItemClick, ChangedItemClick.Priority.Default); } @@ -98,4 +102,12 @@ public class UiApi : IPenumbraApiUi, IApiService, IDisposable var (type, id) = data.ToApiObject(); ChangedItemTooltip.Invoke(type, id); } + + public PenumbraApiEc RegisterSettingsSection(Action draw) + => _integrationSettings.RegisterSection(draw); + + public PenumbraApiEc UnregisterSettingsSection(Action draw) + => _integrationSettings.UnregisterSection(draw) + ? PenumbraApiEc.Success + : PenumbraApiEc.NothingChanged; } diff --git a/Penumbra/Api/IpcProviders.cs b/Penumbra/Api/IpcProviders.cs index 5f04540f..197cf3d2 100644 --- a/Penumbra/Api/IpcProviders.cs +++ b/Penumbra/Api/IpcProviders.cs @@ -130,6 +130,8 @@ public sealed class IpcProviders : IDisposable, IApiService IpcSubscribers.PostSettingsDraw.Provider(pi, api.Ui), IpcSubscribers.OpenMainWindow.Provider(pi, api.Ui), IpcSubscribers.CloseMainWindow.Provider(pi, api.Ui), + IpcSubscribers.RegisterSettingsSection.Provider(pi, api.Ui), + IpcSubscribers.UnregisterSettingsSection.Provider(pi, api.Ui), ]; if (_characterUtility.Ready) _initializedProvider.Invoke(); diff --git a/Penumbra/UI/Integration/IntegrationSettingsRegistry.cs b/Penumbra/UI/Integration/IntegrationSettingsRegistry.cs new file mode 100644 index 00000000..ab26a68f --- /dev/null +++ b/Penumbra/UI/Integration/IntegrationSettingsRegistry.cs @@ -0,0 +1,110 @@ +using Dalamud.Plugin; +using OtterGui.Services; +using OtterGui.Text; +using Penumbra.Api.Enums; + +namespace Penumbra.UI.Integration; + +public sealed class IntegrationSettingsRegistry : IService, IDisposable +{ + private readonly IDalamudPluginInterface _pluginInterface; + + private readonly List<(string InternalName, string Name, Action Draw)> _sections = []; + + private bool _disposed = false; + + public IntegrationSettingsRegistry(IDalamudPluginInterface pluginInterface) + { + _pluginInterface = pluginInterface; + + _pluginInterface.ActivePluginsChanged += OnActivePluginsChanged; + } + + public void Dispose() + { + _disposed = true; + + _pluginInterface.ActivePluginsChanged -= OnActivePluginsChanged; + + _sections.Clear(); + } + + public void Draw() + { + foreach (var (internalName, name, draw) in _sections) + { + if (!ImUtf8.CollapsingHeader($"Integration with {name}###IntegrationSettingsHeader.{internalName}")) + continue; + + using var id = ImUtf8.PushId($"IntegrationSettings.{internalName}"); + try + { + draw(); + } + catch (Exception e) + { + Penumbra.Log.Error($"Error while drawing {internalName} integration settings: {e}"); + } + } + } + + public PenumbraApiEc RegisterSection(Action draw) + { + if (_disposed) + return PenumbraApiEc.SystemDisposed; + + var plugin = GetPlugin(draw); + if (plugin is null) + return PenumbraApiEc.InvalidArgument; + + var section = (plugin.InternalName, plugin.Name, draw); + + var index = FindSectionIndex(plugin.InternalName); + if (index >= 0) + { + if (_sections[index] == section) + return PenumbraApiEc.NothingChanged; + _sections[index] = section; + } + else + _sections.Add(section); + _sections.Sort((lhs, rhs) => string.Compare(lhs.Name, rhs.Name, StringComparison.CurrentCultureIgnoreCase)); + + return PenumbraApiEc.Success; + } + + public bool UnregisterSection(Action draw) + { + var index = FindSectionIndex(draw); + if (index < 0) + return false; + + _sections.RemoveAt(index); + return true; + } + + private void OnActivePluginsChanged(IActivePluginsChangedEventArgs args) + { + if (args.Kind is PluginListInvalidationKind.Loaded) + return; + + foreach (var internalName in args.AffectedInternalNames) + { + var index = FindSectionIndex(internalName); + if (index >= 0 && GetPlugin(_sections[index].Draw) is null) + { + _sections.RemoveAt(index); + Penumbra.Log.Warning($"Removed stale integration setting section of {internalName} (reason: {args.Kind})"); + } + } + } + + private IExposedPlugin? GetPlugin(Delegate @delegate) + => null; // TODO Use IDalamudPluginInterface.GetPlugin(Assembly) when it's in Dalamud stable. + + private int FindSectionIndex(string internalName) + => _sections.FindIndex(section => section.InternalName.Equals(internalName, StringComparison.Ordinal)); + + private int FindSectionIndex(Action draw) + => _sections.FindIndex(section => section.Draw == draw); +} diff --git a/Penumbra/UI/Tabs/SettingsTab.cs b/Penumbra/UI/Tabs/SettingsTab.cs index 86c01cb2..09c7c58d 100644 --- a/Penumbra/UI/Tabs/SettingsTab.cs +++ b/Penumbra/UI/Tabs/SettingsTab.cs @@ -20,6 +20,7 @@ using Penumbra.Interop.Services; using Penumbra.Mods.Manager; using Penumbra.Services; using Penumbra.UI.Classes; +using Penumbra.UI.Integration; using Penumbra.UI.ModsTab; namespace Penumbra.UI.Tabs; @@ -55,6 +56,7 @@ public class SettingsTab : ITab, IUiService private readonly CleanupService _cleanupService; private readonly AttributeHook _attributeHook; private readonly PcpService _pcpService; + private readonly IntegrationSettingsRegistry _integrationSettings; private int _minimumX = int.MaxValue; private int _minimumY = int.MaxValue; @@ -71,7 +73,7 @@ public class SettingsTab : ITab, IUiService DalamudSubstitutionProvider dalamudSubstitutionProvider, FileCompactor compactor, DalamudConfigService dalamudConfig, IDataManager gameData, PredefinedTagManager predefinedTagConfig, CrashHandlerService crashService, MigrationSectionDrawer migrationDrawer, CollectionAutoSelector autoSelector, CleanupService cleanupService, - AttributeHook attributeHook, PcpService pcpService) + AttributeHook attributeHook, PcpService pcpService, IntegrationSettingsRegistry integrationSettings) { _pluginInterface = pluginInterface; _config = config; @@ -99,6 +101,7 @@ public class SettingsTab : ITab, IUiService _cleanupService = cleanupService; _attributeHook = attributeHook; _pcpService = pcpService; + _integrationSettings = integrationSettings; } public void DrawHeader() @@ -129,6 +132,7 @@ public class SettingsTab : ITab, IUiService DrawColorSettings(); DrawPredefinedTagsSection(); DrawAdvancedSettings(); + _integrationSettings.Draw(); DrawSupportButtons(); } @@ -1133,7 +1137,7 @@ public class SettingsTab : ITab, IUiService } #endregion - + /// Draw the support button group on the right-hand side of the window. private void DrawSupportButtons() { From e240a42a2ccd35d06be417033d034448c5c8be35 Mon Sep 17 00:00:00 2001 From: Exter-N Date: Thu, 13 Nov 2025 19:55:32 +0100 Subject: [PATCH 02/11] Replace GetPlugin(Delegate) stub by actual implementation --- Penumbra/UI/Integration/IntegrationSettingsRegistry.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Penumbra/UI/Integration/IntegrationSettingsRegistry.cs b/Penumbra/UI/Integration/IntegrationSettingsRegistry.cs index ab26a68f..2d3da488 100644 --- a/Penumbra/UI/Integration/IntegrationSettingsRegistry.cs +++ b/Penumbra/UI/Integration/IntegrationSettingsRegistry.cs @@ -100,7 +100,12 @@ public sealed class IntegrationSettingsRegistry : IService, IDisposable } private IExposedPlugin? GetPlugin(Delegate @delegate) - => null; // TODO Use IDalamudPluginInterface.GetPlugin(Assembly) when it's in Dalamud stable. + => @delegate.Method.DeclaringType + switch + { + null => null, + var type => _pluginInterface.GetPlugin(type.Assembly), + }; private int FindSectionIndex(string internalName) => _sections.FindIndex(section => section.InternalName.Equals(internalName, StringComparison.Ordinal)); From 338e3bc1a5107267aace6ae9b1a89e30a7e7a757 Mon Sep 17 00:00:00 2001 From: Exter-N Date: Thu, 20 Nov 2025 18:41:32 +0100 Subject: [PATCH 03/11] Update Penumbra.Api --- Penumbra.Api | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Penumbra.Api b/Penumbra.Api index b97784bd..704d62f6 160000 --- a/Penumbra.Api +++ b/Penumbra.Api @@ -1 +1 @@ -Subproject commit b97784bd7cd911bd0a323cd8e717714de1875469 +Subproject commit 704d62f64f791b8cfd42363beaa464ad6f98ae48 From febced07080a84e7526e56b1944128ecd6dc8d9a Mon Sep 17 00:00:00 2001 From: Ottermandias Date: Fri, 19 Dec 2025 00:47:19 +0100 Subject: [PATCH 04/11] Fix bug in slicer. --- Penumbra/Interop/Services/TextureArraySlicer.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Penumbra/Interop/Services/TextureArraySlicer.cs b/Penumbra/Interop/Services/TextureArraySlicer.cs index 7b873f26..3cd57a33 100644 --- a/Penumbra/Interop/Services/TextureArraySlicer.cs +++ b/Penumbra/Interop/Services/TextureArraySlicer.cs @@ -48,7 +48,7 @@ public sealed unsafe class TextureArraySlicer : IUiService, IDisposable break; case D3D_SRV_DIMENSION.D3D11_SRV_DIMENSION_TEXTURE1DARRAY: description.Texture1DArray.FirstArraySlice = sliceIndex; - description.Texture2DArray.ArraySize = 1; + description.Texture1DArray.ArraySize = 1; break; case D3D_SRV_DIMENSION.D3D11_SRV_DIMENSION_TEXTURE2DARRAY: description.Texture2DArray.FirstArraySlice = sliceIndex; From ebcbc5d98a896c96756588c916aa52294a91773d Mon Sep 17 00:00:00 2001 From: Ottermandias Date: Fri, 19 Dec 2025 00:51:39 +0100 Subject: [PATCH 05/11] Update SDK. --- OtterGui | 2 +- Penumbra.Api | 2 +- Penumbra.CrashHandler/Penumbra.CrashHandler.csproj | 2 +- Penumbra.GameData | 2 +- Penumbra.String | 2 +- Penumbra/Penumbra.csproj | 2 +- Penumbra/Penumbra.json | 2 +- repo.json | 4 ++-- 8 files changed, 9 insertions(+), 9 deletions(-) diff --git a/OtterGui b/OtterGui index 6f323645..ff1e6543 160000 --- a/OtterGui +++ b/OtterGui @@ -1 +1 @@ -Subproject commit 6f3236453b1edfaa25c8edcc8b39a9d9b2fc18ac +Subproject commit ff1e6543845e3b8c53a5f8b240bc38faffb1b3bf diff --git a/Penumbra.Api b/Penumbra.Api index e4934ccc..1750c41b 160000 --- a/Penumbra.Api +++ b/Penumbra.Api @@ -1 +1 @@ -Subproject commit e4934ccca0379f22dadf989ab2d34f30b3c5c7ea +Subproject commit 1750c41b53e1000c99a7fb9d8a0f082aef639a41 diff --git a/Penumbra.CrashHandler/Penumbra.CrashHandler.csproj b/Penumbra.CrashHandler/Penumbra.CrashHandler.csproj index 4c864d39..e07bb745 100644 --- a/Penumbra.CrashHandler/Penumbra.CrashHandler.csproj +++ b/Penumbra.CrashHandler/Penumbra.CrashHandler.csproj @@ -1,4 +1,4 @@ - + Exe diff --git a/Penumbra.GameData b/Penumbra.GameData index 3d4d8510..0e973ed6 160000 --- a/Penumbra.GameData +++ b/Penumbra.GameData @@ -1 +1 @@ -Subproject commit 3d4d8510f832dfd95d7069b86e6b3da4ec612558 +Subproject commit 0e973ed6eace6afd31cd298f8c58f76fa8d5ef60 diff --git a/Penumbra.String b/Penumbra.String index 0315144a..9bd016fb 160000 --- a/Penumbra.String +++ b/Penumbra.String @@ -1 +1 @@ -Subproject commit 0315144ab5614c11911e2a4dddf436fb18c5d7e3 +Subproject commit 9bd016fbef5fb2de467dd42165267fdd93cd9592 diff --git a/Penumbra/Penumbra.csproj b/Penumbra/Penumbra.csproj index 43f853f3..f9e33219 100644 --- a/Penumbra/Penumbra.csproj +++ b/Penumbra/Penumbra.csproj @@ -1,4 +1,4 @@ - + Penumbra absolute gangstas diff --git a/Penumbra/Penumbra.json b/Penumbra/Penumbra.json index 32032282..975c5bb3 100644 --- a/Penumbra/Penumbra.json +++ b/Penumbra/Penumbra.json @@ -8,7 +8,7 @@ "RepoUrl": "https://github.com/xivdev/Penumbra", "ApplicableVersion": "any", "Tags": [ "modding" ], - "DalamudApiLevel": 13, + "DalamudApiLevel": 14, "LoadPriority": 69420, "LoadRequiredState": 2, "LoadSync": true, diff --git a/repo.json b/repo.json index 7ddffd7c..5b780560 100644 --- a/repo.json +++ b/repo.json @@ -9,8 +9,8 @@ "TestingAssemblyVersion": "1.5.1.8", "RepoUrl": "https://github.com/xivdev/Penumbra", "ApplicableVersion": "any", - "DalamudApiLevel": 13, - "TestingDalamudApiLevel": 13, + "DalamudApiLevel": 14, + "TestingDalamudApiLevel": 14, "IsHide": "False", "IsTestingExclusive": "False", "DownloadCount": 0, From fb299d71f0921c6efad318d0b648bad1c0076e61 Mon Sep 17 00:00:00 2001 From: Ottermandias Date: Fri, 19 Dec 2025 00:54:09 +0100 Subject: [PATCH 06/11] Remove unimplemented ipc. --- Penumbra/Api/Api/UiApi.cs | 6 ------ 1 file changed, 6 deletions(-) diff --git a/Penumbra/Api/Api/UiApi.cs b/Penumbra/Api/Api/UiApi.cs index 6a293678..6fb116f3 100644 --- a/Penumbra/Api/Api/UiApi.cs +++ b/Penumbra/Api/Api/UiApi.cs @@ -85,12 +85,6 @@ public class UiApi : IPenumbraApiUi, IApiService, IDisposable public void CloseMainWindow() => _configWindow.IsOpen = false; - public PenumbraApiEc RegisterSettingsSection(Action draw) - => throw new NotImplementedException(); - - public PenumbraApiEc UnregisterSettingsSection(Action draw) - => throw new NotImplementedException(); - private void OnChangedItemClick(MouseButton button, IIdentifiedObjectData data) { if (ChangedItemClicked == null) From 37f30443767b9367970e16b1aba03d9608885592 Mon Sep 17 00:00:00 2001 From: Ottermandias Date: Fri, 19 Dec 2025 00:56:50 +0100 Subject: [PATCH 07/11] Update dotnet. --- .github/workflows/build.yml | 2 +- .github/workflows/release.yml | 2 +- .github/workflows/test_release.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7901a653..85ea0953 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,7 +16,7 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v1 with: - dotnet-version: '9.x.x' + dotnet-version: '10.x.x' - name: Restore dependencies run: dotnet restore - name: Download Dalamud diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 377919b2..e4a17130 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -15,7 +15,7 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v1 with: - dotnet-version: '9.x.x' + dotnet-version: '10.x.x' - name: Restore dependencies run: dotnet restore - name: Download Dalamud diff --git a/.github/workflows/test_release.yml b/.github/workflows/test_release.yml index 2bece720..8af4a8c8 100644 --- a/.github/workflows/test_release.yml +++ b/.github/workflows/test_release.yml @@ -15,7 +15,7 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v1 with: - dotnet-version: '9.x.x' + dotnet-version: '10.x.x' - name: Restore dependencies run: dotnet restore - name: Download Dalamud From 59fec5db822240213457b8e0b92566a9fad0ab89 Mon Sep 17 00:00:00 2001 From: Ottermandias Date: Fri, 19 Dec 2025 01:05:50 +0100 Subject: [PATCH 08/11] Needs both versions for now due to flatsharp? --- .github/workflows/build.yml | 4 +++- .github/workflows/release.yml | 4 +++- .github/workflows/test_release.yml | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 85ea0953..26b1219d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,7 +16,9 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v1 with: - dotnet-version: '10.x.x' + dotnet-version: | + '10.x.x' + '9.x.x' - name: Restore dependencies run: dotnet restore - name: Download Dalamud diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e4a17130..a4442c14 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -15,7 +15,9 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v1 with: - dotnet-version: '10.x.x' + dotnet-version: | + '10.x.x' + '9.x.x' - name: Restore dependencies run: dotnet restore - name: Download Dalamud diff --git a/.github/workflows/test_release.yml b/.github/workflows/test_release.yml index 8af4a8c8..914eb136 100644 --- a/.github/workflows/test_release.yml +++ b/.github/workflows/test_release.yml @@ -15,7 +15,9 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v1 with: - dotnet-version: '10.x.x' + dotnet-version: | + '10.x.x' + '9.x.x' - name: Restore dependencies run: dotnet restore - name: Download Dalamud From 953f243caf7f03a58e67ae75dae3962e89cd55f6 Mon Sep 17 00:00:00 2001 From: Ottermandias Date: Fri, 19 Dec 2025 01:08:18 +0100 Subject: [PATCH 09/11] . --- .github/workflows/build.yml | 8 ++++---- .github/workflows/release.yml | 8 ++++---- .github/workflows/test_release.yml | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 26b1219d..1a61439e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,15 +10,15 @@ jobs: build: runs-on: windows-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v5 with: submodules: recursive - name: Setup .NET - uses: actions/setup-dotnet@v1 + uses: actions/setup-dotnet@v5 with: dotnet-version: | - '10.x.x' - '9.x.x' + 10.x.x + 9.x.x - name: Restore dependencies run: dotnet restore - name: Download Dalamud diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a4442c14..c72b4800 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -9,15 +9,15 @@ jobs: build: runs-on: windows-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v5 with: submodules: recursive - name: Setup .NET - uses: actions/setup-dotnet@v1 + uses: actions/setup-dotnet@v5 with: dotnet-version: | - '10.x.x' - '9.x.x' + 10.x.x + 9.x.x - name: Restore dependencies run: dotnet restore - name: Download Dalamud diff --git a/.github/workflows/test_release.yml b/.github/workflows/test_release.yml index 914eb136..90a8b176 100644 --- a/.github/workflows/test_release.yml +++ b/.github/workflows/test_release.yml @@ -9,15 +9,15 @@ jobs: build: runs-on: windows-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v5 with: submodules: recursive - name: Setup .NET - uses: actions/setup-dotnet@v1 + uses: actions/setup-dotnet@v5 with: dotnet-version: | - '10.x.x' - '9.x.x' + 10.x.x + 9.x.x - name: Restore dependencies run: dotnet restore - name: Download Dalamud From deb3686df5cf1f30365d70b3a2f382863136e953 Mon Sep 17 00:00:00 2001 From: Actions User Date: Fri, 19 Dec 2025 00:12:44 +0000 Subject: [PATCH 10/11] [CI] Updating repo.json for 1.5.1.9 --- repo.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/repo.json b/repo.json index 5b780560..611de678 100644 --- a/repo.json +++ b/repo.json @@ -5,8 +5,8 @@ "Punchline": "Runtime mod loader and manager.", "Description": "Runtime mod loader and manager.", "InternalName": "Penumbra", - "AssemblyVersion": "1.5.1.8", - "TestingAssemblyVersion": "1.5.1.8", + "AssemblyVersion": "1.5.1.9", + "TestingAssemblyVersion": "1.5.1.9", "RepoUrl": "https://github.com/xivdev/Penumbra", "ApplicableVersion": "any", "DalamudApiLevel": 14, @@ -18,9 +18,9 @@ "LoadPriority": 69420, "LoadRequiredState": 2, "LoadSync": true, - "DownloadLinkInstall": "https://github.com/xivdev/Penumbra/releases/download/1.5.1.8/Penumbra.zip", - "DownloadLinkTesting": "https://github.com/xivdev/Penumbra/releases/download/1.5.1.8/Penumbra.zip", - "DownloadLinkUpdate": "https://github.com/xivdev/Penumbra/releases/download/1.5.1.8/Penumbra.zip", + "DownloadLinkInstall": "https://github.com/xivdev/Penumbra/releases/download/1.5.1.9/Penumbra.zip", + "DownloadLinkTesting": "https://github.com/xivdev/Penumbra/releases/download/1.5.1.9/Penumbra.zip", + "DownloadLinkUpdate": "https://github.com/xivdev/Penumbra/releases/download/1.5.1.9/Penumbra.zip", "IconUrl": "https://raw.githubusercontent.com/xivdev/Penumbra/master/images/icon.png" } ] From 9cf7030f87142f6ae446b64601f56f9e849e67ca Mon Sep 17 00:00:00 2001 From: Ottermandias Date: Fri, 19 Dec 2025 01:13:02 +0100 Subject: [PATCH 11/11] ... --- .github/workflows/test_release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_release.yml b/.github/workflows/test_release.yml index 90a8b176..c6b4e459 100644 --- a/.github/workflows/test_release.yml +++ b/.github/workflows/test_release.yml @@ -9,7 +9,7 @@ jobs: build: runs-on: windows-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v5 with: submodules: recursive - name: Setup .NET