]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
- work around RTD issue #1293, take one
authorMike Bayer <mike_mp@zzzcomputing.com>
Mon, 25 May 2015 18:34:26 +0000 (14:34 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Mon, 25 May 2015 18:34:26 +0000 (14:34 -0400)
doc/build/conf.py
doc/build/requirements.txt

index cd8cd47e9e068dc49831b0d1a803c21bcec09118..8530c1ef8a89a8276b8c4ca3428296bfbecb234e 100644 (file)
 
 import sys
 import os
+import traceback
+
+def force_install_reqs():
+    import logging
+
+    log = logging.getLogger("pip")
+    handler = logging.StreamHandler(sys.stdout)
+    handler.setFormatter(logging.Formatter("[pip] %(message)s"))
+    log.addHandler(handler)
+    log.setLevel(logging.INFO)
+
+    log.info("READTHEDOCS is set, force-installing requirements.txt")
+
+    from pip.commands import install
+    req = os.path.join(os.path.dirname(__file__), "requirements.txt")
+    cmd = install.InstallCommand()
+    options, args = cmd.parse_args(["-v", "-U", "-r", req])
+    cmd.run(options, args)
+
 
 # If extensions (or modules to document with autodoc) are in another directory,
 # add these directories to sys.path here. If the directory is relative to the
@@ -23,6 +42,19 @@ sys.path.insert(0, os.path.abspath('.'))
 
 import sqlalchemy
 
+# attempt to force pip to definitely get the latest
+# versions of libraries, see
+# https://github.com/rtfd/readthedocs.org/issues/1293
+rtd = os.environ.get('READTHEDOCS', None) == 'True'
+if rtd:
+    try:
+        force_install_reqs()
+    except:
+        traceback.print_exc()
+
+
+
+
 # -- General configuration -----------------------------------------------------
 
 # If your documentation needs a minimal Sphinx version, state it here.
index 954f97a8be2604f12e8a38d3ca90b7ecf33b5cf7..d1eb23d0fee860cefd1403646d7993821d39b169 100644 (file)
@@ -1,3 +1,3 @@
 changelog>=0.3.4
 sphinx-paramlinks>=0.2.2
-zzzeeksphinx>=1.0.16
+git+https://bitbucket.org/zzzeek/zzzeeksphinx.git@HEAD#egg=zzzeeksphinx