Skip to content

FI main into WNP_ToastNotifications_L1#2189

Merged
loneursid merged 48 commits intofeature/WNP_ToastNotifications_L1from
user/erlangl/WNP_ToastNotifications_L1/FI_main_20220228
Mar 1, 2022
Merged

FI main into WNP_ToastNotifications_L1#2189
loneursid merged 48 commits intofeature/WNP_ToastNotifications_L1from
user/erlangl/WNP_ToastNotifications_L1/FI_main_20220228

Conversation

@loneursid
Copy link
Copy Markdown
Contributor

@loneursid loneursid commented Mar 1, 2022

Forward Integrating main into WNP_ToastNotifications_L1

There were only a few conflicts: kept incoming (from main) for all files with conflicts, except for the solution where I kept both.

kythant and others added 30 commits January 13, 2022 12:22
…on/_git/ProjectReunionInternal build Maestro-UpdateEngCommon_2201.14001 (#1985)

Microsoft.WinAppSDK.EngCommon
 From Version 1.0.0-20220110.0-CI -> To Version 1.0.0-20220114.0-CI

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…sixminor>.<msixbuild>.<msixrevision>[-shortversiontag]. But we only want to match down to <minor>. The code+spec was wrong to look for <minor>.* needs to be <minor>* (#1995)
* Add new font selection APIs to DWriteCore API spec.
* Add descriptions of font family models and font selection algorithms.
* Initial restart API branch

* Formatting to code blocks

* Updates to heading

* Removed preamble

* Updates to overview

* Removing resources content

* Updating restart spec with latest changes

* Fixed summary

* Updates to API details, mechanism and sample

* run markdown prettifier

* Updating mechanism

* Updating formatting for consistency

* Updates to return value description

* Updates to spec after latest review

* Prettified to match md guidelines, fixed nits

Co-authored-by: Hamza Usmani <mousma@microsoft.com>
* Initial API signature

* snap for driving home

* RestartAgent basic build infra

* builds now

* Updates to the calling API and the restartagent.

* switch to using common implementation of IsPackagedProcess()/HasIdentity()

* update

* Initial API signature

* snap for driving home

* RestartAgent basic build infra

* builds now

* Updates to the calling API and the restartagent.

* switch to using common implementation of IsPackagedProcess()/HasIdentity()

* update

* New test passes with API.

* updated comment

* Error handling changes and packaged code paths.

* Removed unused tests, and added new test.

* cleanup

* transport packaging stuff

* typo

* Enable control flow guard for Release only.

* PR feedback

* Add ARM64

* Update to support packaged scenarios.  This needs to be further scoped to only Desktop Bridge apps.

* Detect UWP and redirect.

* Reduce access usage.

* Final API Name updates
…on/_git/ProjectReunionInternal build Maestro-UpdateEngCommon_2201.25001 (#2018)

Microsoft.WinAppSDK.EngCommon
 From Version 1.0.0-20220114.0-CI -> To Version 1.1.0-20220125.0-CI

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
* Update DevCheck to generate MSTest.pfx/.cer

* Refactor temp handling. Add .user dir

* Change cert handling to use .user\* and direct certificate handler via Powershell's PKI module. Buh-bye all references to MSTest.* and certutil

* Add -Remove-DevTestCert and -Remove-DevTestPfx

* Change all temp\MSTest.pfx to .user\winappsdk.certificate.test.pfx

* Added -CertPasswordFile, -CertPasswordUser, -RemoveAll. Save password as plaintext to .pwd file for later use

* Update makemsix.cmd to pass along the .pwd content needed to use the (now password protected) .pfx

* Update MSTest references

* Start of changing NMAKEfiles to MSBuild

* Add new file

* MakeMsix.targets works! Rewrote DDLM.msix to work it out, when running a specific project (e.g. 'msbuild /bl /p:Configuration=Debug,Platform=x64 /t:Build test\DynamicDependency\data\DynamicDependencyLifetimeManager.Msix\DynamicDependencyLifetimeManager.Msix.vcxproj'). Now to verify it works when building the solution, moving MakeMsix.targets out to root\build and propogating this to the other makemsix projects

* 'msbuild foo.vcxproj' works but 'msbuild bar.sln' fails due to 'C:\source\repos\windowsappsdk\test\DynamicDependency\data\DynamicDependencyLifetimeManager.Msix\DynamicDependencyLifetimeManager.Msix.vcxproj error MSB4057: The target GetProjectInfoForReference does not exist in the project. [C:\source\repos\windowsappsdk\' Seems GetPRojectInfoForReference is referenced by 'C:\ProgramFiles (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Microsoft\VC\v160\Microsoft.CppBuild.targets' and Microsoft.Makefile.targets, we don't fit either but they're required to resolve '<ProjectReference...'? Is it possible to move the ProjectReference dependency to the .sln? Or make this work without trying to make a full blown C++ or NMake project? Time to ping some VS/MSBuild experts...

* Tweaked the vcxproj to successfully create .msix via MakeMSIX!

* Moved MakeMSIX.targets to the root (with other build files)

* It works! Got the test projects building with the .pfx and .pwd

* Rewiring test projects to use MakeMsix.targets instead of NMake

* Yet more MakeMsix fixup

* Fixed the package name

* Added dummy Clean command (for now)

* Fixed Deployment's test package where source files get put to different subdir+filename inside the msix

* Fix DevCheck Start-Service to gracefully degrade if not running as admin

* DeploymentTests were missing a build order dependency on BootstrapDLL project

* Updated DevCheck generated cert to have 12-month lifespan (like current one)

* Move Framework.* projects from makemsix.cmd to MakeMSIX.targets

* Delete makemsix.cmd (obsolete)

* Updated test projects to use static manifests instead of generated from a template (unnecessary complexity)

* Deleted obsolete MakeAppxManifestFromTemplate.*

* Removed obsolete manifest/template handling. Removed printfery debugging

* Minor syntax cleanup. Fixed appxmanifest overly aggressive copy/paste human error <sheepish grin>. Fixed publish-header delete-custom-build-step human error

* Fixup Math framework header publishing (due to bad merge due to the age of this change and other work in other branches that hit main. Grrr)

* Deleted obsolete files

* Replaced SolutionDir with RepoRoot

* Rewrote installer's testpackage creation project to use MakeMSIX

* Fixed naming inconsistencies

* Addressed some issues. More to come

* Fixed Get-UserPath emitting New-Item result to the output stream thus when creating the .user directory return $user returned System.Object[] with 2 objects in the stream (filename twice). Well, that was fun

* Fix bad merge

* Added Clean support to MakeMSIX. Cleanup up some internals including dependencies. MakeMsixOutputFilename is no longer optional and inferred; it must be defined by a project before import'ing makemsix.targets

* Optimized load-test-cert-password to a global done once instead of per import rof makemsix.targets

* Updated projects to use the common RepoTestCertificate*

* Removed obsolete and redundant <Error> check

* Added file-existence check before readng file. Added error check at start of project to flag missing-devcheck-artifacts early rather than late

* Test WTH is going on

* Remove debugging printfery. NOTE: Separate Jobs in a pipeline (will? may?) run in parallel on different machines. Until build-mrt.yml is merged into WindowsAppSDK-BuildProject-Steps.yml any common setup (or cleanup) needs to be done in both. Also, it means MRTCore *cannot* use any APIs in WindowsAppRuntime.sln because they're technically peers

* Add DevCheck support to RunTestsInHelix job
* Update installer to support both publishing IDs used in App SDK. (#1759)

* draft changes

* fixing typo

Co-authored-by: Ben Kuhn <benkuhn@ntdev.microsoft.com>

* Added MSIX license support (#1783)

* Update installer to support installing licenses. Structure in place, need to coordinate with build pipeline to implement InstallLicenses (instead of printf)

* Simplified help

* Added missing Copyright. Add valid license for inner-loop testing. Added --dry-run and other command line parameters (to expedite testing as well as product benefit). Wired up install flow. Next is testing the actual get-license-from-stream-and-install

* It works! Verified with stub NOP implementation here for dev inner-loop and full pipeline bits. Improved error reporting.

* Add license support to Deployment API and a new InstallLicenses API (#1790)

* Updated DeploymentManager to install license files if necessary

* Add stubs for the InstallLicenseFile() methods

* Change installer to install licenses BEFORE packages, for higher reliability

* Copy the license header to the source tree to use whehn building via the pipeline]

* Add Licensing API and export from Bootstrap'r

* Added some pseudocode in MsixInstallLicenses(). Real implementation coming RSN

* yml changes to pickup licensing package when needed.

* moving restore to the top of the pipeline.

* moving back, wrong stage

* Fixed license filename

* add nuget authenticate call

* differnt connection

* adding nuget config for build

* avoid using licensing support in github / PR builds, which don't have access to the resources

* update script to capture package version / name.

* one missed check

* Incorported feedback

* udpdating nuget.config name to avoid conflicts.

Co-authored-by: Ben Kuhn <benkuhn@ntdev.microsoft.com>

* Incorporated feedback

Co-authored-by: Ben Kuhn <bjk4929@yahoo.com>
Co-authored-by: Ben Kuhn <benkuhn@ntdev.microsoft.com>
Correct CsWinRTWindowsMetadata usage
* Initial

* Working tests

* WinRT implementation

* Delay load both DLLS and perform full bootstrap setup. It works!

* PR feedback

* Wrap long lines

* Merge in test package changes
Update to CsWinRT 1.5.0-prerelease
Co-authored-by: Eric Langlois <erlangl@microsoft.com>
* Moving Intellisense files to foundation repo

* Moving Intellisense files into one location

* Moving Intellisense files to internal repo

Co-authored-by: Eric Johnson <ejohn@microsoft.com>
DrusTheAxe and others added 18 commits January 31, 2022 08:57
* Changed DynamicDependencies' mechanism to get ApplicationData for non-System definitions. Only use the PackagedCOM object when running in an AppContainer (where hopping to another process is necessary). Elevated (and MediumIL) can directly use ApplicationDataManager (a necessity for Elevation, a nicety for MediumIL)

* New file

* Remove elevated blockers. Fixup to work for elevation. Update elevation test to verify success (as expected) instead of failure (as previously expected)

* Fixup DDLMShadow logging to not fail on timeout (WINDOWSAPPSDK_DDLM_SHUTDOWN and ..._CALLER_TERMINATED).  Previously would crash because WIL faults if LOG_*() called with SUCCEEDED(hr), but this was the last thing in the process before exit so we didn't notice. Should change to alternative logging (Telemetry?) but need to check options before deciding which way to jump. Update will be coming

* Add tests for Elevation

* Add a missing comment
…on/_git/ProjectReunionInternal build Maestro-UpdateEngCommon_2202.10001 (#2092)

Microsoft.WinAppSDK.EngCommon
 From Version 1.1.0-20220125.0-CI -> To Version 1.1.0-20220210.0-CI

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
)

* Added EffectivePowerMode2

* Added EffectivePowerMode2

Co-authored-by: Huzaifa Danish <modanish@microsoft.com>
….5.0.220207.5 (#2072)

[main] Update dependencies from Microsoft/CsWinRT


 - Merge branch 'main' into darc-main-309a8238-dc1b-428e-92c2-4f38e8ba749a
…updating spec when we updated code for 1.0-stable) (#2104)
…itional tests in the future. (#2149)

* Publish all of the build output as an artifact.

* Use Pipeline artifacts instead.

* Attempt downloading the pipeline BuildOutput artifact in the Helix tests.

* Apparently we can't have multiple pipeline artifacts.

* Fix

* Fix filtering.

* They are reversed.

* Folders inside folders.

* Sigh.

* Comments

* Remove old method.

* Remove debug output.
…on/_git/ProjectReunionInternal build Maestro-UpdateEngCommon_2202.25001 (#2181)

Microsoft.WinAppSDK.EngCommon
 From Version 1.1.0-20220210.0-CI -> To Version 1.1.0-20220225.0-CI

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
* Add detection if WinAppSDK is deployed via MSIX or SelfContained

* Tweaked IsSelfContained to use C++ constant for the framework packagefamilyname

* Added placeholder for dev docs how to detect/use IsSelfContained. Details coming in next commit

* Fixed IsSelfContained to use GetCurrentPackageGraph (as intentded. Doh! on my part)

* Added tests for IsSelfContained (and ToUtf8/16! Fixed an infinite recursion stack overflow bug too :-)

* Added docs. Partially fixed SelfContained package family name (handles 2 out of 3 cases). 3rd case in follow up PR

* Changed IsSelfContained() from inline code to exported function

* Fixed tests

* Added TestShutdown. Updated the docs.
@ghost ghost added the needs-triage label Mar 1, 2022
@loneursid
Copy link
Copy Markdown
Contributor Author

/azp run

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@loneursid loneursid merged commit ddea4f6 into feature/WNP_ToastNotifications_L1 Mar 1, 2022
@loneursid loneursid deleted the user/erlangl/WNP_ToastNotifications_L1/FI_main_20220228 branch March 1, 2022 18:58
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.