public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Mike Kaganski <mikekaganski@mail.ru>
To: L A Walsh <cygwin@tlinx.org>, "cygwin@cygwin.com" <cygwin@cygwin.com>
Subject: Re: Python for Windows reports wrong local time when run under Cygwin on Europe/Moscow TZ
Date: Fri, 11 Jun 2021 09:01:10 +0300	[thread overview]
Message-ID: <3aceb09c-98c4-0bed-d0a2-76bb9eabdccf@mail.ru> (raw)
In-Reply-To: <60BF5677.9060904@tlinx.org>

On 08.06.2021 14:37, L A Walsh wrote:
> On 2021/06/06 23:59, Mike Kaganski via Cygwin wrote:
>> Hello,
>>
>> Running Cygwin 3.1.7-1 on Windows 10 Version 21H1 (OS Build 
>> 19043.985), I have this issue:
>>
>> when I start Cygwin's Python, I have correct time reported:
>>
>> But running Python for Windows (it doesn't matter which, specifically 
>> for the test I used the one from MS Store [1]), I have incorrect 
>> local time
>
> ...
>
> Though as to why -- likely the windows version is getting time zone
> clues + correction from BOTH cygwin and Windows, like it's told its
> in a TZ that is at 1 time, while Windows feeds it other data that
> says it is 2 hours off from the default.

As described in Python's issue [1], the problem comes from passing a TZ 
environment variable value that is invalid for Windows C runtime [2]. So 
in the end, it *might* be something for Cygwin to handle.

*If* Cygwin can detect that it starts a native Windows binary (I hope it 
can), then it could try to convert the TZ from Unix kind to Windows 
kind. That way, it could become valid. Or at least it could be unset 
(but that is questionable).

Of course, I could overlook some possible drawbacks from this imagined 
fix, which could make it undesirable. Anyway, I have implemented a 
workaround in our project unsetting TZ before calling Python, and it's 
resolved for us.

Thanks!


[1] https://bugs.python.org/issue44352

[2] 
https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/tzset?view=msvc-160


-- 

Best regards,

Mike Kaganski


  parent reply	other threads:[~2021-06-11  6:01 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-07  6:59 Mike Kaganski
2021-06-08  4:34 ` Russell VT
2021-06-08  7:51   ` Mike Kaganski
2021-06-08 11:37 ` L A Walsh
2021-06-08 12:28   ` Mike Kaganski
2021-06-08 13:04     ` L A Walsh
2021-06-08 13:30       ` Mike Kaganski
2021-06-08 13:57         ` L A Walsh
2021-06-08 14:10           ` Mike Kaganski
2021-06-08 14:15             ` L A Walsh
2021-06-08 13:36       ` Mike Kaganski
2021-06-08 20:03       ` Mike Kaganski
2021-06-09  5:50         ` Brian Inglis
2021-06-11  6:01   ` Mike Kaganski [this message]
2021-06-08 17:37 Keith Thompson
2021-06-09  3:43 ` Brian Inglis
2021-06-09 22:31 ` Keith Thompson
2021-06-10  2:36   ` Brian Inglis
2021-06-10 14:57     ` Ken Brown
2021-06-10 15:25       ` KAVALAGIOS Panagiotis (EEAS-EXT)
2021-06-10 18:31       ` Brian Inglis
2021-06-10 19:50         ` Ken Brown
2021-06-11  5:38           ` ASSI
2021-06-11 13:38             ` Ken Brown
2021-06-11 17:33           ` Brian Inglis
2021-06-11 18:05             ` Ken Brown
2021-06-12 16:34               ` Brian Inglis
2021-06-12 22:44                 ` Ken Brown
2021-06-11 10:51     ` Andrey Repin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3aceb09c-98c4-0bed-d0a2-76bb9eabdccf@mail.ru \
    --to=mikekaganski@mail.ru \
    --cc=cygwin@cygwin.com \
    --cc=cygwin@tlinx.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).