Skip to content

winVersion: report Windows build revision when winVersion.getWinVer is called and at startup#18306

Merged
seanbudd merged 5 commits into
nvaccess:masterfrom
josephsl:i18266winverUBR
Jun 23, 2025
Merged

winVersion: report Windows build revision when winVersion.getWinVer is called and at startup#18306
seanbudd merged 5 commits into
nvaccess:masterfrom
josephsl:i18266winverUBR

Conversation

@josephsl

Copy link
Copy Markdown
Contributor

Link to issue number:

Closes #18266

Summary of the issue:

NVDA does not report Windows build revision at startup.

Description of user facing changes:

NVDA will log Windows build revisoin number (e.g. 10.0.26100.0) at startup.

Description of developer facing changes:

NVDA will report update build revision (UBR) number when winVersion.getWinVer function is called. In addition, "revisoin" was added as an argument to winVersion.WinVersion class constructor (default: 0).

Description of development approach:

Added "revisoin" to winVersion.WinVersion constructor. In winVersion.getWinVer, this value is obtained from Windows Registry and is reported at NVDA startup.

Testing strategy:

Manual: make sure the four part number for a Windows build (e.g. 10.0.26100.4351) is whon in the log viewer at startup and from winVersion.getWinVer function.

Known issues with pull request:

None

Code Review Checklist:

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

@coderabbitai summary

josephsl added 4 commits June 22, 2025 19:11
…it to 0 by defualt. Re nvaccess#18266.

Windows versions are usually identified as major.minor.build. However, a fourth number, 'revisoin' (UBR: update build revision) is added to identify QFE (quick fix engineering)/cumulative update revision number. This is useful in that developers can determine if an issue experienced by users is resolved in a later cumulative update. Therefore, expose revision number (default: 0) as part of WinVersion class attributes and print it at NVDA startup.
…ry. Re nvaccess#18266.

Update build revision (UBR) lives in Windows Registry (HKLM\Software\Microsoft\Windows NT\CurrentVersion, key: UBR, type: dword). At startup, obtain this value and set it as 'revision' argument to winVersion.WinVersion constructor.
@josephsl josephsl requested a review from a team as a code owner June 23, 2025 01:29
@josephsl josephsl requested a review from seanbudd June 23, 2025 01:29
Comment thread source/winVersion.py
@josephsl

josephsl commented Jun 23, 2025 via email

Copy link
Copy Markdown
Contributor Author

@seanbudd seanbudd merged commit 6b5b6b9 into nvaccess:master Jun 23, 2025
17 checks passed
@github-actions github-actions Bot added this to the 2025.2 milestone Jun 23, 2025
@josephsl josephsl deleted the i18266winverUBR branch June 25, 2025 00:21
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.

WinVersion object: record UBR (update build revision) for a Windows release and log it at NVDA startup

2 participants