a2b143e7d9
Accepting request 1278561 from home:glaubitz:branches:devel:languages:python
Matej Cepl2025-05-20 10:03:06 +00:00
e86b749934
Accepting request 1244781 from devel:languages:python
Ana Guerrero2025-02-10 16:35:24 +00:00
bf06d85502
- update to 10.0.0: * Reduced accuracy representations of years when parsing a calendar date are now only allowed to be [YY] (see 31) * No longer specify a Python interpreter version to Black * Cleanup unsupported Pylint configuration options * Fix used-before-assignment errors * Fix coverage issue caused by unreachable conditional in _parse_interval_end
Dirk Mueller2025-02-03 13:36:37 +00:00
1c9ac12766
- Update to 9.0.1: * Parsing prescribed durations with only hour and second time components (see PR 14) * Parsing prescribed durations with only year and day components * Add support for concise interval format (see 27) * Add explicit bounds of [000, 366] to day of year component _parse_ordinal_date, this adds the same limits to dates of the format YYYYDDD or YYYY-DDD when using parse_date * Add range_check_date, range_check_time, range_check_duration, range_check_repeating_interval, and range_check_timezone range checking class methods to BaseTimeBuilder there are no datetime or non-repeating interval check function as they are made of already checked parts * PythonTimeBuilder now calls the appropriate range check functions using the range_check_date, range_check_time, range_check_duration, range_check_repeating_interval, and range_check_timezone methods defined in aniso8601.builders * Add range_check_duration to PythonTimeBuilder which calls BaseTimeBuilder.range_check_duration and performs additional checks against maximum timedelta size * Add range_check_interval to PythonTimeBuilder which handles building concise dates and performs additional checks against maximum timedelta size * Add get_datetime_resolution which behaves like get_time_resolution but accepts a ISO 8601 date time as an argument, return value is a TimeResolution * Add exceptions.RangeCheckError as a parent type of all failures in the range check methods, it descends from ValueError * Add get_duration_resolution which behaves like other resolution helpers, return value is a DurationResolution * Add get_interval_resolution which behaves like other resolution helpers, return value is a IntervalResolution * Negative durations now fail at the parse step and simply raise ISOFormatError, calling a PythonTimeBuilder.build_duration directly with a negative duration component will yield an ISOFormatError in the range check * Raise DayOutOfBoundsError if calendar day exceeds number of days in calendar month * Raise ISOFormatError when date or time string contains extra whitespace * Raise ISOFormatError when duration contains multiple duration designators ("P"), or time designators ("T") * PythonTimeBuilder.build_duration raises YearOutOfBoundsError, MonthOutOfBoundsError, WeekOutOfBoundsError, HoursOutOfBoundsError, MinutesOutOfBoundsError, or SecondsOutOfBoundsError when a given duration component would result in a timedelta that would exceed the maximum size * Raise ISOFormatError if number of delimiters is not exactly 1 in parse_interval * Raise ISOFormatError when either part of an interval string before of after the delimiter is empty * Raise YearOutOfBoundsError in PythonTimeBuilder.build_interval if an interval with a duration would exceed the maximum or minimum years for Python date objects * Simplify parse_date, build_date will now be called with explicit None arguments instead of date components not in the parsed string excluded from the call * Change get_date_resolution to call parse_date and return the resolution based on the smallest parsed component * Simplify parse_time, build_time will now be called with explicit None arguments instead of date components not in the parsed string excluded from the call * Change get_time_resolution to call parse_time and return the resolution based on the smallest parsed component * TupleBuilder now builds DateTuple, TimeTuple, DatetimeTuple, DurationTuple, IntervalTuple, RepeatingIntervalTuple and TimezoneTuple namedtuples * Simplify parse_duration, build_duration will now be called with explicit None arguments when components of a prescribed duration are not present in the ISO 8601 duration string instead of being excluded from the call * Remove unused decimalfraction.find_separator * Remove unused PythonTimeBuilder._split_to_microseconds * Removed NegativeDurationError - Switch %pyunittest macro for running tests.
Steve Kowalik2021-04-13 05:51:42 +00:00
4d251b63a9
- update to 8.1.1: * Deprecate running tests with python setup.py tests as the test suite support in Setuptools is deprecated * Add version to __init__.py * Cleaner reading of README.rst into the long_description field of setup.py * Define long_description_content_type as text/x-rst * Simplify Sphinx configuration * Add compat.is_string method, returns True for str, unicode types, False otherwise, used to fix 28
Dirk Mueller2021-02-01 17:45:30 +00:00
4d0deda204
- update to 8.1.0: * Empty string arguments to get_date_resolution and parse_date now raise ISOFormatError, fixes 26 * None and non-string arguments to get_date_resolution and parse_date now raise ValueError * Empty string arguments to parse_duration now raise ISOFormatError * None and non-string arguments to parse_duration now raise ValueError * Empty string arguments to parse_interval and parse_repeating_interval now raise ISOFormatError * None and non-string arguments to parse_interval and parse_repeating_internval now raise ValueError * Empty string arguments to get_time_resolution and parse_time now raise ISOFormatError * None and non-string arguments to parse_time now raise ValueError * None and non-string arguments to parse_timezone now raise ValueError * Empty string arguments to parse_datetime now raise ISOFormatError * None and non-string arguments to parse_datetime now raise ValueError * Missing delimiter in datetime strings when calling parse_datetime now raises ISOFormatError * Missing delimiter in regular and repeating interval strings when calling parse_interval and parse_repeating_interval now raises ISOFormatError * get_time_resolution now correctly throws ISOFormatError when a time component has too many characters in a time using ":" as a separator
Dirk Mueller2020-12-20 09:48:51 +00:00
11368796a5
- Update to 8.0.0: * Handle ',' character as a fractional separator, as required by 4.2.2.4, see PR 12 * Fix semver usage for prelease version, as required by clause 9
Tomáš Chvátal
2019-09-26 07:55:28 +00:00
e7fbfde94b
- Update to 7.0.0 * Handle all fractional components as an integer number of microseconds, eliminating rounding issues
Ondřej Súkup2019-06-12 10:34:55 +00:00
b46cd44e19
Accepting request 683738 from devel:languages:python
Stephan Kulow
2019-03-11 12:51:38 +00:00
54419059e8
- Update to 6.0.0: * Remove previously deprecated built in version of relativetimebuilder
Tomáš Chvátal
2019-03-11 09:46:15 +00:00