Enable demandimport only in scripts, not in importable modules (issue605)
This way other applications can choose if and when they want this feature,
because it might be problematic if those applications rely on ImportError.
--- a/contrib/hg-ssh Fri Aug 17 23:20:13 2007 -0300
+++ b/contrib/hg-ssh Sat Aug 18 11:37:08 2007 +0200
@@ -25,6 +25,9 @@
command="cd repos && hg-ssh user/thomas/* projects/{mercurial,foo}"
"""
+# enable importing on demand to reduce startup time
+from mercurial import demandimport; demandimport.enable()
+
from mercurial import dispatch
import sys, os
--- a/contrib/hgwebdir.fcgi Fri Aug 17 23:20:13 2007 -0300
+++ b/contrib/hgwebdir.fcgi Sat Aug 18 11:37:08 2007 +0200
@@ -2,6 +2,9 @@
#
# An example CGI script to export multiple hgweb repos, edit as necessary
+# enable demandloading to reduce startup time
+from mercurial import demandimport; demandimport.enable()
+
# send python tracebacks to the browser if an error occurs:
import cgitb
cgitb.enable()
--- a/hg Fri Aug 17 23:20:13 2007 -0300
+++ b/hg Sat Aug 18 11:37:08 2007 +0200
@@ -7,5 +7,8 @@
# This software may be used and distributed according to the terms
# of the GNU General Public License, incorporated herein by reference.
+# enable importing on demand to reduce startup time
+from mercurial import demandimport; demandimport.enable()
+
import mercurial.dispatch
mercurial.dispatch.run()
--- a/hgweb.cgi Fri Aug 17 23:20:13 2007 -0300
+++ b/hgweb.cgi Sat Aug 18 11:37:08 2007 +0200
@@ -2,6 +2,9 @@
#
# An example CGI script to use hgweb, edit as necessary
+# enable importing on demand to reduce startup time
+from mercurial import demandimport; demandimport.enable()
+
# send python tracebacks to the browser if an error occurs:
import cgitb
cgitb.enable()
--- a/hgwebdir.cgi Fri Aug 17 23:20:13 2007 -0300
+++ b/hgwebdir.cgi Sat Aug 18 11:37:08 2007 +0200
@@ -2,6 +2,9 @@
#
# An example CGI script to export multiple hgweb repos, edit as necessary
+# enable importing on demand to reduce startup time
+from mercurial import demandimport; demandimport.enable()
+
# send python tracebacks to the browser if an error occurs:
import cgitb
cgitb.enable()
--- a/mercurial/hgweb/hgwebdir_mod.py Fri Aug 17 23:20:13 2007 -0300
+++ b/mercurial/hgweb/hgwebdir_mod.py Sat Aug 18 11:37:08 2007 +0200
@@ -6,7 +6,6 @@
# This software may be used and distributed according to the terms
# of the GNU General Public License, incorporated herein by reference.
-from mercurial import demandimport; demandimport.enable()
import os, mimetools, cStringIO
from mercurial.i18n import gettext as _
from mercurial import ui, hg, util, templater
--- a/setup.py Fri Aug 17 23:20:13 2007 -0300
+++ b/setup.py Sat Aug 18 11:37:08 2007 +0200
@@ -14,8 +14,6 @@
from distutils.command.install_data import install_data
import mercurial.version
-import mercurial.demandimport
-mercurial.demandimport.enable = lambda: None
extra = {}