Skip to content

Conversation

@dependabot-preview
Copy link

Bumps aniso8601 from 6.0.0 to 9.0.0.

Changelog

Sourced from aniso8601's changelog.

aniso8601 9.0.0

Release date: 2021-02-18

Changes

  • Add support for concise interval format (see 27)
  • Add explicit bounds of [000, 366] to day of year component _parse_ordinal_date{.sourceCode}, this adds the same limits to dates of the format YYYYDDD or YYYY-DDD when using parse_date{.sourceCode}
  • Add range_check_date{.sourceCode}, range_check_time{.sourceCode}, range_check_duration{.sourceCode}, range_check_repeating_interval{.sourceCode}, and range_check_timezone{.sourceCode} range checking class methods to BaseTimeBuilder{.sourceCode} there are no datetime or non-repeating interval check function as they are made of already checked parts
  • PythonTimeBuilder{.sourceCode} now calls the appropriate range check functions using the range_check_date{.sourceCode}, range_check_time{.sourceCode}, range_check_duration{.sourceCode}, range_check_repeating_interval{.sourceCode}, and range_check_timezone{.sourceCode} methods defined in aniso8601.builders{.sourceCode}
  • Add range_check_duration{.sourceCode} to PythonTimeBuilder{.sourceCode} which calls BaseTimeBuilder.range_check_duration{.sourceCode} and performs additional checks against maximum timedelta size
  • Add range_check_interval{.sourceCode} to PythonTimeBuilder{.sourceCode} which handles building concise dates and performs additional checks against maximum timedelta size
  • Add get_datetime_resolution{.sourceCode} which behaves like get_time_resolution{.sourceCode} but accepts a ISO 8601 date time as an argument, return value is a TimeResolution{.sourceCode}
  • Add exceptions.RangeCheckError{.sourceCode} as a parent type of all failures in the range check methods, it descends from ValueError{.sourceCode}
  • Add get_duration_resolution{.sourceCode} which behaves like other resolution helpers, return value is a DurationResolution{.sourceCode}
  • Add get_interval_resolution{.sourceCode} which behaves like other resolution helpers, return value is a IntervalResolution{.sourceCode}
  • Negative durations now fail at the parse step and simply raise ISOFormatError{.sourceCode}, calling a PythonTimeBuilder.build_duration{.sourceCode} directly with a negative duration component will yield an ISOFormatError{.sourceCode} in the range check
  • Raise DayOutOfBoundsError{.sourceCode} if calendar day exceeds number of days in calendar month
  • Raise DayOutOfBoundsError{.sourceCode} if ordinal day exceeds number of days in calendar year (366 now raises DayOutOfBoundsError{.sourceCode} in non-leap year)
  • Raise ISOFormatError{.sourceCode} when date or time string contains extra whitespace
  • Raise ISOFormatError{.sourceCode} on multiple fraction separators (comma, full-stop) in a time string
  • Raise ISOFormatError{.sourceCode} when duration contains multiple duration designators ("P"), or time designators ("T")
  • PythonTimeBuilder.build_duration{.sourceCode} raises YearOutOfBoundsError{.sourceCode}, MonthOutOfBoundsError{.sourceCode}, WeekOutOfBoundsError{.sourceCode}, HoursOutOfBoundsError{.sourceCode}, MinutesOutOfBoundsError{.sourceCode}, or SecondsOutOfBoundsError{.sourceCode} when a given duration component would result in a timedelta{.sourceCode} that would exceed the maximum size
  • Raise ISOFormatError{.sourceCode} if number of delimiters is not exactly 1 in parse_interval{.sourceCode}
  • Raise ISOFormatError{.sourceCode} when either part of an interval string before of after the delimiter is empty
  • Raise YearOutOfBoundsError{.sourceCode} in PythonTimeBuilder.build_interval{.sourceCode} if an interval with a duration would exceed the maximum or minimum years for Python date objects
  • Simplify parse_date{.sourceCode}, build_date{.sourceCode} will now be called with explicit None{.sourceCode} arguments instead of date components not in the parsed string excluded from the call
  • Change get_date_resolution{.sourceCode} to call parse_date{.sourceCode} and return the resolution based on the smallest parsed component
  • Simplify parse_time{.sourceCode}, build_time{.sourceCode} will now be called with explicit None{.sourceCode} arguments instead of date components not in the parsed string excluded from the call
  • Change get_time_resolution{.sourceCode} to call parse_time{.sourceCode} and return the resolution based on the smallest parsed component
  • TupleBuilder{.sourceCode} now builds DateTuple{.sourceCode}, TimeTuple{.sourceCode}, DatetimeTuple{.sourceCode}, DurationTuple{.sourceCode}, IntervalTuple{.sourceCode}, RepeatingIntervalTuple{.sourceCode} and TimezoneTuple{.sourceCode} namedtuples
  • Simplify parse_duration{.sourceCode}, build_duration{.sourceCode} will now be called with explicit None{.sourceCode} 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{.sourceCode}
  • Remove unused PythonTimeBuilder._split_to_microseconds{.sourceCode}
  • Removed NegativeDurationError{.sourceCode}

Deprecation

  • Update on Python 2 support: Python 2 support was slated to be removed in 7.0.0 but was not, it will remain until a test fails on Python 2 but not Python 3
  • Using Setuptools to run tests (python setup.py tests{.sourceCode}) will be removed in the next major or minor version (either 9.1.0, 10.0.0)

aniso8601 8.1.1

Release date: 2021-01-29

Changes

... (truncated)

Commits
  • c6969e8 Add _get_interval_component_resolution test.
  • c6b58c9 Add _get_interval_resolution test.
  • 0996c42 Add get_datetime_resolution.
  • 1e98e17 Add documentation for new resolution functions.
  • 367c118 Correct tuplebuilder documentation to reflect namedtuples.
  • 0284015 Start of BUILDERS implementation documentation.
  • d48d99c More documentation.
  • 8c7c5d2 Move duration range checking to range_check_duration.
  • ec5d27d Move all additional range checking to range_check_interval and
  • e8c39be Remove unused _split_to_microseconds.
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
  • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

Additionally, you can set the following in your Dependabot dashboard:

  • Update frequency (including time of day and day of week)
  • Pull request limits (per update run and/or open at any time)
  • Automerge options (never/patch/minor, and dev/runtime dependencies)
  • Out-of-range updates (receive only lockfile updates, if desired)
  • Security updates (receive only security updates, if desired)

@dependabot-preview dependabot-preview bot added the dependencies Pull requests that update a dependency file label Feb 19, 2021
@dependabot-preview
Copy link
Author

Superseded by #118.

@dependabot-preview dependabot-preview bot deleted the dependabot/pip/aniso8601-9.0.0 branch March 2, 2021 13:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant