changeset 484:40dd1e33c1dd

Rename getan-eval.py to getaneval.py getaneval.py is now installed as a script.
author Magnus Schieder <mschieder@intevation.de>
date Thu, 28 Jun 2018 15:06:19 +0200
parents d47e32e6b7e7
children 726206815059
files CHANGES TODO doc/old_issues.txt scripts/getan-eval.py scripts/getaneval.py setup.py
diffstat 6 files changed, 82 insertions(+), 73 deletions(-) [+]
line wrap: on
line diff
--- a/CHANGES	Thu Jun 28 12:01:16 2018 +0200
+++ b/CHANGES	Thu Jun 28 15:06:19 2018 +0200
@@ -1,12 +1,20 @@
 2.x 20xx-xx-xx UNRELEASED
 
+ * getaneval.py (before getan-eval.py) can now be run directly without
+   PYTHONPATH.
+   getaneval.py is now installed as a script. More information can be found in
+   ./doc/old_issues.txt -20170504 BER
+   Patch by Magnus Schieder
+
  * The logging can now be switched on and off. The default value is off.
    If logging is off, no log file is created.
    More information can be found in ./doc/old_issues.txt -20170504 BER
+   Patch by Magnus Schieder
 
  * Add a redraw function on key Control-L.
    The screen is completely redrawn. More information can be found in
    ./doc/old_issues.txt -20180321 BER
+   Patch by Magnus Schieder
 
  * Better fix for the multiple selection bug.
    The multiple selection is deleted when deleting or moving is confirmed or
--- a/TODO	Thu Jun 28 12:01:16 2018 +0200
+++ b/TODO	Thu Jun 28 15:06:19 2018 +0200
@@ -20,9 +20,6 @@
     So ent1 and ent2 should not highlighted anymore.
 
 
-20170709 BER: Give scripts/getan-eval.py a more specific name and add
-  it as a script to be installed.
-
 20160912 BER: Better code: states.py: classes EditEntryState and
   AdjustEntryState have same methods exit() and set_focus(), maybe join them?
 
--- a/doc/old_issues.txt	Thu Jun 28 12:01:16 2018 +0200
+++ b/doc/old_issues.txt	Thu Jun 28 15:06:19 2018 +0200
@@ -1,3 +1,6 @@
+20170709 BER: Give scripts/getan-eval.py a more specific name and add
+  it as a script to be installed.
+
 20170504 BER: Some multi-user installations do not want a logfile by default.
   We could solve this requirement by making it configurable.
 
