Patchwork D12553: setup: fix the py2exe logic to work with py3

login
register
mail settings
Submitter phabricator
Date April 13, 2022, 10:48 p.m.
Message ID <differential-rev-PHID-DREV-u3tnmitymhjeudlyyuh6-req@mercurial-scm.org>
Download mbox | patch
Permalink /patch/50902/
State New
Headers show

Comments

phabricator - April 13, 2022, 10:48 p.m.
mharbison72 created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  TortoiseHg still uses (the modernized) py2exe packaging, but the build was
  failing since `py2exe.Distribution` was removed.
  
  One thing to note is that later in this module, there's a hack to include
  `distutils` when building from a virtualenv.  While `import distutils` works in
  `hg debugshell` when built with py2, it doesn't work in py3.  I'm not sure why-
  I don't see it in `library.zip` either.  It doesn't seem to break anything
  though.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D12553

AFFECTED FILES
  setup.py

CHANGE DETAILS




To: mharbison72, #hg-reviewers
Cc: mercurial-patches, mercurial-devel

Patch

diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -197,7 +197,7 @@ 
 try:
     import py2exe
 
-    py2exe.Distribution  # silence unused import warning
+    py2exe.patch_distutils()
     py2exeloaded = True
     # import py2exe's patched Distribution class
     from distutils.core import Distribution