From unknown Sat Jun 14 03:53:04 2025 X-Loop: help-debbugs@gnu.org Subject: bug#35632: date Parse of '13:00 + 2 hours' Broken. Resent-From: Ralph Corderoy Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Wed, 08 May 2019 11:58:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 35632 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: 35632@debbugs.gnu.org X-Debbugs-Original-To: bug-coreutils@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.155731664131835 (code B ref -1); Wed, 08 May 2019 11:58:01 +0000 Received: (at submit) by debbugs.gnu.org; 8 May 2019 11:57:21 +0000 Received: from localhost ([127.0.0.1]:60516 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hOLCL-0008HP-B2 for submit@debbugs.gnu.org; Wed, 08 May 2019 07:57:21 -0400 Received: from eggs.gnu.org ([209.51.188.92]:58161) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hOLCJ-0008HA-Lr for submit@debbugs.gnu.org; Wed, 08 May 2019 07:57:20 -0400 Received: from lists.gnu.org ([209.51.188.17]:49996) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hOLCE-0002pN-GA for submit@debbugs.gnu.org; Wed, 08 May 2019 07:57:14 -0400 Received: from eggs.gnu.org ([209.51.188.92]:44310) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hOLCD-0001dM-0s for bug-coreutils@gnu.org; Wed, 08 May 2019 07:57:14 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hOLCC-0002om-5C for bug-coreutils@gnu.org; Wed, 08 May 2019 07:57:12 -0400 Received: from relay05.pair.com ([216.92.24.67]:55438) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hOLCC-0002oH-2A for bug-coreutils@gnu.org; Wed, 08 May 2019 07:57:12 -0400 Received: from orac.inputplus.co.uk (unknown [84.51.141.101]) by relay05.pair.com (Postfix) with ESMTP id 051961A2C08 for ; Wed, 8 May 2019 07:57:11 -0400 (EDT) Received: from orac.inputplus.co.uk (orac.inputplus.co.uk [IPv6:::1]) by orac.inputplus.co.uk (Postfix) with ESMTP id 4EF5F22058; Wed, 8 May 2019 12:57:10 +0100 (BST) From: Ralph Corderoy MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Date: Wed, 08 May 2019 12:57:10 +0100 Message-Id: <20190508115710.4EF5F22058@orac.inputplus.co.uk> Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 216.92.24.67 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Spam-Score: -1.4 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) Hi, Using date from coreutils 8.31-1 on Arch Linux. This surprised me. $ TZ=3DUTC0 /bin/date -d '1pm + 2 hours' Wed 8 May 15:00:00 UTC 2019 $ TZ=3DUTC0 /bin/date -d '13:00 + 2 hours' Wed 8 May 12:00:00 UTC 2019 The documentation doesn't suggest `1pm' and `13:00' are treated differently. `--debug' helps. $ TZ=3DUTC0 /bin/date --debug -d '1pm + 2 hours' date: parsed time part: 01:00:00pm date: parsed relative part: +2 hour(s) ... $ TZ=3DUTC0 /bin/date --debug -d '13:00 + 2 hours' date: parsed time part: 13:00:00 UTC+02 date: parsed relative part: +1 hour(s) date: input timezone: parsed date/time string (+02) ... It looks like parsing is broken in the second case. The result I wanted can also be obtained my omitting the `+'. $ TZ=3DUTC0 /bin/date -d '1pm 2 hours' Wed 8 May 15:00:00 UTC 2019 $ TZ=3DUTC0 /bin/date -d '13:00 2 hours' Wed 8 May 15:00:00 UTC 2019 --=20 Cheers, Ralph. From unknown Sat Jun 14 03:53:04 2025 X-Loop: help-debbugs@gnu.org Subject: bug#35632: date Parse of '13:00 + 2 hours' Broken. Resent-From: Assaf Gordon Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Wed, 26 Jun 2019 14:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 35632 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: Ralph Corderoy Cc: 35632@debbugs.gnu.org Received: via spool by 35632-submit@debbugs.gnu.org id=B35632.15615608345529 (code B ref 35632); Wed, 26 Jun 2019 14:54:02 +0000 Received: (at 35632) by debbugs.gnu.org; 26 Jun 2019 14:53:54 +0000 Received: from localhost ([127.0.0.1]:36752 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hg9J3-0001R6-OR for submit@debbugs.gnu.org; Wed, 26 Jun 2019 10:53:54 -0400 Received: from mail-pf1-f178.google.com ([209.85.210.178]:44046) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hg9J1-0001Qq-Gx; Wed, 26 Jun 2019 10:53:52 -0400 Received: by mail-pf1-f178.google.com with SMTP id t16so1475836pfe.11; Wed, 26 Jun 2019 07:53:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=zGHXImLTT56TyClkUILS9zepxvUgmIFBQdumTsF3IAE=; b=tC/KzI81ZKUXizB4fvxPZv2aO2eyHKn2YG52DzvART3UUxk8g6SZE0AP0xeCFRcJEI JkMg+QfPWPQQWw/yjeuWIIu2IfdbjlVfLCVAEpfR+5zHzUu8xKDB/FIThPI+f0WYAjh+ mt3COCEfQcv1BG23tGVDEKxibKLEW/mEfDOqGFTeneM2eErixAL8e1C7qqJ0ArnjX6ze 0ogZE8snVkFWT0fw3zAJu7gCWctkZaF1aRGQClfEDv2GchTT0dY72XZ/TIa/mo29jJOA 3rNKMFDxI8CHuB9dtHeYj2Ht4KqzlCdJI2693Lfm2wmcezNBr9bj0zaUB1LDDMYBD53x 8F/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=zGHXImLTT56TyClkUILS9zepxvUgmIFBQdumTsF3IAE=; b=pigoqYgGFINFARPVpCmJ3ZPs7L2jz7CpQqgNpDmHTYBCQWKKTkjVnH+0z4sZE0FUwm 4MB5b8kjtFxw9k0xzkysSkKXQyklk/O9WpxSEjkQTY58kofj4YUMFlw2aBIs0uBbwTgC vV7fcKkvBs5JqIHjYINu7ffvi2Y/opQrbr2s2nR5h2eEwjVqTyMlx2SisYD8fw0f3Gzp MdatwzwHxBB9k4xPgHE3TLERT3xh0jU5CnaHLWljhik6Ehm1WFUW+jAALaEWh1DhufhB AjEGINIIBMAXkqU5LYRQ3vo0IbP+wJvkdiifnFIjeIQtL23bAqZwrDJjAkqwjKOvhJTC kpiw== X-Gm-Message-State: APjAAAWOctryST5FxPjvtivuDjo03JrD0bWLSsjKauTh9rsesMlShKYJ P5AgDJikO5k/EC/SIVqYJtM/3xjp X-Google-Smtp-Source: APXvYqwCvtAqmj4kPuJgMLA/4ZgIIZhY6OhgxAQLnBp1imR5I/Fl3SQD3wrF35Ilmw0x6xylhulVNQ== X-Received: by 2002:a17:90a:5884:: with SMTP id j4mr5454772pji.142.1561560825005; Wed, 26 Jun 2019 07:53:45 -0700 (PDT) Received: from tomato (moose.housegordon.com. [184.68.105.38]) by smtp.gmail.com with ESMTPSA id m4sm12091558pff.108.2019.06.26.07.53.43 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 26 Jun 2019 07:53:44 -0700 (PDT) Received: by tomato (Postfix, from userid 1000) id 2E950680A50; Wed, 26 Jun 2019 08:53:43 -0600 (MDT) Date: Wed, 26 Jun 2019 08:53:43 -0600 From: Assaf Gordon Message-ID: <20190626145343.GD22150@tomato.moose.housegordon.com> References: <20190508115710.4EF5F22058@orac.inputplus.co.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190508115710.4EF5F22058@orac.inputplus.co.uk> User-Agent: Mutt/1.11.4 (2019-03-13) X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tag 35632 notabug close 35632 stop Hello, (sorry for the delayed reply) On Wed, May 08, 2019 at 12:57:10PM +0100, Ralph Corderoy wrote: > > Using date from coreutils 8.31-1 on Arch Linux. > This surprised me. > > $ TZ=UTC0 /bin/date -d '1pm + 2 hours' > Wed 8 May 15:00:00 UTC 2019 > $ TZ=UTC0 /bin/date -d '13:00 + 2 hours' > Wed 8 May 12:00:00 UTC 2019 > > The documentation doesn't suggest `1pm' and `13:00' are treated > differently. `--debug' helps. > > $ TZ=UTC0 /bin/date --debug -d '1pm + 2 hours' > date: parsed time part: 01:00:00pm > date: parsed relative part: +2 hour(s) > ... > $ TZ=UTC0 /bin/date --debug -d '13:00 + 2 hours' > date: parsed time part: 13:00:00 UTC+02 > date: parsed relative part: +1 hour(s) > date: input timezone: parsed date/time string (+02) > ... > > It looks like parsing is broken in the second case. Thank you for for providing detailed output with "--debug", makes things easier to troubleshoot. When encountering a time string (HH:MM or HH:MM:SS) followed by a plus sign and a number, date's parser *always* treats it as a timezone (giving timezones higher priority than time adjustments). > The result I wanted can also be obtained my omitting the `+'. > > $ TZ=UTC0 /bin/date -d '1pm 2 hours' > Wed 8 May 15:00:00 UTC 2019 > $ TZ=UTC0 /bin/date -d '13:00 2 hours' > Wed 8 May 15:00:00 UTC 2019 And this is indeed one possibly solution. Other similar issues are detailed here: https://lists.gnu.org/archive/html/bug-coreutils/2018-10/msg00126.html As such, I'm closing this ticket, but discussion can continue by replying to this thread. regards, - assaf