[PATCH 2 of 2] demandimport: blacklist sqlalchemy.events as it has side effects (issue5085)

Yuya Nishihara yuya at tcha.org
Sun Feb 21 00:37:52 EST 2016


# HG changeset patch
# User Yuya Nishihara <yuya at tcha.org>
# Date 1454753772 -32400
#      Sat Feb 06 19:16:12 2016 +0900
# Node ID 8f0f47ac818fb74ab1220542661b751d1370d0c1
# Parent  b7583bf4ed46e7c022467c43c68eea0fc25e4069
demandimport: blacklist sqlalchemy.events as it has side effects (issue5085)

Importing sqlalchemy.events cannot be delayed as it registers classes to
their event mechanism. It worked fine before 4f1144c3c72b, since they use
new-style imports. But now we have to blacklist it because our demandimport
can handle new-style imports.

This patch series isn't intended for stable as we don't guarantee API
compatibility with 3rd-party extensions. They can temporarily disable the
demand importer to work around the issue.

diff --git a/mercurial/demandimport.py b/mercurial/demandimport.py
--- a/mercurial/demandimport.py
+++ b/mercurial/demandimport.py
@@ -255,6 +255,7 @@ ignore = [
     '_sre', # issue4920
     'rfc822',
     'mimetools',
+    'sqlalchemy.events', # has import-time side effects (issue5085)
     # setuptools 8 expects this module to explode early when not on windows
     'distutils.msvc9compiler'
     ]


More information about the Mercurial-devel mailing list