Package: pendulum / 3.1.0-3
Metadata
| Package | Version | Patches format |
|---|---|---|
| pendulum | 3.1.0-3 | 3.0 (quilt) |
Patch series
view the series file| Patch | File delta | Description |
|---|---|---|
| 0001 relax rust crate dependency versions.patch | (download) |
rust/Cargo.toml |
2 1 + 1 - 0 ! |
relax rust crate dependency versions |
| 0004 remove pytz dependency.patch | (download) |
docs/docs/duration.md |
6 3 + 3 - 0 ! |
remove pytz dependency |
| pure python empty durations error.patch | (download) |
src/pendulum/parsing/iso8601.py |
2 1 + 1 - 0 ! |
make empty durations an error in pure-python parser
Some of Debian's test runners noticed that the pydantic-extra-types
tests are failing on 32-bit architectures:
______________________ test_invalid_zero_duration_string _______________________
def test_invalid_zero_duration_string():
"""'P' is not a valid ISO 8601 duration and should raise a validation error."""
> with pytest.raises(ValidationError):
E Failed: DID NOT RAISE <class 'pydantic_core._pydantic_core.ValidationError'>
tests/test_pendulum_dt.py:447: Failed
Debian currently has pendulum 3.0.0, which disabled the Rust extensions
if `struct.calcsize("P") == 4`, and the Rust and Python parsers disagree
about how to handle an empty duration: the Rust parser reports an error,
while the Python parser returns `Duration()`. 3.1.0 removes that
particular limitation on using Rust extensions on 32-bit architectures,
but the parser discrepancy still seems to be present.
I don't have access to the full text of the standard, but Wikipedia's
summary says 'However, at least one element must be present, thus "P" is
not a valid representation for a duration of 0 seconds', so I think the
Rust parser is correct. Adjust the Python parser to match.
|
| pyo3 0.25 compatibility.patch | (download) |
rust/Cargo.toml |
2 1 + 1 - 0 ! |
pyo3 0.25 compatibility patch Bug: https://github.com/python-pendulum/pendulum/issues/913 |
