Skip to content

Commit f53deb7

Browse files
committed
Resolve Merge Conflicts
2 parents c6eb494 + 33f8909 commit f53deb7

File tree

18 files changed

+264
-111
lines changed

18 files changed

+264
-111
lines changed

.github/ISSUE_TEMPLATE/bug-report.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ body:
3535
label: NuGet package version
3636
description: Specify the version of Windows App SDK (or Project Reunion) you're using.
3737
options:
38-
- "Windows App SDK 1.3.0: 1.3.230331000"
38+
- "Windows App SDK 1.3.1: 1.3.230502000"
3939
- "Windows App SDK 1.3 Preview 1: 1.3.230228005-preview1"
40-
- "Windows App SDK 1.3 Experimental 1: 1.3.230202101-experimental1"
40+
- "Windows App SDK 1.4 Experimental 1: 1.4.230518007-experimental1"
4141
- type: dropdown
4242
attributes:
4343
label: Packaging type

BuildAll.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ if(-not (test-path ".nuget\nuget.exe"))
6868
$configurationForMrtAndAnyCPU = "Release"
6969
$MRTSourcesDirectory = "dev\MRTCore"
7070

71-
$VCToolsInstallDir = . "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -Latest -requires Microsoft.Component.MSBuild -property InstallationPath
71+
$VCToolsInstallDir = . "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -Latest -prerelease -requires Microsoft.Component.MSBuild -property InstallationPath
7272
write-host "VCToolsInstallDir: $VCToolsInstallDir"
7373

7474
$msBuildPath = "$VCToolsInstallDir\MSBuild\Current\Bin\msbuild.exe"

DevCheck.ps1

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -755,7 +755,7 @@ function Test-TAEFService
755755
}
756756

