pendulum icon indicating copy to clipboard operation
pendulum copied to clipboard

`pendulum.parse()` consistently fails on the last day of each month with iso week dates in 3.0.0

Open dav1dn opened this issue 1 year ago • 2 comments

  • [x] I am on the latest Pendulum version.

  • [x] I have searched the issues of this repo and believe that this is not a duplicate.

  • Pendulum version: 3.0.0

Issue

When parsing iso week dates, .parse() consistently raises a ParseError for the last day of each month:

>>> pendulum.parse('2024-W31-3')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File ".pyenv/versions/chronicler/lib/python3.11/site-packages/pendulum/parser.py", line 30, in parse
    return _parse(text, **options)
           ^^^^^^^^^^^^^^^^^^^^^^^
  File ".pyenv/versions/chronicler/lib/python3.11/site-packages/pendulum/parser.py", line 43, in _parse
    parsed = base_parse(text, **options)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".pyenv/versions/chronicler/lib/python3.11/site-packages/pendulum/parsing/__init__.py", line 78, in parse
    return _normalize(_parse(text, **_options), **_options)
                      ^^^^^^^^^^^^^^^^^^^^^^^^
  File ".pyenv/versions/chronicler/lib/python3.11/site-packages/pendulum/parsing/__init__.py", line 125, in _parse
    raise ParserError(f"Unable to parse string [{text}]")
pendulum.parsing.exceptions.ParserError: Unable to parse string [2024-W31-3]

This issue was not present in 3.0.0a.

This issue seems to only occur with the extension version of the parse_iso8601 function, and not with the native Python implementation:

>>> from pendulum._pendulum import parse_iso8601
>>> parse_iso8601('2024-W31-3')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: day is out of range for month
>>> from pendulum.parsing.iso8601 import parse_iso8601
>>> parse_iso8601('2024-W31-3')
datetime.date(2024, 7, 31)

Reproduction table:

import pendulum
import dateutil.parser
def test(isoweek_str):
    parser_result = dateutil.parser.isoparse(isoweek_str).isoformat()
    try:
        out = pendulum.parse(isoweek_str)
        return (isoweek_str, "true", out.isoformat(), parser_result)
    except:
        return (isoweek_str, "false", "", parser_result)


for wk in range(1, 54):
    for dow in range(1, 8):
            test_str = f"2024-W{wk:02}-{dow}"
            print(f"|{'|'.join(test(test_str))}|")
