Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
83dc22c
Add icon to assets
Cirzen Jun 2, 2025
1a08813
Add packaging manifest and images
Cirzen Jun 2, 2025
b16a8bf
Create dotnet-desktop.yml
Cirzen Jun 2, 2025
512410e
Add Force parameter to remove pfx path
Cirzen Jun 2, 2025
383e3aa
Add configuration when running tests
Cirzen Jun 2, 2025
2ac5429
Add New-Item step in dotnet-desktop.yml
Cirzen Jun 2, 2025
e175caa
Update dotnet-desktop.yml
Cirzen Jun 2, 2025
7589aac
Add quotes to build step
Cirzen Jun 2, 2025
be0530d
Update dotnet-desktop.yml
Cirzen Jun 2, 2025
66a7c72
Remove unused files from csproj
Cirzen Jun 2, 2025
6a55ea7
Merge branch 'feature/packaging' into feature/github-workflow
Cirzen Jun 2, 2025
33d3476
Update test package dependencies
Cirzen Jun 2, 2025
fbedb80
Update package dependency versions to prevent downgrades
Cirzen Jun 2, 2025
3a63cae
Add project referece to waproj
Cirzen Jun 2, 2025
08497c5
Update dotnet-desktop.yml
Cirzen Jun 2, 2025
772f39e
Update test running step
Cirzen Jun 3, 2025
ed2eba0
Update file location - no idea what happened there.
Cirzen Jun 3, 2025
7a3bc02
Remove unused file
Cirzen Jun 3, 2025
d89ce61
Restore before test
Cirzen Jun 3, 2025
de8ad22
Add build step before test
Cirzen Jun 3, 2025
d7e26be
Exclude WAP from first time build before the certificate is set
Cirzen Jun 3, 2025
8a0c782
Update Visual Studio version in waproj
Cirzen Jun 3, 2025
e53207c
Add runtime identifiers to csproj
Cirzen Jun 3, 2025
346b0d6
Universally target x64
Cirzen Jun 3, 2025
441c9c7
Update version in AppxManifest
Cirzen Jun 3, 2025
420b352
reintroduce x86 - build not happy
Cirzen Jun 3, 2025
55498e2
Remove x64 runtime
Cirzen Jun 3, 2025
74d9059
Pass runtime to msbuild
Cirzen Jun 3, 2025
ddd80de
Pass platform in build step
Cirzen Jun 3, 2025
cd1588d
Use solution filter for build
Cirzen Jun 3, 2025
4b26d4f
Add envvar with filter file
Cirzen Jun 3, 2025
19d2abc
Update pipeline to create assets
Cirzen Jun 6, 2025
d9a4ca6
Update action pipeline
Cirzen Jun 6, 2025
6ec8253
Merge branch 'main' into feature/github-workflow
Cirzen Jun 7, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
155 changes: 155 additions & 0 deletions .github/workflows/dotnet-desktop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.

# This workflow will build, test, sign and package a WPF or Windows Forms desktop application
# built on .NET Core.
# To learn how to migrate your existing application to .NET Core,
# refer to https://docs.microsoft.com/en-us/dotnet/desktop-wpf/migration/convert-project-from-net-framework
#

name: .NET Core Desktop

on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]

jobs:

build:

strategy:
matrix:
configuration: [Release]
platform: [x86]

runs-on: windows-latest # For a list of available runner types, refer to
# https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on

env:
Solution_Name: TwelveToneTech.StrandsSolver.sln
Solution_Name_NoAppPkg: TwelveToneTech.StrandsSolver_NoAppPkg.slnf
Test_Project_Path: Solver.Tests\Solver.Tests.csproj
Wap_Project_Directory: WindowsApplicationPackaging
Wap_Project_Path: WindowsApplicationPackaging\WindowsApplicationPackaging.wapproj

steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

# Install the .NET Core workload
- name: Install .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x

# Add MSBuild to the PATH: https://github.com/microsoft/setup-msbuild
- name: Setup MSBuild.exe
uses: microsoft/setup-msbuild@v2

# Restore the application to populate the obj folder with RuntimeIdentifiers
- name: Restore the application
run: msbuild $env:Solution_Name /t:Restore /p:Configuration=$env:Configuration
env:
Configuration: ${{ matrix.configuration }}

# Build the solution
- name: Build the solution
run: msbuild $env:Solution_Name_NoAppPkg /t:Build /p:Configuration=$env:Configuration /p:"ExcludeProjectsFromBuild=WindowsApplicationPackaging" /p:RuntimeIdentifiers="win-x86" /p:Platform="x86"
env:
Configuration: ${{ matrix.configuration }}

# Execute all unit tests in the solution
- name: Execute unit tests
run: dotnet test --configuration ${{ matrix.configuration }} --no-build --verbosity normal $env:Test_Project_Path

# Decode the base 64 encoded pfx and save the Signing_Certificate
- name: Decode the pfx
id: decode_pfx
run: |
$pfx_cert_byte = [System.Convert]::FromBase64String("${{ secrets.Base64_Encoded_Pfx }}")
$certificatePath = Join-Path -Path $env:Wap_Project_Directory -ChildPath GitHubActionsWorkflow.pfx
New-Item -Path $certificatePath -Force
[IO.File]::WriteAllBytes("$certificatePath", $pfx_cert_byte)

# Create the app package by building and packaging the Windows Application Packaging project
- name: Create the app package
run: msbuild $env:Wap_Project_Path /p:Configuration=$env:Configuration /p:UapAppxPackageBuildMode=$env:Appx_Package_Build_Mode /p:AppxBundle=$env:Appx_Bundle /p:PackageCertificateKeyFile=GitHubActionsWorkflow.pfx /p:PackageCertificatePassword='${{ secrets.Pfx_Key }}'
env:
Appx_Bundle: Always
Appx_Bundle_Platforms: x86|x64
Appx_Package_Build_Mode: SideloadOnly
Configuration: ${{ matrix.configuration }}

# Remove the pfx
- name: Remove the pfx
run: Remove-Item -path $env:Wap_Project_Directory\GitHubActionsWorkflow.pfx -Force
if: ${{ steps.decode_pfx.outcome == 'success' }}

# Upload the MSIX package: https://github.com/marketplace/actions/upload-a-build-artifact
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: MSIX Package
path: ${{ env.Wap_Project_Directory }}\AppPackages

# Find the Release ZIP package file to be uploaded to the release
- name: Find Release Package (ZIP)
id: find_zip_package
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
run: |
$zipPath = (Get-ChildItem -Path "${{ env.Wap_Project_Directory }}\AppPackages" -Recurse -Filter "*.zip" | Select-Object -First 1).FullName
If (-not $zipPath) {
Write-Error "Release ZIP package not found in ${{ env.Wap_Project_Directory }}\AppPackages"
exit 1
}
Write-Host "Found ZIP package: $zipPath"
echo "zip_path=$zipPath" >> $env:GITHUB_OUTPUT
$zipName = Split-Path -Path $zipPath -Leaf
echo "zip_name=$zipName" >> $env:GITHUB_OUTPUT
shell: pwsh

# Set Date-Based Version for the Release
- name: Set Date-Based Version
id: version_generator
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
shell: pwsh
run: |
$version = (Get-Date -Format "yyyy.MM.dd") + ".${{ github.run_number }}"
Write-Host "Generated Version: $version"
echo "version_number=$version" >> $env:GITHUB_OUTPUT

# Create a GitHub Release
- name: Create Release
id: create_release
uses: ncipollo/release-action@v1
if: github.event_name == 'push' && github.ref == 'refs/heads/main' && steps.find_zip_package.outputs.zip_path != '' && steps.version_generator.outputs.version_number != ''
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag: v${{ steps.version_generator.outputs.version_number }}
name: Release v${{ steps.version_generator.outputs.version_number }}
body: |
Automated release v${{ steps.version_generator.outputs.version_number }}.
Commit: ${{ github.sha }}
Release package (ZIP) attached. This ZIP contains the application bundle and an install.ps1 script for installing the self-signed certificate and the application.
draft: false
prerelease: false
allowUpdates: true

