diff --git a/.editorconfig b/.editorconfig index 4969576735..6cae690bb3 100644 --- a/.editorconfig +++ b/.editorconfig @@ -8,7 +8,9 @@ indent_size = 4 [*.il] indent_style = space indent_size = 2 - +[*.{yml,yaml}] +indent_style = space +indent_size = 2 [*.csproj] indent_style = space indent_size = 2 diff --git a/.gitignore b/.gitignore index 319f85b7fd..e284b1638c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ bin/ obj/ - +AppPackages/ +BundleArtifacts/ /ICSharpCode.Decompiler/Properties/AssemblyInfo.cs /ILSpy/Properties/AssemblyInfo.cs /ILSpy/app.config diff --git a/BuildTools/pipelines-install.ps1 b/BuildTools/pipelines-install.ps1 new file mode 100644 index 0000000000..31d5b634bb --- /dev/null +++ b/BuildTools/pipelines-install.ps1 @@ -0,0 +1,40 @@ +$ErrorActionPreference = "Stop" + +$baseCommit = "d779383cb85003d6dabeb976f0845631e07bf463"; +$baseCommitRev = 1; + +# make sure this list matches artifacts-only branches list in azure-pipelines.yml! +$masterBranches = @("master", "3.2.x"); + +$globalAssemblyInfoTemplateFile = "ILSpy/Properties/AssemblyInfo.template.cs"; + +$versionParts = @{}; +Get-Content $globalAssemblyInfoTemplateFile | where { $_ -match 'string (\w+) = "?(\w+)"?;' } | foreach { $versionParts.Add($Matches[1], $Matches[2]) } + +$major = $versionParts.Major; +$minor = $versionParts.Minor; +$build = $versionParts.Build; +$versionName = $versionParts.VersionName; + +if ($versionName -ne "null") { + $versionName = "-$versionName"; +} else { + $versionName = ""; +} +if ($masterBranches -contains $env:BUILD_SOURCEBRANCHNAME) { + $branch = ""; +} else { + $branch = "-$env:BUILD_SOURCEBRANCHNAME"; +} +if ($env:SYSTEM_PULLREQUEST_PULLREQUESTNUMBER) { + $suffix = "-pr$env:SYSTEM_PULLREQUEST_PULLREQUESTNUMBER"; +} else { + $suffix = ""; +} + +$revision = [Int32]::Parse((git rev-list --count "$baseCommit..HEAD")) + $baseCommitRev; + +$newVersion="$major.$minor.$build.$revision"; +$env:ILSPY_VERSION_NUMBER="$newVersion$branch$versionName$suffix"; +Write-Host "##vso[build.updatebuildnumber]$newVersion$branch$versionName$suffix"; +Write-Host "new version: $newVersion$branch$versionName$suffix"; \ No newline at end of file diff --git a/BuildTools/update-assemblyinfo.ps1 b/BuildTools/update-assemblyinfo.ps1 index e304522a89..d901e7feaa 100644 --- a/BuildTools/update-assemblyinfo.ps1 +++ b/BuildTools/update-assemblyinfo.ps1 @@ -57,8 +57,10 @@ function gitBranch() { return "no-branch"; } - if ($env:APPVEYOR_REPO_BRANCH -ne $null) { + if ($env:APPVEYOR_REPO_BRANCH -ne $null) { return $env:APPVEYOR_REPO_BRANCH; + } elseif ($env:BUILD_SOURCEBRANCHNAME -ne $null) { + return $env:BUILD_SOURCEBRANCHNAME; } else { return ((git branch --no-color).Split([System.Environment]::NewLine) | where { $_ -match "^\* " } | select -First 1).Substring(2); } @@ -71,6 +73,12 @@ $templateFiles = ( @{Input="ILSpy/Properties/app.config.template"; Output = "ILSpy/app.config"}, @{Input="ILSpy.AddIn/source.extension.vsixmanifest.template"; Output = "ILSpy.AddIn/source.extension.vsixmanifest"} ); + +$appxmanifestFiles = ( + @{Input="ILSpy.Package/Package.appxmanifest"; Output="ILSpy.Package/Package.appxmanifest"}, + @{Input="ILSpy.Package/Package-CI.appxmanifest"; Output="ILSpy.Package/Package-CI.appxmanifest"} +); + [string]$mutexId = "ILSpyUpdateAssemblyInfo" + (Get-Location).ToString().GetHashCode(); Write-Host $mutexId; [bool]$createdNew = $false; @@ -142,6 +150,32 @@ try { $out | Out-File -Encoding utf8 $file.Output; } } + + # Only update these on the Build Agent when ReleaseChannel is set + if($Env:ReleaseChannel -ne '' -and $Env:ReleaseChannel -ne $null) { + foreach ($file in $appxmanifestFiles) { + [string]$in = (Get-Content $file.Input) -Join [System.Environment]::NewLine; + + $out = $in.Replace('$INSERTVERSION$', $fullVersionNumber); + $out = $out.Replace('$INSERTMAJORVERSION$', $major); + $out = $out.Replace('$INSERTMINORVERSION$', $minor); + $out = $out.Replace('$INSERTREVISION$', $revision); + $out = $out.Replace('$INSERTCOMMITHASH$', $gitCommitHash); + $out = $out.Replace('$INSERTSHORTCOMMITHASH$', $gitCommitHash.Substring(0, 8)); + $out = $out.Replace('$INSERTDATE$', [System.DateTime]::Now.ToString("MM/dd/yyyy")); + $out = $out.Replace('$INSERTYEAR$', [System.DateTime]::Now.Year.ToString()); + $out = $out.Replace('$INSERTBRANCHNAME$', $branchName); + $out = $out.Replace('$INSERTBRANCHPOSTFIX$', $postfixBranchName); + $out = $out.Replace('$INSERTVERSIONNAME$', $versionName); + $out = $out.Replace('$INSERTVERSIONNAMEPOSTFIX$', $postfixVersionName); + $out = $out.Replace('$INSERTBUILDCONFIG$', $buildConfig); + + if (((Get-Content $file.Input) -Join [System.Environment]::NewLine) -ne $out) { + $out | Out-File -Encoding utf8 $file.Output; + } + } + } + } finally { $mutex.ReleaseMutex(); $mutex.Close(); diff --git a/ICSharpCode.Decompiler.Tests/ICSharpCode.Decompiler.Tests.csproj b/ICSharpCode.Decompiler.Tests/ICSharpCode.Decompiler.Tests.csproj index 0515298972..e3e43be691 100644 --- a/ICSharpCode.Decompiler.Tests/ICSharpCode.Decompiler.Tests.csproj +++ b/ICSharpCode.Decompiler.Tests/ICSharpCode.Decompiler.Tests.csproj @@ -41,6 +41,7 @@ + diff --git a/ICSharpCode.Decompiler.Tests/RoundtripAssembly.cs b/ICSharpCode.Decompiler.Tests/RoundtripAssembly.cs index 340b67c3f2..dea1e49f51 100644 --- a/ICSharpCode.Decompiler.Tests/RoundtripAssembly.cs +++ b/ICSharpCode.Decompiler.Tests/RoundtripAssembly.cs @@ -26,6 +26,7 @@ using ICSharpCode.Decompiler.CSharp; using ICSharpCode.Decompiler.Metadata; using ICSharpCode.Decompiler.Tests.Helpers; +using Microsoft.Build.Locator; using Microsoft.Win32; using NUnit.Framework; @@ -188,22 +189,16 @@ static void ClearDirectory(string dir) File.Delete(file); } } - - static string FindVS2017() - { - using (var key = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32)) { - using (var subkey = key.OpenSubKey(@"SOFTWARE\Microsoft\VisualStudio\SxS\VS7")) { - return subkey?.GetValue("15.0") as string; - } - } - } static string FindMSBuild() { - string vsPath = FindVS2017(); + string vsPath = MSBuildLocator.QueryVisualStudioInstances(new VisualStudioInstanceQueryOptions { DiscoveryTypes = DiscoveryType.VisualStudioSetup }) + .OrderByDescending(i => i.Version) + .FirstOrDefault() + ?.MSBuildPath; if (vsPath == null) - throw new InvalidOperationException("Could not find VS2017"); - return Path.Combine(vsPath, @"MSBuild\15.0\bin\MSBuild.exe"); + throw new InvalidOperationException("Could not find MSBuild"); + return Path.Combine(vsPath, "msbuild.exe"); } static void Compile(string projectFile, string outputDir) diff --git a/ILSpy.BamlDecompiler.Tests/ILSpy.BamlDecompiler.Tests.csproj b/ILSpy.BamlDecompiler.Tests/ILSpy.BamlDecompiler.Tests.csproj index 601cfdb927..198bbe6210 100644 --- a/ILSpy.BamlDecompiler.Tests/ILSpy.BamlDecompiler.Tests.csproj +++ b/ILSpy.BamlDecompiler.Tests/ILSpy.BamlDecompiler.Tests.csproj @@ -7,7 +7,7 @@ False false - true + true false false @@ -45,24 +45,19 @@ AttachedEvent.xaml - Code MyControl.xaml - Code Resources.xaml - Code Simple.xaml - Code SimpleNames.xaml - Code diff --git a/ILSpy.Package/ILSpy.Package.wapproj b/ILSpy.Package/ILSpy.Package.wapproj new file mode 100644 index 0000000000..cdfcbec415 --- /dev/null +++ b/ILSpy.Package/ILSpy.Package.wapproj @@ -0,0 +1,92 @@ + + + + 15.0 + + + + Debug + x86 + + + Release + x86 + + + Debug + x64 + + + Release + x64 + + + Debug + ARM + + + Release + ARM + + + Debug + ARM64 + + + Release + ARM64 + + + Debug + AnyCPU + + + Release + AnyCPU + + + + $(MSBuildExtensionsPath)\Microsoft\DesktopBridge\ + + + + bab51a23-9c15-42cc-8465-eb732bf9a932 + 10.0.17763.0 + 10.0.16299.0 + en-US + false + ..\ILSpy\ILSpy.csproj + False + True + Always + neutral + CI + False + + + true + https://some.location/tbd + 0 + OnApplicationRun + + + + Designer + + + Designer + + + Designer + + + + + + + + + + + + \ No newline at end of file diff --git a/ILSpy.Package/ILSpy.png b/ILSpy.Package/ILSpy.png new file mode 100644 index 0000000000..f65540956c Binary files /dev/null and b/ILSpy.Package/ILSpy.png differ diff --git a/ILSpy.Package/Images/LargeTile.scale-100.png b/ILSpy.Package/Images/LargeTile.scale-100.png new file mode 100644 index 0000000000..6216833fc8 Binary files /dev/null and b/ILSpy.Package/Images/LargeTile.scale-100.png differ diff --git a/ILSpy.Package/Images/LargeTile.scale-125.png b/ILSpy.Package/Images/LargeTile.scale-125.png new file mode 100644 index 0000000000..8fb65a5713 Binary files /dev/null and b/ILSpy.Package/Images/LargeTile.scale-125.png differ diff --git a/ILSpy.Package/Images/LargeTile.scale-150.png b/ILSpy.Package/Images/LargeTile.scale-150.png new file mode 100644 index 0000000000..2e35f824f0 Binary files /dev/null and b/ILSpy.Package/Images/LargeTile.scale-150.png differ diff --git a/ILSpy.Package/Images/LargeTile.scale-200.png b/ILSpy.Package/Images/LargeTile.scale-200.png new file mode 100644 index 0000000000..488fc7f12c Binary files /dev/null and b/ILSpy.Package/Images/LargeTile.scale-200.png differ diff --git a/ILSpy.Package/Images/LargeTile.scale-400.png b/ILSpy.Package/Images/LargeTile.scale-400.png new file mode 100644 index 0000000000..1a6a1c179f Binary files /dev/null and b/ILSpy.Package/Images/LargeTile.scale-400.png differ diff --git a/ILSpy.Package/Images/LockScreenLogo.scale-200.png b/ILSpy.Package/Images/LockScreenLogo.scale-200.png new file mode 100644 index 0000000000..735f57adb5 Binary files /dev/null and b/ILSpy.Package/Images/LockScreenLogo.scale-200.png differ diff --git a/ILSpy.Package/Images/SmallTile.scale-100.png b/ILSpy.Package/Images/SmallTile.scale-100.png new file mode 100644 index 0000000000..f54aefaca1 Binary files /dev/null and b/ILSpy.Package/Images/SmallTile.scale-100.png differ diff --git a/ILSpy.Package/Images/SmallTile.scale-125.png b/ILSpy.Package/Images/SmallTile.scale-125.png new file mode 100644 index 0000000000..df24bbc7be Binary files /dev/null and b/ILSpy.Package/Images/SmallTile.scale-125.png differ diff --git a/ILSpy.Package/Images/SmallTile.scale-150.png b/ILSpy.Package/Images/SmallTile.scale-150.png new file mode 100644 index 0000000000..c4a984cf1d Binary files /dev/null and b/ILSpy.Package/Images/SmallTile.scale-150.png differ diff --git a/ILSpy.Package/Images/SmallTile.scale-200.png b/ILSpy.Package/Images/SmallTile.scale-200.png new file mode 100644 index 0000000000..d710a41c7e Binary files /dev/null and b/ILSpy.Package/Images/SmallTile.scale-200.png differ diff --git a/ILSpy.Package/Images/SmallTile.scale-400.png b/ILSpy.Package/Images/SmallTile.scale-400.png new file mode 100644 index 0000000000..4e2213b277 Binary files /dev/null and b/ILSpy.Package/Images/SmallTile.scale-400.png differ diff --git a/ILSpy.Package/Images/SplashScreen.scale-100.png b/ILSpy.Package/Images/SplashScreen.scale-100.png new file mode 100644 index 0000000000..4ec6ee5fce Binary files /dev/null and b/ILSpy.Package/Images/SplashScreen.scale-100.png differ diff --git a/ILSpy.Package/Images/SplashScreen.scale-125.png b/ILSpy.Package/Images/SplashScreen.scale-125.png new file mode 100644 index 0000000000..4a2c611617 Binary files /dev/null and b/ILSpy.Package/Images/SplashScreen.scale-125.png differ diff --git a/ILSpy.Package/Images/SplashScreen.scale-150.png b/ILSpy.Package/Images/SplashScreen.scale-150.png new file mode 100644 index 0000000000..e5ae799f21 Binary files /dev/null and b/ILSpy.Package/Images/SplashScreen.scale-150.png differ diff --git a/ILSpy.Package/Images/SplashScreen.scale-200.png b/ILSpy.Package/Images/SplashScreen.scale-200.png new file mode 100644 index 0000000000..01408c079d Binary files /dev/null and b/ILSpy.Package/Images/SplashScreen.scale-200.png differ diff --git a/ILSpy.Package/Images/SplashScreen.scale-400.png b/ILSpy.Package/Images/SplashScreen.scale-400.png new file mode 100644 index 0000000000..8867bd1275 Binary files /dev/null and b/ILSpy.Package/Images/SplashScreen.scale-400.png differ diff --git a/ILSpy.Package/Images/Square150x150Logo.scale-100.png b/ILSpy.Package/Images/Square150x150Logo.scale-100.png new file mode 100644 index 0000000000..bbb41de936 Binary files /dev/null and b/ILSpy.Package/Images/Square150x150Logo.scale-100.png differ diff --git a/ILSpy.Package/Images/Square150x150Logo.scale-125.png b/ILSpy.Package/Images/Square150x150Logo.scale-125.png new file mode 100644 index 0000000000..da47ea9bc8 Binary files /dev/null and b/ILSpy.Package/Images/Square150x150Logo.scale-125.png differ diff --git a/ILSpy.Package/Images/Square150x150Logo.scale-150.png b/ILSpy.Package/Images/Square150x150Logo.scale-150.png new file mode 100644 index 0000000000..b9bfa46cd0 Binary files /dev/null and b/ILSpy.Package/Images/Square150x150Logo.scale-150.png differ diff --git a/ILSpy.Package/Images/Square150x150Logo.scale-200.png b/ILSpy.Package/Images/Square150x150Logo.scale-200.png new file mode 100644 index 0000000000..e29e707423 Binary files /dev/null and b/ILSpy.Package/Images/Square150x150Logo.scale-200.png differ diff --git a/ILSpy.Package/Images/Square150x150Logo.scale-400.png b/ILSpy.Package/Images/Square150x150Logo.scale-400.png new file mode 100644 index 0000000000..ab378bb79b Binary files /dev/null and b/ILSpy.Package/Images/Square150x150Logo.scale-400.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png b/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png new file mode 100644 index 0000000000..6191a6a75d Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png b/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png new file mode 100644 index 0000000000..542518c815 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png b/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png new file mode 100644 index 0000000000..b63b4ee955 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png b/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png new file mode 100644 index 0000000000..59cddf7b53 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png b/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png new file mode 100644 index 0000000000..2a215f46d3 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-16.png b/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-16.png new file mode 100644 index 0000000000..6191a6a75d Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-16.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-256.png b/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-256.png new file mode 100644 index 0000000000..b63b4ee955 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-256.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-32.png b/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-32.png new file mode 100644 index 0000000000..59cddf7b53 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-32.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-48.png b/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-48.png new file mode 100644 index 0000000000..2a215f46d3 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.altform-unplated_targetsize-48.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.scale-100.png b/ILSpy.Package/Images/Square44x44Logo.scale-100.png new file mode 100644 index 0000000000..b6fe6fec47 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.scale-100.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.scale-125.png b/ILSpy.Package/Images/Square44x44Logo.scale-125.png new file mode 100644 index 0000000000..4233fffd4e Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.scale-125.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.scale-150.png b/ILSpy.Package/Images/Square44x44Logo.scale-150.png new file mode 100644 index 0000000000..5b8ae561fa Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.scale-150.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.scale-200.png b/ILSpy.Package/Images/Square44x44Logo.scale-200.png new file mode 100644 index 0000000000..27ae2b761d Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.scale-200.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.scale-400.png b/ILSpy.Package/Images/Square44x44Logo.scale-400.png new file mode 100644 index 0000000000..5affff3481 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.scale-400.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.targetsize-16.png b/ILSpy.Package/Images/Square44x44Logo.targetsize-16.png new file mode 100644 index 0000000000..44b57411f1 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.targetsize-16.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.targetsize-24.png b/ILSpy.Package/Images/Square44x44Logo.targetsize-24.png new file mode 100644 index 0000000000..6105cfb3b1 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.targetsize-24.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.targetsize-24_altform-unplated.png b/ILSpy.Package/Images/Square44x44Logo.targetsize-24_altform-unplated.png new file mode 100644 index 0000000000..a833fb6702 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.targetsize-24_altform-unplated.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.targetsize-256.png b/ILSpy.Package/Images/Square44x44Logo.targetsize-256.png new file mode 100644 index 0000000000..b761e8eaf9 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.targetsize-256.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.targetsize-32.png b/ILSpy.Package/Images/Square44x44Logo.targetsize-32.png new file mode 100644 index 0000000000..0b9473941e Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.targetsize-32.png differ diff --git a/ILSpy.Package/Images/Square44x44Logo.targetsize-48.png b/ILSpy.Package/Images/Square44x44Logo.targetsize-48.png new file mode 100644 index 0000000000..03957a9c20 Binary files /dev/null and b/ILSpy.Package/Images/Square44x44Logo.targetsize-48.png differ diff --git a/ILSpy.Package/Images/StoreLogo.backup.png b/ILSpy.Package/Images/StoreLogo.backup.png new file mode 100644 index 0000000000..7385b56c0e Binary files /dev/null and b/ILSpy.Package/Images/StoreLogo.backup.png differ diff --git a/ILSpy.Package/Images/StoreLogo.scale-100.png b/ILSpy.Package/Images/StoreLogo.scale-100.png new file mode 100644 index 0000000000..e41dba90f6 Binary files /dev/null and b/ILSpy.Package/Images/StoreLogo.scale-100.png differ diff --git a/ILSpy.Package/Images/StoreLogo.scale-125.png b/ILSpy.Package/Images/StoreLogo.scale-125.png new file mode 100644 index 0000000000..c8a37cb113 Binary files /dev/null and b/ILSpy.Package/Images/StoreLogo.scale-125.png differ diff --git a/ILSpy.Package/Images/StoreLogo.scale-150.png b/ILSpy.Package/Images/StoreLogo.scale-150.png new file mode 100644 index 0000000000..e45bf4b541 Binary files /dev/null and b/ILSpy.Package/Images/StoreLogo.scale-150.png differ diff --git a/ILSpy.Package/Images/StoreLogo.scale-200.png b/ILSpy.Package/Images/StoreLogo.scale-200.png new file mode 100644 index 0000000000..38c24e2ea3 Binary files /dev/null and b/ILSpy.Package/Images/StoreLogo.scale-200.png differ diff --git a/ILSpy.Package/Images/StoreLogo.scale-400.png b/ILSpy.Package/Images/StoreLogo.scale-400.png new file mode 100644 index 0000000000..ff37e5801c Binary files /dev/null and b/ILSpy.Package/Images/StoreLogo.scale-400.png differ diff --git a/ILSpy.Package/Images/Wide310x150Logo.scale-100.png b/ILSpy.Package/Images/Wide310x150Logo.scale-100.png new file mode 100644 index 0000000000..4134618064 Binary files /dev/null and b/ILSpy.Package/Images/Wide310x150Logo.scale-100.png differ diff --git a/ILSpy.Package/Images/Wide310x150Logo.scale-125.png b/ILSpy.Package/Images/Wide310x150Logo.scale-125.png new file mode 100644 index 0000000000..3bea5060b8 Binary files /dev/null and b/ILSpy.Package/Images/Wide310x150Logo.scale-125.png differ diff --git a/ILSpy.Package/Images/Wide310x150Logo.scale-150.png b/ILSpy.Package/Images/Wide310x150Logo.scale-150.png new file mode 100644 index 0000000000..c5c8d822fe Binary files /dev/null and b/ILSpy.Package/Images/Wide310x150Logo.scale-150.png differ diff --git a/ILSpy.Package/Images/Wide310x150Logo.scale-200.png b/ILSpy.Package/Images/Wide310x150Logo.scale-200.png new file mode 100644 index 0000000000..4ec6ee5fce Binary files /dev/null and b/ILSpy.Package/Images/Wide310x150Logo.scale-200.png differ diff --git a/ILSpy.Package/Images/Wide310x150Logo.scale-400.png b/ILSpy.Package/Images/Wide310x150Logo.scale-400.png new file mode 100644 index 0000000000..01408c079d Binary files /dev/null and b/ILSpy.Package/Images/Wide310x150Logo.scale-400.png differ diff --git a/ILSpy.Package/Package-CI.appxmanifest b/ILSpy.Package/Package-CI.appxmanifest new file mode 100644 index 0000000000..27b6e8f9fd --- /dev/null +++ b/ILSpy.Package/Package-CI.appxmanifest @@ -0,0 +1,58 @@ + + + + + + + + ILSpy (CI) + ICSharpCode + Images\StoreLogo.png + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ILSpy.Package/Package-Local.appxmanifest b/ILSpy.Package/Package-Local.appxmanifest new file mode 100644 index 0000000000..da934f3a98 --- /dev/null +++ b/ILSpy.Package/Package-Local.appxmanifest @@ -0,0 +1,58 @@ + + + + + + + + ILSpy (Local) + ICSharpCode + Images\StoreLogo.png + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ILSpy.Package/Package.appinstaller b/ILSpy.Package/Package.appinstaller new file mode 100644 index 0000000000..63799c92a7 --- /dev/null +++ b/ILSpy.Package/Package.appinstaller @@ -0,0 +1,15 @@ + + + + + + + + + + \ No newline at end of file diff --git a/ILSpy.Package/Package.appxmanifest b/ILSpy.Package/Package.appxmanifest new file mode 100644 index 0000000000..cd8740c553 --- /dev/null +++ b/ILSpy.Package/Package.appxmanifest @@ -0,0 +1,58 @@ + + + + + + + + ILSpy + ICSharpCode + Images\StoreLogo.png + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ILSpy.WithPackage.sln b/ILSpy.WithPackage.sln new file mode 100644 index 0000000000..91d19a76ef --- /dev/null +++ b/ILSpy.WithPackage.sln @@ -0,0 +1,295 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.28803.202 +MinimumVisualStudioVersion = 15.0 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "doc", "doc", "{F45DB999-7E72-4000-B5AD-3A7B485A0896}" + ProjectSection(SolutionItems) = preProject + doc\Command Line.txt = doc\Command Line.txt + doc\ILAst.txt = doc\ILAst.txt + doc\IntPtr.txt = doc\IntPtr.txt + EndProjectSection +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ILSpy", "ILSpy\ILSpy.csproj", "{1E85EFF9-E370-4683-83E4-8A3D063FF791}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ICSharpCode.TreeView", "SharpTreeView\ICSharpCode.TreeView.csproj", "{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ICSharpCode.Decompiler", "ICSharpCode.Decompiler\ICSharpCode.Decompiler.csproj", "{984CC812-9470-4A13-AFF9-CC44068D666C}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ICSharpCode.Decompiler.Tests", "ICSharpCode.Decompiler.Tests\ICSharpCode.Decompiler.Tests.csproj", "{FEC0DA52-C4A6-4710-BE36-B484A20C5E22}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestPlugin", "TestPlugin\TestPlugin.csproj", "{F32EBCC8-0E53-4421-867E-05B3D6E10C70}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ILSpy.BamlDecompiler", "ILSpy.BamlDecompiler\ILSpy.BamlDecompiler.csproj", "{A6BAD2BA-76BA-461C-8B6D-418607591247}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ILSpy.BamlDecompiler.Tests", "ILSpy.BamlDecompiler.Tests\ILSpy.BamlDecompiler.Tests.csproj", "{1169E6D1-1899-43D4-A500-07CE4235B388}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ILSpy.AddIn", "ILSpy.AddIn\ILSpy.AddIn.csproj", "{9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}" + ProjectSection(ProjectDependencies) = postProject + {A6BAD2BA-76BA-461C-8B6D-418607591247} = {A6BAD2BA-76BA-461C-8B6D-418607591247} + EndProjectSection +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ICSharpCode.Decompiler.PdbProvider.Cecil", "ICSharpCode.Decompiler.PdbProvider.Cecil\ICSharpCode.Decompiler.PdbProvider.Cecil.csproj", "{B85A155A-9DD6-43BC-A624-2D8EC773D71F}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ILSpy.Tests", "ILSpy.Tests\ILSpy.Tests.csproj", "{B51C6636-B8D1-4200-9869-08F2689DE6C2}" +EndProject +Project("{C7167F0D-BC9F-4E6E-AFE1-012C56B48DB5}") = "ILSpy.Package", "ILSpy.Package\ILSpy.Package.wapproj", "{BAB51A23-9C15-42CC-8465-EB732BF9A932}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{58AA7BDB-174C-4566-BD8A-EC461F1D6848}" + ProjectSection(SolutionItems) = preProject + azure-pipelines.yml = azure-pipelines.yml + BuildTools\update-assemblyinfo.ps1 = BuildTools\update-assemblyinfo.ps1 + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|ARM = Debug|ARM + Debug|ARM64 = Debug|ARM64 + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|ARM = Release|ARM + Release|ARM64 = Release|ARM64 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Debug|ARM.ActiveCfg = Debug|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Debug|ARM.Build.0 = Debug|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Debug|ARM64.Build.0 = Debug|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Debug|x64.ActiveCfg = Debug|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Debug|x64.Build.0 = Debug|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Debug|x86.ActiveCfg = Debug|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Debug|x86.Build.0 = Debug|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Release|Any CPU.Build.0 = Release|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Release|ARM.ActiveCfg = Release|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Release|ARM.Build.0 = Release|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Release|ARM64.ActiveCfg = Release|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Release|ARM64.Build.0 = Release|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Release|x64.ActiveCfg = Release|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Release|x64.Build.0 = Release|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Release|x86.ActiveCfg = Release|Any CPU + {1E85EFF9-E370-4683-83E4-8A3D063FF791}.Release|x86.Build.0 = Release|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|ARM.ActiveCfg = Debug|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|ARM.Build.0 = Debug|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|ARM64.Build.0 = Debug|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|x64.ActiveCfg = Debug|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|x64.Build.0 = Debug|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|x86.ActiveCfg = Debug|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Debug|x86.Build.0 = Debug|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|Any CPU.Build.0 = Release|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|ARM.ActiveCfg = Release|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|ARM.Build.0 = Release|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|ARM64.ActiveCfg = Release|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|ARM64.Build.0 = Release|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|x64.ActiveCfg = Release|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|x64.Build.0 = Release|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|x86.ActiveCfg = Release|Any CPU + {DDE2A481-8271-4EAC-A330-8FA6A38D13D1}.Release|x86.Build.0 = Release|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Debug|ARM.ActiveCfg = Debug|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Debug|ARM.Build.0 = Debug|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Debug|ARM64.Build.0 = Debug|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Debug|x64.ActiveCfg = Debug|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Debug|x64.Build.0 = Debug|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Debug|x86.ActiveCfg = Debug|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Debug|x86.Build.0 = Debug|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Release|Any CPU.Build.0 = Release|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Release|ARM.ActiveCfg = Release|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Release|ARM.Build.0 = Release|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Release|ARM64.ActiveCfg = Release|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Release|ARM64.Build.0 = Release|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Release|x64.ActiveCfg = Release|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Release|x64.Build.0 = Release|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Release|x86.ActiveCfg = Release|Any CPU + {984CC812-9470-4A13-AFF9-CC44068D666C}.Release|x86.Build.0 = Release|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Debug|ARM.ActiveCfg = Debug|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Debug|ARM.Build.0 = Debug|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Debug|ARM64.Build.0 = Debug|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Debug|x64.ActiveCfg = Debug|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Debug|x64.Build.0 = Debug|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Debug|x86.ActiveCfg = Debug|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Debug|x86.Build.0 = Debug|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Release|Any CPU.Build.0 = Release|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Release|ARM.ActiveCfg = Release|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Release|ARM.Build.0 = Release|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Release|ARM64.ActiveCfg = Release|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Release|ARM64.Build.0 = Release|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Release|x64.ActiveCfg = Release|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Release|x64.Build.0 = Release|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Release|x86.ActiveCfg = Release|Any CPU + {FEC0DA52-C4A6-4710-BE36-B484A20C5E22}.Release|x86.Build.0 = Release|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Debug|ARM.ActiveCfg = Debug|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Debug|ARM.Build.0 = Debug|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Debug|ARM64.Build.0 = Debug|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Debug|x64.ActiveCfg = Debug|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Debug|x64.Build.0 = Debug|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Debug|x86.ActiveCfg = Debug|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Debug|x86.Build.0 = Debug|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Release|Any CPU.Build.0 = Release|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Release|ARM.ActiveCfg = Release|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Release|ARM.Build.0 = Release|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Release|ARM64.ActiveCfg = Release|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Release|ARM64.Build.0 = Release|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Release|x64.ActiveCfg = Release|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Release|x64.Build.0 = Release|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Release|x86.ActiveCfg = Release|Any CPU + {F32EBCC8-0E53-4421-867E-05B3D6E10C70}.Release|x86.Build.0 = Release|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Debug|ARM.ActiveCfg = Debug|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Debug|ARM.Build.0 = Debug|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Debug|ARM64.Build.0 = Debug|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Debug|x64.ActiveCfg = Debug|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Debug|x64.Build.0 = Debug|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Debug|x86.ActiveCfg = Debug|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Debug|x86.Build.0 = Debug|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Release|Any CPU.Build.0 = Release|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Release|ARM.ActiveCfg = Release|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Release|ARM.Build.0 = Release|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Release|ARM64.ActiveCfg = Release|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Release|ARM64.Build.0 = Release|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Release|x64.ActiveCfg = Release|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Release|x64.Build.0 = Release|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Release|x86.ActiveCfg = Release|Any CPU + {A6BAD2BA-76BA-461C-8B6D-418607591247}.Release|x86.Build.0 = Release|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Debug|ARM.ActiveCfg = Debug|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Debug|ARM.Build.0 = Debug|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Debug|ARM64.Build.0 = Debug|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Debug|x64.ActiveCfg = Debug|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Debug|x64.Build.0 = Debug|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Debug|x86.ActiveCfg = Debug|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Debug|x86.Build.0 = Debug|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Release|Any CPU.Build.0 = Release|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Release|ARM.ActiveCfg = Release|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Release|ARM.Build.0 = Release|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Release|ARM64.ActiveCfg = Release|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Release|ARM64.Build.0 = Release|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Release|x64.ActiveCfg = Release|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Release|x64.Build.0 = Release|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Release|x86.ActiveCfg = Release|Any CPU + {1169E6D1-1899-43D4-A500-07CE4235B388}.Release|x86.Build.0 = Release|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Debug|ARM.ActiveCfg = Debug|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Debug|ARM.Build.0 = Debug|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Debug|ARM64.Build.0 = Debug|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Debug|x64.ActiveCfg = Debug|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Debug|x64.Build.0 = Debug|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Debug|x86.ActiveCfg = Debug|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Debug|x86.Build.0 = Debug|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Release|Any CPU.Build.0 = Release|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Release|ARM.ActiveCfg = Release|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Release|ARM.Build.0 = Release|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Release|ARM64.ActiveCfg = Release|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Release|ARM64.Build.0 = Release|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Release|x64.ActiveCfg = Release|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Release|x64.Build.0 = Release|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Release|x86.ActiveCfg = Release|Any CPU + {9D7BE6C0-B7B3-4A50-A54E-18A2D84A3384}.Release|x86.Build.0 = Release|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Debug|ARM.ActiveCfg = Debug|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Debug|ARM.Build.0 = Debug|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Debug|ARM64.Build.0 = Debug|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Debug|x64.ActiveCfg = Debug|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Debug|x64.Build.0 = Debug|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Debug|x86.ActiveCfg = Debug|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Debug|x86.Build.0 = Debug|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Release|Any CPU.Build.0 = Release|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Release|ARM.ActiveCfg = Release|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Release|ARM.Build.0 = Release|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Release|ARM64.ActiveCfg = Release|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Release|ARM64.Build.0 = Release|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Release|x64.ActiveCfg = Release|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Release|x64.Build.0 = Release|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Release|x86.ActiveCfg = Release|Any CPU + {B85A155A-9DD6-43BC-A624-2D8EC773D71F}.Release|x86.Build.0 = Release|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Debug|ARM.ActiveCfg = Debug|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Debug|ARM.Build.0 = Debug|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Debug|ARM64.Build.0 = Debug|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Debug|x64.ActiveCfg = Debug|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Debug|x64.Build.0 = Debug|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Debug|x86.ActiveCfg = Debug|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Debug|x86.Build.0 = Debug|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Release|Any CPU.Build.0 = Release|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Release|ARM.ActiveCfg = Release|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Release|ARM.Build.0 = Release|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Release|ARM64.ActiveCfg = Release|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Release|ARM64.Build.0 = Release|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Release|x64.ActiveCfg = Release|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Release|x64.Build.0 = Release|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Release|x86.ActiveCfg = Release|Any CPU + {B51C6636-B8D1-4200-9869-08F2689DE6C2}.Release|x86.Build.0 = Release|Any CPU + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|Any CPU.Deploy.0 = Debug|Any CPU + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|ARM.ActiveCfg = Debug|ARM + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|ARM.Build.0 = Debug|ARM + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|ARM.Deploy.0 = Debug|ARM + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|ARM64.Build.0 = Debug|ARM64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|ARM64.Deploy.0 = Debug|ARM64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|x64.ActiveCfg = Debug|x64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|x64.Build.0 = Debug|x64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|x64.Deploy.0 = Debug|x64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|x86.ActiveCfg = Debug|x86 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|x86.Build.0 = Debug|x86 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Debug|x86.Deploy.0 = Debug|x86 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|Any CPU.ActiveCfg = Release|Any CPU + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|Any CPU.Build.0 = Release|Any CPU + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|Any CPU.Deploy.0 = Release|Any CPU + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|ARM.ActiveCfg = Release|ARM + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|ARM.Build.0 = Release|ARM + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|ARM.Deploy.0 = Release|ARM + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|ARM64.ActiveCfg = Release|ARM64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|ARM64.Build.0 = Release|ARM64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|ARM64.Deploy.0 = Release|ARM64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|x64.ActiveCfg = Release|x64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|x64.Build.0 = Release|x64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|x64.Deploy.0 = Release|x64 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|x86.ActiveCfg = Release|x86 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|x86.Build.0 = Release|x86 + {BAB51A23-9C15-42CC-8465-EB732BF9A932}.Release|x86.Deploy.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {C764218F-7633-4412-923D-558CE7EE0560} + EndGlobalSection +EndGlobal diff --git a/ILSpy/AboutPage.cs b/ILSpy/AboutPage.cs index 5ca4c5fc3f..ca85a1c0d4 100644 --- a/ILSpy/AboutPage.cs +++ b/ILSpy/AboutPage.cs @@ -35,6 +35,7 @@ using ICSharpCode.Decompiler; using ICSharpCode.ILSpy.Properties; using ICSharpCode.ILSpy.TextView; +using OSVersionHelper; namespace ICSharpCode.ILSpy { @@ -59,7 +60,10 @@ public static void Display(DecompilerTextView textView) { AvalonEditTextOutput output = new AvalonEditTextOutput() { EnableHyperlinks = true }; output.WriteLine(Resources.ILSpyVersion + RevisionClass.FullVersion); - output.AddUIElement( + if(WindowsVersionHelper.HasPackageIdentity) { + output.WriteLine($"Package Name: {WindowsVersionHelper.GetPackageFamilyName()}"); + } else {// if we're running in an MSIX, updates work differently + output.AddUIElement( delegate { StackPanel stackPanel = new StackPanel(); stackPanel.HorizontalAlignment = HorizontalAlignment.Center; @@ -81,7 +85,9 @@ public static void Display(DecompilerTextView textView) Children = { stackPanel, checkBox } }; }); - output.WriteLine(); + output.WriteLine(); + } + foreach (var plugin in App.ExportProvider.GetExportedValues()) plugin.Write(output); output.WriteLine(); @@ -283,7 +289,8 @@ public static Task CheckForUpdatesIfEnabledAsync(ILSpySettings spySettin { var tcs = new TaskCompletionSource(); UpdateSettings s = new UpdateSettings(spySettings); - if (s.AutomaticUpdateCheckEnabled) { + // If we're in an MSIX package, updates work differently + if (s.AutomaticUpdateCheckEnabled && !WindowsVersionHelper.HasPackageIdentity) { // perform update check if we never did one before; // or if the last check wasn't in the past 7 days if (s.LastSuccessfulUpdateCheck == null diff --git a/ILSpy/Commands/CheckForUpdatesCommand.cs b/ILSpy/Commands/CheckForUpdatesCommand.cs index 179e26b6f3..7cae660d9e 100644 --- a/ILSpy/Commands/CheckForUpdatesCommand.cs +++ b/ILSpy/Commands/CheckForUpdatesCommand.cs @@ -18,12 +18,22 @@ using ICSharpCode.ILSpy.Properties; +using OSVersionHelper; namespace ICSharpCode.ILSpy { [ExportMainMenuCommand(Menu = nameof(Resources._Help), Header = nameof(Resources._CheckUpdates), MenuOrder = 5000)] sealed class CheckForUpdatesCommand : SimpleCommand { + public override bool CanExecute(object parameter) + { + if(WindowsVersionHelper.HasPackageIdentity) { + return false; + } + + return base.CanExecute(parameter); + } + public override void Execute(object parameter) { MainWindow.Instance.ShowMessageIfUpdatesAvailableAsync(ILSpySettings.Load(), forceCheck: true); diff --git a/ILSpy/ILSpy.csproj b/ILSpy/ILSpy.csproj index 0d4ce8bceb..c7f0658d63 100644 --- a/ILSpy/ILSpy.csproj +++ b/ILSpy/ILSpy.csproj @@ -9,7 +9,7 @@ false false - true + true false false @@ -52,6 +52,7 @@ + @@ -81,9 +82,7 @@ - - Code - + @@ -91,7 +90,6 @@ - Code App.xaml @@ -176,16 +174,13 @@ - Code NugetPackageBrowserDialog.xaml OpenFromGacDialog.xaml - Code ResourceStringTable.xaml - Code OpenListDialog.xaml @@ -193,7 +188,6 @@ DisplaySettingsPanel.xaml - Code @@ -201,14 +195,12 @@ OptionsDialog.xaml - Code SearchPane.xaml - Code @@ -281,7 +273,6 @@ - Code MainWindow.xaml diff --git a/ILSpy/MainWindow.xaml.cs b/ILSpy/MainWindow.xaml.cs index 8e6e8b6b17..294dd57467 100644 --- a/ILSpy/MainWindow.xaml.cs +++ b/ILSpy/MainWindow.xaml.cs @@ -42,6 +42,7 @@ using ICSharpCode.ILSpy.TreeNodes; using ICSharpCode.TreeView; using Microsoft.Win32; +using OSVersionHelper; namespace ICSharpCode.ILSpy { @@ -490,6 +491,11 @@ internal static bool FormatExceptions(App.ExceptionData[] exceptions, StringBuil public void ShowMessageIfUpdatesAvailableAsync(ILSpySettings spySettings, bool forceCheck = false) { + // Don't check for updates if we're in an MSIX since they work differently + if(WindowsVersionHelper.HasPackageIdentity) { + return; + } + Task result; if (forceCheck) { result = AboutPage.CheckForUpdatesAsync(spySettings); diff --git a/SharpTreeView/ICSharpCode.TreeView.csproj b/SharpTreeView/ICSharpCode.TreeView.csproj index 0aa8cb17b6..77bf6c2710 100644 --- a/SharpTreeView/ICSharpCode.TreeView.csproj +++ b/SharpTreeView/ICSharpCode.TreeView.csproj @@ -1,4 +1,4 @@ - + @@ -7,7 +7,7 @@ False false - true + true false false @@ -48,9 +48,7 @@ - - Code - + diff --git a/TestPlugin/TestPlugin.csproj b/TestPlugin/TestPlugin.csproj index b1b69872d6..d55956bf53 100644 --- a/TestPlugin/TestPlugin.csproj +++ b/TestPlugin/TestPlugin.csproj @@ -8,7 +8,7 @@ False False - true + true false false @@ -44,7 +44,6 @@ CustomOptionPage.xaml - Code diff --git a/azure-pipelines.yml b/azure-pipelines.yml new file mode 100644 index 0000000000..f7a9fa21d5 --- /dev/null +++ b/azure-pipelines.yml @@ -0,0 +1,100 @@ +trigger: +- master +- msix +- 3.2.x + +pr: +- master +- 3.2.x + +variables: + DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true + BuildPlatform: Any CPU + +jobs: +- job: Build + pool: + vmImage: windows-2019 + strategy: + matrix: + Config_Release_Zip: + BuildConfiguration: Release + ReleaseChannel: Zip + Solution: ILSpy.sln + Config_Debug_Zip: + BuildConfiguration: Debug + ReleaseChannel: Zip + Solution: ILSpy.sln + Config_Release_CI: + BuildConfiguration: Release + ReleaseChannel: CI + Solution: ILSpy.WithPackage.sln + Config_Release_Store: + BuildConfiguration: Release + ReleaseChannel: Store + Solution: ILSpy.WithPackage.sln + + steps: + - checkout: self + submodules: recursive + + - task: DotNetCoreInstaller@0 + inputs: + version: '3.0.100-preview5-011568' + + - powershell: .\BuildTools\pipelines-install.ps1 + displayName: Install + + - task: MSBuild@1 + displayName: Restore ILSpy + inputs: + solution: $(Solution) + msbuildArguments: /t:restore + configuration: $(BuildConfiguration) + platform: $(BuildPlatform) + + - task: MSBuild@1 + displayName: Build ILSpy + inputs: + solution: $(Solution) + msbuildArguments: /p:AppxPackageDir="$(Build.ArtifactStagingDirectory)\$(ReleaseChannel)\\" + configuration: $(BuildConfiguration) + platform: $(BuildPlatform) + maximumCpuCount: true + + - task: VSTest@2 + displayName: Test + inputs: + testSelector: testAssemblies + testAssemblyVer2: | + ICSharpCode.Decompiler.Tests\bin\$(BuildConfiguration)\net462\ICSharpCode.Decompiler.Tests.exe + ILSpy.Tests\bin\$(BuildConfiguration)\net462\ILSpy.Tests.exe + ILSpy.BamlDecompiler.Tests\bin\$(BuildConfiguration)\net462\ILSpy.BamlDecompiler.Tests.dll + + - task: ArchiveFiles@1 + displayName: Create zip + inputs: + archiveType: zip + rootFolder: ILSpy/bin/$(BuildConfiguration)/net462 + archiveFile: $(Build.ArtifactStagingDirectory)\$(ReleaseChannel)\ILSpy.$(Build.BuildNumber).zip + includeRootFolder: false + condition: and(succeeded(), eq(variables['ReleaseChannel'], 'Zip')) + + - script: python BuildTools\tidy.py + displayName: Tab check + + - task: CopyFiles@2 + displayName: Move VSIX to publish directory + inputs: + contents: | + **\*.vsix + **\*.nupkg + targetFolder: $(Build.ArtifactStagingDirectory)\$(ReleaseChannel) + flattenFolders: true + condition: and(succeeded(), eq(variables['ReleaseChannel'], 'Zip')) + + - task: PublishPipelineArtifact@0 + displayName: Publish $(ReleaseChannel) $(BuildConfiguration) + inputs: + targetPath: $(Build.ArtifactStagingDirectory)\$(ReleaseChannel) + artifactName: $(ReleaseChannel) - $(BuildConfiguration) \ No newline at end of file diff --git a/global.json b/global.json index 8067f2c2ae..5fff0f5199 100644 --- a/global.json +++ b/global.json @@ -1,5 +1,8 @@ { "msbuild-sdks": { - "MSBuild.Sdk.Extras": "1.6.65" + "MSBuild.Sdk.Extras": "2.0.24" + }, + "sdk": { + "version": "3.0.100-preview" } }