Skip to content

Commit 7212312

Browse files
authored
Deprecate Microsoft.ReactNative.WindowsAppSDK project (#11945)
## Description This PR deprecates the `Microsoft.ReactNative.WindowsAppSDK` project. ### Type of Change - Breaking change (fix or feature that would cause existing functionality to not work as expected) - This change requires a documentation update ### Why These projects/templates were early, experimental work for a future of RNW apps being WinAppSDK-based. Since we're not going in that direction, we shouldn't persist allowing projects to be created using it. Resolves #11744 ### What * Deleting the `Microsoft.ReactNative.WindowsAppSDK` project files * Removing all jobs/tasks related to building/testing/publishing `Microsoft.ReactNative.WindowsAppSDK` * Removes the `cs-app-WinAppSDK` app template and specific new project creation code **Note:** The existing `UseWinUI3` msbuild property and corresponding `USE_WINUI3` build flags are intentionally not touched in this PR, to maintain the minimum support for some customers. ## Screenshots N/A ## Testing N/A ## Changelog Should this change be included in the release notes: Yes The Microsoft.ReactNative.WindowsAppSDK experimental project has been deprecated and will no longer be supported.
1 parent a770a84 commit 7212312

34 files changed

+34
-1072
lines changed

.ado/jobs/cli-init.yml

Lines changed: 2 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,6 @@ parameters:
1010
- name: buildNuGetOnly
1111
type: boolean
1212
default: false
13-
- name: buildWinAppSDKOnly
14-
type: boolean
15-
default: false
1613
- name: buildMatrix
1714
type: object
1815
default:
@@ -54,23 +51,6 @@ parameters:
5451
platform: x86
5552
projectType: lib
5653
additionalRunArguments: --no-autolink --no-deploy
57-
# #8132 Support for C++ WinAppSDK apps
58-
# - Name: X86DebugCppWinUI3
59-
# language: cpp
60-
# configuration: Debug
61-
# platform: x86
62-
# projectType: app
63-
# additionalInitArguments: --useWinUI3 true --nuGetTestFeed $(System.DefaultWorkingDirectory)\NuGetTestFeed
64-
# additionalRunArguments: --no-deploy
65-
# useWinAppSDK: true
66-
- Name: X64DebugCsWinUI3
67-
language: cs
68-
configuration: Debug
69-
platform: x64
70-
projectType: app
71-
additionalInitArguments: --useWinUI3 true --nuGetTestFeed $(System.DefaultWorkingDirectory)\NuGetTestFeed
72-
additionalRunArguments: --no-deploy
73-
useWinAppSDK: true
7454
- Name: X86DebugCppHermes
7555
language: cpp
7656
configuration: Debug
@@ -154,23 +134,6 @@ parameters:
154134
platform: x86
155135
projectType: lib
156136
additionalRunArguments: --no-autolink --no-deploy
157-
# #8132 Support for C++ WinAppSDK apps
158-
# - Name: X86DebugCppWinUI3
159-
# language: cpp
160-
# configuration: Debug
161-
# platform: x86
162-
# projectType: app
163-
# additionalInitArguments: --useWinUI3 true --nuGetTestFeed $(System.DefaultWorkingDirectory)\NuGetTestFeed
164-
# additionalRunArguments: --no-deploy
165-
# useWinAppSDK: true
166-
- Name: X64DebugCsWinUI3
167-
language: cs
168-
configuration: Debug
169-
platform: x64
170-
projectType: app
171-
additionalInitArguments: --useWinUI3 true --nuGetTestFeed $(System.DefaultWorkingDirectory)\NuGetTestFeed
172-
additionalRunArguments: --no-deploy
173-
useWinAppSDK: true
174137
- Name: X86DebugCppHermes
175138
language: cpp
176139
configuration: Debug
@@ -310,18 +273,14 @@ jobs:
310273
- ${{ each config in parameters.buildMatrix }}:
311274
- ${{ if eq(config.BuildEnvironment, parameters.buildEnvironment) }}:
312275
- ${{ each matrix in config.Matrix }}:
313-
- ${{ if and(eq(coalesce(matrix.useNuGet, false), parameters.buildNuGetOnly), eq(coalesce(matrix.useWinAppSDK, false), parameters.buildWinAppSDKOnly))}}:
276+
- ${{ if eq(coalesce(matrix.useNuGet, false), parameters.buildNuGetOnly) }}:
314277
- job: CliInit${{ matrix.Name }}
315278
displayName: Verify Cli ${{ matrix.Name }}
316279

317280
${{ if eq(matrix.useNuGet, true) }}:
318281
dependsOn:
319282
- UniversalBuild${{ matrix.platform }}Release
320283

321-
${{ if eq(matrix.useWinAppSDK, true) }}:
322-
dependsOn:
323-
- WinAppSDKX64Release
324-
325284
variables: [template: ../variables/windows.yml]
326285

327286
${{ if eq(matrix.lowResource, true) }}:
@@ -360,5 +319,4 @@ jobs:
360319
additionalRunArguments: ${{ matrix.additionalRunArguments }}
361320
runWack: ${{ coalesce(matrix.runWack, false) }}
362321
buildEnvironment: ${{ parameters.buildEnvironment }}
363-
useNuGet: ${{ coalesce(matrix.useNuGet, false) }}
364-
useWinAppSDK: ${{ coalesce(matrix.useWinAppSDK, false) }}
322+
useNuGet: ${{ coalesce(matrix.useNuGet, false) }}

.ado/jobs/playground.yml

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,6 @@ parameters:
4242
BuildConfiguration: Debug
4343
BuildPlatform: x64
4444
SolutionFile: ..\CoreApp\CoreApp.sln
45-
# Disabling until WinAppSDK is working e2e
46-
# - Name: X86DebugWinUI3
47-
# BuildConfiguration: Debug
48-
# BuildPlatform: x86
49-
# SolutionFile: Playground.sln
50-
# BuildWinUI3: true
5145
- BuildEnvironment: Continuous
5246
Matrix:
5347
- Name: X86DebugUniversal
@@ -83,13 +77,6 @@ parameters:
8377
BuildConfiguration: Debug
8478
BuildPlatform: x64
8579
SolutionFile: ..\CoreApp\CoreApp.sln
86-
# Disabling until WinAppSDK is working e2e
87-
# - Name: X86DebugWinUI3
88-
# BuildConfiguration: Debug
89-
# BuildPlatform: x86
90-
# SolutionFile: Playground.sln
91-
# BuildWinUI3: true
92-
# UploadAppx: true
9380

9481
jobs:
9582
- ${{ each config in parameters.buildMatrix }}:
@@ -114,13 +101,6 @@ jobs:
114101
configuration: ${{ matrix.BuildConfiguration }}
115102
buildEnvironment: ${{ config.BuildEnvironment }}
116103

117-
- ${{ if eq(matrix.BuildWinUI3, true) }}:
118-
- template: ../templates/set-experimental-feature.yml
119-
parameters:
120-
package: packages/playground
121-
feature: UseWinUI3
122-
value: true
123-
124104
- ${{if eq(config.BuildEnvironment, 'Continuous')}}:
125105
- template: ../templates/write-certificate.yml
126106
parameters:

.ado/jobs/windowsappsdk.yml

Lines changed: 0 additions & 83 deletions
This file was deleted.

.ado/publish.yml

Lines changed: 1 addition & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -270,62 +270,12 @@ jobs:
270270
SearchPattern: vnext/target/**/*.pdb
271271
SymbolServerType: TeamServices
272272

273-
- job: RnwNativeBuildWinAppSDK
274-
displayName: Build WinAppSDK
275-
dependsOn: RnwNpmPublish
276-
strategy:
277-
matrix:
278-
X64Release:
279-
BuildConfiguration: Release
280-
BuildPlatform: x64
281-
pool: ${{ parameters.AgentPool.Large }}
282-
283-
steps:
284-
- template: templates/prepare-js-env.yml
285-
286-
- template: templates/prepare-build-env.yml
287-
parameters:
288-
platform: $(BuildPlatform)
289-
configuration: $(BuildConfiguration)
290-
buildEnvironment: Publish
291-
292-
- template: templates/apply-published-version-vars.yml
293-
294-
- template: templates/msbuild-sln.yml
295-
parameters:
296-
solutionDir: vnext
297-
solutionName: Microsoft.ReactNative.WindowsAppSDK.sln
298-
buildPlatform: $(BuildPlatform)
299-
buildConfiguration: $(BuildConfiguration)
300-
msbuildArguments:
301-
/p:UseWinUI3=true
302-
warnAsError: false # Disable warn as error until we fix #8312
303-
304-
- template: templates/publish-build-artifacts.yml
305-
parameters:
306-
artifactName: WindowsAppSDK
307-
buildPlatform: $(BuildPlatform)
308-
buildConfiguration: $(BuildConfiguration)
309-
contents: |
310-
Microsoft.ReactNative\**
311-
Microsoft.ReactNative.WindowsAppSDK\**
312-
313-
- template: templates/component-governance.yml
314-
315-
# Make symbols available through http://symweb.
316-
- task: PublishSymbols@2
317-
displayName: Publish symbols
318-
inputs:
319-
SearchPattern: vnext/target/**/*.pdb
320-
SymbolServerType: TeamServices
321-
322273
- job: RNWNuget
323274
dependsOn:
324275
- RnwNpmPublish
325276
- ${{ each matrix in parameters.desktopBuildMatrix }}:
326277
- RnwNativeBuildDesktop${{ matrix.Name }}
327278
- RnwNativeBuildUniversal
328-
- RnwNativeBuildWinAppSDK
329279
displayName: Sign Binaries and Publish NuGet
330280
pool: ${{ parameters.AgentPool.Medium }}
331281

@@ -411,20 +361,7 @@ jobs:
411361
- platform: x86
412362
configuration: Debug
413363
# - platform: ARM64
414-
# configuration: Debug
415-
416-
- template: templates/prep-and-pack-nuget.yml
417-
parameters:
418-
artifactName: WindowsAppSDK
419-
publishCommitId: $(publishCommitId)
420-
npmVersion: $(npmVersion)
421-
nugetroot: $(System.DefaultWorkingDirectory)\WindowsAppSDK
422-
packMicrosoftReactNativeWindowsAppSDK: true
423-
${{ if or(eq(variables['EnableCodesign'], 'true'), endsWith(variables['Build.SourceBranchName'], '-stable')) }}: # Sign if EnableCodeSign or on *-stable release builds
424-
signMicrosoft: true
425-
slices:
426-
- platform: x64
427-
configuration: Release
364+
# configuration: Debug
428365

429366
- task: AzureArtifacts.manifest-generator-task.manifest-generator-task.ManifestGeneratorTask@0
430367
displayName: 📒 Generate Manifest Nuget

.ado/stages.yml

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -33,23 +33,12 @@ stages:
3333
parameters:
3434
AgentPool: ${{ parameters.AgentPool }}
3535

36-
- template: jobs/windowsappsdk.yml
37-
parameters:
38-
buildEnvironment: ${{ parameters.buildEnvironment }}
39-
AgentPool: ${{ parameters.AgentPool }}
40-
4136
# NuGet using tests rely on "UniversalBuild" which is done in the build stage
4237
- template: jobs/cli-init.yml
4338
parameters:
4439
buildEnvironment: ${{ parameters.buildEnvironment }}
4540
AgentPool: ${{ parameters.AgentPool }}
4641
buildNuGetOnly: true
47-
48-
- template: jobs/cli-init.yml
49-
parameters:
50-
buildEnvironment: ${{ parameters.buildEnvironment }}
51-
AgentPool: ${{ parameters.AgentPool }}
52-
buildWinAppSDKOnly: true
5342

5443
- stage: IntegrationTests
5544
displayName: Tests 🧪
@@ -96,4 +85,3 @@ stages:
9685
buildEnvironment: ${{ parameters.buildEnvironment }}
9786
AgentPool: ${{ parameters.AgentPool }}
9887
buildNuGetOnly: false
99-
buildWinAppSDKOnly: false

.ado/templates/prep-and-pack-nuget.yml

Lines changed: 1 addition & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,6 @@ parameters:
3131
- name: packMicrosoftReactNativeManagedCodeGen
3232
type: boolean
3333
default: false
34-
- name: packMicrosoftReactNativeWindowsAppSDK
35-
type: boolean
36-
default: false
3734

3835
- name: signMicrosoft
3936
type: boolean
@@ -80,7 +77,7 @@ steps:
8077
filePath: vnext/Scripts/Tfs/Layout-Desktop-Headers.ps1
8178
arguments: -TargetRoot ${{parameters.nugetroot}}
8279

83-
- ${{ if or(eq(parameters.packMicrosoftReactNative, true), eq(parameters.packMicrosoftReactNativeCxx, true), eq(parameters.packMicrosoftReactNativeManaged, true), eq(parameters.packMicrosoftReactNativeManagedCodeGen, true), eq(parameters.packMicrosoftReactNativeWindowsAppsDK, false)) }}:
80+
- ${{ if or(eq(parameters.packMicrosoftReactNative, true), eq(parameters.packMicrosoftReactNativeCxx, true), eq(parameters.packMicrosoftReactNativeManaged, true), eq(parameters.packMicrosoftReactNativeManagedCodeGen, true)) }}:
8481
- powershell: |
8582
(Get-Content -Path ${{parameters.nugetroot}}\Microsoft.ReactNative.VersionCheck.targets) -replace '\$\$nuGetPackageVersion\$\$', '${{parameters.npmVersion}}' | Set-Content -Path ${{parameters.nugetroot}}\Microsoft.ReactNative.VersionCheck.targets
8683
displayName: Patch version check file with version ${{parameters.npmVersion}}
@@ -152,19 +149,3 @@ steps:
152149
buildProperties: CommitId=${{parameters.publishCommitId}};nugetroot=${{parameters.nugetroot}};baseconfiguration=$(baseConfiguration);baseplatform=$(basePlatform)
153150
codesignBinaries: ${{ parameters.signMicrosoft }}
154151
codesignNuget: ${{ parameters.signMicrosoft }}
155-
156-
- ${{ if eq(parameters.packMicrosoftReactNativeWindowsAppsDK, true) }}:
157-
- ${{ if containsValue(parameters.slices.*.configuration, 'Release') }}:
158-
- template: prep-and-pack-single.yml
159-
parameters:
160-
outputPackage: Microsoft.ReactNative.WindowsAppSDK
161-
slices: $(releaseSlices)
162-
packageVersion: ${{parameters.npmVersion}}
163-
codesignBinaries: ${{ parameters.signMicrosoft }}
164-
codesignNuget: ${{ parameters.signMicrosoft }}
165-
buildProperties: CommitId=${{parameters.publishCommitId}};nugetroot=${{parameters.nugetroot}};baseconfiguration=Release;baseplatform=$(releaseBasePlatform)
166-
binariesToSign: |
167-
**/Microsoft.ReactNative.dll
168-
**/Microsoft.ReactNative.winmd
169-
**/Microsoft.ReactNative.WindowsAppSDK.dll
170-

.ado/templates/react-native-init.yml

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,8 @@ parameters:
3737
type: string
3838
default: PullRequest
3939
values:
40-
- PullRequest
41-
- Continuous
42-
- name: useWinAppSDK
43-
type: boolean
44-
default: false
40+
- PullRequest
41+
- Continuous
4542

4643
steps:
4744
- powershell: start-process verdaccio.cmd -ArgumentList @('--config', './.ado/verdaccio/config.yaml')
@@ -77,16 +74,6 @@ steps:
7774
- platform: ${{ parameters.platform }}
7875
configuration: Release
7976

80-
- ${{ if eq(parameters.useWinAppSDK, true) }}:
81-
- template: prep-and-pack-nuget.yml
82-
parameters:
83-
artifactName: WindowsAppSDK
84-
npmVersion: $(npmVersion)
85-
packMicrosoftReactNativeWindowsAppSDK: true
86-
slices:
87-
- platform: x64
88-
configuration: Release
89-
9077
- ${{ if eq(parameters.projectType, 'app') }}:
9178
- script: |
9279
npx --yes react-native@$(reactNativeDevDependency) init testcli --template react-native@$(reactNativeDevDependency)

0 commit comments

Comments
 (0)