Skip to content

Windows versions: recognize build 22621 as Windows 11 22H2#13867

Merged
seanbudd merged 2 commits into
nvaccess:masterfrom
josephsl:win22H2
Aug 15, 2022
Merged

Windows versions: recognize build 22621 as Windows 11 22H2#13867
seanbudd merged 2 commits into
nvaccess:masterfrom
josephsl:win22H2

Conversation

@josephsl

@josephsl josephsl commented Jul 3, 2022

Copy link
Copy Markdown
Contributor

Link to issue number:

Closes parts of #13845

Summary of the issue:

Recognize Windows 22H2 releases. In part 1 (this pull request), recognize 10.0.22621 as Windows 11 Version 22H2 (Nickel/Sun Valley 2).

Description of user facing changes

No user facing changes

Description of development approach

Verified that the following builds will be tied to upcoming Windows feature updates:

  • 19045: Windows 10 22H2 (see additional context as this is out of scope for this PR)
  • 22621: Windows 11 22H2

Build 22621 is available to release preview Windows Insiders, build 19045 forthcoming.

Testing strategy:

Manual testing (ideally on virtual machines):

  1. Install Windows 11 22H2 (release preview).
  2. With NVDA running, open Python Console (Control+NVDA+Z) and type "import winVersion; winVersion.getWinVer()" without quotes. Verify that version returned is "Windows 11 22H2".
  3. Verify that the version returned also matches winVersion.WIN11_22H2 object and that it is newer (higher build number) than winVersion.WIN11.
  4. Repeat steps 1 through 3 when Windows 10 22H2 is released to Windows Insiders but compare the version returned with winVersion.WIN10_22H2 and make sure winVersion.WIN10_21H2 < winVersion.WIN10_22H2 < winVersion.WINSERVER_2022 (deferred to a later PR).

Known issues with pull request:

Although it is highly unlikely, Windows 10 22H2's build number could change in the future. The sure sign is which build will be released to Windows Insiders, and indication is that it will be 19045.

Change log entries:

None

Code Review Checklist:

  • Pull Request description:
    • description is up to date
    • change log entries
  • Testing:
    • Unit tests
    • System (end to end) tests
    • Manual testing
  • API is compatible with existing add-ons.
  • Documentation:
    • User Documentation
    • Developer / Technical Documentation
    • Context sensitive help for GUI changes
  • UX of all users considered:
    • Speech
    • Braille
    • Low Vision
    • Different web browsers
    • Localization in other languages / culture than English

Additional context:

Originally this PR added winVersion entry for Windows 10 Version 22H2 but is deferred to a later PR.

Comment thread readme.md Outdated
* Then in the Installation details tree view, under Desktop for C++, Optional, ensure the following are selected:
* MSVC v142 - VS 2019 C++ x64/x86 build tools
* Windows 11 SDK (10.0.22000.0)
* Windows 11 SDK (10.0.22621.0)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might be wise to wait for this version of SDK being available on AppVeyor before asking users to use it locally when building, just to make sure there are no unexpected regressions.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is used by AppVeyor @josephsl ?

@josephsl

josephsl commented Jul 3, 2022 via email

Copy link
Copy Markdown
Contributor Author

@josephsl

josephsl commented Jul 5, 2022

Copy link
Copy Markdown
Contributor Author

Hi,

A slight complication arose today: build 22622 is now flighting to beta channel Insiders, identical to 22621 apart from features being enabled. I plan not to add 22622 unless Microsoft releases a feature update with this build number in the future.

Thanks.

@josephsl

Copy link
Copy Markdown
Contributor Author

Hi,

If I'm reading Appveyor installed software list correctly, Windows 11 SDK 10.0.22621 can be used in Appveyor, so no revert necessary. The only thing remaining is release of Windows 10 build 19045 to release preview Insiders, and once that happens, I'll remove the draft flag unless @codeofdusk says detecting SV2 (build 22621/nickel) is needed for enhanced Windows Console support.

Thanks.

@josephsl

Copy link
Copy Markdown
Contributor Author

Hi,

It appears build 22621 SDK is available in Visual Studio 2022 appveyor image. Also, even with signs poiting to Windows 10 Version 22H2 coming to release preview Insiders in August (at the earliest), I think it would be best to at least let NVDA work with Nickel so Bill and others can work on proper SV2 support. Therefore, I will:

  • Revert 10.0.19045 recognition
  • Revert Windows 11 SDK version requirement change
  • Edit SConstruct to say Windows 11 SDK instead of Windows 10 (and also correct the build number as well)

