Skip to content

Bump fraction from 0.16.0 to 0.17.0 - #37

Open
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/cargo/fraction-0.17.0
Open

Bump fraction from 0.16.0 to 0.17.0#37
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/cargo/fraction-0.17.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 27, 2026

Copy link
Copy Markdown
Contributor

Bumps fraction from 0.16.0 to 0.17.0.

Release notes

Sourced from fraction's releases.

0.17.0

[0.17.0] - 2026-08-23

Changed

  • Breaking: GenericFraction::<T>::from_unicode_str now requires T: CheckedAdd + CheckedMul. Custom backing types must provide both operations for mixed-component combination; standard bounded, big-integer, and dynamic backings satisfy these bounds.
  • Breaking: Numeric-component forms in ordinary Fraction/Decimal, Unicode, GenericFraction radix, and Juniper parsing reject component-local signs while retaining one sign for the complete value. Fraction Juniper input still requires its explicit outer sign; Decimal Juniper input delegates to ordinary Decimal grammar. From<&str> for GenericDecimal continues to map parse failures to NaN.
  • Breaking: GenericFraction changes its Num::FromStrRadixErr associated type from ParseRatioError to ParseError. Its fraction-only numerator/denominator grammar is unchanged, zero denominators return ParseError::ZeroDenominator, and direct Ratio parsing still uses ParseRatioError.
  • Breaking: ParseError is now non-exhaustive; downstream matches must include a wildcard arm.
  • Breaking: DynaInt changes its Num::FromStrRadixErr associated type to ParseError; malformed inputs and values that neither backing type can represent return ParseError::ParseIntError.

Fixed

  • Unicode mixed-number parsing now returns ParseIntError when the raw combined numerator (whole × denominator + numerator) is not representable by the backing integer type, instead of panicking in debug builds or wrapping in release builds.
  • Signed backing types no longer allow component-local signs to create negative magnitudes inside stored ratios; component-local signed-minimum inputs now fail deterministically.
  • GenericFraction and DynaInt radix parsing no longer panic for bases outside 2 through 36; they return ParseError::UnsupportedBase instead of forwarding invalid bases to their backing integer implementations.
Changelog

Sourced from fraction's changelog.

[0.17.0] - 2026-08-23

Changed

  • Breaking: GenericFraction::<T>::from_unicode_str now requires T: CheckedAdd + CheckedMul. Custom backing types must provide both operations for mixed-component combination; standard bounded, big-integer, and dynamic backings satisfy these bounds.
  • Breaking: Numeric-component forms in ordinary Fraction/Decimal, Unicode, GenericFraction radix, and Juniper parsing reject component-local signs while retaining one sign for the complete value. Fraction Juniper input still requires its explicit outer sign; Decimal Juniper input delegates to ordinary Decimal grammar. From<&str> for GenericDecimal continues to map parse failures to NaN.
  • Breaking: GenericFraction changes its Num::FromStrRadixErr associated type from ParseRatioError to ParseError. Its fraction-only numerator/denominator grammar is unchanged, zero denominators return ParseError::ZeroDenominator, and direct Ratio parsing still uses ParseRatioError.
  • Breaking: ParseError is now non-exhaustive; downstream matches must include a wildcard arm.
  • Breaking: DynaInt changes its Num::FromStrRadixErr associated type to ParseError; malformed inputs and values that neither backing type can represent return ParseError::ParseIntError.

Fixed

  • Unicode mixed-number parsing now returns ParseIntError when the raw combined numerator (whole × denominator + numerator) is not representable by the backing integer type, instead of panicking in debug builds or wrapping in release builds.
  • Signed backing types no longer allow component-local signs to create negative magnitudes inside stored ratios; component-local signed-minimum inputs now fail deterministically.
  • GenericFraction and DynaInt radix parsing no longer panic for bases outside 2 through 36; they return ParseError::UnsupportedBase instead of forwarding invalid bases to their backing integer implementations.
Commits
  • 53d04cd chore(release): prepare 0.17.0
  • ca92bcd docs(parse): prepare parser contract for review
  • 4e3fd9f perf(parse): benchmark DynaInt radix parsing
  • df1dff2 fix(parse): make DynaInt radix parsing panic-free
  • 1767207 ci(msrv): lint the parser smoke harness
  • e7c2387 fix(parse): reject signs inside numeric components
  • 5051604 fix(unicode): reject overflowing mixed numerators
  • See full diff 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 show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @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)

Bumps [fraction](https://github.com/dnsl48/fraction) from 0.16.0 to 0.17.0.
- [Release notes](https://github.com/dnsl48/fraction/releases)
- [Changelog](https://github.com/dnsl48/fraction/blob/master/CHANGELOG.md)
- [Commits](dnsl48/fraction@0.16.0...0.17.0)

---
updated-dependencies:
- dependency-name: fraction
  dependency-version: 0.17.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Aug 27, 2026
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 rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants