bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#46294: python-arrow timezone test failure


From: Guillaume Le Vaillant
Subject: bug#46294: python-arrow timezone test failure
Date: Thu, 04 Feb 2021 13:47:59 +0100
User-agent: mu4e 1.4.14; emacs 27.1

Hi,

The python-arrow package currently fails to build because the
"test_parse_tz_name_zzz" test is failing.
This is with Guix at eae865c134ebb8b7432572288e8721794d6a9b87.
I'm not very familiar with Python, so does someone know how to fix this?


Here's the relevant part of the build log:

--8<---------------cut here---------------start------------->8---
_________ TestDateTimeParserParse.test_parse_tz_name_zzz[America/Nuuk] _________

self = <tests.test_parser.TestDateTimeParserParse object at 0x7ffff3e0d220>
full_tz_name = 'America/Nuuk'

    @pytest.mark.parametrize("full_tz_name", make_full_tz_list())
    def test_parse_tz_name_zzz(self, full_tz_name):
    
        self.expected = datetime(2013, 1, 1, tzinfo=tz.gettz(full_tz_name))
>       assert (
            self.parser.parse("2013-01-01 {}".format(full_tz_name), "YYYY-MM-DD 
ZZZ")
            == self.expected
        )

tests/test_parser.py:347: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
arrow/parser.py:244: in parse
    self._parse_token(token, value, parts)
arrow/parser.py:397: in _parse_token
    parts["tzinfo"] = TzinfoParser.parse(value)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

cls = <class 'arrow.parser.TzinfoParser'>, tzinfo_string = 'America/Nuuk'

    @classmethod
    def parse(cls, tzinfo_string):
    
        tzinfo = None
    
        if tzinfo_string == "local":
            tzinfo = tz.tzlocal()
    
        elif tzinfo_string in ["utc", "UTC", "Z"]:
            tzinfo = tz.tzutc()
    
        else:
    
            iso_match = cls._TZINFO_RE.match(tzinfo_string)
    
            if iso_match:
                sign, hours, minutes = iso_match.groups()
                if minutes is None:
                    minutes = 0
                seconds = int(hours) * 3600 + int(minutes) * 60
    
                if sign == "-":
                    seconds *= -1
    
                tzinfo = tz.tzoffset(None, seconds)
    
            else:
                tzinfo = tz.gettz(tzinfo_string)
    
        if tzinfo is None:
>           raise ParserError(
                'Could not parse timezone expression "{}"'.format(tzinfo_string)
            )
E           arrow.parser.ParserError: Could not parse timezone expression 
"America/Nuuk"

arrow/parser.py:592: ParserError
--8<---------------cut here---------------end--------------->8---

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]