757757
# Double-check the TAEF service is known as a service as far as Windows is concerned
758-
$service = Get-Service |Where-Object {$_.Name -eq "TE.Service"}
758+
$service = Get-Service -ErrorAction SilentlyContinue | Where-Object {$_.Name -eq "TE.Service"}
759759
if ([string]::IsNullOrEmpty($service))
760760
{
761761
Write-Host "TAEF service...Not Installed"
@@ -812,7 +812,7 @@ function Install-TAEFService
812812

813813
$args = '/install:TE.Service'
814814
$output = Run-Process $path $args
815-
$service = Get-Service |Where-Object {$_.Name -eq "TE.Service"}
815+
$service = Get-Service -ErrorAction SilentlyContinue | Where-Object {$_.Name -eq "TE.Service"}
816816
if ([string]::IsNullOrEmpty($service))
817817
{
818818
Write-Host "Install TAEF service...Failed"
@@ -845,7 +845,7 @@ function Uninstall-TAEFService
845845
$filename = Get-TAEFServiceImagePath
846846
$args = '/remove:TE.Service'
847847
$output = Run-Process $filename $args
848-
$service = Get-Service |Where-Object {$_.Name -eq "TE.Service"}
848+
$service = Get-Service -ErrorAction SilentlyContinue | Where-Object {$_.Name -eq "TE.Service"}
849849
if (-not([string]::IsNullOrEmpty($service)))
850850
{
851851
Write-Host "Uninstall TAEF service...Failed"
@@ -870,7 +870,7 @@ function Start-TAEFService
870870
}
871871

872872
$ok = Start-Service 'TE.Service'
873-
$service = Get-Service |Where-Object {$_.Name -eq "TE.Service"}
873+
$service = Get-Service -ErrorAction SilentlyContinue | Where-Object {$_.Name -eq "TE.Service"}
874874
if ($service.Status -ne "Running")
875875
{
876876
Write-Host "Start TAEF service...Failed"
@@ -893,7 +893,7 @@ function Stop-TAEFService
893893
return $false
894894
}
895895

896-
$service = Get-Service |Where-Object {$_.Name -eq "TE.Service"}
896+
$service = Get-Service -ErrorAction SilentlyContinue | Where-Object {$_.Name -eq "TE.Service"}
897897
if ($service -eq $null)
898898
{
899899
return 'NotFound'
@@ -902,7 +902,7 @@ function Stop-TAEFService
902902
{
903903
$ok = Stop-Service 'TE.Service'
904904
}
905-
$service = Get-Service |Where-Object {$_.Name -eq "TE.Service"}
905+
$service = Get-Service -ErrorAction SilentlyContinue | Where-Object {$_.Name -eq "TE.Service"}
906906
if ($service -eq $null)
907907
{
908908
return 'NotFound'
@@ -1316,6 +1316,10 @@ if (($CheckAll -ne $false) -Or ($CheckTestCert -ne $false))
13161316
if ($test -ne $true)
13171317
{
13181318
$null = Repair-DevTestCert
1319+
if ($CheckTestCert)
1320+
{
1321+
Exit 0
1322+
}
13191323
}
13201324
}
13211325

@@ -1384,9 +1388,11 @@ if (($RemoveAll -ne $false) -Or ($RemoveTestPfx -ne $false))
13841388
if ($global:issues -eq 0)
13851389
{
13861390
Write-Output "Coding time!"
1391+
Exit 0
13871392
}
13881393
else
13891394
{
13901395
$n = $global:issues
13911396
Write-Output "$n issue(s) detected"
1397+
Exit 2
13921398
}

build/AzurePipelinesTemplates/WindowsAppSDK-BuildAndTestMRT-Steps.yml renamed to build/AzurePipelinesTemplates/WindowsAppSDK-BuildMRT-Steps.yml

Lines changed: 0 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@ parameters:
55
- name: "IsOneBranch"
66
type: boolean
77
default: True
8-
- name: "RunVSTests"
9-
type: boolean
10-
default: False
118
- name: "RunPrefast"
129
type: boolean
1310
default: False
@@ -57,67 +54,6 @@ steps:
5754
# component detection must happen *within* the build task
5855
- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0
5956

60-
# TODO: Reenable Managed tests after https://microsoft.visualstudio.com/OS/_workitems/edit/44407037
61-
- ${{ if parameters.RunVSTests }}:
62-
# This is required to fix VSTest failing with
63-
# ##[error]This operation requires installation of Visual Studio with the Universal Windows Platform development workload selected
64-
- task: PowerShell@2
65-
displayName: "Installing Microsoft.VisualStudio.Workload.Universal component"
66-
inputs:
67-
targetType: inline
68-
workingDirectory: $(Build.SourcesDirectory)
69-
script: |
70-
Measure-Command {Invoke-Expression "cd C:\'Program Files (x86)\Microsoft Visual Studio'\Installer\; .\vs_installer.exe modify --installPath 'C:\Program Files\Microsoft Visual Studio\2022\Enterprise' --add Microsoft.VisualStudio.Workload.Universal --downloadThenInstall --quiet | Out-Null"; Write-Host "Total time taken:"} | Select-Object Minutes, Seconds
71-
72-
# Run the test locally on the Azure VM.
73-
# Note arm is currently not exercised.
74-
- task: VSTest@2
75-
displayName: 'test MRT: ManagedTests'
76-
condition: and(succeeded(), or(eq(variables['buildPlatform'], 'x86'), eq(variables['buildPlatform'], 'x64')))
77-
inputs:
78-
testSelector: 'testAssemblies'
79-
testAssemblyVer2: '**\MrtCoreManagedTest.build.appxrecipe'
80-
searchFolder: 'BuildOutput\$(buildConfiguration)\$(buildPlatform)\MrtCoreManagedTest'
81-
testRunTitle: 'test MRT: ManagedTests - $(buildPlatform)'
82-
platform: '$(buildPlatform)'
83-
configuration: '$(buildConfiguration)'
84-
85-
- task: VSTest@2
86-
displayName: 'test MRT: UnitTests'
87-
# These 3 MRT test suites were previously being run in Helix, but they are now being run via WindowsAppSDK-RunTestsInPipeline-Job.yml instead.
88-
# Resort to running these tests right here on the current job agent if and only if we've got here from ProjectReunion-CI.yml, because we won't
89-
# be running these tests via WindowsAppSDK-RunTestsInPipeline-Job.yml later in this specific flow. Otherwise, we can generally skip these tests.
90-
condition: and(and(succeeded(), or(eq(variables['buildPlatform'], 'x86'), eq(variables['buildPlatform'], 'x64'))), in(variables['Build.Reason'], 'IndividualCI', 'BatchCI'))
91-
inputs:
92-
testSelector: 'testAssemblies'
93-
testAssemblyVer2: '**\MrmUnitTest.dll'
94-
searchFolder: 'BuildOutput\$(buildConfiguration)\$(buildPlatform)\MrmUnitTest'
95-
testRunTitle: 'test MRT: UnitTests - $(buildPlatform)'
96-
platform: '$(buildPlatform)'
97-
configuration: '$(buildConfiguration)'
98-
99-
- task: VSTest@2
100-
displayName: 'test MRT: BaseUnitTests'
101-
condition: and(and(succeeded(), or(eq(variables['buildPlatform'], 'x86'), eq(variables['buildPlatform'], 'x64'))), in(variables['Build.Reason'], 'IndividualCI', 'BatchCI'))
102-
inputs:
103-
testSelector: 'testAssemblies'
104-
testAssemblyVer2: '**\MrmBaseUnitTests.dll'
105-
searchFolder: 'BuildOutput\$(buildConfiguration)\$(buildPlatform)\MrmBaseUnitTests'
106-
testRunTitle: 'test MRT: BaseUnitTests - $(buildPlatform)'
107-
platform: '$(buildPlatform)'
108-
configuration: '$(buildConfiguration)'
109-
110-
- task: VSTest@2
111-
displayName: 'test MRT: UnpackagedTests'
112-
condition: and(and(succeeded(), or(eq(variables['buildPlatform'], 'x86'), eq(variables['buildPlatform'], 'x64'))), in(variables['Build.Reason'], 'IndividualCI', 'BatchCI'))
113-
inputs:
114-
testSelector: 'testAssemblies'
115-
testAssemblyVer2: '**\MRTCoreUnpackagedTests.dll'
116-
searchFolder: 'BuildOutput\$(buildConfiguration)\$(buildPlatform)\MrtCoreUnpackagedTests'
117-
testRunTitle: 'test MRT: UnpackagedTests - $(buildPlatform)'
118-
platform: '$(buildPlatform)'
119-
configuration: '$(buildConfiguration)'
120-
12157
- ${{ if eq(parameters.SignOutput, 'true') }}:
12258
- task: EsrpCodeSigning@2
12359
inputs:

build/AzurePipelinesTemplates/WindowsAppSDK-BuildTransportPackage-Stage.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ stages:
8383
SignOutput: ${{ parameters.SignOutput }}
8484
IsOneBranch: ${{ parameters.IsOneBranch }}
8585

86-
- job: BuildAndTestMRT
86+
- job: BuildMRT
8787
pool:
8888
# read more about custom job pool types at https://aka.ms/obpipelines/yaml/jobs
8989
${{ if parameters.IsOneBranch }}:
@@ -117,7 +117,7 @@ stages:
117117
ob_sdl_suppression_suppressionSet: default
118118
ob_artifactBaseName: "MrtBinaries_$(buildConfiguration)_$(buildPlatform)"
119119
steps:
120-
- template: WindowsAppSDK-BuildAndTestMRT-Steps.yml@self
120+
- template: WindowsAppSDK-BuildMRT-Steps.yml@self
121121
parameters:
122122
SignOutput: ${{ parameters.SignOutput }}
123123
IsOneBranch: ${{ parameters.IsOneBranch }}
@@ -130,15 +130,15 @@ stages:
130130
isArm64Platfrom: false
131131
dependsOn:
132132
- BuildBinaries
133-
- BuildAndTestMRT
133+
- BuildMRT
134134

135135
- template: WindowsAppSDK-RunTestsInPipeline-Job.yml@self
136136
parameters:
137137
jobName: PipelineTestsArm64
138138
isArm64Platfrom: true
139139
dependsOn:
140140
- BuildBinaries
141-
- BuildAndTestMRT
141+
- BuildMRT
142142

143143
- job: NugetPackage
144144
pool:
@@ -153,7 +153,7 @@ stages:
153153
dependsOn:
154154
- BuildBinaries
155155
- BuildBinaries_release_anycpu
156-
- BuildAndTestMRT
156+
- BuildMRT
157157
condition: or(succeeded(), eq(${{ parameters.IgnoreFailures }}, 'true'))
158158
variables:
159159
ob_outputDirectory: '$(REPOROOT)\out'

build/ProjectReunion-CI.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ jobs:
135135
steps:
136136
- task: NuGetToolInstaller@1
137137

138-
- template: AzurePipelinesTemplates\WindowsAppSDK-BuildAndTestMRT-Steps.yml
138+
- template: AzurePipelinesTemplates\WindowsAppSDK-BuildMRT-Steps.yml
139139

140140
- task: PublishBuildArtifacts@1
141141
displayName: 'Publish BuildOutput'
@@ -144,7 +144,7 @@ jobs:
144144
PathtoPublish: '$(buildOutputDir)'
145145

146146
# We no longer run MRT tests in Helix here, due to dwindling Helix support. But one MRT test suite
147-
# is still being run in WindowsAppSDK-BuildAndTestMRT-Steps.yml.
147+
# is still being run in WindowsAppSDK-BuildMRT-Steps.yml.
148148

149149
- job: StageAndPack
150150
pool:

build/WindowsAppSDK-SyncMirroredRepository.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@ parameters:
66
develop: develop
77
main: main
88
release/1.3-stable: release/1.3-stable
9+
release/1.4-stable: release/1.4-stable
910

1011
jobs:
1112
- job: SyncMirror
1213
strategy:
13-
matrix:
14+
matrix:
1415
${{ each branches in parameters.SourceToTargetBranch }}:
1516
${{ branches.key }}:
1617
SourceBranch: ${{ branches.key }}

dev/MRTCore/mrt/Microsoft.Windows.ApplicationModel.Resources/src/ResourceContext.cpp

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright (c) Microsoft Corporation and Contributors.
1+
// Copyright (c) Microsoft Corporation and Contributors.
22
// Licensed under the MIT License.
33

44
#include "pch.h"
@@ -40,13 +40,9 @@ void ResourceContext::InitializeQualifierNames()
4040

4141
void ResourceContext::InitializeQualifierValueMap()
4242
{
43-
if (m_qualifierNames.empty())
44-
{
43+
std::call_once(m_areQualifierNamesAndValueMapInitialized, [this] {
4544
InitializeQualifierNames();
46-
}
4745

48-
if (m_qualifierValueMap == nullptr)
49-
{
5046
m_qualifierValueMap = single_threaded_map<hstring, hstring>();
5147

5248
if (m_resourceContext != nullptr)
@@ -74,7 +70,7 @@ void ResourceContext::InitializeQualifierValueMap()
7470
{
7571
m_qualifierValueMap.Insert(c_languageQualifierName, GetLangugageContext());
7672
}
77-
}
73+
});
7874
}
7975

8076
winrt::Windows::Foundation::Collections::IMap<hstring, hstring> ResourceContext::QualifierValues()

dev/MRTCore/mrt/Microsoft.Windows.ApplicationModel.Resources/src/ResourceContext.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright (c) Microsoft Corporation and Contributors.
1+
// Copyright (c) Microsoft Corporation and Contributors.
22
// Licensed under the MIT License.
33

44
#pragma once
@@ -23,6 +23,7 @@ struct ResourceContext : ResourceContextT<ResourceContext>
2323
void InitializeQualifierValueMap();
2424
hstring GetLangugageContext();
2525

26+
std::once_flag m_areQualifierNamesAndValueMapInitialized;
2627
MrmContextHandle m_resourceContext = nullptr;
2728
com_array<hstring> m_qualifierNames;
2829
winrt::Windows::Foundation::Collections::IMap<hstring, hstring> m_qualifierValueMap = nullptr;

0 commit comments

Comments
 (0)