isoweek string parses pendulum isoformat parser isoformat
2024-W01-1 true 2024-01-01T00:00:00+00:00 2024-01-01T00:00:00
2024-W01-2 true 2024-01-02T00:00:00+00:00 2024-01-02T00:00:00
2024-W01-3 true 2024-01-03T00:00:00+00:00 2024-01-03T00:00:00
2024-W01-4 true 2024-01-04T00:00:00+00:00 2024-01-04T00:00:00
2024-W01-5 true 2024-01-05T00:00:00+00:00 2024-01-05T00:00:00
2024-W01-6 true 2024-01-06T00:00:00+00:00 2024-01-06T00:00:00
2024-W01-7 true 2024-01-07T00:00:00+00:00 2024-01-07T00:00:00
2024-W02-1 true 2024-01-08T00:00:00+00:00 2024-01-08T00:00:00
2024-W02-2 true 2024-01-09T00:00:00+00:00 2024-01-09T00:00:00
2024-W02-3 true 2024-01-10T00:00:00+00:00 2024-01-10T00:00:00
2024-W02-4 true 2024-01-11T00:00:00+00:00 2024-01-11T00:00:00
2024-W02-5 true 2024-01-12T00:00:00+00:00 2024-01-12T00:00:00
2024-W02-6 true 2024-01-13T00:00:00+00:00 2024-01-13T00:00:00
2024-W02-7 true 2024-01-14T00:00:00+00:00 2024-01-14T00:00:00
2024-W03-1 true 2024-01-15T00:00:00+00:00 2024-01-15T00:00:00
2024-W03-2 true 2024-01-16T00:00:00+00:00 2024-01-16T00:00:00
2024-W03-3 true 2024-01-17T00:00:00+00:00 2024-01-17T00:00:00
2024-W03-4 true 2024-01-18T00:00:00+00:00 2024-01-18T00:00:00
2024-W03-5 true 2024-01-19T00:00:00+00:00 2024-01-19T00:00:00
2024-W03-6 true 2024-01-20T00:00:00+00:00 2024-01-20T00:00:00
2024-W03-7 true 2024-01-21T00:00:00+00:00 2024-01-21T00:00:00
2024-W04-1 true 2024-01-22T00:00:00+00:00 2024-01-22T00:00:00
2024-W04-2 true 2024-01-23T00:00:00+00:00 2024-01-23T00:00:00
2024-W04-3 true 2024-01-24T00:00:00+00:00 2024-01-24T00:00:00
2024-W04-4 true 2024-01-25T00:00:00+00:00 2024-01-25T00:00:00
2024-W04-5 true 2024-01-26T00:00:00+00:00 2024-01-26T00:00:00
2024-W04-6 true 2024-01-27T00:00:00+00:00 2024-01-27T00:00:00
2024-W04-7 true 2024-01-28T00:00:00+00:00 2024-01-28T00:00:00
2024-W05-1 true 2024-01-29T00:00:00+00:00 2024-01-29T00:00:00
2024-W05-2 true 2024-01-30T00:00:00+00:00 2024-01-30T00:00:00
2024-W05-3 false 2024-01-31T00:00:00
2024-W05-4 true 2024-02-01T00:00:00+00:00 2024-02-01T00:00:00
2024-W05-5 true 2024-02-02T00:00:00+00:00 2024-02-02T00:00:00
2024-W05-6 true 2024-02-03T00:00:00+00:00 2024-02-03T00:00:00
2024-W05-7 true 2024-02-04T00:00:00+00:00 2024-02-04T00:00:00
2024-W06-1 true 2024-02-05T00:00:00+00:00 2024-02-05T00:00:00
2024-W06-2 true 2024-02-06T00:00:00+00:00 2024-02-06T00:00:00
2024-W06-3 true 2024-02-07T00:00:00+00:00 2024-02-07T00:00:00
2024-W06-4 true 2024-02-08T00:00:00+00:00 2024-02-08T00:00:00
2024-W06-5 true 2024-02-09T00:00:00+00:00 2024-02-09T00:00:00
2024-W06-6 true 2024-02-10T00:00:00+00:00 2024-02-10T00:00:00
2024-W06-7 true 2024-02-11T00:00:00+00:00 2024-02-11T00:00:00
2024-W07-1 true 2024-02-12T00:00:00+00:00 2024-02-12T00:00:00
2024-W07-2 true 2024-02-13T00:00:00+00:00 2024-02-13T00:00:00
2024-W07-3 true 2024-02-14T00:00:00+00:00 2024-02-14T00:00:00
2024-W07-4 true 2024-02-15T00:00:00+00:00 2024-02-15T00:00:00
2024-W07-5 true 2024-02-16T00:00:00+00:00 2024-02-16T00:00:00
2024-W07-6 true 2024-02-17T00:00:00+00:00 2024-02-17T00:00:00
2024-W07-7 true 2024-02-18T00:00:00+00:00 2024-02-18T00:00:00
2024-W08-1 true 2024-02-19T00:00:00+00:00 2024-02-19T00:00:00
2024-W08-2 true 2024-02-20T00:00:00+00:00 2024-02-20T00:00:00
2024-W08-3 true 2024-02-21T00:00:00+00:00 2024-02-21T00:00:00
2024-W08-4 true 2024-02-22T00:00:00+00:00 2024-02-22T00:00:00
2024-W08-5 true 2024-02-23T00:00:00+00:00 2024-02-23T00:00:00
2024-W08-6 true 2024-02-24T00:00:00+00:00 2024-02-24T00:00:00
2024-W08-7 true 2024-02-25T00:00:00+00:00 2024-02-25T00:00:00
2024-W09-1 true 2024-02-26T00:00:00+00:00 2024-02-26T00:00:00
2024-W09-2 true 2024-02-27T00:00:00+00:00 2024-02-27T00:00:00
2024-W09-3 true 2024-02-28T00:00:00+00:00 2024-02-28T00:00:00
2024-W09-4 false 2024-02-29T00:00:00
2024-W09-5 true 2024-03-01T00:00:00+00:00 2024-03-01T00:00:00
2024-W09-6 true 2024-03-02T00:00:00+00:00 2024-03-02T00:00:00
2024-W09-7 true 2024-03-03T00:00:00+00:00 2024-03-03T00:00:00
2024-W10-1 true 2024-03-04T00:00:00+00:00 2024-03-04T00:00:00
2024-W10-2 true 2024-03-05T00:00:00+00:00 2024-03-05T00:00:00
2024-W10-3 true 2024-03-06T00:00:00+00:00 2024-03-06T00:00:00
2024-W10-4 true 2024-03-07T00:00:00+00:00 2024-03-07T00:00:00
2024-W10-5 true 2024-03-08T00:00:00+00:00 2024-03-08T00:00:00
2024-W10-6 true 2024-03-09T00:00:00+00:00 2024-03-09T00:00:00
2024-W10-7 true 2024-03-10T00:00:00+00:00 2024-03-10T00:00:00
2024-W11-1 true 2024-03-11T00:00:00+00:00 2024-03-11T00:00:00
2024-W11-2 true 2024-03-12T00:00:00+00:00 2024-03-12T00:00:00
2024-W11-3 true 2024-03-13T00:00:00+00:00 2024-03-13T00:00:00
2024-W11-4 true 2024-03-14T00:00:00+00:00 2024-03-14T00:00:00
2024-W11-5 true 2024-03-15T00:00:00+00:00 2024-03-15T00:00:00
2024-W11-6 true 2024-03-16T00:00:00+00:00 2024-03-16T00:00:00
2024-W11-7 true 2024-03-17T00:00:00+00:00 2024-03-17T00:00:00
2024-W12-1 true 2024-03-18T00:00:00+00:00 2024-03-18T00:00:00
2024-W12-2 true 2024-03-19T00:00:00+00:00 2024-03-19T00:00:00
2024-W12-3 true 2024-03-20T00:00:00+00:00 2024-03-20T00:00:00
2024-W12-4 true 2024-03-21T00:00:00+00:00 2024-03-21T00:00:00
2024-W12-5 true 2024-03-22T00:00:00+00:00 2024-03-22T00:00:00
2024-W12-6 true 2024-03-23T00:00:00+00:00 2024-03-23T00:00:00
2024-W12-7 true 2024-03-24T00:00:00+00:00 2024-03-24T00:00:00
2024-W13-1 true 2024-03-25T00:00:00+00:00 2024-03-25T00:00:00
2024-W13-2 true 2024-03-26T00:00:00+00:00 2024-03-26T00:00:00
2024-W13-3 true 2024-03-27T00:00:00+00:00 2024-03-27T00:00:00
2024-W13-4 true 2024-03-28T00:00:00+00:00 2024-03-28T00:00:00
2024-W13-5 true 2024-03-29T00:00:00+00:00 2024-03-29T00:00:00
2024-W13-6 true 2024-03-30T00:00:00+00:00 2024-03-30T00:00:00
2024-W13-7 false 2024-03-31T00:00:00
2024-W14-1 true 2024-04-01T00:00:00+00:00 2024-04-01T00:00:00
2024-W14-2 true 2024-04-02T00:00:00+00:00 2024-04-02T00:00:00
2024-W14-3 true 2024-04-03T00:00:00+00:00 2024-04-03T00:00:00
2024-W14-4 true 2024-04-04T00:00:00+00:00 2024-04-04T00:00:00
2024-W14-5 true 2024-04-05T00:00:00+00:00 2024-04-05T00:00:00
2024-W14-6 true 2024-04-06T00:00:00+00:00 2024-04-06T00:00:00
2024-W14-7 true 2024-04-07T00:00:00+00:00 2024-04-07T00:00:00
2024-W15-1 true 2024-04-08T00:00:00+00:00 2024-04-08T00:00:00
2024-W15-2 true 2024-04-09T00:00:00+00:00 2024-04-09T00:00:00
2024-W15-3 true 2024-04-10T00:00:00+00:00 2024-04-10T00:00:00
2024-W15-4 true 2024-04-11T00:00:00+00:00 2024-04-11T00:00:00
2024-W15-5 true 2024-04-12T00:00:00+00:00 2024-04-12T00:00:00
2024-W15-6 true 2024-04-13T00:00:00+00:00 2024-04-13T00:00:00
2024-W15-7 true 2024-04-14T00:00:00+00:00 2024-04-14T00:00:00
2024-W16-1 true 2024-04-15T00:00:00+00:00 2024-04-15T00:00:00
2024-W16-2 true 2024-04-16T00:00:00+00:00 2024-04-16T00:00:00
2024-W16-3 true 2024-04-17T00:00:00+00:00 2024-04-17T00:00:00
2024-W16-4 true 2024-04-18T00:00:00+00:00 2024-04-18T00:00:00
2024-W16-5 true 2024-04-19T00:00:00+00:00 2024-04-19T00:00:00
2024-W16-6 true 2024-04-20T00:00:00+00:00 2024-04-20T00:00:00
2024-W16-7 true 2024-04-21T00:00:00+00:00 2024-04-21T00:00:00
2024-W17-1 true 2024-04-22T00:00:00+00:00 2024-04-22T00:00:00
2024-W17-2 true 2024-04-23T00:00:00+00:00 2024-04-23T00:00:00
2024-W17-3 true 2024-04-24T00:00:00+00:00 2024-04-24T00:00:00
2024-W17-4 true 2024-04-25T00:00:00+00:00 2024-04-25T00:00:00
2024-W17-5 true 2024-04-26T00:00:00+00:00 2024-04-26T00:00:00
2024-W17-6 true 2024-04-27T00:00:00+00:00 2024-04-27T00:00:00
2024-W17-7 true 2024-04-28T00:00:00+00:00 2024-04-28T00:00:00
2024-W18-1 true 2024-04-29T00:00:00+00:00 2024-04-29T00:00:00
2024-W18-2 false 2024-04-30T00:00:00
2024-W18-3 true 2024-05-01T00:00:00+00:00 2024-05-01T00:00:00
2024-W18-4 true 2024-05-02T00:00:00+00:00 2024-05-02T00:00:00
2024-W18-5 true 2024-05-03T00:00:00+00:00 2024-05-03T00:00:00
2024-W18-6 true 2024-05-04T00:00:00+00:00 2024-05-04T00:00:00
2024-W18-7 true 2024-05-05T00:00:00+00:00 2024-05-05T00:00:00
2024-W19-1 true 2024-05-06T00:00:00+00:00 2024-05-06T00:00:00
2024-W19-2 true 2024-05-07T00:00:00+00:00 2024-05-07T00:00:00
2024-W19-3 true 2024-05-08T00:00:00+00:00 2024-05-08T00:00:00
2024-W19-4 true 2024-05-09T00:00:00+00:00 2024-05-09T00:00:00
2024-W19-5 true 2024-05-10T00:00:00+00:00 2024-05-10T00:00:00
2024-W19-6 true 2024-05-11T00:00:00+00:00 2024-05-11T00:00:00
2024-W19-7 true 2024-05-12T00:00:00+00:00 2024-05-12T00:00:00
2024-W20-1 true 2024-05-13T00:00:00+00:00 2024-05-13T00:00:00
2024-W20-2 true 2024-05-14T00:00:00+00:00 2024-05-14T00:00:00
2024-W20-3 true 2024-05-15T00:00:00+00:00 2024-05-15T00:00:00
2024-W20-4 true 2024-05-16T00:00:00+00:00 2024-05-16T00:00:00
2024-W20-5 true 2024-05-17T00:00:00+00:00 2024-05-17T00:00:00
2024-W20-6 true 2024-05-18T00:00:00+00:00 2024-05-18T00:00:00
2024-W20-7 true 2024-05-19T00:00:00+00:00 2024-05-19T00:00:00
2024-W21-1 true 2024-05-20T00:00:00+00:00 2024-05-20T00:00:00
2024-W21-2 true 2024-05-21T00:00:00+00:00 2024-05-21T00:00:00
2024-W21-3 true 2024-05-22T00:00:00+00:00 2024-05-22T00:00:00
2024-W21-4 true 2024-05-23T00:00:00+00:00 2024-05-23T00:00:00
2024-W21-5 true 2024-05-24T00:00:00+00:00 2024-05-24T00:00:00
2024-W21-6 true 2024-05-25T00:00:00+00:00 2024-05-25T00:00:00
2024-W21-7 true 2024-05-26T00:00:00+00:00 2024-05-26T00:00:00
2024-W22-1 true 2024-05-27T00:00:00+00:00 2024-05-27T00:00:00
2024-W22-2 true 2024-05-28T00:00:00+00:00 2024-05-28T00:00:00
2024-W22-3 true 2024-05-29T00:00:00+00:00 2024-05-29T00:00:00
2024-W22-4 true 2024-05-30T00:00:00+00:00 2024-05-30T00:00:00
2024-W22-5 false 2024-05-31T00:00:00
2024-W22-6 true 2024-06-01T00:00:00+00:00 2024-06-01T00:00:00
2024-W22-7 true 2024-06-02T00:00:00+00:00 2024-06-02T00:00:00
2024-W23-1 true 2024-06-03T00:00:00+00:00 2024-06-03T00:00:00
2024-W23-2 true 2024-06-04T00:00:00+00:00 2024-06-04T00:00:00
2024-W23-3 true 2024-06-05T00:00:00+00:00 2024-06-05T00:00:00
2024-W23-4 true 2024-06-06T00:00:00+00:00 2024-06-06T00:00:00
2024-W23-5 true 2024-06-07T00:00:00+00:00 2024-06-07T00:00:00
2024-W23-6 true 2024-06-08T00:00:00+00:00 2024-06-08T00:00:00
2024-W23-7 true 2024-06-09T00:00:00+00:00 2024-06-09T00:00:00
2024-W24-1 true 2024-06-10T00:00:00+00:00 2024-06-10T00:00:00
2024-W24-2 true 2024-06-11T00:00:00+00:00 2024-06-11T00:00:00
2024-W24-3 true 2024-06-12T00:00:00+00:00 2024-06-12T00:00:00
2024-W24-4 true 2024-06-13T00:00:00+00:00 2024-06-13T00:00:00
2024-W24-5 true 2024-06-14T00:00:00+00:00 2024-06-14T00:00:00
2024-W24-6 true 2024-06-15T00:00:00+00:00 2024-06-15T00:00:00
2024-W24-7 true 2024-06-16T00:00:00+00:00 2024-06-16T00:00:00
2024-W25-1 true 2024-06-17T00:00:00+00:00 2024-06-17T00:00:00
2024-W25-2 true 2024-06-18T00:00:00+00:00 2024-06-18T00:00:00
2024-W25-3 true 2024-06-19T00:00:00+00:00 2024-06-19T00:00:00
2024-W25-4 true 2024-06-20T00:00:00+00:00 2024-06-20T00:00:00
2024-W25-5 true 2024-06-21T00:00:00+00:00 2024-06-21T00:00:00
2024-W25-6 true 2024-06-22T00:00:00+00:00 2024-06-22T00:00:00
2024-W25-7 true 2024-06-23T00:00:00+00:00 2024-06-23T00:00:00
2024-W26-1 true 2024-06-24T00:00:00+00:00 2024-06-24T00:00:00
2024-W26-2 true 2024-06-25T00:00:00+00:00 2024-06-25T00:00:00
2024-W26-3 true 2024-06-26T00:00:00+00:00 2024-06-26T00:00:00
2024-W26-4 true 2024-06-27T00:00:00+00:00 2024-06-27T00:00:00
2024-W26-5 true 2024-06-28T00:00:00+00:00 2024-06-28T00:00:00
2024-W26-6 true 2024-06-29T00:00:00+00:00 2024-06-29T00:00:00
2024-W26-7 false 2024-06-30T00:00:00
2024-W27-1 true 2024-07-01T00:00:00+00:00 2024-07-01T00:00:00
2024-W27-2 true 2024-07-02T00:00:00+00:00 2024-07-02T00:00:00
2024-W27-3 true 2024-07-03T00:00:00+00:00 2024-07-03T00:00:00
2024-W27-4 true 2024-07-04T00:00:00+00:00 2024-07-04T00:00:00
2024-W27-5 true 2024-07-05T00:00:00+00:00 2024-07-05T00:00:00
2024-W27-6 true 2024-07-06T00:00:00+00:00 2024-07-06T00:00:00
2024-W27-7 true 2024-07-07T00:00:00+00:00 2024-07-07T00:00:00
2024-W28-1 true 2024-07-08T00:00:00+00:00 2024-07-08T00:00:00
2024-W28-2 true 2024-07-09T00:00:00+00:00 2024-07-09T00:00:00
2024-W28-3 true 2024-07-10T00:00:00+00:00 2024-07-10T00:00:00
2024-W28-4 true 2024-07-11T00:00:00+00:00 2024-07-11T00:00:00
2024-W28-5 true 2024-07-12T00:00:00+00:00 2024-07-12T00:00:00
2024-W28-6 true 2024-07-13T00:00:00+00:00 2024-07-13T00:00:00
2024-W28-7 true 2024-07-14T00:00:00+00:00 2024-07-14T00:00:00
2024-W29-1 true 2024-07-15T00:00:00+00:00 2024-07-15T00:00:00
2024-W29-2 true 2024-07-16T00:00:00+00:00 2024-07-16T00:00:00
2024-W29-3 true 2024-07-17T00:00:00+00:00 2024-07-17T00:00:00
2024-W29-4 true 2024-07-18T00:00:00+00:00 2024-07-18T00:00:00
2024-W29-5 true 2024-07-19T00:00:00+00:00 2024-07-19T00:00:00
2024-W29-6 true 2024-07-20T00:00:00+00:00 2024-07-20T00:00:00
2024-W29-7 true 2024-07-21T00:00:00+00:00 2024-07-21T00:00:00
2024-W30-1 true 2024-07-22T00:00:00+00:00 2024-07-22T00:00:00
2024-W30-2 true 2024-07-23T00:00:00+00:00 2024-07-23T00:00:00
2024-W30-3 true 2024-07-24T00:00:00+00:00 2024-07-24T00:00:00
2024-W30-4 true 2024-07-25T00:00:00+00:00 2024-07-25T00:00:00
2024-W30-5 true 2024-07-26T00:00:00+00:00 2024-07-26T00:00:00
2024-W30-6 true 2024-07-27T00:00:00+00:00 2024-07-27T00:00:00
2024-W30-7 true 2024-07-28T00:00:00+00:00 2024-07-28T00:00:00
2024-W31-1 true 2024-07-29T00:00:00+00:00 2024-07-29T00:00:00
2024-W31-2 true 2024-07-30T00:00:00+00:00 2024-07-30T00:00:00
2024-W31-3 false 2024-07-31T00:00:00
2024-W31-4 true 2024-08-01T00:00:00+00:00 2024-08-01T00:00:00
2024-W31-5 true 2024-08-02T00:00:00+00:00 2024-08-02T00:00:00
2024-W31-6 true 2024-08-03T00:00:00+00:00 2024-08-03T00:00:00
2024-W31-7 true 2024-08-04T00:00:00+00:00 2024-08-04T00:00:00
2024-W32-1 true 2024-08-05T00:00:00+00:00 2024-08-05T00:00:00
2024-W32-2 true 2024-08-06T00:00:00+00:00 2024-08-06T00:00:00
2024-W32-3 true 2024-08-07T00:00:00+00:00 2024-08-07T00:00:00
2024-W32-4 true 2024-08-08T00:00:00+00:00 2024-08-08T00:00:00
2024-W32-5 true 2024-08-09T00:00:00+00:00 2024-08-09T00:00:00
2024-W32-6 true 2024-08-10T00:00:00+00:00 2024-08-10T00:00:00
2024-W32-7 true 2024-08-11T00:00:00+00:00 2024-08-11T00:00:00
2024-W33-1 true 2024-08-12T00:00:00+00:00 2024-08-12T00:00:00
2024-W33-2 true 2024-08-13T00:00:00+00:00 2024-08-13T00:00:00
2024-W33-3 true 2024-08-14T00:00:00+00:00 2024-08-14T00:00:00
2024-W33-4 true 2024-08-15T00:00:00+00:00 2024-08-15T00:00:00
2024-W33-5 true 2024-08-16T00:00:00+00:00 2024-08-16T00:00:00
2024-W33-6 true 2024-08-17T00:00:00+00:00 2024-08-17T00:00:00
2024-W33-7 true 2024-08-18T00:00:00+00:00 2024-08-18T00:00:00
2024-W34-1 true 2024-08-19T00:00:00+00:00 2024-08-19T00:00:00
2024-W34-2 true 2024-08-20T00:00:00+00:00 2024-08-20T00:00:00
2024-W34-3 true 2024-08-21T00:00:00+00:00 2024-08-21T00:00:00
2024-W34-4 true 2024-08-22T00:00:00+00:00 2024-08-22T00:00:00
2024-W34-5 true 2024-08-23T00:00:00+00:00 2024-08-23T00:00:00
2024-W34-6 true 2024-08-24T00:00:00+00:00 2024-08-24T00:00:00
2024-W34-7 true 2024-08-25T00:00:00+00:00 2024-08-25T00:00:00
2024-W35-1 true 2024-08-26T00:00:00+00:00 2024-08-26T00:00:00
2024-W35-2 true 2024-08-27T00:00:00+00:00 2024-08-27T00:00:00
2024-W35-3 true 2024-08-28T00:00:00+00:00 2024-08-28T00:00:00
2024-W35-4 true 2024-08-29T00:00:00+00:00 2024-08-29T00:00:00
2024-W35-5 true 2024-08-30T00:00:00+00:00 2024-08-30T00:00:00
2024-W35-6 false 2024-08-31T00:00:00
2024-W35-7 true 2024-09-01T00:00:00+00:00 2024-09-01T00:00:00
2024-W36-1 true 2024-09-02T00:00:00+00:00 2024-09-02T00:00:00
2024-W36-2 true 2024-09-03T00:00:00+00:00 2024-09-03T00:00:00
2024-W36-3 true 2024-09-04T00:00:00+00:00 2024-09-04T00:00:00
2024-W36-4 true 2024-09-05T00:00:00+00:00 2024-09-05T00:00:00
2024-W36-5 true 2024-09-06T00:00:00+00:00 2024-09-06T00:00:00
2024-W36-6 true 2024-09-07T00:00:00+00:00 2024-09-07T00:00:00
2024-W36-7 true 2024-09-08T00:00:00+00:00 2024-09-08T00:00:00
2024-W37-1 true 2024-09-09T00:00:00+00:00 2024-09-09T00:00:00
2024-W37-2 true 2024-09-10T00:00:00+00:00 2024-09-10T00:00:00
2024-W37-3 true 2024-09-11T00:00:00+00:00 2024-09-11T00:00:00
2024-W37-4 true 2024-09-12T00:00:00+00:00 2024-09-12T00:00:00
2024-W37-5 true 2024-09-13T00:00:00+00:00 2024-09-13T00:00:00
2024-W37-6 true 2024-09-14T00:00:00+00:00 2024-09-14T00:00:00
2024-W37-7 true 2024-09-15T00:00:00+00:00 2024-09-15T00:00:00
2024-W38-1 true 2024-09-16T00:00:00+00:00 2024-09-16T00:00:00
2024-W38-2 true 2024-09-17T00:00:00+00:00 2024-09-17T00:00:00
2024-W38-3 true 2024-09-18T00:00:00+00:00 2024-09-18T00:00:00
2024-W38-4 true 2024-09-19T00:00:00+00:00 2024-09-19T00:00:00
2024-W38-5 true 2024-09-20T00:00:00+00:00 2024-09-20T00:00:00
2024-W38-6 true 2024-09-21T00:00:00+00:00 2024-09-21T00:00:00
2024-W38-7 true 2024-09-22T00:00:00+00:00 2024-09-22T00:00:00
2024-W39-1 true 2024-09-23T00:00:00+00:00 2024-09-23T00:00:00
2024-W39-2 true 2024-09-24T00:00:00+00:00 2024-09-24T00:00:00
2024-W39-3 true 2024-09-25T00:00:00+00:00 2024-09-25T00:00:00
2024-W39-4 true 2024-09-26T00:00:00+00:00 2024-09-26T00:00:00
2024-W39-5 true 2024-09-27T00:00:00+00:00 2024-09-27T00:00:00
2024-W39-6 true 2024-09-28T00:00:00+00:00 2024-09-28T00:00:00
2024-W39-7 true 2024-09-29T00:00:00+00:00 2024-09-29T00:00:00
2024-W40-1 false 2024-09-30T00:00:00
2024-W40-2 true 2024-10-01T00:00:00+00:00 2024-10-01T00:00:00
2024-W40-3 true 2024-10-02T00:00:00+00:00 2024-10-02T00:00:00
2024-W40-4 true 2024-10-03T00:00:00+00:00 2024-10-03T00:00:00
2024-W40-5 true 2024-10-04T00:00:00+00:00 2024-10-04T00:00:00
2024-W40-6 true 2024-10-05T00:00:00+00:00 2024-10-05T00:00:00
2024-W40-7 true 2024-10-06T00:00:00+00:00 2024-10-06T00:00:00
2024-W41-1 true 2024-10-07T00:00:00+00:00 2024-10-07T00:00:00
2024-W41-2 true 2024-10-08T00:00:00+00:00 2024-10-08T00:00:00
2024-W41-3 true 2024-10-09T00:00:00+00:00 2024-10-09T00:00:00
2024-W41-4 true 2024-10-10T00:00:00+00:00 2024-10-10T00:00:00
2024-W41-5 true 2024-10-11T00:00:00+00:00 2024-10-11T00:00:00
2024-W41-6 true 2024-10-12T00:00:00+00:00 2024-10-12T00:00:00
2024-W41-7 true 2024-10-13T00:00:00+00:00 2024-10-13T00:00:00
2024-W42-1 true 2024-10-14T00:00:00+00:00 2024-10-14T00:00:00
2024-W42-2 true 2024-10-15T00:00:00+00:00 2024-10-15T00:00:00
2024-W42-3 true 2024-10-16T00:00:00+00:00 2024-10-16T00:00:00
2024-W42-4 true 2024-10-17T00:00:00+00:00 2024-10-17T00:00:00
2024-W42-5 true 2024-10-18T00:00:00+00:00 2024-10-18T00:00:00
2024-W42-6 true 2024-10-19T00:00:00+00:00 2024-10-19T00:00:00
2024-W42-7 true 2024-10-20T00:00:00+00:00 2024-10-20T00:00:00
2024-W43-1 true 2024-10-21T00:00:00+00:00 2024-10-21T00:00:00
2024-W43-2 true 2024-10-22T00:00:00+00:00 2024-10-22T00:00:00
2024-W43-3 true 2024-10-23T00:00:00+00:00 2024-10-23T00:00:00
2024-W43-4 true 2024-10-24T00:00:00+00:00 2024-10-24T00:00:00
2024-W43-5 true 2024-10-25T00:00:00+00:00 2024-10-25T00:00:00
2024-W43-6 true 2024-10-26T00:00:00+00:00 2024-10-26T00:00:00
2024-W43-7 true 2024-10-27T00:00:00+00:00 2024-10-27T00:00:00
2024-W44-1 true 2024-10-28T00:00:00+00:00 2024-10-28T00:00:00
2024-W44-2 true 2024-10-29T00:00:00+00:00 2024-10-29T00:00:00
2024-W44-3 true 2024-10-30T00:00:00+00:00 2024-10-30T00:00:00
2024-W44-4 false 2024-10-31T00:00:00
2024-W44-5 true 2024-11-01T00:00:00+00:00 2024-11-01T00:00:00
2024-W44-6 true 2024-11-02T00:00:00+00:00 2024-11-02T00:00:00
2024-W44-7 true 2024-11-03T00:00:00+00:00 2024-11-03T00:00:00
2024-W45-1 true 2024-11-04T00:00:00+00:00 2024-11-04T00:00:00
2024-W45-2 true 2024-11-05T00:00:00+00:00 2024-11-05T00:00:00
2024-W45-3 true 2024-11-06T00:00:00+00:00 2024-11-06T00:00:00
2024-W45-4 true 2024-11-07T00:00:00+00:00 2024-11-07T00:00:00
2024-W45-5 true 2024-11-08T00:00:00+00:00 2024-11-08T00:00:00
2024-W45-6 true 2024-11-09T00:00:00+00:00 2024-11-09T00:00:00
2024-W45-7 true 2024-11-10T00:00:00+00:00 2024-11-10T00:00:00
2024-W46-1 true 2024-11-11T00:00:00+00:00 2024-11-11T00:00:00
2024-W46-2 true 2024-11-12T00:00:00+00:00 2024-11-12T00:00:00
2024-W46-3 true 2024-11-13T00:00:00+00:00 2024-11-13T00:00:00
2024-W46-4 true 2024-11-14T00:00:00+00:00 2024-11-14T00:00:00
2024-W46-5 true 2024-11-15T00:00:00+00:00 2024-11-15T00:00:00
2024-W46-6 true 2024-11-16T00:00:00+00:00 2024-11-16T00:00:00
2024-W46-7 true 2024-11-17T00:00:00+00:00 2024-11-17T00:00:00
2024-W47-1 true 2024-11-18T00:00:00+00:00 2024-11-18T00:00:00
2024-W47-2 true 2024-11-19T00:00:00+00:00 2024-11-19T00:00:00
2024-W47-3 true 2024-11-20T00:00:00+00:00 2024-11-20T00:00:00
2024-W47-4 true 2024-11-21T00:00:00+00:00 2024-11-21T00:00:00
2024-W47-5 true 2024-11-22T00:00:00+00:00 2024-11-22T00:00:00
2024-W47-6 true 2024-11-23T00:00:00+00:00 2024-11-23T00:00:00
2024-W47-7 true 2024-11-24T00:00:00+00:00 2024-11-24T00:00:00
2024-W48-1 true 2024-11-25T00:00:00+00:00 2024-11-25T00:00:00
2024-W48-2 true 2024-11-26T00:00:00+00:00 2024-11-26T00:00:00
2024-W48-3 true 2024-11-27T00:00:00+00:00 2024-11-27T00:00:00
2024-W48-4 true 2024-11-28T00:00:00+00:00 2024-11-28T00:00:00
2024-W48-5 true 2024-11-29T00:00:00+00:00 2024-11-29T00:00:00
2024-W48-6 false 2024-11-30T00:00:00
2024-W48-7 true 2024-12-01T00:00:00+00:00 2024-12-01T00:00:00
2024-W49-1 true 2024-12-02T00:00:00+00:00 2024-12-02T00:00:00
2024-W49-2 true 2024-12-03T00:00:00+00:00 2024-12-03T00:00:00
2024-W49-3 true 2024-12-04T00:00:00+00:00 2024-12-04T00:00:00
2024-W49-4 true 2024-12-05T00:00:00+00:00 2024-12-05T00:00:00
2024-W49-5 true 2024-12-06T00:00:00+00:00 2024-12-06T00:00:00
2024-W49-6 true 2024-12-07T00:00:00+00:00 2024-12-07T00:00:00
2024-W49-7 true 2024-12-08T00:00:00+00:00 2024-12-08T00:00:00
2024-W50-1 true 2024-12-09T00:00:00+00:00 2024-12-09T00:00:00
2024-W50-2 true 2024-12-10T00:00:00+00:00 2024-12-10T00:00:00
2024-W50-3 true 2024-12-11T00:00:00+00:00 2024-12-11T00:00:00
2024-W50-4 true 2024-12-12T00:00:00+00:00 2024-12-12T00:00:00
2024-W50-5 true 2024-12-13T00:00:00+00:00 2024-12-13T00:00:00
2024-W50-6 true 2024-12-14T00:00:00+00:00 2024-12-14T00:00:00
2024-W50-7 true 2024-12-15T00:00:00+00:00 2024-12-15T00:00:00
2024-W51-1 true 2024-12-16T00:00:00+00:00 2024-12-16T00:00:00
2024-W51-2 true 2024-12-17T00:00:00+00:00 2024-12-17T00:00:00
2024-W51-3 true 2024-12-18T00:00:00+00:00 2024-12-18T00:00:00
2024-W51-4 true 2024-12-19T00:00:00+00:00 2024-12-19T00:00:00
2024-W51-5 true 2024-12-20T00:00:00+00:00 2024-12-20T00:00:00
2024-W51-6 true 2024-12-21T00:00:00+00:00 2024-12-21T00:00:00
2024-W51-7 true 2024-12-22T00:00:00+00:00 2024-12-22T00:00:00
2024-W52-1 true 2024-12-23T00:00:00+00:00 2024-12-23T00:00:00
2024-W52-2 true 2024-12-24T00:00:00+00:00 2024-12-24T00:00:00
2024-W52-3 true 2024-12-25T00:00:00+00:00 2024-12-25T00:00:00
2024-W52-4 true 2024-12-26T00:00:00+00:00 2024-12-26T00:00:00
2024-W52-5 true 2024-12-27T00:00:00+00:00 2024-12-27T00:00:00
2024-W52-6 true 2024-12-28T00:00:00+00:00 2024-12-28T00:00:00
2024-W52-7 true 2024-12-29T00:00:00+00:00 2024-12-29T00:00:00

dav1dn avatar Jul 15 '24 21:07 dav1dn

Similar issue here: https://github.com/sdispater/pendulum/issues/797

dav1dn avatar Jul 15 '24 21:07 dav1dn

It would be great to have a week of year format specifier token so we could use from_format instead of parse. I came across this bug while using the data load tool GA4 connector which will only encounter one type of format for that case (so the parsing of different formats isn't needed).

rm-madetech avatar Jul 23 '25 10:07 rm-madetech