# Upload the ZIP package as a release asset
- name: Upload Release Asset (ZIP Package)
uses: actions/upload-release-asset@v1
if: github.event_name == 'push' && github.ref == 'refs/heads/main' && steps.find_zip_package.outputs.zip_path != '' && steps.create_release.outputs.upload_url != ''
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ${{ steps.find_zip_package.outputs.zip_path }}
asset_name: ${{ steps.find_zip_package.outputs.zip_name }}
asset_content_type: application/zip
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,5 @@ riderModule.iml
/.idea/
*.cache
*.pfx
/WindowsApplicationPackaging/WindowsApplicationPackaging.assets.cache
/WindowsApplicationPackaging/WindowsApplicationPackaging.wapproj.user
2 changes: 1 addition & 1 deletion Solver.Tests/Solver.Tests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
<PackageReference Include="coverlet.collector" Version="6.0.0"/>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.13.0"/>
<PackageReference Include="xunit" Version="2.9.3"/>
<PackageReference Include="xunit.runner.visualstudio" Version="3.0.0"/>
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.0"/>
</ItemGroup>

<ItemGroup>
Expand Down
6 changes: 2 additions & 4 deletions Solver/Solver.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,12 @@
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net8.0-windows</TargetFramework>
<RuntimeIdentifiers>win-x86</RuntimeIdentifiers>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<UseWPF>true</UseWPF>
<StartupObject>Solver.App</StartupObject>
<IsTestProject>false</IsTestProject>
</PropertyGroup>

<ItemGroup>
Expand Down Expand Up @@ -64,8 +66,4 @@
</Content>
</ItemGroup>

<ItemGroup>
<Folder Include="Tests\" />
</ItemGroup>

