Skip to content

setup.py: when copying _synthDrivers32, only include .py and .dll files, excluding lib exp and pdb files which are not needed.#19748

Merged
SaschaCowley merged 2 commits into
betafrom
i19653
Mar 9, 2026
Merged

setup.py: when copying _synthDrivers32, only include .py and .dll files, excluding lib exp and pdb files which are not needed.#19748
SaschaCowley merged 2 commits into
betafrom
i19653

Conversation

@michaelDCurran

@michaelDCurran michaelDCurran commented Mar 5, 2026

Copy link
Copy Markdown
Member

Link to issue number:

Fixes #19653

Summary of the issue:

The 32 bit synthDriverhost runtime introduced in PR #19432 includes some extra lib exp and pdb files which are not necessary and just take up space.

Description of user facing changes:

Description of developer facing changes:

Description of development approach:

When building the main NvDA distribution with py2exe, only copy py and dll files in the _synthDrivers32 directory, which now ignores lib exp and pdb files.

Testing strategy:

  • Build locally, ensuring that the unneeded lib exp and pdb files are not included in the _synthDrivers32 directory. Ensure NvDA runs and that the sapi4 and 32 bit sapi5 synthDrivers can be selected and used.
  • Create a try build, also ensuring all of the above.

Known issues with pull request:

None known.

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.

…es, excluding lib exp and pdb files which are not needed.

Copilot AI left a comment

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.

Pull request overview

Updates the py2exe packaging step to reduce the shipped NVDA distribution size by excluding unnecessary build artifacts from the 32-bit synth driver runtime payload (_synthDrivers32), addressing issue #19653.

Changes:

  • Replace recursive inclusion of _synthDrivers32 with a filtered file list.
  • Only package .py and .dll files from _synthDrivers32, excluding .lib/.exp/.pdb artifacts.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread source/setup.py Outdated
@SaschaCowley SaschaCowley added the conceptApproved Similar 'triaged' for issues, PR accepted in theory, implementation needs review. label Mar 6, 2026
@SaschaCowley SaschaCowley added this to the 2026.1 milestone Mar 6, 2026
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@github-actions github-actions Bot requested a deployment to snapshot March 9, 2026 01:32 Abandoned
@SaschaCowley SaschaCowley merged commit d804c42 into beta Mar 9, 2026
109 of 111 checks passed
@SaschaCowley SaschaCowley deleted the i19653 branch March 9, 2026 03:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

conceptApproved Similar 'triaged' for issues, PR accepted in theory, implementation needs review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants