Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WASDK 1.7] Delegate to OS RegFreeWinRT + DynamicDependencies when available (>=24H1) #5112

Merged

Conversation

DrusTheAxe
Copy link
Member

@DrusTheAxe DrusTheAxe commented Feb 6, 2025

cherry-pick 3959f0d
Bootstrapper formatting bad DDLM package name in FindDDLMViaEnumeration() #5106

cherry-pick 882cd4d
Reapply "Delegate to OS RegFreeWinRT when available (>=24H1) (#4728)" (#4935) #4949

https://task.ms/47326505

DrusTheAxe and others added 2 commits February 6, 2025 11:11
…#4935) (#4949)

* Reapply "Delegate to OS RegFreeWinRT when available (>=24H1) (#4728)" (#4935)

This reverts commit c088336.

* Added missing dependencies for OAuth2ManagerTests

* Expanded tests

* Modified IsSupported with temporary debugging hack to expedite testing. Added local hackery for Architectures=None (but is it needed?)

* Removed debug hackery

* Test fixes

* More test fiddling

* Microsoft.Windows.BadgeNotifications.Projection project is missing a build-order dependency on WindowsAppRuntime_DLL so depending on timing and beefy machine it can try to build before the dependency is built and boom :-(

* Removed redundant Import

* Fixed bad merge

* Fixed WinAppSDK framework package family name construction in GetFrameworkPackageFamilyName() [MddBootstrap.cpp]. This is used in production when delegating to OS DynDep but not when using WinAppSDK DynDep (and test support used different codepath). That's why test packages with blah-major.minor... package names worked in test and on Win10 but not when delegating to OS DynDep on Win11. Added additional test tools to aid verification and debugging (now and in any future changes).

* Fixed DevCheck -CheckDependencies if packages.config has no <package> elements. Ran DevCheck -SyncDependencies to update stale dependencies

* Fix test framework package Name from name-major.minor to name.major.minor

* Workaround Windows bug https://task.ms/54835001 where IsPackage*ReadyOrNewerAvailable() doesn't correctly handle ProcessorArchitectureFilter=None

* Ran devcheck -syncdependencies

* Fixed failing PackageManagementTests

* Updated dependnecies via DevCheck -SyncDependencies. Removed unused Microsoft.Windows.SDK.BuildTools and Microsoft.WindowsAppSDK references in WindowsAppRuntime_UniversalBGTaskDLL's packages.config. Removed dead readme.txt in WindowsAppRuntime_UniversalBGTaskDLL projectdir (artifact of VS File/NewProject...).

* Updated link to latest SDK rev

* Fixed dependencies (syntax and usage

* Put WindowsAppRuntime_UniversalBGTaskDLL back to what's in main. No idea why that works but changing it -- in what should be innocuous ways -- breaks local + pipeline builds. Deferring that problem to Will Thant in its own right (not relevant to my changes)

* Fixed hardcoded versions in OAuthTestApp.vcxproj (wasn't using version macro)

* Fixed more bad projects - Import Microsoft.Cpp.Default.props not at the top, .. pathing to nugets and hardwired nuget versions

* Fixed WindowsAppRuntime_UniversalBGTaskDLL - Import Microsoft.Cpp.Default.props not at top of file, not using $(NugetPackageDirectory) for pathing to nugets, hardwired versions for nugets, unnecessary Microsoft.WindowsAppSDK in packages.config

* Added -ShowSystemInfo (default=$true) to Testall so test run output includes basic system info

* Fixed up test Main+Singleton+DDLM naming/constants

* Fixed bug in package name constant

* Added missing project dependencies. Updated ConfigurationManager to build test packages on ARM64 too (some were only build for x64|x86)

* Fixed bad merge

* Fixed a bad merge

* Removed temporary debugging code

* Some test packages lacked ARM64 support, plus those and others weren't getting built for ARM64. And some projects built not-ARM64 for ARM64. Mostly fixed. Some test projects lack ARM64 support but not touched as not blocking here and overdue already; they can (and will) be handled in a separate follow up effort

* Fixed one more ARM configuration manager misconfiguration

---------

Co-authored-by: Kyaw Thant <[email protected]>
…ooking for DDLM packages named ...ddlm-version... rather than ...ddlm.version... Local tests passed as they were named with dash but product DDLMs are named with . causing toplevel tests using production packages to fail. Fixed and updated local tests to use naming consistent with product to prevent future confusion (#5106)
@DrusTheAxe DrusTheAxe added this to the 1.7 milestone Feb 6, 2025
@DrusTheAxe DrusTheAxe self-assigned this Feb 6, 2025
@DrusTheAxe DrusTheAxe changed the title User/drustheaxe/dyn dep delegate to os Delegate to OS RegFreeWinRT + DynamicDependencies when available (>=24H1) Feb 6, 2025
@DrusTheAxe DrusTheAxe changed the title Delegate to OS RegFreeWinRT + DynamicDependencies when available (>=24H1) [WASDK 1.7] Delegate to OS RegFreeWinRT + DynamicDependencies when available (>=24H1) Feb 6, 2025
@DrusTheAxe
Copy link
Member Author

/azp run

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@DrusTheAxe
Copy link
Member Author

/azp run

@DrusTheAxe DrusTheAxe enabled auto-merge (squash) February 7, 2025 23:54
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@DrusTheAxe DrusTheAxe merged commit 7636bc6 into release/1.7-stable Feb 8, 2025
26 checks passed
@DrusTheAxe DrusTheAxe deleted the user/drustheaxe/DynDep-Delegate-to-OS branch February 8, 2025 02:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants