diff --git a/Pal.Client/Commands/PalNearCommand.cs b/Pal.Client/Commands/PalNearCommand.cs index 4fe3f0c..7fba1fe 100644 --- a/Pal.Client/Commands/PalNearCommand.cs +++ b/Pal.Client/Commands/PalNearCommand.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; -using Dalamud.Game.ClientState; +using Dalamud.Plugin.Services; using Pal.Client.DependencyInjection; using Pal.Client.Extensions; using Pal.Client.Floors; @@ -12,11 +12,11 @@ namespace Pal.Client.Commands; internal sealed class PalNearCommand : ISubCommand { private readonly Chat _chat; - private readonly ClientState _clientState; + private readonly IClientState _clientState; private readonly TerritoryState _territoryState; private readonly FloorService _floorService; - public PalNearCommand(Chat chat, ClientState clientState, TerritoryState territoryState, + public PalNearCommand(Chat chat, IClientState clientState, TerritoryState territoryState, FloorService floorService) { _chat = chat; diff --git a/Pal.Client/DependencyInjection/Chat.cs b/Pal.Client/DependencyInjection/Chat.cs index d6fdb3d..d975a8e 100644 --- a/Pal.Client/DependencyInjection/Chat.cs +++ b/Pal.Client/DependencyInjection/Chat.cs @@ -1,15 +1,16 @@ -using Dalamud.Game.Gui; -using Dalamud.Game.Text; +using Dalamud.Game.Text; using Dalamud.Game.Text.SeStringHandling; +using Dalamud.Plugin.Services; +using ECommons.DalamudServices.Legacy; using Pal.Client.Properties; namespace Pal.Client.DependencyInjection; internal sealed class Chat { - private readonly ChatGui _chatGui; + private readonly IChatGui _chatGui; - public Chat(ChatGui chatGui) + public Chat(IChatGui chatGui) { _chatGui = chatGui; } diff --git a/Pal.Client/DependencyInjection/ChatService.cs b/Pal.Client/DependencyInjection/ChatService.cs index 39dcbd6..4f5912b 100644 --- a/Pal.Client/DependencyInjection/ChatService.cs +++ b/Pal.Client/DependencyInjection/ChatService.cs @@ -1,10 +1,9 @@ using System; using System.Text; using System.Text.RegularExpressions; -using Dalamud.Data; -using Dalamud.Game.Gui; using Dalamud.Game.Text; using Dalamud.Game.Text.SeStringHandling; +using Dalamud.Plugin.Services; using Lumina.Excel.GeneratedSheets; using Pal.Client.Configuration; using Pal.Client.Floors; @@ -13,14 +12,14 @@ namespace Pal.Client.DependencyInjection; internal sealed class ChatService : IDisposable { - private readonly ChatGui _chatGui; + private readonly IChatGui _chatGui; private readonly TerritoryState _territoryState; private readonly IPalacePalConfiguration _configuration; - private readonly DataManager _dataManager; + private readonly IDataManager _dataManager; private readonly LocalizedChatMessages _localizedChatMessages; - public ChatService(ChatGui chatGui, TerritoryState territoryState, IPalacePalConfiguration configuration, - DataManager dataManager) + public ChatService(IChatGui chatGui, TerritoryState territoryState, IPalacePalConfiguration configuration, + IDataManager dataManager) { _chatGui = chatGui; _territoryState = territoryState; diff --git a/Pal.Client/DependencyInjection/GameHooks.cs b/Pal.Client/DependencyInjection/GameHooks.cs index 7762c6e..2eabfda 100644 --- a/Pal.Client/DependencyInjection/GameHooks.cs +++ b/Pal.Client/DependencyInjection/GameHooks.cs @@ -4,6 +4,7 @@ using Dalamud.Game.ClientState.Objects; using Dalamud.Game.ClientState.Objects.Types; using Dalamud.Hooking; using Dalamud.Memory; +using Dalamud.Plugin.Services; using Dalamud.Utility.Signatures; using Microsoft.Extensions.Logging; using Pal.Client.Floors; @@ -13,7 +14,7 @@ namespace Pal.Client.DependencyInjection; internal sealed unsafe class GameHooks : IDisposable { private readonly ILogger _logger; - private readonly ObjectTable _objectTable; + private readonly IObjectTable _objectTable; private readonly TerritoryState _territoryState; private readonly FrameworkService _frameworkService; @@ -24,7 +25,7 @@ internal sealed unsafe class GameHooks : IDisposable private Hook ActorVfxCreateHook { get; init; } = null!; #pragma warning restore CS0649 - public GameHooks(ILogger logger, ObjectTable objectTable, TerritoryState territoryState, FrameworkService frameworkService) + public GameHooks(ILogger logger, IObjectTable objectTable, TerritoryState territoryState, FrameworkService frameworkService, IGameInteropProvider gameInteropProvider) { _logger = logger; _objectTable = objectTable; @@ -32,7 +33,7 @@ internal sealed unsafe class GameHooks : IDisposable _frameworkService = frameworkService; _logger.LogDebug("Initializing game hooks"); - SignatureHelper.Initialise(this); + gameInteropProvider.InitializeFromAttributes(this); ActorVfxCreateHook.Enable(); _logger.LogDebug("Game hooks initialized"); @@ -49,11 +50,11 @@ internal sealed unsafe class GameHooks : IDisposable /// Especially at higher floors, you're more likely to walk into an undiscovered trap compared to e.g. 51-60, /// and you probably don't want to/can't use sight on every floor - yet the trap location is still useful information. /// - /// Some (but not all) chests also count as BattleChara named 'Trap', however the effect upon opening isn't played via + /// Some (but not all) chests also count as BattleChara named 'Trap', however the effect upon opening isn't played via /// ActorVfxCreate even if they explode (but probably as a Vfx with static location, doesn't matter for here). - /// + /// /// Landmines and luring traps also don't play a VFX attached to their BattleChara. - /// + /// /// otter: vfx/common/eff/dk05th_stdn0t.avfx
/// toading: vfx/common/eff/dk05th_stdn0t.avfx
/// enfeebling: vfx/common/eff/dk05th_stdn0t.avfx
@@ -61,7 +62,7 @@ internal sealed unsafe class GameHooks : IDisposable /// luring: none
/// impeding: vfx/common/eff/dk05ht_ipws0t.avfx (one of silence/pacification)
/// impeding: vfx/common/eff/dk05ht_slet0t.avfx (the other of silence/pacification)
- /// + /// /// It is of course annoying that, when testing, almost all traps are landmines. /// There's also vfx/common/eff/dk01gd_inv0h.avfx for e.g. impeding when you're invulnerable, but not sure if that /// has other trigger conditions. diff --git a/Pal.Client/DependencyInjectionContext.cs b/Pal.Client/DependencyInjectionContext.cs index 5ab26e5..19eaa5e 100644 --- a/Pal.Client/DependencyInjectionContext.cs +++ b/Pal.Client/DependencyInjectionContext.cs @@ -10,6 +10,7 @@ using Dalamud.Game.Command; using Dalamud.Game.Gui; using Dalamud.Interface.Windowing; using Dalamud.Plugin; +using Dalamud.Plugin.Services; using Microsoft.Data.Sqlite; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.DependencyInjection; @@ -33,12 +34,12 @@ namespace Pal.Client; internal sealed class DependencyInjectionContext : IDisposable { public const string DatabaseFileName = "palace-pal.data.sqlite3"; - public static DalamudLoggerProvider LoggerProvider { get; } = new(typeof(Plugin).Assembly); + public static DalamudLoggerProvider LoggerProvider { get; private set; } = null!; /// /// Initialized as temporary logger, will be overriden once context is ready with a logger that supports scopes. /// - private ILogger _logger = LoggerProvider.CreateLogger(); + private ILogger _logger; private readonly string _sqliteConnectionString; private readonly ServiceCollection _serviceCollection = new(); @@ -46,16 +47,20 @@ internal sealed class DependencyInjectionContext : IDisposable public DependencyInjectionContext( DalamudPluginInterface pluginInterface, - ClientState clientState, - GameGui gameGui, - ChatGui chatGui, - ObjectTable objectTable, - Framework framework, - Condition condition, - CommandManager commandManager, - DataManager dataManager, + IClientState clientState, + IGameGui gameGui, + IChatGui chatGui, + IObjectTable objectTable, + IFramework framework, + ICondition condition, + ICommandManager commandManager, + IDataManager dataManager, + IGameInteropProvider gameInteropProvider, + IPluginLog pluginLog, Plugin plugin) { + LoggerProvider = new DalamudLoggerProvider(pluginLog); + _logger = LoggerProvider.CreateLogger(); _logger.LogInformation("Building dalamud service container for {Assembly}", typeof(DependencyInjectionContext).Assembly.FullName); @@ -70,7 +75,7 @@ internal sealed class DependencyInjectionContext : IDisposable .AddFilter("Microsoft.EntityFrameworkCore.Database", LogLevel.Warning) .AddFilter("Grpc", LogLevel.Debug) .ClearProviders() - .AddDalamudLogger(plugin)); + .AddDalamudLogger(pluginLog)); // dalamud _serviceCollection.AddSingleton(plugin); @@ -84,6 +89,7 @@ internal sealed class DependencyInjectionContext : IDisposable _serviceCollection.AddSingleton(condition); _serviceCollection.AddSingleton(commandManager); _serviceCollection.AddSingleton(dataManager); + _serviceCollection.AddSingleton(gameInteropProvider); _serviceCollection.AddSingleton(new WindowSystem(typeof(DependencyInjectionContext).AssemblyQualifiedName)); _sqliteConnectionString = diff --git a/Pal.Client/Floors/FrameworkService.cs b/Pal.Client/Floors/FrameworkService.cs index 19f9fcd..fe63269 100644 --- a/Pal.Client/Floors/FrameworkService.cs +++ b/Pal.Client/Floors/FrameworkService.cs @@ -4,10 +4,8 @@ using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices; using System.Threading.Tasks; -using Dalamud.Game; -using Dalamud.Game.ClientState; -using Dalamud.Game.ClientState.Objects; using Dalamud.Game.ClientState.Objects.Types; +using Dalamud.Plugin.Services; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Pal.Client.Configuration; @@ -24,15 +22,15 @@ internal sealed class FrameworkService : IDisposable { private readonly IServiceProvider _serviceProvider; private readonly ILogger _logger; - private readonly Framework _framework; + private readonly IFramework _framework; private readonly ConfigurationManager _configurationManager; private readonly IPalacePalConfiguration _configuration; - private readonly ClientState _clientState; + private readonly IClientState _clientState; private readonly TerritoryState _territoryState; private readonly FloorService _floorService; private readonly DebugState _debugState; private readonly RenderAdapter _renderAdapter; - private readonly ObjectTable _objectTable; + private readonly IObjectTable _objectTable; private readonly RemoteApi _remoteApi; internal Queue EarlyEventQueue { get; } = new(); @@ -42,15 +40,15 @@ internal sealed class FrameworkService : IDisposable public FrameworkService( IServiceProvider serviceProvider, ILogger logger, - Framework framework, + IFramework framework, ConfigurationManager configurationManager, IPalacePalConfiguration configuration, - ClientState clientState, + IClientState clientState, TerritoryState territoryState, FloorService floorService, DebugState debugState, RenderAdapter renderAdapter, - ObjectTable objectTable, + IObjectTable objectTable, RemoteApi remoteApi) { _serviceProvider = serviceProvider; @@ -79,7 +77,7 @@ internal sealed class FrameworkService : IDisposable private void OnSaved(object? sender, IPalacePalConfiguration? config) => EarlyEventQueue.Enqueue(new QueuedConfigUpdate()); - private void OnUpdate(Framework framework) + private void OnUpdate(IFramework framework) { if (_configuration.FirstUse) return; diff --git a/Pal.Client/Floors/ObjectTableDebug.cs b/Pal.Client/Floors/ObjectTableDebug.cs index 605d0ef..912065f 100644 --- a/Pal.Client/Floors/ObjectTableDebug.cs +++ b/Pal.Client/Floors/ObjectTableDebug.cs @@ -1,12 +1,10 @@ using System; using System.Numerics; using System.Runtime.InteropServices; -using Dalamud.Game.ClientState; -using Dalamud.Game.ClientState.Objects; using Dalamud.Game.ClientState.Objects.SubKinds; using Dalamud.Game.ClientState.Objects.Types; -using Dalamud.Game.Gui; using Dalamud.Plugin; +using Dalamud.Plugin.Services; using ImGuiNET; namespace Pal.Client.Floors; @@ -21,11 +19,11 @@ internal sealed class ObjectTableDebug : IDisposable public const string FeatureName = nameof(ObjectTableDebug); private readonly DalamudPluginInterface _pluginInterface; - private readonly ObjectTable _objectTable; - private readonly GameGui _gameGui; - private readonly ClientState _clientState; + private readonly IObjectTable _objectTable; + private readonly IGameGui _gameGui; + private readonly IClientState _clientState; - public ObjectTableDebug(DalamudPluginInterface pluginInterface, ObjectTable objectTable, GameGui gameGui, ClientState clientState) + public ObjectTableDebug(DalamudPluginInterface pluginInterface, IObjectTable objectTable, IGameGui gameGui, IClientState clientState) { _pluginInterface = pluginInterface; _objectTable = objectTable; diff --git a/Pal.Client/Floors/TerritoryState.cs b/Pal.Client/Floors/TerritoryState.cs index 2ba1071..e3f5b25 100644 --- a/Pal.Client/Floors/TerritoryState.cs +++ b/Pal.Client/Floors/TerritoryState.cs @@ -1,15 +1,15 @@ -using Dalamud.Game.ClientState; -using Dalamud.Game.ClientState.Conditions; +using Dalamud.Game.ClientState.Conditions; +using Dalamud.Plugin.Services; using Pal.Common; namespace Pal.Client.Floors; public sealed class TerritoryState { - private readonly ClientState _clientState; - private readonly Condition _condition; + private readonly IClientState _clientState; + private readonly ICondition _condition; - public TerritoryState(ClientState clientState, Condition condition) + public TerritoryState(IClientState clientState, ICondition condition) { _clientState = clientState; _condition = condition; diff --git a/Pal.Client/Pal.Client.csproj b/Pal.Client/Pal.Client.csproj index 1e7f1b1..6a56c76 100644 --- a/Pal.Client/Pal.Client.csproj +++ b/Pal.Client/Pal.Client.csproj @@ -37,19 +37,19 @@ - - - - + + + + all - + all runtime; build; native; contentfiles; analyzers; buildtransitive - - + + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/Pal.Client/Plugin.cs b/Pal.Client/Plugin.cs index 33cd44e..e8e002f 100644 --- a/Pal.Client/Plugin.cs +++ b/Pal.Client/Plugin.cs @@ -5,12 +5,10 @@ using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; -using Dalamud.Game; -using Dalamud.Game.ClientState; using Dalamud.Game.Command; -using Dalamud.Game.Gui; using Dalamud.Interface.Windowing; using Dalamud.Plugin; +using Dalamud.Plugin.Services; using ECommons; using ECommons.DalamudServices; using Microsoft.Extensions.DependencyInjection; @@ -33,10 +31,10 @@ internal sealed class Plugin : IDalamudPlugin private readonly CancellationTokenSource _initCts = new(); private readonly DalamudPluginInterface _pluginInterface; - private readonly CommandManager _commandManager; - private readonly ClientState _clientState; - private readonly ChatGui _chatGui; - private readonly Framework _framework; + private readonly ICommandManager _commandManager; + private readonly IClientState _clientState; + private readonly IChatGui _chatGui; + private readonly IFramework _framework; private readonly TaskCompletionSource _rootScopeCompletionSource = new(); private ELoadState _loadState = ELoadState.Initializing; @@ -49,10 +47,10 @@ internal sealed class Plugin : IDalamudPlugin public Plugin( DalamudPluginInterface pluginInterface, - CommandManager commandManager, - ClientState clientState, - ChatGui chatGui, - Framework framework) + ICommandManager commandManager, + IClientState clientState, + IChatGui chatGui, + IFramework framework) { _pluginInterface = pluginInterface; _commandManager = commandManager; @@ -134,7 +132,7 @@ internal sealed class Plugin : IDalamudPlugin _loginAction = loginAction; } - private void Login(object? sender, EventArgs eventArgs) + private void Login() { _loginAction?.Invoke(); _loginAction = null; diff --git a/Pal.Client/Rendering/SimpleRenderer.cs b/Pal.Client/Rendering/SimpleRenderer.cs index 4d11765..9bafc26 100644 --- a/Pal.Client/Rendering/SimpleRenderer.cs +++ b/Pal.Client/Rendering/SimpleRenderer.cs @@ -3,19 +3,17 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Numerics; -using Dalamud.Game.ClientState; -using Dalamud.Game.Gui; -using Dalamud.Interface; +using Dalamud.Interface.Utility; +using Dalamud.Plugin.Services; using ImGuiNET; using Pal.Client.Configuration; -using Pal.Client.DependencyInjection; using Pal.Client.Floors; namespace Pal.Client.Rendering; /// -/// Simple renderer that only draws basic stuff. -/// +/// Simple renderer that only draws basic stuff. +/// /// This is based on what SliceIsRight uses, and what PalacePal used before it was /// remade into PalacePal (which is the third or fourth iteration on the same idea /// I made, just with a clear vision). @@ -24,13 +22,13 @@ internal sealed class SimpleRenderer : IRenderer, IDisposable { private const int SegmentCount = 20; - private readonly ClientState _clientState; - private readonly GameGui _gameGui; + private readonly IClientState _clientState; + private readonly IGameGui _gameGui; private readonly IPalacePalConfiguration _configuration; private readonly TerritoryState _territoryState; private readonly ConcurrentDictionary _layers = new(); - public SimpleRenderer(ClientState clientState, GameGui gameGui, IPalacePalConfiguration configuration, + public SimpleRenderer(IClientState clientState, IGameGui gameGui, IPalacePalConfiguration configuration, TerritoryState territoryState) { _clientState = clientState; @@ -181,7 +179,7 @@ internal sealed class SimpleRenderer : IRenderer, IDisposable public required IReadOnlyList Elements { get; init; } public long ExpiresAt { get; init; } = long.MaxValue; - public bool IsValid(ClientState clientState) => + public bool IsValid(IClientState clientState) => TerritoryType == clientState.TerritoryType && ExpiresAt >= Environment.TickCount64; public void Dispose() diff --git a/Pal.Client/Rendering/SplatoonRenderer.cs b/Pal.Client/Rendering/SplatoonRenderer.cs index fe708e1..df23641 100644 --- a/Pal.Client/Rendering/SplatoonRenderer.cs +++ b/Pal.Client/Rendering/SplatoonRenderer.cs @@ -4,8 +4,8 @@ using System.Collections.Generic; using System.Linq; using System.Numerics; using System.Reflection; -using Dalamud.Game.ClientState; using Dalamud.Plugin; +using Dalamud.Plugin.Services; using ECommons; using ECommons.Reflection; using ECommons.Schedulers; @@ -23,7 +23,7 @@ internal sealed class SplatoonRenderer : IRenderer, IDisposable private readonly ILogger _logger; private readonly DebugState _debugState; - private readonly ClientState _clientState; + private readonly IClientState _clientState; private readonly Chat _chat; public SplatoonRenderer( @@ -31,7 +31,7 @@ internal sealed class SplatoonRenderer : IRenderer, IDisposable DalamudPluginInterface pluginInterface, IDalamudPlugin dalamudPlugin, DebugState debugState, - ClientState clientState, + IClientState clientState, Chat chat) { _logger = logger; diff --git a/Pal.Client/packages.lock.json b/Pal.Client/packages.lock.json index 613bc5d..957f82e 100644 --- a/Pal.Client/packages.lock.json +++ b/Pal.Client/packages.lock.json @@ -4,18 +4,18 @@ "net7.0-windows7.0": { "Dalamud.Extensions.MicrosoftLogging": { "type": "Direct", - "requested": "[1.0.0, )", - "resolved": "1.0.0", - "contentHash": "nPjMrT9n9GJ+TYF1lyVhlvhmFyN4ajMX2ccclgyMc8MNpOGZwxrJ4VEtrUUk7UkuX2wAhtnNsjrcf5sER3/CbA==", + "requested": "[2.0.0, )", + "resolved": "2.0.0", + "contentHash": "qp2idn5GuPouUxHHFytMrorbhlcupsgPdO87HjxlBfTY+JID+qoTfPmA5V6HBP1a4DuXGPbk4JtoO/hMmnQrtw==", "dependencies": { "Microsoft.Extensions.Logging": "7.0.0" } }, "DalamudPackager": { "type": "Direct", - "requested": "[2.1.11, )", - "resolved": "2.1.11", - "contentHash": "9qlAWoRRTiL/geAvuwR/g6Bcbrd/bJJgVnB/RurBiyKs6srsP0bvpoo8IK+Eg8EA6jWeM6/YJWs66w4FIAzqPw==" + "requested": "[2.1.12, )", + "resolved": "2.1.12", + "contentHash": "Sc0PVxvgg4NQjcI8n10/VfUQBAS4O+Fw2pZrAqBdRMbthYGeogzu5+xmIGCGmsEZ/ukMOBuAqiNiB5qA3MRalg==" }, "GitInfo": { "type": "Direct", @@ -25,43 +25,43 @@ }, "Google.Protobuf": { "type": "Direct", - "requested": "[3.22.1, )", - "resolved": "3.22.1", - "contentHash": "Ul4gVJWLya83Z8/n3+O4QKhD8ukCCwNLDyoWpUdJSnmzxRe8o3pWiuCzzvN2z/LVH60nozlKpTzhJo3ctI+G4Q==" + "requested": "[3.24.3, )", + "resolved": "3.24.3", + "contentHash": "HX8KHRTJPUcC4KOvEobKBNlMpHGYmK+3X73xPq+OUE2M5dLYvpGhp9qQQWt2jASgTUbxI1yHaGeBqFYiECBupw==" }, "Grpc.Net.Client": { "type": "Direct", - "requested": "[2.52.0, )", - "resolved": "2.52.0", - "contentHash": "hWVH9g/Nnjz40ni//2S8UIOyEmhueQREoZIkD0zKHEPqLxXcNlbp4eebXIOicZtkwDSx0TFz9NpkbecEDn6rBw==", + "requested": "[2.57.0, )", + "resolved": "2.57.0", + "contentHash": "vVDW0ePnaH9Na+wjm64vpzdj05JEjOCmAXUlANVc+s3hBBreEizfbmlzWPjsL6ZskaSrA59Ckb0J2l1HMvtMHQ==", "dependencies": { - "Grpc.Net.Common": "2.52.0", - "Microsoft.Extensions.Logging.Abstractions": "3.0.3" + "Grpc.Net.Common": "2.57.0", + "Microsoft.Extensions.Logging.Abstractions": "6.0.0" } }, "Grpc.Tools": { "type": "Direct", - "requested": "[2.53.0, )", - "resolved": "2.53.0", - "contentHash": "vm8iRSAF/4PN9g555iYZwhCQptSE4cZ8xk5W1TQ+JcHwaHSrBhD+P6H4l0+SqqfzuX7sGpjjOMQJXHSyrERTgw==" + "requested": "[2.58.0, )", + "resolved": "2.58.0", + "contentHash": "jWGgCVsBiBozXqKNyGXXumqDrJiu7PLShPul0UGq6II6DV1fvcCLXtQpL/N/7UJ8cyyZLqru1/DRPe/NCkw5NQ==" }, "Microsoft.EntityFrameworkCore.Sqlite": { "type": "Direct", - "requested": "[7.0.4, )", - "resolved": "7.0.4", - "contentHash": "d1cIR5upwzTZmzycqWEoxfso5b3qD0G43IeECtfeMSPoG8JD4OJHHtbun0wS9RzwAORMa/4Zb3vuogTYY3mtaQ==", + "requested": "[7.0.11, )", + "resolved": "7.0.11", + "contentHash": "DFev72BUsvd+QI5aH+uwoXM8u3P1GwTsLToORj6CGQJrkd+8UukuSsCXOWxj0ThiGC11btcmjjFx4FGuB3F28g==", "dependencies": { - "Microsoft.EntityFrameworkCore.Sqlite.Core": "7.0.4", + "Microsoft.EntityFrameworkCore.Sqlite.Core": "7.0.11", "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" } }, "Microsoft.EntityFrameworkCore.Tools": { "type": "Direct", - "requested": "[7.0.4, )", - "resolved": "7.0.4", - "contentHash": "58hDB+ENGisuSjJBl1RBHL9qzFJTukFSQFl/wCU8/3ApcOH/rPrRG4PWThiJTmfHRmh8H8HExdYbtkv7wa7BLg==", + "requested": "[7.0.11, )", + "resolved": "7.0.11", + "contentHash": "dhNLVQsMi6E4XEkVNmxbaNkLd06Q0ipwgiBz9k9rSjzaNJQVUA+/N6lsKRWXjFjTPgsaVpos+KN5Iimy6TQ2Yg==", "dependencies": { - "Microsoft.EntityFrameworkCore.Design": "7.0.4" + "Microsoft.EntityFrameworkCore.Design": "7.0.11" } }, "Microsoft.Extensions.Logging": { @@ -84,18 +84,15 @@ }, "Grpc.Core.Api": { "type": "Transitive", - "resolved": "2.52.0", - "contentHash": "SQiPyBczG4vKPmI6Fd+O58GcxxDSFr6nfRAJuBDUNj+PgdokhjWJvZE/La1c09AkL2FVm/jrDloG89nkzmVF7A==", - "dependencies": { - "System.Memory": "4.5.3" - } + "resolved": "2.57.0", + "contentHash": "48jpfMyYdhaPS6PGnk7sEqSO3+c/w11ahY+a33ymo0BsQEsBVIoJoS5xMsl5RzBlpKY41PnN+qJGMm3VyE5OQg==" }, "Grpc.Net.Common": { "type": "Transitive", - "resolved": "2.52.0", - "contentHash": "di9qzpdx525IxumZdYmu6sG2y/gXJyYeZ1ruFUzB9BJ1nj4kU1/dTAioNCMt1VLRvNVDqh8S8B1oBdKhHJ4xRg==", + "resolved": "2.57.0", + "contentHash": "babJpsAwVH3lPjg8cvWGqW+Fos1RN+cqudfkW2EyB2DK2v5yjD2axZ1Uay6kR6ec2/p9ljodktrfoJ2lJ/pwnQ==", "dependencies": { - "Grpc.Core.Api": "2.52.0" + "Grpc.Core.Api": "2.57.0" } }, "Humanizer.Core": { @@ -105,19 +102,19 @@ }, "Microsoft.Data.Sqlite.Core": { "type": "Transitive", - "resolved": "7.0.4", - "contentHash": "AUBM1KZ7EvmkYhC/ECXL4cjx+q55DJ3lmSf0NwAyRNArubNPRdroGono5uN6aW7Kqp+IUZwEK0Ywd1Gh7FDM2A==", + "resolved": "7.0.11", + "contentHash": "s7YzfqaP0lsfT2eUEYBHR+bP51fPIv1Xt02eh36/8be5MAYj/UaN8rX+GM5jc3dUqwZSxAsxkaU6ZlllqYtBhQ==", "dependencies": { "SQLitePCLRaw.core": "2.1.4" } }, "Microsoft.EntityFrameworkCore": { "type": "Transitive", - "resolved": "7.0.4", - "contentHash": "eNcsY3rft5ERJJcen80Jyg57EScjWZmvhwmFLYXmEOTdVqHG+wQZiMOXnO1b5RH3u2qTQq+Tpci7KGfLAG5Gtg==", + "resolved": "7.0.11", + "contentHash": "r7YGITjQ7v1hYtUXIavjSx+T1itKVPUFAIBN7HaKNjbR8x+gep8w9H3NEchglJOh1woZR4b2MhbSo2YFRZwZDg==", "dependencies": { - "Microsoft.EntityFrameworkCore.Abstractions": "7.0.4", - "Microsoft.EntityFrameworkCore.Analyzers": "7.0.4", + "Microsoft.EntityFrameworkCore.Abstractions": "7.0.11", + "Microsoft.EntityFrameworkCore.Analyzers": "7.0.11", "Microsoft.Extensions.Caching.Memory": "7.0.0", "Microsoft.Extensions.DependencyInjection": "7.0.0", "Microsoft.Extensions.Logging": "7.0.0" @@ -125,41 +122,41 @@ }, "Microsoft.EntityFrameworkCore.Abstractions": { "type": "Transitive", - "resolved": "7.0.4", - "contentHash": "6GbYvs4L5oFpYpMzwF05kdDgvX09UmMX7MpDtDlGI5ymijFwquwv+yvdijbtodOuu0yLUpc4n71x6eBdJ8v1xQ==" + "resolved": "7.0.11", + "contentHash": "IoOnhycZ0/VtLowf0HgB0cujxwksokzkS3/5108AHOcbntHUTqwxtCjG4E4FCly/45G+mxb+4PxBdFZhA49lwQ==" }, "Microsoft.EntityFrameworkCore.Analyzers": { "type": "Transitive", - "resolved": "7.0.4", - "contentHash": "YRD4bViuaEPEsaBIL52DzXGzLCt3jYoE3wztYEW1QZYDl89hQ+ca0nvBO2mnMHmCXpU/2wlErrUyDp4x5B/3mg==" + "resolved": "7.0.11", + "contentHash": "Qexum5safSSfijx6P1QSq5bVJPPTM/uf7lQmpL/shkiozEC/0FzqNaVUfFpbNN8zsO1jMFYbeDMF4cxJMlTT9w==" }, "Microsoft.EntityFrameworkCore.Design": { "type": "Transitive", - "resolved": "7.0.4", - "contentHash": "LI/ML3w17ap5IUmEKOPVnGJYi/XSDJW3Rf42utNF0e1tidmKtSkjwoTqIKLt2hE+jQJrlzeaqu5YiqdoFWVuZw==", + "resolved": "7.0.11", + "contentHash": "DaykA+XkNNiznnJq8HWVl4jpBycL9/W8NkonoBz7eIrxfU9Q4zH4iPztlvOkJugYCNPS29frPnju3RY72FoPNQ==", "dependencies": { "Humanizer.Core": "2.14.1", - "Microsoft.EntityFrameworkCore.Relational": "7.0.4", + "Microsoft.EntityFrameworkCore.Relational": "7.0.11", "Microsoft.Extensions.DependencyModel": "7.0.0", "Mono.TextTemplating": "2.2.1" } }, "Microsoft.EntityFrameworkCore.Relational": { "type": "Transitive", - "resolved": "7.0.4", - "contentHash": "L41+VonK6L0IurFHopoe5yY+m3MD26OMocKLPPR/XKxnazzZUcGPz0IGJpVnwpZyKVPfEIAnD5vmm60meYr1NA==", + "resolved": "7.0.11", + "contentHash": "yHEEyah1XARStV1SJOsdKj8ieoMCZ0MkNuQaLfWONMWmbqwuDohfGQZk/FuzdT4aO/lJrUYiXbBSFv0ACzphEw==", "dependencies": { - "Microsoft.EntityFrameworkCore": "7.0.4", + "Microsoft.EntityFrameworkCore": "7.0.11", "Microsoft.Extensions.Configuration.Abstractions": "7.0.0" } }, "Microsoft.EntityFrameworkCore.Sqlite.Core": { "type": "Transitive", - "resolved": "7.0.4", - "contentHash": "FeuV57+U4A4DO018Jy5Wkv0uYNZhyFVUUdwyVYz8TMghsZAj+3i+fOeFtD/jAWWMzDOFOF7eMni3YqLA+ufu9Q==", + "resolved": "7.0.11", + "contentHash": "2fAFxXMiMBq8h6AjR4gFi/fAlyIT6vIxUTXA+1I7qX2chLNvU+DABUCupsyQERWNaZmcfgnQMjgS2UiKi8pZVA==", "dependencies": { - "Microsoft.Data.Sqlite.Core": "7.0.4", - "Microsoft.EntityFrameworkCore.Relational": "7.0.4", + "Microsoft.Data.Sqlite.Core": "7.0.11", + "Microsoft.EntityFrameworkCore.Relational": "7.0.11", "Microsoft.Extensions.DependencyModel": "7.0.0" } }, diff --git a/Pal.Server b/Pal.Server index 2fe1f36..4326872 160000 --- a/Pal.Server +++ b/Pal.Server @@ -1 +1 @@ -Subproject commit 2fe1f36669b78f876e27bcb48d66e4b005723ba1 +Subproject commit 43268725eb4fc0ccef31af61a1a917832f83d3fd diff --git a/Pal.Server.Tests b/Pal.Server.Tests index 54d1d77..d67d342 160000 --- a/Pal.Server.Tests +++ b/Pal.Server.Tests @@ -1 +1 @@ -Subproject commit 54d1d779f90fef56c3001de1eafe29d297a538c9 +Subproject commit d67d342f395da8447131e389143d9683c0bdfbae diff --git a/nuget.config b/nuget.config new file mode 100644 index 0000000..d9e77cc --- /dev/null +++ b/nuget.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/vendor/ECommons b/vendor/ECommons index d9dc8c1..1ad0dec 160000 --- a/vendor/ECommons +++ b/vendor/ECommons @@ -1 +1 @@ -Subproject commit d9dc8c1c6e914cf37ad47703579d85094246f2e5 +Subproject commit 1ad0decf6d6a169dc0d5779b1c40a5ca733a51d0