</Project>
86 changes: 86 additions & 0 deletions TwelveToneTech.StrandsSolver.sln
Original file line number Diff line number Diff line change
@@ -1,22 +1,108 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.14.36127.28
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Solver", "Solver\Solver.csproj", "{0123EE1B-4E39-40D2-9524-CFD549183C6F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Solver.Tests", "Solver.Tests\Solver.Tests.csproj", "{F16E4A65-3C93-49C2-B660-6D46593222E5}"
EndProject
Project("{C7167F0D-BC9F-4E6E-AFE1-012C56B48DB5}") = "WindowsApplicationPackaging", "WindowsApplicationPackaging\WindowsApplicationPackaging.wapproj", "{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Github Workflows", "Github Workflows", "{02EA681E-C7D8-13C7-8484-4AC65E1B71E8}"
ProjectSection(SolutionItems) = preProject
.github\workflows\dotnet-desktop.yml = .github\workflows\dotnet-desktop.yml
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
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Debug|ARM.ActiveCfg = Debug|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Debug|ARM.Build.0 = Debug|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Debug|ARM64.Build.0 = Debug|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Debug|x64.ActiveCfg = Debug|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Debug|x64.Build.0 = Debug|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Debug|x86.ActiveCfg = Debug|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Debug|x86.Build.0 = Debug|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Release|Any CPU.Build.0 = Release|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Release|ARM.ActiveCfg = Release|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Release|ARM.Build.0 = Release|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Release|ARM64.ActiveCfg = Release|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Release|ARM64.Build.0 = Release|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Release|x64.ActiveCfg = Release|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Release|x64.Build.0 = Release|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Release|x86.ActiveCfg = Release|Any CPU
{0123EE1B-4E39-40D2-9524-CFD549183C6F}.Release|x86.Build.0 = Release|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Debug|ARM.ActiveCfg = Debug|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Debug|ARM.Build.0 = Debug|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Debug|ARM64.Build.0 = Debug|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Debug|x64.ActiveCfg = Debug|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Debug|x64.Build.0 = Debug|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Debug|x86.ActiveCfg = Debug|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Debug|x86.Build.0 = Debug|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Release|Any CPU.Build.0 = Release|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Release|ARM.ActiveCfg = Release|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Release|ARM.Build.0 = Release|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Release|ARM64.ActiveCfg = Release|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Release|ARM64.Build.0 = Release|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Release|x64.ActiveCfg = Release|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Release|x64.Build.0 = Release|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Release|x86.ActiveCfg = Release|Any CPU
{F16E4A65-3C93-49C2-B660-6D46593222E5}.Release|x86.Build.0 = Release|Any CPU
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|ARM.ActiveCfg = Debug|ARM
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|ARM.Build.0 = Debug|ARM
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|ARM.Deploy.0 = Debug|ARM
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|ARM64.ActiveCfg = Debug|ARM64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|ARM64.Build.0 = Debug|ARM64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|ARM64.Deploy.0 = Debug|ARM64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|x64.ActiveCfg = Debug|x64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|x64.Build.0 = Debug|x64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|x64.Deploy.0 = Debug|x64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|x86.ActiveCfg = Debug|x86
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|x86.Build.0 = Debug|x86
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Debug|x86.Deploy.0 = Debug|x86
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|Any CPU.Build.0 = Release|Any CPU
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|Any CPU.Deploy.0 = Release|Any CPU
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|ARM.ActiveCfg = Release|ARM
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|ARM.Build.0 = Release|ARM
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|ARM.Deploy.0 = Release|ARM
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|ARM64.ActiveCfg = Release|ARM64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|ARM64.Build.0 = Release|ARM64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|ARM64.Deploy.0 = Release|ARM64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|x64.ActiveCfg = Release|x64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|x64.Build.0 = Release|x64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|x64.Deploy.0 = Release|x64
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|x86.ActiveCfg = Release|x86
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|x86.Build.0 = Release|x86
{9DFF2B8C-CE3F-4AA0-91BB-04BD77CC3B50}.Release|x86.Deploy.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {69EECC46-AFB1-4106-B9FA-F13EA86AAA57}
EndGlobalSection
EndGlobal
9 changes: 9 additions & 0 deletions TwelveToneTech.StrandsSolver_NoAppPkg.slnf
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"solution": {
"path": "TwelveToneTech.StrandsSolver.sln",
"projects": [
"Solver.Tests\\Solver.Tests.csproj",
"Solver\\Solver.csproj"
]
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
52 changes: 52 additions & 0 deletions WindowsApplicationPackaging/Package.appxmanifest
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="utf-8"?>

<Package
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
xmlns:uap18="http://schemas.microsoft.com/appx/manifest/uap/windows10/18"
IgnorableNamespaces="uap rescap uap18">

<Identity
Name="49e56444-6479-469d-b092-becb81c46897"
Publisher="CN=TwelveToneTech"
Version="0.0.1.0" />

<Properties>
<DisplayName>TwelveToneTech.Solver</DisplayName>
<PublisherDisplayName>Twelve Tone Tech</PublisherDisplayName>
<Logo>Images\StoreLogo.png</Logo>
</Properties>

<Dependencies>
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.0.0" MaxVersionTested="10.0.0.0" />
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.14393.0" MaxVersionTested="10.0.14393.0" />
</Dependencies>

<Resources>
<Resource Language="x-generate"/>
</Resources>

<Applications>
<Application Id="App"
Executable="$targetnametoken$.exe"
EntryPoint="$targetentrypoint$" uap18:RuntimeBehavior="windowsApp">
<uap:VisualElements
DisplayName="Solver"
Description="Word solver"
BackgroundColor="transparent"
Square150x150Logo="Images\Square150x150Logo.png"
Square44x44Logo="Images\Square44x44Logo.png">
<uap:DefaultTile Wide310x150Logo="Images\Wide310x150Logo.png" Square71x71Logo="Images\SmallTile.png" Square310x310Logo="Images\LargeTile.png" ShortName="Solver"/>
<uap:SplashScreen Image="Images\SplashScreen.png" />
<uap:InitialRotationPreference>
<uap:Rotation Preference="landscape"/>
<uap:Rotation Preference="landscapeFlipped"/></uap:InitialRotationPreference>
</uap:VisualElements>
</Application>
</Applications>

<Capabilities>
<rescap:Capability Name="runFullTrust" />
</Capabilities>
</Package>
Loading
Loading