From 6a89f748a435a416dad920807e59312600c9c2ad Mon Sep 17 00:00:00 2001 From: mehmet turac Date: Wed, 2 Sep 2026 10:35:56 +0300 Subject: [PATCH] Allow more than 9 subsecond digits in ISO 8601 parsing The subsecond regex group only accepted 1-9 digits, so timestamps with higher precision (e.g. from .NET or database drivers that emit 10+ fractional digits) raised a ParseError. Widen the pattern to accept any number of digits. The processing code already truncates to 6 digits for microseconds, so the change is safe. --- src/pendulum/parsing/iso8601.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pendulum/parsing/iso8601.py b/src/pendulum/parsing/iso8601.py index c65d249e..699185a0 100644 --- a/src/pendulum/parsing/iso8601.py +++ b/src/pendulum/parsing/iso8601.py @@ -49,7 +49,7 @@ # Subsecond part (optional) " (?P" " (?:[.,])" # Subsecond separator (optional) - r" (?P\d{1,9})" # Subsecond + r" (?P\d+)" # Subsecond " )?" # Timezone offset " (?P"