From 6ee65b14d0d2b109bb76c8736da3dc13e1f74c0f Mon Sep 17 00:00:00 2001 From: Mike McLean Date: Oct 11 2016 13:26:00 +0000 Subject: use dateutil to parse timestamp args in list-history Fixes: #181 --- diff --git a/cli/koji b/cli/koji index d878eba..f1aae9f 100755 --- a/cli/koji +++ b/cli/koji @@ -42,6 +42,7 @@ except ImportError: json = None import ConfigParser import base64 +import dateutil.parser import errno import koji import koji.util @@ -4213,6 +4214,22 @@ def anon_handle_list_history(options, session, args): assert False kwargs = {} limited = False + for opt in ('before', 'after'): + val = getattr(options, opt) + if not val: + continue + try: + ts = float(val) + setattr(options, opt, ts) + continue + except ValueError: + pass + try: + dt = dateutil.parser.parse(val) + ts = time.mktime(dt.timetuple()) + setattr(options, opt, ts) + except: + parser.error(_("Invalid time specification: %s") % val) for opt in ('package', 'tag', 'build', 'editor', 'user', 'permission', 'cg', 'external_repo', 'build_target', 'group', 'before', 'after'): diff --git a/koji.spec b/koji.spec index 7e752bb..374629a 100644 --- a/koji.spec +++ b/koji.spec @@ -29,6 +29,7 @@ Requires: python-krbV >= 1.0.13 Requires: rpm-python Requires: pyOpenSSL Requires: python-urlgrabber +Requires: python-dateutil BuildRequires: python %if %{use_systemd} BuildRequires: systemd