mirror of
https://github.com/evennia/evennia.git
synced 2026-03-20 23:06:31 +01:00
41 lines
No EOL
1.2 KiB
Python
Executable file
41 lines
No EOL
1.2 KiB
Python
Executable file
import os.path
|
|
import warnings
|
|
|
|
__version__ = (0, 2)
|
|
|
|
def _get_git_revision(path):
|
|
revision_file = os.path.join(path, 'refs', 'heads', 'master')
|
|
if not os.path.exists(revision_file):
|
|
return None
|
|
fh = open(revision_file, 'r')
|
|
try:
|
|
return fh.read()
|
|
finally:
|
|
fh.close()
|
|
|
|
def get_revision():
|
|
"""
|
|
:returns: Revision number of this branch/checkout, if available. None if
|
|
no revision number can be determined.
|
|
"""
|
|
package_dir = os.path.dirname(__file__)
|
|
checkout_dir = os.path.normpath(os.path.join(package_dir, '..'))
|
|
path = os.path.join(checkout_dir, '.git')
|
|
if os.path.exists(path):
|
|
return _get_git_revision(path)
|
|
return None
|
|
|
|
__build__ = get_revision()
|
|
|
|
def lazy_object(location):
|
|
def inner(*args, **kwargs):
|
|
parts = location.rsplit('.', 1)
|
|
warnings.warn('`idmapper.%s` is deprecated. Please use `%s` instead.' % (parts[1], location), DeprecationWarning)
|
|
imp = __import__(parts[0], globals(), locals(), [parts[1]], -1)
|
|
func = getattr(imp, parts[1])
|
|
if callable(func):
|
|
return func(*args, **kwargs)
|
|
return func
|
|
return inner
|
|
|
|
SharedMemoryModel = lazy_object('idmapper.models.SharedMemoryModel') |