From 788e60f45cb4000af52f597632eb91dc1e1962bd Mon Sep 17 00:00:00 2001 From: Dzejkop Date: Tue, 30 Oct 2018 10:13:27 +0100 Subject: [PATCH 1/3] Added the capabilities field in patcher manifest --- Assets/PatchKit Patcher/Editor/Manifest.cs | 5 ++- .../Editor/PatcherManifestCreator.cs | 38 ++++++++++++++++++- CHANGELOG.md | 1 + 3 files changed, 42 insertions(+), 2 deletions(-) diff --git a/Assets/PatchKit Patcher/Editor/Manifest.cs b/Assets/PatchKit Patcher/Editor/Manifest.cs index 4f4a5554..fad1dfdf 100644 --- a/Assets/PatchKit Patcher/Editor/Manifest.cs +++ b/Assets/PatchKit Patcher/Editor/Manifest.cs @@ -23,6 +23,9 @@ public struct Argument public string Target; [JsonProperty(PropertyName = "target_arguments")] - public Argument[] Arguments; + public Argument[] Arguments; + + [JsonProperty(PropertyName = "capabilities")] + public string[] Capabilities; } } \ No newline at end of file diff --git a/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs b/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs index 610382fb..0e50f287 100644 --- a/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs +++ b/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs @@ -8,7 +8,33 @@ namespace PatchKit.Unity.Editor { public static class PatcherManifestCreator { - private const int ManifestVersion = 3; + private const int ManifestVersion = 4; + + [MenuItem("Tools/PatchKit Patcher/Manifest/Windows")] + private static void Test(Manifest manifest) + { + string targetLocation = EditorUtility.SaveFilePanel("Choose test manifest location", "", "patcher.manifest", "test"); + + File.WriteAllText(targetLocation, JsonConvert.SerializeObject(manifest, Formatting.Indented)); + } + + [MenuItem("Tools/PatchKit Patcher/Manifest/Windows")] + private static void TestWindows() + { + Test(WindowsManifest("BUILD_PATH")); + } + + [MenuItem("Tools/PatchKit Patcher/Manifest/Linux")] + private static void TestLinux() + { + Test(LinuxManifest("BUILD_PATH")); + } + + [MenuItem("Tools/PatchKit Patcher/Manifest/Osx")] + private static void TestOsx() + { + Test(OsxManifest("BUILD_PATH")); + } [PostProcessBuild, UsedImplicitly] private static void PostProcessBuild(BuildTarget buildTarget, string buildPath) @@ -45,6 +71,13 @@ private static Manifest.Argument CreateManifestAgument(params string[] args) return new Manifest.Argument { Value = args }; } + private static string[] Capabilities() + { + return new []{ + "pack1_compression_lzma2", + }; + } + private static Manifest LinuxManifest(string buildPath) { string patcherExe = Path.GetFileName(buildPath); @@ -58,6 +91,7 @@ private static Manifest LinuxManifest(string buildPath) Version = ManifestVersion, Target = "sh", + Capabilities = Capabilities(), Arguments = new Manifest.Argument[] { CreateManifestAgument(launchScriptPath), CreateManifestAgument("--exedir={exedir}"), @@ -79,6 +113,7 @@ private static Manifest WindowsManifest(string buildPath) Version = ManifestVersion, Target = "{exedir}/" + targetFile, + Capabilities = Capabilities(), Arguments = new Manifest.Argument[] { CreateManifestAgument("--installdir", "{installdir}"), CreateManifestAgument("--lockfile", "{lockfile}"), @@ -97,6 +132,7 @@ private static Manifest OsxManifest(string buildPath) Version = ManifestVersion, Target = "open", + Capabilities = Capabilities(), Arguments = new Manifest.Argument[] { CreateManifestAgument("{exedir}/" + targetFile), CreateManifestAgument("--args"), diff --git a/CHANGELOG.md b/CHANGELOG.md index 14f0fa3c..6a80507c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). - Handling failures when accessing the file system - Attaching "system-info" to Sentry events as tag - Support for PK_OFFICIAL define +- capabilities field in the manifest ### Changed - Linux launch script From 984c33198383c7a729938cfd1e7139490c1f43cb Mon Sep 17 00:00:00 2001 From: Dzejkop Date: Wed, 14 Nov 2018 11:34:45 +0100 Subject: [PATCH 2/3] Refactoring --- .../Editor/PatcherManifestCreator.cs | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs b/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs index 0e50f287..a97d3971 100644 --- a/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs +++ b/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs @@ -10,8 +10,7 @@ public static class PatcherManifestCreator { private const int ManifestVersion = 4; - [MenuItem("Tools/PatchKit Patcher/Manifest/Windows")] - private static void Test(Manifest manifest) + private static void SaveTestManifest(Manifest manifest) { string targetLocation = EditorUtility.SaveFilePanel("Choose test manifest location", "", "patcher.manifest", "test"); @@ -19,21 +18,21 @@ private static void Test(Manifest manifest) } [MenuItem("Tools/PatchKit Patcher/Manifest/Windows")] - private static void TestWindows() + private static void CreateTestManifestWindows() { - Test(WindowsManifest("BUILD_PATH")); + SaveTestManifest(WindowsManifest("BUILD_PATH")); } [MenuItem("Tools/PatchKit Patcher/Manifest/Linux")] - private static void TestLinux() + private static void CreateTestManifestLinux() { - Test(LinuxManifest("BUILD_PATH")); + SaveTestManifest(LinuxManifest("BUILD_PATH")); } [MenuItem("Tools/PatchKit Patcher/Manifest/Osx")] - private static void TestOsx() + private static void CreateTestManifestOsx() { - Test(OsxManifest("BUILD_PATH")); + SaveTestManifest(OsxManifest("BUILD_PATH")); } [PostProcessBuild, UsedImplicitly] From dfe2e249efbef972167f1b5085fbc3d762a81c55 Mon Sep 17 00:00:00 2001 From: Tomasz Jaworski Date: Sat, 24 Nov 2018 01:41:10 +0100 Subject: [PATCH 3/3] Hide test manifest functions under internal menu --- Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs b/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs index a97d3971..a5323b72 100644 --- a/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs +++ b/Assets/PatchKit Patcher/Editor/PatcherManifestCreator.cs @@ -17,19 +17,19 @@ private static void SaveTestManifest(Manifest manifest) File.WriteAllText(targetLocation, JsonConvert.SerializeObject(manifest, Formatting.Indented)); } - [MenuItem("Tools/PatchKit Patcher/Manifest/Windows")] + [MenuItem("Tools/PatchKit Patcher Internal/Manifest/Windows")] private static void CreateTestManifestWindows() { SaveTestManifest(WindowsManifest("BUILD_PATH")); } - [MenuItem("Tools/PatchKit Patcher/Manifest/Linux")] + [MenuItem("Tools/PatchKit Patcher Internal/Manifest/Linux")] private static void CreateTestManifestLinux() { SaveTestManifest(LinuxManifest("BUILD_PATH")); } - [MenuItem("Tools/PatchKit Patcher/Manifest/Osx")] + [MenuItem("Tools/PatchKit Patcher Internal/Manifest/Osx")] private static void CreateTestManifestOsx() { SaveTestManifest(OsxManifest("BUILD_PATH")); @@ -143,4 +143,4 @@ private static Manifest OsxManifest(string buildPath) }; } } -} \ No newline at end of file +}