Patchwork D2932: setup: register zope.interface packages and compile C extension

login
register
mail settings
Submitter phabricator
Date March 22, 2018, 4:09 a.m.
Message ID <differential-rev-PHID-DREV-tu4qeyijury3rxceho33-req@phab.mercurial-scm.org>
Download mbox | patch
Permalink /patch/29770/
State Superseded
Headers show

Comments

phabricator - March 22, 2018, 4:09 a.m.
indygreg created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  With this change, we should be able to use zope.interface in core!

REPOSITORY
  rHG Mercurial

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

AFFECTED FILES
  contrib/import-checker.py
  setup.py

CHANGE DETAILS




To: indygreg, #hg-reviewers
Cc: mercurial-devel

Patch

diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -810,6 +810,8 @@ 
             'mercurial.pure',
             'mercurial.thirdparty',
             'mercurial.thirdparty.attr',
+            'mercurial.thirdparty.zope',
+            'mercurial.thirdparty.zope.interface',
             'mercurial.utils',
             'hgext', 'hgext.convert', 'hgext.fsmonitor',
             'hgext.fsmonitor.pywatchman', 'hgext.highlight',
@@ -892,6 +894,10 @@ 
               extra_compile_args=osutil_cflags,
               extra_link_args=osutil_ldflags,
               depends=common_depends),
+    Extension(
+        'mercurial.thirdparty.zope.interface._zope_interface_coptimizations', [
+        'mercurial/thirdparty/zope/interface/_zope_interface_coptimizations.c',
+        ]),
     Extension('hgext.fsmonitor.pywatchman.bser',
               ['hgext/fsmonitor/pywatchman/bser.c']),
     ]
diff --git a/contrib/import-checker.py b/contrib/import-checker.py
--- a/contrib/import-checker.py
+++ b/contrib/import-checker.py
@@ -37,6 +37,8 @@ 
     'mercurial.pure.parsers',
     # third-party imports should be directly imported
     'mercurial.thirdparty',
+    'mercurial.thirdparty.zope',
+    'mercurial.thirdparty.zope.interface',
 )
 
 # Whitelist of symbols that can be directly imported.