And then will remove draft PR flag so it can be ready for 2022.4.

Thanks.

@josephsl

Copy link
Copy Markdown
Contributor Author

Hi,

Follow-up: as for 10.0.19045 recognition, I'll send a follow-up PR for it once that build comes to Windows Insiders.

Thanks.

@josephsl josephsl changed the title Windows versions: recognize builds 19045 and 22621 as Windows 10 22H2 and 11 22H2, respectively Windows versions: recognize build 22621 as Windows 11 22H2 Jul 28, 2022
@josephsl josephsl marked this pull request as ready for review July 28, 2022 02:14
@josephsl josephsl requested a review from a team as a code owner July 28, 2022 02:14
@josephsl josephsl requested a review from seanbudd July 28, 2022 02:14
@codeofdusk

codeofdusk commented Jul 28, 2022

Copy link
Copy Markdown
Contributor

Are we 100% sure that 22621 is SV2 final? It is currently in the external release preview ring but @carlos-zamora seemed to think that 22622 might be the shipped build.

CC @DHowett perhaps for additional clarity?

@josephsl

josephsl commented Jul 28, 2022 via email

Copy link
Copy Markdown
Contributor Author

@codeofdusk

Copy link
Copy Markdown
Contributor

My comment was in regards to Windows version detection.

@josephsl

josephsl commented Jul 28, 2022 via email

Copy link
Copy Markdown
Contributor Author

@AppVeyorBot

Copy link
Copy Markdown

See test results for failed build of commit 426d8660fa

@josephsl

Copy link
Copy Markdown
Contributor Author

Hi,

Major update: build 19045 (Windows 10 Version 22H2) was released to release preview Insiders on July 28, 2022. Therefore a PR to add 19045 will be posted soon, and I think that one can be merged first before this PR (that PR will target 2022.4).

Thanks.

seanbudd pushed a commit that referenced this pull request Jul 29, 2022
)

Partially closes #13845
Windows 10 part of #13867

Summary of the issue:
Recognize Windows 10 build 19045 as Version 22H2.

Description of user facing changes
None

Description of development approach
Tested through Windows Insider Program - added Windows 10 build 19045 metadata.

Testing strategy:
Manual testing: instal Windows 10 build 19045 release preview build to make sure it is recognized as 22H2 by NVDA.
@codeofdusk

Copy link
Copy Markdown
Contributor

Blocking #13297.

@AppVeyorBot

Copy link
Copy Markdown

See test results for failed build of commit e777ac75d8

@codeofdusk

Copy link
Copy Markdown
Contributor

Given that we haven't heard from @DHowett or @carlos-zamora on the Windows release strategy and I'd really like to see #13297 unblocked to allow for wide testing early in the 2022.4 release cycle, I think it's reasonable to set 22621 as the SV2 build number for now. As 22621 is safely in the SV2 build range and we usually check for "at least" a given build in NVDA tests, even if SV2 final is 22622, NVDA shouldn't be affected. Thoughts @josephsl?

@josephsl

josephsl commented Aug 12, 2022 via email

Copy link
Copy Markdown
Contributor Author

@AppVeyorBot

Copy link
Copy Markdown
  • PASS: Translation comments check.
  • PASS: Unit tests.
  • PASS: Lint check.
  • Build execution time has reached the maximum allowed time for your plan (60 minutes).

See test results for failed build of commit 78bc83839d

@DHowett

DHowett commented Aug 13, 2022

Copy link
Copy Markdown

Hey all! Sorry for the radio silence.

22621 is the final version number for SV2. It is my understanding that the update being tested in the Beta channel today will not increment the version number (which means that Beta will stay a higher version number than RTM.)

@codeofdusk

Copy link
Copy Markdown
Contributor

Thanks @DHowett for clarifying!

@AppVeyorBot

Copy link
Copy Markdown

See test results for failed build of commit 78bc83839d

@AppVeyorBot

Copy link
Copy Markdown

See test results for failed build of commit 911e87fe9f

@seanbudd

Copy link
Copy Markdown
Member

Should this have the blocked label removed?

@codeofdusk

Copy link
Copy Markdown
Contributor

Yes – now that we've heard from @DHowett re the build number and @josephsl has removed unrelated changes, the PR is now ready for merge.

@seanbudd seanbudd removed the blocked label Aug 15, 2022
@seanbudd seanbudd merged commit d00f886 into nvaccess:master Aug 15, 2022
@nvaccessAuto nvaccessAuto added this to the 2022.4 milestone Aug 15, 2022
@josephsl josephsl deleted the win22H2 branch August 16, 2022 17:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants