summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2007-06-19 17:46:57 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2007-06-19 17:46:57 +0000
commit440701c82dacacd9a3604c235bf518c007899e4c (patch)
treebf831dd863e1f3ded98e5851266ea1003ac5d05f
parent6ba5ecb379698830f4112a52d42cadbfeb5c8d09 (diff)
downloadsqlalchemy-440701c82dacacd9a3604c235bf518c007899e4c.tar.gz
- finally figured out how to get setuptools version in, available
as sqlalchemy.__version__ [ticket:428]
-rw-r--r--CHANGES4
-rw-r--r--doc/build/genhtml.py3
-rw-r--r--lib/sqlalchemy/__init__.py16
-rw-r--r--setup.py2
4 files changed, 23 insertions, 2 deletions
diff --git a/CHANGES b/CHANGES
index 47346e93d..40f1f4e41 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,7 @@
+0.3.9
+- general
+ - finally figured out how to get setuptools version in, available
+ as sqlalchemy.__version__ [ticket:428]
- ext
- iteration over dict association proxies is now dict-like, not
InstrumentedList-like (e.g. over keys instead of values)
diff --git a/doc/build/genhtml.py b/doc/build/genhtml.py
index 3b78da769..263626745 100644
--- a/doc/build/genhtml.py
+++ b/doc/build/genhtml.py
@@ -4,6 +4,7 @@ import cPickle as pickle
sys.path = ['../../lib', './lib/'] + sys.path
+import sqlalchemy
import gen_docstrings, read_markdown, toc
from mako.lookup import TemplateLookup
from mako import exceptions, runtime
@@ -29,7 +30,7 @@ files = [
parser = optparse.OptionParser(usage = "usage: %prog [options] [tests...]")
parser.add_option("--file", action="store", dest="file", help="only generate file <file>")
parser.add_option("--docstrings", action="store_true", dest="docstrings", help="only generate docstrings")
-parser.add_option("--version", action="store", dest="version", default="0.3.8", help="version string")
+parser.add_option("--version", action="store", dest="version", default=sqlalchemy.__version__, help="version string")
(options, args) = parser.parse_args()
if options.file:
diff --git a/lib/sqlalchemy/__init__.py b/lib/sqlalchemy/__init__.py
index 22fb10ffd..e55d0ab57 100644
--- a/lib/sqlalchemy/__init__.py
+++ b/lib/sqlalchemy/__init__.py
@@ -12,6 +12,22 @@ from sqlalchemy.orm import *
from sqlalchemy.engine import create_engine
from sqlalchemy.schema import default_metadata
+def __figure_version():
+ try:
+ from pkg_resources import require
+ import os
+ # NOTE: this only works when the package is either installed,
+ # or has an .egg-info directory present (i.e. wont work with raw SVN checkout)
+ info = require('sqlalchemy')[0]
+ if os.path.dirname(os.path.dirname(__file__)) == info.location:
+ return info.version
+ else:
+ return '(not installed)'
+ except:
+ return '(not installed)'
+
+__version__ = __figure_version()
+
def global_connect(*args, **kwargs):
default_metadata.connect(*args, **kwargs)
\ No newline at end of file
diff --git a/setup.py b/setup.py
index 270dcf2cb..6b87acb33 100644
--- a/setup.py
+++ b/setup.py
@@ -3,7 +3,7 @@ use_setuptools()
from setuptools import setup, find_packages
setup(name = "SQLAlchemy",
- version = "0.3.8",
+ version = "0.3.9",
description = "Database Abstraction Library",
author = "Mike Bayer",
author_email = "mike_mp@zzzcomputing.com",