--- a/scripts/getan-eval.py	Thu Jun 28 12:01:16 2018 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,70 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-#
-# (c) 2013, 2014 by Björn Ricks <bjoern.ricks@intevation.de>
-#
-# This is Free Software licensed under the terms of GPLv3 or later.
-# For details see LICENSE coming with the source of 'getan'.
-
-import codecs
-import locale
-import sys
-
-from datetime import date, datetime, timedelta
-import argparse
-
-from getan.template import render
-
-
-def main():
-    usage='getan-eval.py [options]'
-    parser = argparse.ArgumentParser(prog='getan', usage=usage)
-
-    parser.add_argument('-d', '--database', dest='database',metavar="DATABASE",
-                        help='metavar="DATABASE')
-    parser.add_argument('-t', '--template', dest='template',
-                        metavar='TEMPLATE', help='name of getan template')
-    parser.add_argument('-u', '--user', dest='user', help='name of user')
-    parser.add_argument('-p', '--project', dest='project',
-                        help='key of output project')
-    parser.add_argument('-w', '--week', type=int, dest='week',
-                        help='week of year')
-    parser.add_argument('-y', '--year', type=int, dest='year', help='year')
-    parser.add_argument('-c', '--lastweek', dest='lastweek',
-                        help='entries of last working week',
-                        action='store_true')
-    parser.add_argument('-m', '--empty', dest='empty',
-                        help='show projects without an entries',
-                        action="store_true")
-    parser.add_argument('--encoding', dest='encoding',
-                        help='encoding of output', metavar='ENCODING')
-
-    args = parser.parse_args()
-
-    if args.lastweek:
-        week = (datetime.now() - timedelta(7)).isocalendar()[1]
-        year = int(date.today().strftime("%Y"))
-    else:
-        year = args.year
-        week = args.week
-
-    template_name = args.template or "wochenbericht"
-
-    if not args.encoding:
-        encoding = locale.getdefaultlocale()[1] or "utf-8"
-
-    sys.stdout = codecs.getwriter(encoding)(sys.stdout.detach())
-
-    user = None
-    if args.user:
-        user = args.user.decode(encoding)
-
-    print(render(database=args.database, user=user,
-                 template=template_name, year=year, week=week,
-                 project=args.project, empty_projects=args.empty))
-
-
-if __name__ == '__main__':
-    main()
-
-# vim:set ts=4 sw=4 si et sta sts=4 :
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/scripts/getaneval.py	Thu Jun 28 15:06:19 2018 +0200
@@ -0,0 +1,70 @@
+#!/usr/bin/env python3
+# -*- coding: utf-8 -*-
+#
+# (c) 2013, 2014 by Björn Ricks <bjoern.ricks@intevation.de>
+#
+# This is Free Software licensed under the terms of GPLv3 or later.
+# For details see LICENSE coming with the source of 'getan'.
+
+import codecs
+import locale
+import sys
+
+from datetime import date, datetime, timedelta
+import argparse
+
+from getan.template import render
+
+
+def main():
+    usage='getan-eval.py [options]'
+    parser = argparse.ArgumentParser(prog='getan', usage=usage)
+
+    parser.add_argument('-d', '--database', dest='database',metavar="DATABASE",
+                        help='metavar="DATABASE')
+    parser.add_argument('-t', '--template', dest='template',
+                        metavar='TEMPLATE', help='name of getan template')
+    parser.add_argument('-u', '--user', dest='user', help='name of user')
+    parser.add_argument('-p', '--project', dest='project',
+                        help='key of output project')
+    parser.add_argument('-w', '--week', type=int, dest='week',
+                        help='week of year')
+    parser.add_argument('-y', '--year', type=int, dest='year', help='year')
+    parser.add_argument('-c', '--lastweek', dest='lastweek',
+                        help='entries of last working week',
+                        action='store_true')
+    parser.add_argument('-m', '--empty', dest='empty',
+                        help='show projects without an entries',
+                        action="store_true")
+    parser.add_argument('--encoding', dest='encoding',
+                        help='encoding of output', metavar='ENCODING')
+
+    args = parser.parse_args()
+
+    if args.lastweek:
+        week = (datetime.now() - timedelta(7)).isocalendar()[1]
+        year = int(date.today().strftime("%Y"))
+    else:
+        year = args.year
+        week = args.week
+
+    template_name = args.template or "wochenbericht"
+
+    if not args.encoding:
+        encoding = locale.getdefaultlocale()[1] or "utf-8"
+
+    sys.stdout = codecs.getwriter(encoding)(sys.stdout.detach())
+
+    user = None
+    if args.user:
+        user = args.user
+
+    print(render(database=args.database, user=user,
+                 template=template_name, year=year, week=week,
+                 project=args.project, empty_projects=args.empty))
+
+
+if __name__ == '__main__':
+    main()
+
+# vim:set ts=4 sw=4 si et sta sts=4 :
--- a/setup.py	Thu Jun 28 12:01:16 2018 +0200
+++ b/setup.py	Thu Jun 28 15:06:19 2018 +0200
@@ -54,6 +54,7 @@
        os.path.join(scripts_dir, "convert-projects")],
       entry_points={"console_scripts":
                     ["getan=getan.main:main",
+                     "getaneval=scripts.getaneval:main",
                      ]},
       classifiers=[
           "Development Status :: 5 - Production/Stable",
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)