Skip to content

Migrate from py2exe to pyInstaller #18449

@seanbudd

Description

@seanbudd

Related issues, PRs or discussions

py2exe/py2exe#215
py2exe/py2exe#191

What is the current state of the codebase?

We use py2exe to bundle NVDA for the installer.

Why are changes required?

We are stuck on Python 3.11 due to py2exe not supporting 3.12+.
The work required to fix py2exe is complicated, and the project has not had commits to it in 8 months.
It appears to be abandoned, and it seems likely that 3.12+ support won't happen.

What technical changes are required?

Migrating to pyInstaller - which does a very similar job

Alternatively, consider migrating to Nuitka. Nuitka compiles python to native code when creating the exe. This might have to be a longer term project though, as it would likely remove our current python add-on API.

Are the proposed technical changes API breaking?

Yes

Are there potential risks or issues with the proposed implementation?

pyInstaller is a well maintained project, and seems to have become the norm, over py2exe.

Nuitka or a similar python compiler might be something to explore once our new sandboxed add-on API is established, but moving to it would be quite drastic and completely break our current add-on framework.

Metadata

Metadata

Assignees

No one assigned

    Labels

    p3https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#prioritytriagedHas been triaged, issue is waiting for implementation.

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions