Package: pendulum / 3.1.0-1
Metadata
Package | Version | Patches format |
---|---|---|
pendulum | 3.1.0-1 | 3.0 (quilt) |
Patch series
view the series filePatch | 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 |