Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade SCons to 3.0.0 #7520

Closed
josephsl opened this issue Aug 25, 2017 · 5 comments
Closed

Upgrade SCons to 3.0.0 #7520

josephsl opened this issue Aug 25, 2017 · 5 comments

Comments

@josephsl
Copy link
Collaborator

Hi,

On August 22, 2017, SCons project announced the release of an alpha build of SCons 3 that supports Python 2.7, 3.5 and 3.6. As noted in #7105, an upgrade to SCons is all we need at this point before working on Python 3 upgrade feasibility research. Now that SCons 3 alpha is here, I think the stage is almost set to start working on Python 3 upgrade research. But before the research can commence, I suggest upgrading to SCons 3.0.0 before commencing this work, which also gives us some time to play with this version by building current NVDA source code files.

Thanks.

@LeonarddeR
Copy link
Collaborator

Note that SCons 3 will also support Visual Studio 2017, necessary for #7498.

I've done first tests with Scons 3, and it seems that the gettext tools module can't be found or at least isn't compiled by SCons 3. Also, there are some changes required to make the sconstruct files compatible (e.g. print needs to be a function call).

@josephsl
Copy link
Collaborator Author

Hi,

SCons 3 is officially out, so I'm working on porting our scripts as much as I can. It'll be found in a new branch named "scons300" under my fork. Thanks.

@josephsl
Copy link
Collaborator Author

Hi,

I can confirm @LeonarddeR's observation: print is now a function, which should also help us move over to Python 3 by checking for instances where print statement is used (there are several in the source code). I've disabled compiling Gettext po files because scons.Environment doesn't have gettextMoFile attribute (unless it was replaced somehow).

Thanks.

josephsl added a commit to josephsl/nvda that referenced this issue Sep 19, 2017
Before we can move to Python 3 (nvaccess#7105), two important dependencies must be satisfied: wxPython 4 (nvaccess#7077) and SCons (nvaccess#7520). As of September 18, 2017, both were satisfied, although wxPython 4 is still in beta testing phase.
For now, upgrade SCons to 3.0.0, which supports Python 2.7, 3.5, and 3.6. Key changes include changing print statements to print function and no more Environment.gettextMoFile attribute unless it has changed somehow. Upgrading to SCons 3 is one of the prerequisites to transitioning to Python 3.x.
@josephsl
Copy link
Collaborator Author

Hi,

This will be part of #7568 (Windows 10 SDK+SCons 3.0.0+Visual Studio 2017 support), thus closing and no need for a separate PR. Thanks.

@LeonarddeR
Copy link
Collaborator

@josephsl: Seems you intended to close this, but turns out you didn't. Closing for real this time.

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

No branches or pull requests

2 participants