diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 3589001c..9e4085ba 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -24,11 +24,11 @@ jobs:
runs-on: windows-latest
steps:
- uses: actions/checkout@v1
- - name: Cache .tmp, ~/.nuget/packages
+ - name: Cache .nuke/temp, ~/.nuget/packages
uses: actions/cache@v2
with:
path: |
- .tmp
+ .nuke/temp
~/.nuget/packages
key: ${{ runner.os }}-${{ hashFiles('**/global.json', '**/*.csproj') }}
- name: Run './build.cmd Package'
diff --git a/.nuke b/.nuke
deleted file mode 100644
index 5e984687..00000000
--- a/.nuke
+++ /dev/null
@@ -1 +0,0 @@
-ImageMagitek.sln
\ No newline at end of file
diff --git a/.nuke/build.schema.json b/.nuke/build.schema.json
new file mode 100644
index 00000000..6854200c
--- /dev/null
+++ b/.nuke/build.schema.json
@@ -0,0 +1,125 @@
+{
+ "$schema": "http://json-schema.org/draft-04/schema#",
+ "title": "Build Schema",
+ "$ref": "#/definitions/build",
+ "definitions": {
+ "build": {
+ "type": "object",
+ "properties": {
+ "Configuration": {
+ "type": "string",
+ "description": "Configuration to build - Default is 'Debug' (local) or 'Release' (server)",
+ "enum": [
+ "Debug",
+ "Release"
+ ]
+ },
+ "Continue": {
+ "type": "boolean",
+ "description": "Indicates to continue a previously failed build attempt"
+ },
+ "Help": {
+ "type": "boolean",
+ "description": "Shows the help text for this build assembly"
+ },
+ "Host": {
+ "type": "string",
+ "description": "Host for execution. Default is 'automatic'",
+ "enum": [
+ "AppVeyor",
+ "AzurePipelines",
+ "Bamboo",
+ "Bitrise",
+ "GitHubActions",
+ "GitLab",
+ "Jenkins",
+ "Rider",
+ "SpaceAutomation",
+ "TeamCity",
+ "Terminal",
+ "TravisCI",
+ "VisualStudio",
+ "VSCode"
+ ]
+ },
+ "NoLogo": {
+ "type": "boolean",
+ "description": "Disables displaying the NUKE logo"
+ },
+ "Partition": {
+ "type": "string",
+ "description": "Partition to use on CI"
+ },
+ "Plan": {
+ "type": "boolean",
+ "description": "Shows the execution plan (HTML)"
+ },
+ "Profile": {
+ "type": "array",
+ "description": "Defines the profiles to load",
+ "items": {
+ "type": "string"
+ }
+ },
+ "Root": {
+ "type": "string",
+ "description": "Root directory during build execution"
+ },
+ "Skip": {
+ "type": "array",
+ "description": "List of targets to be skipped. Empty list skips all dependencies",
+ "items": {
+ "type": "string",
+ "enum": [
+ "Clean",
+ "Compile",
+ "Package",
+ "PublishTileShop",
+ "PublishTileShopCLI",
+ "Restore",
+ "Test"
+ ]
+ }
+ },
+ "Solution": {
+ "type": "string",
+ "description": "Path to a solution file that is automatically loaded"
+ },
+ "Target": {
+ "type": "array",
+ "description": "List of targets to be invoked. Default is '{default_target}'",
+ "items": {
+ "type": "string",
+ "enum": [
+ "Clean",
+ "Compile",
+ "Package",
+ "PublishTileShop",
+ "PublishTileShopCLI",
+ "Restore",
+ "Test"
+ ]
+ }
+ },
+ "TileShopCLIVersion": {
+ "type": "string",
+ "description": "TileShopCLI version"
+ },
+ "TileShopVersion": {
+ "type": "string",
+ "description": "TileShop version"
+ },
+ "Verbosity": {
+ "type": "string",
+ "description": "Logging verbosity during build execution. Default is 'Normal'",
+ "enum": [
+ "Minimal",
+ "Normal",
+ "Quiet",
+ "Verbose"
+ ]
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/.nuke/parameters.json b/.nuke/parameters.json
new file mode 100644
index 00000000..0998d659
--- /dev/null
+++ b/.nuke/parameters.json
@@ -0,0 +1,4 @@
+{
+ "$schema": "./build.schema.json",
+ "Solution": "ImageMagitek.sln"
+}
\ No newline at end of file
diff --git a/ImageMagitek.Benchmarks/ImageMagitek.Benchmarks.csproj b/ImageMagitek.Benchmarks/ImageMagitek.Benchmarks.csproj
index 1f383237..30748697 100644
--- a/ImageMagitek.Benchmarks/ImageMagitek.Benchmarks.csproj
+++ b/ImageMagitek.Benchmarks/ImageMagitek.Benchmarks.csproj
@@ -6,7 +6,7 @@
-
+
diff --git a/ImageMagitek.Build/ImageMagitek.Build.csproj b/ImageMagitek.Build/ImageMagitek.Build.csproj
index f69846ae..375d53e8 100644
--- a/ImageMagitek.Build/ImageMagitek.Build.csproj
+++ b/ImageMagitek.Build/ImageMagitek.Build.csproj
@@ -7,14 +7,11 @@
CS0649;CS0169
..
..
+ 1
-
-
-
-
-
+
diff --git a/ImageMagitek.Services/ImageMagitek.Services.csproj b/ImageMagitek.Services/ImageMagitek.Services.csproj
index fe07c405..25e1aa60 100644
--- a/ImageMagitek.Services/ImageMagitek.Services.csproj
+++ b/ImageMagitek.Services/ImageMagitek.Services.csproj
@@ -8,10 +8,12 @@
https://github.com/stevemonaco/ImageMagitek
2021
https://github.com/stevemonaco/ImageMagitek
+ 0.990.0.0
+ 0.990.0.0
-
+
diff --git a/ImageMagitek.UnitTests/ImageMagitek.UnitTests.csproj b/ImageMagitek.UnitTests/ImageMagitek.UnitTests.csproj
index 84d2d7f4..3f32bc80 100644
--- a/ImageMagitek.UnitTests/ImageMagitek.UnitTests.csproj
+++ b/ImageMagitek.UnitTests/ImageMagitek.UnitTests.csproj
@@ -5,10 +5,10 @@
-
+
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/ImageMagitek/ImageMagitek.csproj b/ImageMagitek/ImageMagitek.csproj
index fe039263..2fe672d1 100644
--- a/ImageMagitek/ImageMagitek.csproj
+++ b/ImageMagitek/ImageMagitek.csproj
@@ -3,9 +3,11 @@
net5.0
true
- 0.981
+ 0.990
Steve Monaco
2021
+ 0.990.0.0
+ 0.990.0.0
diff --git a/TileShop.CLI/Program.cs b/TileShop.CLI/Program.cs
index 5387184c..7204cf9f 100644
--- a/TileShop.CLI/Program.cs
+++ b/TileShop.CLI/Program.cs
@@ -21,8 +21,9 @@ class Program
static int Main(string[] args)
{
- string version = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).ProductVersion;
- Console.WriteLine($"TileShopCLI v{version} by Klarth");
+ //string assemblyLocation = Assembly.GetExecutingAssembly().Location;
+ //string version = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).ProductVersion;
+ //Console.WriteLine($"TileShopCLI v{version} by Klarth");
var verbs = LoadVerbs();
@@ -84,7 +85,7 @@ private static bool BootstrapTileShop(string logFileName)
var settings = bootstrapper.ReadConfiguration(settingsFileName);
var codecService = bootstrapper.CreateCodecService(codecPath, codecSchemaFileName);
var paletteService = bootstrapper.CreatePaletteService(palettePath, settings);
- var pluginService = bootstrapper.CreatePluginService(pluginPath, codecService);
+ //var pluginService = bootstrapper.CreatePluginService(pluginPath, codecService);
var defaultResources = paletteService.GlobalPalettes;
var serializerFactory = new XmlProjectSerializerFactory(resourceSchemaFileName,
@@ -95,7 +96,7 @@ private static bool BootstrapTileShop(string logFileName)
}
catch (Exception ex)
{
- Log.Fatal(ex, "TileShopCLI environment failed to load");
+ Log.Fatal(ex, $"TileShopCLI environment failed to load:\n{ex.StackTrace}\n");
return false;
}
}
diff --git a/TileShop.CLI/Properties/launchSettings.json b/TileShop.CLI/Properties/launchSettings.json
index 067b9bec..0da70b17 100644
--- a/TileShop.CLI/Properties/launchSettings.json
+++ b/TileShop.CLI/Properties/launchSettings.json
@@ -2,27 +2,27 @@
"profiles": {
"FF2 ExportAll": {
"commandName": "Project",
- "commandLineArgs": "ExportAll --overwrite \"FF2new\\ff2.xml\" FF2Extract",
+ "commandLineArgs": "ExportAll --overwrite \"FF2new\\FF2project.xml\" FF2Extract",
"workingDirectory": "D:\\ImageMagitekTest"
},
"FF2 ImportAll": {
"commandName": "Project",
- "commandLineArgs": "ImportAll -f ff2.xml FF2Extract",
+ "commandLineArgs": "ImportAll -f \"FF2new\\FF2project.xml\" FF2Extract",
"workingDirectory": "D:\\ImageMagitekTest"
},
"FF2 Import": {
"commandName": "Project",
- "commandLineArgs": "Import -fr ff2.xml FF2Extract \"FF2\\Character Overworld Sprites\\Cecil Map\" \"/FF2/Portraits\"",
+ "commandLineArgs": "Import -fr \"FF2new\\FF2project.xml\" FF2Extract \"\\Character Overworld Sprites\\Cecil Map\" \"/Character Portraits/Portraits\"",
"workingDirectory": "D:\\ImageMagitekTest"
},
"FF2 Print": {
"commandName": "Project",
- "commandLineArgs": "Print --log ff2.log ff2.xml",
+ "commandLineArgs": "Print --log ff2.log \"FF2new\\FF2project.xml\"",
"workingDirectory": "D:\\ImageMagitekTest"
},
"FF2 Export": {
"commandName": "Project",
- "commandLineArgs": "Export ff2.xml FF2Extract \"/FF2/Character Overworld Sprites/Cecil Map\" \"FF2\\Portraits\"",
+ "commandLineArgs": "Export \"FF2new\\FF2project.xml\" FF2Extract \"/Character Overworld Sprites/Cecil Map\" \"Character Portraits\\Portraits\"",
"workingDirectory": "D:\\ImageMagitekTest"
}
}
diff --git a/TileShop.CLI/TileShop.CLI.csproj b/TileShop.CLI/TileShop.CLI.csproj
index 27be25c5..857ee5ce 100644
--- a/TileShop.CLI/TileShop.CLI.csproj
+++ b/TileShop.CLI/TileShop.CLI.csproj
@@ -8,9 +8,10 @@
Klarth
https://github.com/stevemonaco/ImageMagitek
https://github.com/stevemonaco/ImageMagitek
- 0.2.0.0
- 0.2.0.0
- 0.2
+ 0.990.0.0
+ 0.990.0.0
+ 0.990
+
diff --git a/TileShop.Shared/TileShop.Shared.csproj b/TileShop.Shared/TileShop.Shared.csproj
index fe78f5d8..3b5da08f 100644
--- a/TileShop.Shared/TileShop.Shared.csproj
+++ b/TileShop.Shared/TileShop.Shared.csproj
@@ -2,6 +2,9 @@
net5.0
+ 0.990
+ Klarth
+
diff --git a/TileShop.WPF/Features/Shell/MenuView.xaml b/TileShop.WPF/Features/Shell/MenuView.xaml
index bc60abb6..d1050427 100644
--- a/TileShop.WPF/Features/Shell/MenuView.xaml
+++ b/TileShop.WPF/Features/Shell/MenuView.xaml
@@ -21,7 +21,6 @@