Add new pipeline using the latest webview2 from Edge Canary
Summary of the Pull Request
Changes Introduced
This PR introduces a new parameter usingLatestWebView2 to control whether the latest WebView2 Canary version is used during testing and CI builds. The specific changes are as follows:
- job-test-project.yml
- Added
usingLatestWebView2parameter of type boolean with a default value of false. - Included a PowerShell script to download and install the latest Microsoft Edge Canary version.
- Added a registry modification script to enable the WebView2 Canary channel.
- pipeline-ci-build.yml
- Added
usingLatestWebView2parameter of type boolean with a default value of false. - Passed the
usingLatestWebView2parameter in the stages section to use it during CI builds.
Purpose
The introduction of the usingLatestWebView2 parameter allows developers to opt-in to using the latest WebView2 Canary version during tests and CI builds. This helps in identifying and resolving issues related to the latest WebView2 version early, thereby improving the project's stability and compatibility.
PR Checklist
- [ ] Closes: #xxx
- [x] Communication: I've discussed this with core contributors already. If work hasn't been agreed, this work might be rejected
- [ ] Tests: Added/updated and all pass
- [ ] Localization: All end user facing strings can be localized
- [ ] Dev docs: Added/updated
- [ ] New binaries: Added on the required places
- [ ] JSON for signing for new binaries
- [ ] WXS for installer for new binaries and localization folder
- [x] YML for CI pipeline for new test projects
- [ ] YML for signed pipeline
- [ ] Documentation updated: If checked, please file a pull request on our docs repo and link it here: #xxx
Detailed Description of the Pull Request / Additional comments
Validation Steps Performed
pipeline runs successfully.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (1)
linkid
These words are not needed and should be removed
accctrl aclapi appdata Appium appmodel atlbase atlcom atlfile atlstr bootstrapper caniuse ceq cguid Cmds cne codicon comdef commandline commctrl commdlg comutil consts cppwinrt CRSEL crx dcommon dcomp DCs desktopwindowxamlsource devpkey dxgidebug dxgiformat emmintrin Emoji endpointvolume evntrace exdisp Functiondiscoverykeys guiddef hinstance hstring Intelli junja Knownfolders lmcons LONGLONG lpt LTRB mfapi mfidl mfobjects mftransform Minimatch mmdeviceapi mmsystem msedge msiquery newdev nodoc notlike Objbase objidl pathcch Pnp Preinstalled processthreadsapi propkey propvarutil redistributable Renamer reparse restrictederrorinfo roadmap ruleset runtimes shellapi shellscalingapi shldisp shlobj stl strsafe strutil subquery SWC tailwindcss tapp thumbcache tlhelp Toolset touchpad Tsd uninstantiated uniquifier Unknwn unregistering urlmon USERDATA Uxtheme verrsrc wcautil wincodec Wincodecsdk windef windowsapp windowsx winerror winevt winsdkver winternl wsl wtsapiTo accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:shuaiyuanxx/PowerToys.git repository
on the dev/addPipelineForWV2 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.24/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/12293180188/attempts/1'
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
fixed spell check failure
is there someway to validate we're getting the canary version and the pipeline would fail if canary is in a bad spot?
is there someway to validate we're getting the canary version and the pipeline would fail if canary is in a bad spot? If there is no automation functional test related to Webview2 component, I think the answer is no. We can see what automation we can add in near future.
Oh! PR #36282 uses the word use instead of using. For consistency, you should stick with one version of that word! 🙂
Oh! PR #36282 uses the word
useinstead ofusing. For consistency, you should stick with one version of that word! 🙂
Done
per @dhowett statement, @shuaiyuanxx saying he addressed the feedback, i'm going to dismiss Dustin's review.
@yeelam-gordon my statement for failing was just to be sure we know everything works in the failure case for alerting