X-Loop: help-debbugs@HIDDEN Subject: bug#14097: [PATCH] Add support for ISO 8601 basic format Resent-From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Original-Sender: debbugs-submit-bounces <at> debbugs.gnu.org Resent-CC: bug-coreutils@HIDDEN Resent-Date: Sat, 30 Mar 2013 19:22:02 +0000 Resent-Message-ID: <handler.14097.B.13646712925273 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 14097 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: patch To: bug-gnulib@HIDDEN Cc: 14097 <at> debbugs.gnu.org X-Debbugs-Original-Cc: bug-coreutils@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.13646712925273 (code B ref -1); Sat, 30 Mar 2013 19:22:02 +0000 Received: (at submit) by debbugs.gnu.org; 30 Mar 2013 19:21:32 +0000 Received: from localhost ([127.0.0.1]:53078 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1UM1LH-0001N0-W8 for submit <at> debbugs.gnu.org; Sat, 30 Mar 2013 15:21:32 -0400 Received: from eggs.gnu.org ([208.118.235.92]:39897) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from <mihai@HIDDEN>) id 1UM1LE-0001Mq-4q for submit <at> debbugs.gnu.org; Sat, 30 Mar 2013 15:21:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <mihai@HIDDEN>) id 1UM1IX-0003dA-Ff for submit <at> debbugs.gnu.org; Sat, 30 Mar 2013 15:18:44 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-101.9 required=5.0 tests=BAYES_00, USER_IN_WHITELIST autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:41355) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mihai@HIDDEN>) id 1UM1IX-0003d6-Ca for submit <at> debbugs.gnu.org; Sat, 30 Mar 2013 15:18:41 -0400 Received: from eggs.gnu.org ([208.118.235.92]:51248) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <mihai@HIDDEN>) id 1UM1IT-0006IL-Hb for bug-coreutils@HIDDEN; Sat, 30 Mar 2013 15:18:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <mihai@HIDDEN>) id 1UM1IQ-0003cW-6d for bug-coreutils@HIDDEN; Sat, 30 Mar 2013 15:18:37 -0400 Received: from mail-wi0-x236.google.com ([2a00:1450:400c:c05::236]:45126) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mihai@HIDDEN>) id 1UM1IP-0003cC-T9 for bug-coreutils@HIDDEN; Sat, 30 Mar 2013 15:18:34 -0400 Received: by mail-wi0-f182.google.com with SMTP id hi18so652837wib.9 for <bug-coreutils@HIDDEN>; Sat, 30 Mar 2013 12:18:32 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:from:to:cc:subject:date:message-id:x-mailer :x-gm-message-state; bh=1cWS3oeOHgScddIXcPlxsqS4FSuxZa/FwjlJaaABP/M=; b=d/Jv3zBXgTCWzj0+7PCl/J4sQD3vHsMht1oL+NlS0Wbj9Zr3GAmo4y0mlRhReQdXPi Vv0D/CYEpfgfnJcCiud1lo5h4fa3kDZ7dFr1dDjgr6nS703rKflG3g8yuQVZQZEts28a oGnciLPQe0Ri3QpXtGZ1Jh23+6aD/mHq9Qg2eIgyhEmvFZUP9Qr7PzF4XeDMexClrOjr 79liRwFir03P5rpjgE7nD0ucoM8Lyg+6UmH50c7gFkbbr3XBaDxTWtKPiMAfzjkAUWut XeIa0gGsVwnTT9MB5dqRt3h0+zgh3+4Fknm0goczpPlNBDSZprixI6Y29IVRMfS3H4ZT +QLA== X-Received: by 10.180.77.9 with SMTP id o9mr3523637wiw.16.1364671112406; Sat, 30 Mar 2013 12:18:32 -0700 (PDT) Received: from dutier.st.ewi.tudelft.nl (dutier.st.ewi.tudelft.nl. [130.161.159.51]) by mx.google.com with ESMTPS id bq19sm5355340wib.7.2013.03.30.12.18.30 (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 30 Mar 2013 12:18:31 -0700 (PDT) From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Date: Sat, 30 Mar 2013 20:18:13 +0100 Message-Id: <1364671093-32496-1-git-send-email-mihai@HIDDEN> X-Mailer: git-send-email 1.7.9.5 X-Gm-Message-State: ALoCoQmnCaim/JZs7d0G70DJ3pJmVKWIgxTI1WuPXwrKy0+yt2VWbgHB/2nfLej+oK1LeweoT2RU X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -6.2 (------) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Sender: debbugs-submit-bounces <at> debbugs.gnu.org Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org X-Spam-Score: -6.2 (------) The parser now accepts the basic format for combined date and time representations, which ommits the date and time separators, "-" and ":". See bug 23767 for GNU coreutils, <https://savannah.gnu.org/bugs/?23767>. * lib/parse-datetime.y: Parse combined date and time representations in ISO 8601 basic format. (set_hhmmss_iso_8601_basic_time) New function. * tests/test-parse-datetime.c: Add new tests for combined date and time representations in ISO 8601 basic format. --- lib/parse-datetime.y | 78 +++++++++++++++++++++++++++++++++++++++++-- tests/test-parse-datetime.c | 61 +++++++++++++++++++++++++++++++++ 2 files changed, 137 insertions(+), 2 deletions(-) diff --git a/lib/parse-datetime.y b/lib/parse-datetime.y index 77d95b7..20bf1ac 100644 --- a/lib/parse-datetime.y +++ b/lib/parse-datetime.y @@ -282,6 +282,60 @@ set_hhmmss (parser_control *pc, long int hour, long int minutes, pc->seconds.tv_nsec = nsec; } +/* Set PC-> hour, minutes, seconds and nanoseconds members from ISO 8601 basic + time. */ +static void +set_hhmmss_iso_8601_basic_time (parser_control *pc, long int integer_part, + long int fractional_part) +{ + if (integer_part / 1000000 > 0) + { + /* not ISO 8601 time, forcing mktime error */ + pc->hour = 90; + pc->minutes = 0; + pc->seconds.tv_sec = 0; + pc->seconds.tv_nsec = 0; + } + else + { + pc->hour = integer_part / 10000; + if (pc->hour > 0) /* HHMMSS */ + { + pc->minutes = (integer_part % 10000) / 100; + pc->seconds.tv_sec = integer_part % 100; + pc->seconds.tv_nsec = fractional_part; + } + else + { + if (fractional_part != 0) + { + /* FIXME support fractional part for minutes and hours */ + pc->hour = 90; + pc->minutes = 0; + pc->seconds.tv_sec = 0; + pc->seconds.tv_nsec = 0; + } + else + { + pc->hour = integer_part / 100; + if (pc->hour > 0) /* HHMM */ + { + pc->minutes = integer_part % 100; + pc->seconds.tv_sec = 0; + pc->seconds.tv_nsec = 0; + } + else /* HH */ + { + pc->hour = integer_part; + pc->minutes = 0; + pc->seconds.tv_sec = 0; + pc->seconds.tv_nsec = 0; + } + } + } + } +} + %} /* We want a reentrant parser, even if the TZ manipulation and the calls to @@ -290,8 +344,8 @@ set_hhmmss (parser_control *pc, long int hour, long int minutes, %parse-param { parser_control *pc } %lex-param { parser_control *pc } -/* This grammar has 31 shift/reduce conflicts. */ -%expect 31 +/* This grammar has 34 shift/reduce conflicts. */ +%expect 34 %union { @@ -358,12 +412,18 @@ item: datetime: iso_8601_datetime + | iso_8601_basic_datetime ; iso_8601_datetime: iso_8601_date 'T' iso_8601_time ; +iso_8601_basic_datetime: + number 'T' iso_8601_basic_time + { pc->dates_seen--; } /* already incremented in digits_to_date_time */ + ; + time: tUNUMBER tMERIDIAN { @@ -401,6 +461,20 @@ iso_8601_time: } ; +iso_8601_basic_time: + tUNUMBER o_zone_offset + { + set_hhmmss_iso_8601_basic_time (pc, $1.value, 0); + pc->meridian = MER24; + } + | tUDECIMAL_NUMBER o_zone_offset + { + /* FIXME avoid time_t to long int cast */ + set_hhmmss_iso_8601_basic_time (pc, (long int)$1.tv_sec, $1.tv_nsec); + pc->meridian = MER24; + } + ; + o_zone_offset: /* empty */ | zone_offset diff --git a/tests/test-parse-datetime.c b/tests/test-parse-datetime.c index 7eba9ad..c620009 100644 --- a/tests/test-parse-datetime.c +++ b/tests/test-parse-datetime.c @@ -216,6 +216,67 @@ main (int argc _GL_UNUSED, char **argv) && expected.tv_nsec == result.tv_nsec); + /* ISO 8601 basic date and time of day representation, + 'T' separator, local time zone */ + p = "20110501T115518"; + expected.tv_sec = ref_time - gmtoff; + expected.tv_nsec = 0; + ASSERT (parse_datetime (&result, p, 0)); + LOG (p, expected, result); + ASSERT (expected.tv_sec == result.tv_sec + && expected.tv_nsec == result.tv_nsec); + + + /* ISO 8601 basic date and time of day representation, + 'T' separator, UTC */ + p = "20110501T115518Z"; + expected.tv_sec = ref_time; + expected.tv_nsec = 0; + ASSERT (parse_datetime (&result, p, 0)); + LOG (p, expected, result); + ASSERT (expected.tv_sec == result.tv_sec + && expected.tv_nsec == result.tv_nsec); + + + /* ISO 8601 basic date and time of day representation, + 'T' separator, w/UTC offset */ + p = "20110501T115518-0700"; + expected.tv_sec = 1304276118; + expected.tv_nsec = 0; + ASSERT (parse_datetime (&result, p, 0)); + LOG (p, expected, result); + ASSERT (expected.tv_sec == result.tv_sec + && expected.tv_nsec == result.tv_nsec); + + + /* ISO 8601 basic date and time of day representation, + 'T' separator, w/hour only UTC offset */ + p = "20110501T115518-07"; + expected.tv_sec = 1304276118; + expected.tv_nsec = 0; + ASSERT (parse_datetime (&result, p, 0)); + LOG (p, expected, result); + ASSERT (expected.tv_sec == result.tv_sec + && expected.tv_nsec == result.tv_nsec); + + + /* ISO 8601 basic date and time of day representation, + 'T' separator, w/hour only UTC offset, with ns */ + p = "20110501T115518,123456789-07"; + expected.tv_sec = 1304276118; + expected.tv_nsec = 123456789; + ASSERT (parse_datetime (&result, p, 0)); + LOG (p, expected, result); + ASSERT (expected.tv_sec == result.tv_sec + && expected.tv_nsec == result.tv_nsec); + + + /* Invalid ISO 8601 basic date and time of day representation, + too many digits for time */ + p = "20110501T11551800"; + ASSERT (!parse_datetime (&result, p, 0)); + + now.tv_sec = 4711; now.tv_nsec = 1267; p = "now"; -- 1.7.9.5
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.428 (Entity 5.428) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Subject: bug#14097: Acknowledgement ([PATCH] Add support for ISO 8601 basic format) Message-ID: <handler.14097.B.13646712925273.ack <at> debbugs.gnu.org> References: <1364671093-32496-1-git-send-email-mihai@HIDDEN> X-Gnu-PR-Message: ack 14097 X-Gnu-PR-Package: coreutils X-Gnu-PR-Keywords: patch Reply-To: 14097 <at> debbugs.gnu.org Date: Sat, 30 Mar 2013 19:22:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-coreutils@HIDDEN If you wish to submit further information on this problem, please send it to 14097 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 14097: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D14097 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: bug#14097: [PATCH] Add support for ISO 8601 basic format Resent-From: Eric Blake <eblake@HIDDEN> Original-Sender: debbugs-submit-bounces <at> debbugs.gnu.org Resent-CC: bug-coreutils@HIDDEN Resent-Date: Mon, 01 Apr 2013 12:55:02 +0000 Resent-Message-ID: <handler.14097.B14097.136482085611628 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 14097 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: patch To: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Cc: 14097 <at> debbugs.gnu.org, bug-gnulib@HIDDEN Received: via spool by 14097-submit <at> debbugs.gnu.org id=B14097.136482085611628 (code B ref 14097); Mon, 01 Apr 2013 12:55:02 +0000 Received: (at 14097) by debbugs.gnu.org; 1 Apr 2013 12:54:16 +0000 Received: from localhost ([127.0.0.1]:55670 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1UMeFb-00031S-Eu for submit <at> debbugs.gnu.org; Mon, 01 Apr 2013 08:54:16 -0400 Received: from mx1.redhat.com ([209.132.183.28]:2834) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from <eblake@HIDDEN>) id 1UMeFX-00031H-8P for 14097 <at> debbugs.gnu.org; Mon, 01 Apr 2013 08:54:13 -0400 Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r31CpHE5023788 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 1 Apr 2013 08:51:17 -0400 Received: from [10.3.113.179] (ovpn-113-179.phx2.redhat.com [10.3.113.179]) by int-mx01.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id r31CpG7r001836; Mon, 1 Apr 2013 08:51:16 -0400 Message-ID: <515982C3.6000403@HIDDEN> Date: Mon, 01 Apr 2013 06:51:15 -0600 From: Eric Blake <eblake@HIDDEN> Organization: Red Hat, Inc. User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130311 Thunderbird/17.0.4 MIME-Version: 1.0 References: <1364671093-32496-1-git-send-email-mihai@HIDDEN> In-Reply-To: <1364671093-32496-1-git-send-email-mihai@HIDDEN> X-Enigmail-Version: 1.5.1 OpenPGP: url=http://people.redhat.com/eblake/eblake.gpg Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="----enig2ONEBXNICVMWFVUXEDIPM" X-Scanned-By: MIMEDefang 2.67 on 10.5.11.11 X-Spam-Score: -7.3 (-------) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Sender: debbugs-submit-bounces <at> debbugs.gnu.org Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org X-Spam-Score: -9.2 (---------) This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2ONEBXNICVMWFVUXEDIPM Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 03/30/2013 01:18 PM, Mihai Capot=C4=83 wrote: > The parser now accepts the basic format for combined date and time > representations, which ommits the date and time separators, "-" and ":"= =2E s/ommits/omits/ >=20 > See bug 23767 for GNU coreutils, <https://savannah.gnu.org/bugs/?23767>= =2E >=20 > * lib/parse-datetime.y: Parse combined date and time representations in= > ISO 8601 basic format. > (set_hhmmss_iso_8601_basic_time) New function. > * tests/test-parse-datetime.c: Add new tests for combined date and time= > representations in ISO 8601 basic format. > --- > lib/parse-datetime.y | 78 +++++++++++++++++++++++++++++++++++= ++++++-- > tests/test-parse-datetime.c | 61 +++++++++++++++++++++++++++++++++ This patch is non-trivial in size. I stopped reviewing here; we would need to have copyright assignment on file to take this patch from you. Is this still something you are interested in pursuing? --=20 Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org ------enig2ONEBXNICVMWFVUXEDIPM Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.13 (GNU/Linux) Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJRWYLEAAoJEKeha0olJ0NqefcH/iFXAJnEwrisZXSCfyz+A5Jh nZkWiZOZ6hMpk0i4qH3gn5p39gFI6pOkV8KwIUKWmbDT7eAj4XVE7mwyQGNnccPk PdXrLXgo/SAqKFbRp6hnudMmpzlrlKaQIgA06nMB4b3pkI0xxq6iUcSzIhgL+q7Z wy2ojK5/0z7Anxzfdkfz0EIhha8nEA86JP2JOzya4hRoHmagUOe878n5If1cTt9G 7KEsSDdWVEfayjPwY+XJWe5FhFRd8Ehtf9Qjpel+5ggYti9RB0vP5MNAcxL8oYaT rvZ4nt2vidZb9Rz6EcArqSponPQwqO0hIEGROXtiei1x74YcnqgLoRJJgPTOsU4= =RuYV -----END PGP SIGNATURE----- ------enig2ONEBXNICVMWFVUXEDIPM--
X-Loop: help-debbugs@HIDDEN Subject: bug#14097: [PATCH] Add support for ISO 8601 basic format Resent-From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Original-Sender: debbugs-submit-bounces <at> debbugs.gnu.org Resent-CC: bug-coreutils@HIDDEN Resent-Date: Mon, 01 Apr 2013 13:20:01 +0000 Resent-Message-ID: <handler.14097.B14097.136482236913913 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 14097 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: patch To: Eric Blake <eblake@HIDDEN> Cc: 14097 <at> debbugs.gnu.org, bug-gnulib@HIDDEN Received: via spool by 14097-submit <at> debbugs.gnu.org id=B14097.136482236913913 (code B ref 14097); Mon, 01 Apr 2013 13:20:01 +0000 Received: (at 14097) by debbugs.gnu.org; 1 Apr 2013 13:19:29 +0000 Received: from localhost ([127.0.0.1]:55689 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1UMee1-0003cL-44 for submit <at> debbugs.gnu.org; Mon, 01 Apr 2013 09:19:29 -0400 Received: from mail-ia0-f179.google.com ([209.85.210.179]:47518) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from <mihai@HIDDEN>) id 1UMedz-0003cD-5q for 14097 <at> debbugs.gnu.org; Mon, 01 Apr 2013 09:19:28 -0400 Received: by mail-ia0-f179.google.com with SMTP id x24so1872882iak.10 for <14097 <at> debbugs.gnu.org>; Mon, 01 Apr 2013 06:16:33 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type:x-gm-message-state; bh=m7XPZ+jjok1nRRQ7AiLe/JvriWuivQiUZ2IA5TjbL0I=; b=mc3R1OVPJVC52KlQvBrw06OlvRqCPdbDS/zKg9xp4/hKoR+FaasR+zKb42h5tQE50x uy+kN4Ra0xzE91D7I9o38MWAuCSe0qrMDy9MEwT1g1TFKypVfBP6BkHZ79x3yQDm+gyI TS3vdn0ZJSf8bRJj/dfHMHWOhgmRdmyMTtXXrufEpw5BKUDkeaaLvxlHG9oOYTuncFgT AymxF40XcsBtrfWycDUM7nhJmflKjO0MIUYZ98xY25TXT7aEssQIzk4MocdPNKfaeEj+ Y0bwZvG+NFHD9eM4NSZAeotlD3MxCqeppd4C6E62HvjG85ie1qkdOHwbekgdU4IE7K8u Z+dQ== MIME-Version: 1.0 X-Received: by 10.50.196.165 with SMTP id in5mr3323419igc.99.1364822193785; Mon, 01 Apr 2013 06:16:33 -0700 (PDT) Received: by 10.64.7.75 with HTTP; Mon, 1 Apr 2013 06:16:33 -0700 (PDT) In-Reply-To: <515982C3.6000403@HIDDEN> References: <1364671093-32496-1-git-send-email-mihai@HIDDEN> <515982C3.6000403@HIDDEN> Date: Mon, 1 Apr 2013 15:16:33 +0200 Message-ID: <CADyhzG1WOQKcO2uUmgzraUDMRJvcU92qHF=c3fosLfe9=wgB8A@HIDDEN> From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Content-Type: text/plain; charset=UTF-8 X-Gm-Message-State: ALoCoQlz1dr9ko2ckQhS1F6uSFGfZlhiUpZRBPBxo2LrSVJfbI1suOOupRYQF7enKb7Uxp0r2kJn X-Spam-Score: 0.1 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Sender: debbugs-submit-bounces <at> debbugs.gnu.org Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org X-Spam-Score: -2.6 (--) On Mon, Apr 1, 2013 at 2:51 PM, Eric Blake <eblake@HIDDEN> wrote: > This patch is non-trivial in size. I stopped reviewing here; we would > need to have copyright assignment on file to take this patch from you. > Is this still something you are interested in pursuing? Yes, it is. I will take care of the copyright assignment ASAP. Mihai
X-Loop: help-debbugs@HIDDEN Subject: bug#14097: [PATCH] Add support for ISO 8601 basic format Resent-From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Original-Sender: debbugs-submit-bounces <at> debbugs.gnu.org Resent-CC: bug-coreutils@HIDDEN Resent-Date: Wed, 24 Apr 2013 12:11:01 +0000 Resent-Message-ID: <handler.14097.B14097.13668054558090 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 14097 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: patch To: Eric Blake <eblake@HIDDEN> Cc: 14097 <at> debbugs.gnu.org, bug-gnulib@HIDDEN Received: via spool by 14097-submit <at> debbugs.gnu.org id=B14097.13668054558090 (code B ref 14097); Wed, 24 Apr 2013 12:11:01 +0000 Received: (at 14097) by debbugs.gnu.org; 24 Apr 2013 12:10:55 +0000 Received: from localhost ([127.0.0.1]:40537 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1UUyXG-00026O-D4 for submit <at> debbugs.gnu.org; Wed, 24 Apr 2013 08:10:54 -0400 Received: from mail-ia0-f176.google.com ([209.85.210.176]:55583) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from <mihai@HIDDEN>) id 1UUyXD-000263-MN for 14097 <at> debbugs.gnu.org; Wed, 24 Apr 2013 08:10:52 -0400 Received: by mail-ia0-f176.google.com with SMTP id l27so1043936iae.21 for <14097 <at> debbugs.gnu.org>; Wed, 24 Apr 2013 05:05:49 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type:x-gm-message-state; bh=4EXvKTFprsMMZL1wBdFgoPmJTUrdDhDnckQKIQLM8tE=; b=di/fVzHqtLHS2LUXfw2k5Sp0eDp3ttZiYQ041w4lXY2joERBvF/D5/gZvn3YbU90qU mY96i4YolhI7WfsejQrCgO2SzsQJ9LgQYpIGdvM0yFX2LAeLoVlqgVTbByNQ5QGAC5lV lIImlGL0lLvY06LhTcrvKhqyDjM8o+XN6O4EOdi2ja0stivwe6/0W2RUdXj5+OUt9C0X KHgl7Yx2mKOgSBvRxsdWfJNccLM7++2zk/5eHlsUsQZKdYxY6srFYs8QcVsaJfKlJYs0 r6pNnxbB67tQXNkm8vYx4ZQA/nl4oejfWsugXYq+/+vNzbysymF1Der3yy7VuZAPIHXI yGQw== MIME-Version: 1.0 X-Received: by 10.50.45.97 with SMTP id l1mr27035593igm.99.1366805149151; Wed, 24 Apr 2013 05:05:49 -0700 (PDT) Received: by 10.64.28.229 with HTTP; Wed, 24 Apr 2013 05:05:49 -0700 (PDT) In-Reply-To: <515982C3.6000403@HIDDEN> References: <1364671093-32496-1-git-send-email-mihai@HIDDEN> <515982C3.6000403@HIDDEN> Date: Wed, 24 Apr 2013 14:05:49 +0200 Message-ID: <CADyhzG0TeCWCvZ7cvN6nKD1xMHMzFF1Q+jSSnEaitEZft+1pBA@HIDDEN> From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Content-Type: text/plain; charset=UTF-8 X-Gm-Message-State: ALoCoQlFdwJB4dvBFZKtWYZI+k0VIofIO+fKNwzO1rdk5UgQAFsJ4IuijZ4l4X4QBkFQb5cMeuXa X-Spam-Score: 0.1 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Sender: debbugs-submit-bounces <at> debbugs.gnu.org Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org X-Spam-Score: -2.6 (--) On Mon, Apr 1, 2013 at 2:51 PM, Eric Blake <eblake@HIDDEN> wrote: > This patch is non-trivial in size. I stopped reviewing here; we would > need to have copyright assignment on file to take this patch from you. > Is this still something you are interested in pursuing? I completed the assignment process. Please continue the review. Mihai
X-Loop: help-debbugs@HIDDEN Subject: bug#14097: [PATCH] Add support for ISO 8601 basic format Resent-From: Paul Eggert <eggert@HIDDEN> Original-Sender: debbugs-submit-bounces <at> debbugs.gnu.org Resent-CC: bug-coreutils@HIDDEN Resent-Date: Wed, 24 Apr 2013 22:08:02 +0000 Resent-Message-ID: <handler.14097.B.136684126022428 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 14097 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: patch To: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Cc: 14097 <at> debbugs.gnu.org, bug-gnulib@HIDDEN X-Debbugs-Original-Cc: bug-coreutils@HIDDEN, bug-gnulib@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.136684126022428 (code B ref -1); Wed, 24 Apr 2013 22:08:02 +0000 Received: (at submit) by debbugs.gnu.org; 24 Apr 2013 22:07:40 +0000 Received: from localhost ([127.0.0.1]:41694 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1UV7ql-0005pd-Tn for submit <at> debbugs.gnu.org; Wed, 24 Apr 2013 18:07:40 -0400 Received: from eggs.gnu.org ([208.118.235.92]:59330) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from <eggert@HIDDEN>) id 1UV7qj-0005pW-Cg for submit <at> debbugs.gnu.org; Wed, 24 Apr 2013 18:07:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <eggert@HIDDEN>) id 1UV7lm-0007Sm-SS for submit <at> debbugs.gnu.org; Wed, 24 Apr 2013 18:02:32 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-102.3 required=5.0 tests=BAYES_20, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD,USER_IN_WHITELIST autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:51272) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <eggert@HIDDEN>) id 1UV7lm-0007Se-Pn for submit <at> debbugs.gnu.org; Wed, 24 Apr 2013 18:02:30 -0400 Received: from eggs.gnu.org ([208.118.235.92]:42427) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <eggert@HIDDEN>) id 1UV7ll-0002fz-Jm for bug-coreutils@HIDDEN; Wed, 24 Apr 2013 18:02:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <eggert@HIDDEN>) id 1UV7lk-0007Ri-27 for bug-coreutils@HIDDEN; Wed, 24 Apr 2013 18:02:29 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:56871) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <eggert@HIDDEN>) id 1UV7lj-0007RI-SG; Wed, 24 Apr 2013 18:02:27 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id 5862139E8106; Wed, 24 Apr 2013 15:02:26 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tT7XXU6WO4VF; Wed, 24 Apr 2013 15:02:25 -0700 (PDT) Received: from penguin.cs.ucla.edu (Penguin.CS.UCLA.EDU [131.179.64.200]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id E862939E8008; Wed, 24 Apr 2013 15:02:25 -0700 (PDT) Message-ID: <51785671.1080300@HIDDEN> Date: Wed, 24 Apr 2013 15:02:25 -0700 From: Paul Eggert <eggert@HIDDEN> User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130311 Thunderbird/17.0.4 MIME-Version: 1.0 References: <1364671093-32496-1-git-send-email-mihai@HIDDEN> In-Reply-To: <1364671093-32496-1-git-send-email-mihai@HIDDEN> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -3.5 (---) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Sender: debbugs-submit-bounces <at> debbugs.gnu.org Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org X-Spam-Score: -6.2 (------) Thanks for taking this on. Here is a brief review. The most important thing is that the patch also needs to update doc/parse-datetime.texi. Also, some comments about the code changes: On 03/30/13 12:18, Mihai Capot=C4=83 wrote: > + /* not ISO 8601 time, forcing mktime error */ > + pc->hour =3D 90; How does this force a mktime error? mktime allows tm_hour =3D=3D 90. > datetime: > iso_8601_datetime > + | iso_8601_basic_datetime > ; > =20 > iso_8601_datetime: > iso_8601_date 'T' iso_8601_time > ; > =20 > +iso_8601_basic_datetime: > + number 'T' iso_8601_basic_time > + { pc->dates_seen--; } /* already incremented in digits_to_date_t= ime */ This doesn't look right. 'number' accepts all sort of things that we would rather not accept here. Conversely, why require ":" in times to correlate with "-" in dates? Shouldn't we accept a "-"less date along with a ":"ful time, and vice versa? And that "dates_seen--" business is a hack; can't we arrange things so that dates_seen is incremented just once? > +iso_8601_basic_time: > + tUNUMBER o_zone_offset > + { > + set_hhmmss_iso_8601_basic_time (pc, $1.value, 0); > + pc->meridian =3D MER24; > + } > + | tUDECIMAL_NUMBER o_zone_offset > + { > + /* FIXME avoid time_t to long int cast */ Why is the cast needed? Also, can't the grammar be simplified here, by using unsigned_seconds instead of using both tUDECIMAL_NUMBER and tUNUMBER?
X-Loop: help-debbugs@HIDDEN Subject: bug#14097: [PATCH v2] Add support for ISO 8601 basic format Resent-From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-coreutils@HIDDEN Resent-Date: Mon, 05 Aug 2013 16:52:02 +0000 Resent-Message-ID: <handler.14097.B14097.13757214954524 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 14097 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: patch To: eggert@HIDDEN Cc: 14097 <at> debbugs.gnu.org, bug-gnulib@HIDDEN Received: via spool by 14097-submit <at> debbugs.gnu.org id=B14097.13757214954524 (code B ref 14097); Mon, 05 Aug 2013 16:52:02 +0000 Received: (at 14097) by debbugs.gnu.org; 5 Aug 2013 16:51:35 +0000 Received: from localhost ([127.0.0.1]:41477 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1V6O0M-0001Ar-Hn for submit <at> debbugs.gnu.org; Mon, 05 Aug 2013 12:51:35 -0400 Received: from mail-wi0-f181.google.com ([209.85.212.181]:56979) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <mihai@HIDDEN>) id 1V6O0F-0001AD-Lb for 14097 <at> debbugs.gnu.org; Mon, 05 Aug 2013 12:51:31 -0400 Received: by mail-wi0-f181.google.com with SMTP id en1so1765882wid.2 for <14097 <at> debbugs.gnu.org>; Mon, 05 Aug 2013 09:51:21 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references :mime-version:content-type:content-transfer-encoding :x-gm-message-state; bh=IUDPiwuBkEJYrTdF73YxYjzzAVjk7gj7J+955GGSHyg=; b=N597QHPSr7D+bmoKIw3gsVR1D3a0jdkfBVgrGByj8WcwkPZS5g/1Qynk6jRfZh3tnS jpNpcxkzakaVfN8dpNc6lV5P9osfifLemoTBTgkBwrUcX0N7szr47HVt0o80YQ1lzuZO hLn4Nx7u48lLg3oDOUaQ0HNjUc/+Hrc3riUwiGstYdId+sX0cH271qbVJQt+7v9GHNoS Qh8DCi1aKGOXIEDdKEDHBu89nUW7mzQuXsgZtfWlRC2dEhTHfKW6UJrWaAvNjttD0ehu nDQKX6IJziCKd3z8160XYstTV4Nf6EpZ4AcOqzO2Fup66n8yPIOlT60RxW+D945YNlTP 7v2w== X-Received: by 10.194.170.227 with SMTP id ap3mr13972174wjc.40.1375721481468; Mon, 05 Aug 2013 09:51:21 -0700 (PDT) Received: from dutier.st.ewi.tudelft.nl (dutier.st.ewi.tudelft.nl. [130.161.159.51]) by mx.google.com with ESMTPSA id j20sm23324wie.7.2013.08.05.09.51.19 for <multiple recipients> (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 05 Aug 2013 09:51:20 -0700 (PDT) From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Date: Mon, 5 Aug 2013 18:51:13 +0200 Message-Id: <1375721473-14714-1-git-send-email-mihai@HIDDEN> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <51785671.1080300@HIDDEN> References: <51785671.1080300@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Gm-Message-State: ALoCoQmjNALuTHGdAfGbx0EMQfhaP+N6x+BfpReuWyZ1gakq47BUvn0WOflieQgEkc+JLwx9GSft X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.7 (/) The parser now accepts the basic format for combined date and time representations, which ommits the date and time separators, "-" and ":". See bug 23767 for GNU coreutils, <https://savannah.gnu.org/bugs/?23767>. * lib/parse-datetime.y: Parse combined date and time representations in ISO 8601 basic format. (set_hhmmss_iso_8601_basic_time) New function. (digits_iso_8601_basic_to_date) New function. * tests/test-parse-datetime.c: Add tests for combined date and time representations in ISO 8601 basic format. * doc/parse-datetime.texi Document support for combined date and time representations in ISO 8601 basic format. Signed-off-by: Mihai Capotă <mihai@HIDDEN> --- On Thu, Apr 25, 2013 at 12:02 AM, Paul Eggert <eggert@HIDDEN> wrote: > The most important thing is that the patch also needs > to update doc/parse-datetime.texi. Done. > On 03/30/13 12:18, Mihai Capotă wrote: >> + /* not ISO 8601 time, forcing mktime error */ >> + pc->hour = 90; > > How does this force a mktime error? mktime allows tm_hour == 90. I meant to say mktime_ok. I changed the code to reject input by incrementing times_seen, like time_zone_hhmm. >> datetime: >> iso_8601_datetime >> + | iso_8601_basic_datetime >> ; >> >> iso_8601_datetime: >> iso_8601_date 'T' iso_8601_time >> ; >> >> +iso_8601_basic_datetime: >> + number 'T' iso_8601_basic_time >> + { pc->dates_seen--; } /* already incremented in digits_to_date_time */ > > This doesn't look right. 'number' accepts all sort of things that we > would rather not accept here. I was trying to make use of the existing digits_to_date_time function. I replaced it with tUNUMBER and a new function. > Conversely, why require ":" in times to > correlate with "-" in dates? Shouldn't we accept a "-"less date along > with a ":"ful time, and vice versa? No, that is not allowed by the standard. > And that "dates_seen--" business > is a hack; can't we arrange things so that dates_seen is incremented > just once? The hack is gone. >> +iso_8601_basic_time: >> + tUNUMBER o_zone_offset >> + { >> + set_hhmmss_iso_8601_basic_time (pc, $1.value, 0); >> + pc->meridian = MER24; >> + } >> + | tUDECIMAL_NUMBER o_zone_offset >> + { >> + /* FIXME avoid time_t to long int cast */ > > Why is the cast needed? Also, can't the grammar be simplified > here, by using unsigned_seconds instead of using both > tUDECIMAL_NUMBER and tUNUMBER? I switched to using unsigned_seconds. doc/parse-datetime.texi | 9 +++++- lib/parse-datetime.y | 68 +++++++++++++++++++++++++++++++++++++++++-- tests/test-parse-datetime.c | 61 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 135 insertions(+), 3 deletions(-) diff --git a/doc/parse-datetime.texi b/doc/parse-datetime.texi index 6b3e973..9aa87ed 100644 --- a/doc/parse-datetime.texi +++ b/doc/parse-datetime.texi @@ -327,7 +327,12 @@ The ISO 8601 date and time of day extended format consists of an ISO day. This format is also recognized if the @samp{T} is replaced by a space. -In this format, the time of day should use 24-hour notation. +The ISO 8601 basic format is also recognized. It is identical to the ISO 8601 +extended format, except for omitting the @samp{-} separator in the date and the +@samp{:} separator in the time. Only the HHMMSS format is supported for the +time of day, the reduced accuracy HHMM and HH formats are not supported. + +In these formats, the time of day should use 24-hour notation. Fractional seconds are allowed, with either comma or period preceding the fraction. ISO 8601 fractional minutes and hours are not supported. Typically, hosts support nanosecond timestamp resolution; @@ -339,6 +344,8 @@ Here are some examples: 2012-09-24T20:02:00.052-0500 2012-12-31T23:59:59,999999999+1100 1970-01-01 00:00Z +20120924T200200.052-0500 +20121231T235959,999999999+1100 @end example @node Day of week items diff --git a/lib/parse-datetime.y b/lib/parse-datetime.y index 4dce7fa..fa9719d 100644 --- a/lib/parse-datetime.y +++ b/lib/parse-datetime.y @@ -257,6 +257,38 @@ digits_to_date_time (parser_control *pc, textint text_int) } } +/* Extract into *PC the date info from a string of digits in ISO 8601 basic + format, i.e., YYYYMMHH, YYYY, or YY meaning century. Note that YYYYMM is not + allowed to avoid confusion with YYMMHH */ +static void +digits_iso_8601_basic_to_date (parser_control *pc, textint text_int) +{ + switch (text_int.digits) + { + case 8: + pc->day = text_int.value % 100; + pc->month = (text_int.value / 100) % 100; + pc->year.value = text_int.value / 10000; + pc->year.digits = 4; + return; + case 4: + pc->day = 1; + pc->month = 1; + pc->year.value = text_int.value; + pc->year.digits = 4; + return; + case 2: + pc->day = 1; + pc->month = 1; + pc->year.value = text_int.value * 100; + pc->year.digits = 4; + return; + default: + pc->dates_seen++; + return; + } +} + /* Increment PC->rel by FACTOR * REL (FACTOR is 1 or -1). */ static void apply_relative_time (parser_control *pc, relative_time rel, int factor) @@ -282,6 +314,28 @@ set_hhmmss (parser_control *pc, long int hour, long int minutes, pc->seconds.tv_nsec = nsec; } +/* Set PC-> hour, minutes, seconds and nanoseconds members from ISO 8601 basic + time. */ +static void +set_hhmmss_iso_8601_basic_time (parser_control *pc, time_t integer_part, + long int fractional_part) +{ + if (integer_part / 1000000 > 0) + { + /* Not ISO 8601 time, arrange to reject it by incrementing + pc->times_seen.*/ + pc->times_seen++; + } + else + { + /* FIXME support reduced accuracy times, i.e. HHMM and HH */ + pc->hour = integer_part / 10000; + pc->minutes = (integer_part % 10000) / 100; + pc->seconds.tv_sec = integer_part % 100; + pc->seconds.tv_nsec = fractional_part; + } +} + %} /* We want a reentrant parser, even if the TZ manipulation and the calls to @@ -290,8 +344,8 @@ set_hhmmss (parser_control *pc, long int hour, long int minutes, %parse-param { parser_control *pc } %lex-param { parser_control *pc } -/* This grammar has 31 shift/reduce conflicts. */ -%expect 31 +/* This grammar has 33 shift/reduce conflicts. */ +%expect 33 %union { @@ -358,12 +412,22 @@ item: datetime: iso_8601_datetime + | iso_8601_basic_datetime ; iso_8601_datetime: iso_8601_date 'T' iso_8601_time ; +iso_8601_basic_datetime: + tUNUMBER 'T' unsigned_seconds o_zone_offset + { + digits_iso_8601_basic_to_date (pc, $1); + set_hhmmss_iso_8601_basic_time (pc, $3.tv_sec, $3.tv_nsec); + pc->meridian = MER24; + } + ; + time: tUNUMBER tMERIDIAN { diff --git a/tests/test-parse-datetime.c b/tests/test-parse-datetime.c index 7eba9ad..c620009 100644 --- a/tests/test-parse-datetime.c +++ b/tests/test-parse-datetime.c @@ -216,6 +216,67 @@ main (int argc _GL_UNUSED, char **argv) && expected.tv_nsec == result.tv_nsec); + /* ISO 8601 basic date and time of day representation, + 'T' separator, local time zone */ + p = "20110501T115518"; + expected.tv_sec = ref_time - gmtoff; + expected.tv_nsec = 0; + ASSERT (parse_datetime (&result, p, 0)); + LOG (p, expected, result); + ASSERT (expected.tv_sec == result.tv_sec + && expected.tv_nsec == result.tv_nsec); + + + /* ISO 8601 basic date and time of day representation, + 'T' separator, UTC */ + p = "20110501T115518Z"; + expected.tv_sec = ref_time; + expected.tv_nsec = 0; + ASSERT (parse_datetime (&result, p, 0)); + LOG (p, expected, result); + ASSERT (expected.tv_sec == result.tv_sec + && expected.tv_nsec == result.tv_nsec); + + + /* ISO 8601 basic date and time of day representation, + 'T' separator, w/UTC offset */ + p = "20110501T115518-0700"; + expected.tv_sec = 1304276118; + expected.tv_nsec = 0; + ASSERT (parse_datetime (&result, p, 0)); + LOG (p, expected, result); + ASSERT (expected.tv_sec == result.tv_sec + && expected.tv_nsec == result.tv_nsec); + + + /* ISO 8601 basic date and time of day representation, + 'T' separator, w/hour only UTC offset */ + p = "20110501T115518-07"; + expected.tv_sec = 1304276118; + expected.tv_nsec = 0; + ASSERT (parse_datetime (&result, p, 0)); + LOG (p, expected, result); + ASSERT (expected.tv_sec == result.tv_sec + && expected.tv_nsec == result.tv_nsec); + + + /* ISO 8601 basic date and time of day representation, + 'T' separator, w/hour only UTC offset, with ns */ + p = "20110501T115518,123456789-07"; + expected.tv_sec = 1304276118; + expected.tv_nsec = 123456789; + ASSERT (parse_datetime (&result, p, 0)); + LOG (p, expected, result); + ASSERT (expected.tv_sec == result.tv_sec + && expected.tv_nsec == result.tv_nsec); + + + /* Invalid ISO 8601 basic date and time of day representation, + too many digits for time */ + p = "20110501T11551800"; + ASSERT (!parse_datetime (&result, p, 0)); + + now.tv_sec = 4711; now.tv_nsec = 1267; p = "now"; -- 1.7.9.5
X-Loop: help-debbugs@HIDDEN Subject: bug#14097: [PATCH v2] Add support for ISO 8601 basic format Resent-From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-coreutils@HIDDEN Resent-Date: Sat, 31 Aug 2013 15:32:01 +0000 Resent-Message-ID: <handler.14097.B14097.137796307819855 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 14097 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: patch To: eggert@HIDDEN Cc: 14097 <at> debbugs.gnu.org Received: via spool by 14097-submit <at> debbugs.gnu.org id=B14097.137796307819855 (code B ref 14097); Sat, 31 Aug 2013 15:32:01 +0000 Received: (at 14097) by debbugs.gnu.org; 31 Aug 2013 15:31:18 +0000 Received: from localhost ([127.0.0.1]:33330 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1VFn8v-0005A8-94 for submit <at> debbugs.gnu.org; Sat, 31 Aug 2013 11:31:17 -0400 Received: from mail-wg0-f52.google.com ([74.125.82.52]:46960) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <mihai@HIDDEN>) id 1VFn8s-00059t-AX for 14097 <at> debbugs.gnu.org; Sat, 31 Aug 2013 11:31:15 -0400 Received: by mail-wg0-f52.google.com with SMTP id m14so608817wgh.31 for <14097 <at> debbugs.gnu.org>; Sat, 31 Aug 2013 08:31:08 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=qPVQeUQOqGSRbcl5AJqZ0vRkCcooRouAk7StBljXNJE=; b=evB0ElaLamleys7MvZWPoFqsiVw/9lCLKDjyI8ibh1LIIIiuFgikiG+0yrgKeqd69E cyqNrJybno9uBaIuDfC32VWSLtuU5C0TyepcV90MbY9/z6areCYFcS9gh6AUakRQGHy1 BDAP2CMRwx6Nr1EMSe6+TxCCrGJQqDC7oOFAEgaPRFvPE2kHdJhUkvKk11B4HFKkyK/o XAwIGQ9i8x98TrQbm5j8ol/e9bXxdiLoXlJOrtugCQOijTAlABoA8Lz5hITkHMtlRXOv 9aW7/S61WVL4VFHNNgj+Jo7V3sEbtGn041F0bncofpExYH7q1jULArcHI4fxc2UYiDih N9RA== X-Gm-Message-State: ALoCoQlhhy3GMUg/RNALOXya3nHdWOdZ0ty/KVOoEiNUO98lXEdQAiol68e/hCEuHmtaglfiYX88 MIME-Version: 1.0 X-Received: by 10.180.78.229 with SMTP id e5mr6647015wix.58.1377963068352; Sat, 31 Aug 2013 08:31:08 -0700 (PDT) Received: by 10.216.196.72 with HTTP; Sat, 31 Aug 2013 08:31:08 -0700 (PDT) In-Reply-To: <1375721473-14714-1-git-send-email-mihai@HIDDEN> References: <51785671.1080300@HIDDEN> <1375721473-14714-1-git-send-email-mihai@HIDDEN> Date: Sat, 31 Aug 2013 17:31:08 +0200 Message-ID: <CADyhzG2MZ6KYceTVscRrhi9zWWGkEFupxSCQhuvxHkMeWMk4qQ@HIDDEN> From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.7 (/) Could someone please review the new patch? On Mon, Aug 5, 2013 at 6:51 PM, Mihai Capot=C4=83 <mihai@HIDDEN> wrote: > The parser now accepts the basic format for combined date and time > representations, which ommits the date and time separators, "-" and ":". > > See bug 23767 for GNU coreutils, <https://savannah.gnu.org/bugs/?23767>. > > * lib/parse-datetime.y: Parse combined date and time representations in > ISO 8601 basic format. > (set_hhmmss_iso_8601_basic_time) New function. > (digits_iso_8601_basic_to_date) New function. > * tests/test-parse-datetime.c: Add tests for combined date and time > representations in ISO 8601 basic format. > * doc/parse-datetime.texi Document support for combined date and time > representations in ISO 8601 basic format. > > Signed-off-by: Mihai Capot=C4=83 <mihai@HIDDEN> > --- > On Thu, Apr 25, 2013 at 12:02 AM, Paul Eggert <eggert@HIDDEN> wrote: >> The most important thing is that the patch also needs >> to update doc/parse-datetime.texi. > > Done. > >> On 03/30/13 12:18, Mihai Capot=C4=83 wrote: >>> + /* not ISO 8601 time, forcing mktime error */ >>> + pc->hour =3D 90; >> >> How does this force a mktime error? mktime allows tm_hour =3D=3D 90. > > I meant to say mktime_ok. I changed the code to reject input by increment= ing times_seen, like time_zone_hhmm. > >>> datetime: >>> iso_8601_datetime >>> + | iso_8601_basic_datetime >>> ; >>> >>> iso_8601_datetime: >>> iso_8601_date 'T' iso_8601_time >>> ; >>> >>> +iso_8601_basic_datetime: >>> + number 'T' iso_8601_basic_time >>> + { pc->dates_seen--; } /* already incremented in digits_to_date_t= ime */ >> >> This doesn't look right. 'number' accepts all sort of things that we >> would rather not accept here. > > I was trying to make use of the existing digits_to_date_time function. I = replaced it with tUNUMBER and a new function. > >> Conversely, why require ":" in times to >> correlate with "-" in dates? Shouldn't we accept a "-"less date along >> with a ":"ful time, and vice versa? > > No, that is not allowed by the standard. > >> And that "dates_seen--" business >> is a hack; can't we arrange things so that dates_seen is incremented >> just once? > > The hack is gone. > >>> +iso_8601_basic_time: >>> + tUNUMBER o_zone_offset >>> + { >>> + set_hhmmss_iso_8601_basic_time (pc, $1.value, 0); >>> + pc->meridian =3D MER24; >>> + } >>> + | tUDECIMAL_NUMBER o_zone_offset >>> + { >>> + /* FIXME avoid time_t to long int cast */ >> >> Why is the cast needed? Also, can't the grammar be simplified >> here, by using unsigned_seconds instead of using both >> tUDECIMAL_NUMBER and tUNUMBER? > > I switched to using unsigned_seconds. > > doc/parse-datetime.texi | 9 +++++- > lib/parse-datetime.y | 68 +++++++++++++++++++++++++++++++++++++= ++++-- > tests/test-parse-datetime.c | 61 +++++++++++++++++++++++++++++++++++++= + > 3 files changed, 135 insertions(+), 3 deletions(-) > > diff --git a/doc/parse-datetime.texi b/doc/parse-datetime.texi > index 6b3e973..9aa87ed 100644 > --- a/doc/parse-datetime.texi > +++ b/doc/parse-datetime.texi > @@ -327,7 +327,12 @@ The ISO 8601 date and time of day extended format co= nsists of an ISO > day. This format is also recognized if the @samp{T} is replaced by a > space. > > -In this format, the time of day should use 24-hour notation. > +The ISO 8601 basic format is also recognized. It is identical to the ISO= 8601 > +extended format, except for omitting the @samp{-} separator in the date = and the > +@samp{:} separator in the time. Only the HHMMSS format is supported for = the > +time of day, the reduced accuracy HHMM and HH formats are not supported. > + > +In these formats, the time of day should use 24-hour notation. > Fractional seconds are allowed, with either comma or period preceding > the fraction. ISO 8601 fractional minutes and hours are not > supported. Typically, hosts support nanosecond timestamp resolution; > @@ -339,6 +344,8 @@ Here are some examples: > 2012-09-24T20:02:00.052-0500 > 2012-12-31T23:59:59,999999999+1100 > 1970-01-01 00:00Z > +20120924T200200.052-0500 > +20121231T235959,999999999+1100 > @end example > > @node Day of week items > diff --git a/lib/parse-datetime.y b/lib/parse-datetime.y > index 4dce7fa..fa9719d 100644 > --- a/lib/parse-datetime.y > +++ b/lib/parse-datetime.y > @@ -257,6 +257,38 @@ digits_to_date_time (parser_control *pc, textint tex= t_int) > } > } > > +/* Extract into *PC the date info from a string of digits in ISO 8601 ba= sic > + format, i.e., YYYYMMHH, YYYY, or YY meaning century. Note that YYYYMM= is not > + allowed to avoid confusion with YYMMHH */ > +static void > +digits_iso_8601_basic_to_date (parser_control *pc, textint text_int) > +{ > + switch (text_int.digits) > + { > + case 8: > + pc->day =3D text_int.value % 100; > + pc->month =3D (text_int.value / 100) % 100; > + pc->year.value =3D text_int.value / 10000; > + pc->year.digits =3D 4; > + return; > + case 4: > + pc->day =3D 1; > + pc->month =3D 1; > + pc->year.value =3D text_int.value; > + pc->year.digits =3D 4; > + return; > + case 2: > + pc->day =3D 1; > + pc->month =3D 1; > + pc->year.value =3D text_int.value * 100; > + pc->year.digits =3D 4; > + return; > + default: > + pc->dates_seen++; > + return; > + } > +} > + > /* Increment PC->rel by FACTOR * REL (FACTOR is 1 or -1). */ > static void > apply_relative_time (parser_control *pc, relative_time rel, int factor) > @@ -282,6 +314,28 @@ set_hhmmss (parser_control *pc, long int hour, long = int minutes, > pc->seconds.tv_nsec =3D nsec; > } > > +/* Set PC-> hour, minutes, seconds and nanoseconds members from ISO 8601= basic > + time. */ > +static void > +set_hhmmss_iso_8601_basic_time (parser_control *pc, time_t integer_part, > + long int fractional_part) > +{ > + if (integer_part / 1000000 > 0) > + { > + /* Not ISO 8601 time, arrange to reject it by incrementing > + pc->times_seen.*/ > + pc->times_seen++; > + } > + else > + { > + /* FIXME support reduced accuracy times, i.e. HHMM and HH */ > + pc->hour =3D integer_part / 10000; > + pc->minutes =3D (integer_part % 10000) / 100; > + pc->seconds.tv_sec =3D integer_part % 100; > + pc->seconds.tv_nsec =3D fractional_part; > + } > +} > + > %} > > /* We want a reentrant parser, even if the TZ manipulation and the calls= to > @@ -290,8 +344,8 @@ set_hhmmss (parser_control *pc, long int hour, long i= nt minutes, > %parse-param { parser_control *pc } > %lex-param { parser_control *pc } > > -/* This grammar has 31 shift/reduce conflicts. */ > -%expect 31 > +/* This grammar has 33 shift/reduce conflicts. */ > +%expect 33 > > %union > { > @@ -358,12 +412,22 @@ item: > > datetime: > iso_8601_datetime > + | iso_8601_basic_datetime > ; > > iso_8601_datetime: > iso_8601_date 'T' iso_8601_time > ; > > +iso_8601_basic_datetime: > + tUNUMBER 'T' unsigned_seconds o_zone_offset > + { > + digits_iso_8601_basic_to_date (pc, $1); > + set_hhmmss_iso_8601_basic_time (pc, $3.tv_sec, $3.tv_nsec); > + pc->meridian =3D MER24; > + } > + ; > + > time: > tUNUMBER tMERIDIAN > { > diff --git a/tests/test-parse-datetime.c b/tests/test-parse-datetime.c > index 7eba9ad..c620009 100644 > --- a/tests/test-parse-datetime.c > +++ b/tests/test-parse-datetime.c > @@ -216,6 +216,67 @@ main (int argc _GL_UNUSED, char **argv) > && expected.tv_nsec =3D=3D result.tv_nsec); > > > + /* ISO 8601 basic date and time of day representation, > + 'T' separator, local time zone */ > + p =3D "20110501T115518"; > + expected.tv_sec =3D ref_time - gmtoff; > + expected.tv_nsec =3D 0; > + ASSERT (parse_datetime (&result, p, 0)); > + LOG (p, expected, result); > + ASSERT (expected.tv_sec =3D=3D result.tv_sec > + && expected.tv_nsec =3D=3D result.tv_nsec); > + > + > + /* ISO 8601 basic date and time of day representation, > + 'T' separator, UTC */ > + p =3D "20110501T115518Z"; > + expected.tv_sec =3D ref_time; > + expected.tv_nsec =3D 0; > + ASSERT (parse_datetime (&result, p, 0)); > + LOG (p, expected, result); > + ASSERT (expected.tv_sec =3D=3D result.tv_sec > + && expected.tv_nsec =3D=3D result.tv_nsec); > + > + > + /* ISO 8601 basic date and time of day representation, > + 'T' separator, w/UTC offset */ > + p =3D "20110501T115518-0700"; > + expected.tv_sec =3D 1304276118; > + expected.tv_nsec =3D 0; > + ASSERT (parse_datetime (&result, p, 0)); > + LOG (p, expected, result); > + ASSERT (expected.tv_sec =3D=3D result.tv_sec > + && expected.tv_nsec =3D=3D result.tv_nsec); > + > + > + /* ISO 8601 basic date and time of day representation, > + 'T' separator, w/hour only UTC offset */ > + p =3D "20110501T115518-07"; > + expected.tv_sec =3D 1304276118; > + expected.tv_nsec =3D 0; > + ASSERT (parse_datetime (&result, p, 0)); > + LOG (p, expected, result); > + ASSERT (expected.tv_sec =3D=3D result.tv_sec > + && expected.tv_nsec =3D=3D result.tv_nsec); > + > + > + /* ISO 8601 basic date and time of day representation, > + 'T' separator, w/hour only UTC offset, with ns */ > + p =3D "20110501T115518,123456789-07"; > + expected.tv_sec =3D 1304276118; > + expected.tv_nsec =3D 123456789; > + ASSERT (parse_datetime (&result, p, 0)); > + LOG (p, expected, result); > + ASSERT (expected.tv_sec =3D=3D result.tv_sec > + && expected.tv_nsec =3D=3D result.tv_nsec); > + > + > + /* Invalid ISO 8601 basic date and time of day representation, > + too many digits for time */ > + p =3D "20110501T11551800"; > + ASSERT (!parse_datetime (&result, p, 0)); > + > + > now.tv_sec =3D 4711; > now.tv_nsec =3D 1267; > p =3D "now"; > -- > 1.7.9.5 >
X-Loop: help-debbugs@HIDDEN Subject: bug#14097: [PATCH v2] Add support for ISO 8601 basic format Resent-From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-coreutils@HIDDEN Resent-Date: Fri, 22 Nov 2013 08:51:02 +0000 Resent-Message-ID: <handler.14097.B14097.138511021914933 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 14097 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: patch To: eggert@HIDDEN Cc: 14097 <at> debbugs.gnu.org Received: via spool by 14097-submit <at> debbugs.gnu.org id=B14097.138511021914933 (code B ref 14097); Fri, 22 Nov 2013 08:51:02 +0000 Received: (at 14097) by debbugs.gnu.org; 22 Nov 2013 08:50:19 +0000 Received: from localhost ([127.0.0.1]:37947 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1VjmRO-0003sm-65 for submit <at> debbugs.gnu.org; Fri, 22 Nov 2013 03:50:18 -0500 Received: from mail-ie0-f174.google.com ([209.85.223.174]:40492) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from <mihai@HIDDEN>) id 1VjmRK-0003sT-Pq for 14097 <at> debbugs.gnu.org; Fri, 22 Nov 2013 03:50:15 -0500 Received: by mail-ie0-f174.google.com with SMTP id at1so1581370iec.5 for <14097 <at> debbugs.gnu.org>; Fri, 22 Nov 2013 00:50:09 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=HVLRw4dy4VTa2YiMGLFFG/NcdTPNu3uxvqcHxIGnwuM=; b=BhrNo31gehdmTFhYQ9jr9AcF3Tw0nbmtXLVRfIshe8FIEXXufYaBXbSpScaJjEQWYk 8lPfnjaORcA2l0FIKdQo2fq9XeSEok3QMCwnAyeRK9DnAg2BnrB34rMEu2VerK1k2WBP 3mLuS/m2d50+gfpyJKZ++F/cjAKs+CeEnTMlqVJQWNsGJ6vy0lXL33TXgLL0PGoisw6d rEzfQwU2ioxV55eO3FQdBIyfn4ibYPx6NxN/5cW/F2QwAkkD3pRlfWXc4lXIeEua75DW 2CaGTp3VwBMASFZqp6TXaN/9YMhqEcRyZqgLNwFzsKEJUaB2HraKbwPRS4Vo44hruks1 zIbw== X-Gm-Message-State: ALoCoQlL3P8nAkBJmVEHfWGKGAGpUlLQttSPajm2wCCvte64wgO/xmp2oMaD8FeNkjUmpbHJCnFU MIME-Version: 1.0 X-Received: by 10.50.50.70 with SMTP id a6mr1499304igo.1.1385110209014; Fri, 22 Nov 2013 00:50:09 -0800 (PST) Received: by 10.64.238.66 with HTTP; Fri, 22 Nov 2013 00:50:08 -0800 (PST) In-Reply-To: <CADyhzG2MZ6KYceTVscRrhi9zWWGkEFupxSCQhuvxHkMeWMk4qQ@HIDDEN> References: <51785671.1080300@HIDDEN> <1375721473-14714-1-git-send-email-mihai@HIDDEN> <CADyhzG2MZ6KYceTVscRrhi9zWWGkEFupxSCQhuvxHkMeWMk4qQ@HIDDEN> Date: Fri, 22 Nov 2013 09:50:08 +0100 Message-ID: <CADyhzG1UqgrXF79TN0+MDd79RdG5qhGhvFqN3rdBPf4+z5x9mw@HIDDEN> From: Mihai =?UTF-8?Q?Capot=C4=83?= <mihai@HIDDEN> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.7 (/) On Sat, Aug 31, 2013 at 5:31 PM, Mihai Capot=C4=83 <mihai@HIDDEN> wrote: > Could someone please review the new patch? Anybody?
Received: (at control) by debbugs.gnu.org; 19 Oct 2018 01:28:51 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Oct 18 21:28:50 2018 Received: from localhost ([127.0.0.1]:57912 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1gDJar-0000nd-7D for submit <at> debbugs.gnu.org; Thu, 18 Oct 2018 21:28:50 -0400 Received: from mail-pf1-f171.google.com ([209.85.210.171]:38447) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <assafgordon@HIDDEN>) id 1gDJap-0000nP-Mz for control <at> debbugs.gnu.org; Thu, 18 Oct 2018 21:28:47 -0400 Received: by mail-pf1-f171.google.com with SMTP id f29-v6so15723445pff.5 for <control <at> debbugs.gnu.org>; Thu, 18 Oct 2018 18:28:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:from:message-id:date:user-agent:mime-version:content-language :content-transfer-encoding; bh=jCL0xw7UgWNiCRyqgOYR0OWHPpnYVSKkt7h2fpkCYEU=; b=ClF2BFrtiWUZJKXWWPqSPCBd2lxh21PP4ZjmPJNJoF6kQNrIjqgguLYKOFfhvJ7vSL Atz2St7nuIo6S/Eg2ixV84Im561mJJqHCwjBXe+Bp6HuZoZqGrFM1CwO3ECi5DW/vzfL 0mvnkSOnsnvQugEbFf4eOF0FGMMZo8+vl2tAbziiFnuyGTvywc49nGPI/agEfKKDnek0 0ta+Bl6JPoHgkdVROOs7mFCFmmJD7k9zHrrv+IJZtz8Njnpmbmyz1qB2kxIubrnklpgr wA5XsJuHI5kbEplpbovpZ7EzrqESi0M9SQ26CG/AqFxiSbIV2TcLWqXWRj2vAky6t4kS Uu2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:from:message-id:date:user-agent:mime-version :content-language:content-transfer-encoding; bh=jCL0xw7UgWNiCRyqgOYR0OWHPpnYVSKkt7h2fpkCYEU=; b=n9nDA97SpRPBgpRwnuzZywmi9F5lMmagYt93s2cXkiDBZEA1JhEAD55J4T8uUyNChE 8Vp7nkj1wWA9sPK0U9kMCqUN+tm1itZr/rkVtnmBQSElIeQIDi8tndN8BdDKwigayeEV dZzvEzgoPbcdLkQYzD5YsYzLkq3iAClq5bdUEZnGX/j1UcVaGm9bSmzwtIGp2CGQMBKk 45IeMIFd6Dniyx/rnHFL7rUa/CqKhEhqV4tQVy2GC3127pejfrTh2R/g3Xz9CbWvt7fQ RmOOvEdOWlXgSaN6xxLrkrYTpJBk5Cz6RG0TZQEarLFtGnjYIKDH11Oaq+Rgj5DDiSv8 BLqA== X-Gm-Message-State: ABuFfojDMYGqf6luWt6ThQylKVkb4T6WNaSfOXCtAvjRWs/2lrBOoq0x YaxOOkiGufS2wGh7x0ki0yvdszELHhk= X-Google-Smtp-Source: ACcGV61718xOf6QbBwF3mXK2KNOO5H957kqpkUZoTa4RgqK8NvN+DKw5KJ+mCdT4jQm+9cGANwXT+g== X-Received: by 2002:a63:d048:: with SMTP id s8-v6mr30157339pgi.311.1539912521484; Thu, 18 Oct 2018 18:28:41 -0700 (PDT) Received: from tomato.housegordon.com (moose.housegordon.com. [184.68.105.38]) by smtp.googlemail.com with ESMTPSA id t22-v6sm31013847pfk.141.2018.10.18.18.28.40 for <control <at> debbugs.gnu.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 18 Oct 2018 18:28:40 -0700 (PDT) To: control <at> debbugs.gnu.org From: Assaf Gordon <assafgordon@HIDDEN> Message-ID: <82ffa135-ce82-5000-f36d-4275dc80a4d3@HIDDEN> Date: Thu, 18 Oct 2018 19:28:39 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Score: 2.0 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: severity 14097 wishlist retitle 14097 date: add parsing support for ISO 8601 basic format [...] Content analysis details: (2.0 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (assafgordon[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [209.85.210.171 listed in wl.mailspike.net] -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [209.85.210.171 listed in list.dnswl.org] 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.0 (+) severity 14097 wishlist retitle 14097 date: add parsing support for ISO 8601 basic format
Received: (at control) by debbugs.gnu.org; 19 Oct 2018 01:28:51 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Oct 18 21:28:50 2018 Received: from localhost ([127.0.0.1]:57912 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1gDJar-0000nd-7D for submit <at> debbugs.gnu.org; Thu, 18 Oct 2018 21:28:50 -0400 Received: from mail-pf1-f171.google.com ([209.85.210.171]:38447) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <assafgordon@HIDDEN>) id 1gDJap-0000nP-Mz for control <at> debbugs.gnu.org; Thu, 18 Oct 2018 21:28:47 -0400 Received: by mail-pf1-f171.google.com with SMTP id f29-v6so15723445pff.5 for <control <at> debbugs.gnu.org>; Thu, 18 Oct 2018 18:28:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:from:message-id:date:user-agent:mime-version:content-language :content-transfer-encoding; bh=jCL0xw7UgWNiCRyqgOYR0OWHPpnYVSKkt7h2fpkCYEU=; b=ClF2BFrtiWUZJKXWWPqSPCBd2lxh21PP4ZjmPJNJoF6kQNrIjqgguLYKOFfhvJ7vSL Atz2St7nuIo6S/Eg2ixV84Im561mJJqHCwjBXe+Bp6HuZoZqGrFM1CwO3ECi5DW/vzfL 0mvnkSOnsnvQugEbFf4eOF0FGMMZo8+vl2tAbziiFnuyGTvywc49nGPI/agEfKKDnek0 0ta+Bl6JPoHgkdVROOs7mFCFmmJD7k9zHrrv+IJZtz8Njnpmbmyz1qB2kxIubrnklpgr wA5XsJuHI5kbEplpbovpZ7EzrqESi0M9SQ26CG/AqFxiSbIV2TcLWqXWRj2vAky6t4kS Uu2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:from:message-id:date:user-agent:mime-version :content-language:content-transfer-encoding; bh=jCL0xw7UgWNiCRyqgOYR0OWHPpnYVSKkt7h2fpkCYEU=; b=n9nDA97SpRPBgpRwnuzZywmi9F5lMmagYt93s2cXkiDBZEA1JhEAD55J4T8uUyNChE 8Vp7nkj1wWA9sPK0U9kMCqUN+tm1itZr/rkVtnmBQSElIeQIDi8tndN8BdDKwigayeEV dZzvEzgoPbcdLkQYzD5YsYzLkq3iAClq5bdUEZnGX/j1UcVaGm9bSmzwtIGp2CGQMBKk 45IeMIFd6Dniyx/rnHFL7rUa/CqKhEhqV4tQVy2GC3127pejfrTh2R/g3Xz9CbWvt7fQ RmOOvEdOWlXgSaN6xxLrkrYTpJBk5Cz6RG0TZQEarLFtGnjYIKDH11Oaq+Rgj5DDiSv8 BLqA== X-Gm-Message-State: ABuFfojDMYGqf6luWt6ThQylKVkb4T6WNaSfOXCtAvjRWs/2lrBOoq0x YaxOOkiGufS2wGh7x0ki0yvdszELHhk= X-Google-Smtp-Source: ACcGV61718xOf6QbBwF3mXK2KNOO5H957kqpkUZoTa4RgqK8NvN+DKw5KJ+mCdT4jQm+9cGANwXT+g== X-Received: by 2002:a63:d048:: with SMTP id s8-v6mr30157339pgi.311.1539912521484; Thu, 18 Oct 2018 18:28:41 -0700 (PDT) Received: from tomato.housegordon.com (moose.housegordon.com. [184.68.105.38]) by smtp.googlemail.com with ESMTPSA id t22-v6sm31013847pfk.141.2018.10.18.18.28.40 for <control <at> debbugs.gnu.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 18 Oct 2018 18:28:40 -0700 (PDT) To: control <at> debbugs.gnu.org From: Assaf Gordon <assafgordon@HIDDEN> Message-ID: <82ffa135-ce82-5000-f36d-4275dc80a4d3@HIDDEN> Date: Thu, 18 Oct 2018 19:28:39 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Score: 2.0 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: severity 14097 wishlist retitle 14097 date: add parsing support for ISO 8601 basic format [...] Content analysis details: (2.0 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (assafgordon[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [209.85.210.171 listed in wl.mailspike.net] -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no trust [209.85.210.171 listed in list.dnswl.org] 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.0 (+) severity 14097 wishlist retitle 14097 date: add parsing support for ISO 8601 basic format
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.