From 2c654e96aeba466d236043197f0c127c60e047f8 Mon Sep 17 00:00:00 2001 From: Tim Vieira Date: Tue, 23 Jul 2013 03:24:59 -0400 Subject: [PATCH] Issue #62: allow Dyna to report its own version. --- src/Dyna/Backend/Python/main.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/Dyna/Backend/Python/main.py b/src/Dyna/Backend/Python/main.py index 37a80b0..940a2cb 100644 --- a/src/Dyna/Backend/Python/main.py +++ b/src/Dyna/Backend/Python/main.py @@ -4,11 +4,14 @@ from errors import DynaCompilerError from errors import crash_handler from interpreter import Interpreter from repl import REPL -from config import dotdynadir +from config import dotdynadir, dynahome import post, load def main(): parser = argparse.ArgumentParser(description="The dyna interpreter!") + + parser.add_argument('--version', action='store_true', + help='Print version information.') parser.add_argument('source', nargs='*', type=path, help='Path to Dyna source file.') parser.add_argument('-i', dest='interactive', action='store_true', @@ -23,6 +26,16 @@ def main(): args = parser.parse_args() + if args.version: + import subprocess + try: + subprocess.Popen("cd %s ; grep '^Version' dyna.cabal" % dynahome, shell=True) + subprocess.Popen("cd %s ; git log -n 1 |grep '^Date' " % dynahome, shell=True) + subprocess.Popen("cd %s ; git log -n 1 |grep '^commit' " % dynahome, shell=True) + except OSError: + print 'failed to obtain version info.' + exit(0) + interp = Interpreter() crash_handler() -- 2.50.1