Skip to content

Bump ion-rs from 0.18.1 to 1.0.0#127

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/ion-rs-1.0.0
Open

Bump ion-rs from 0.18.1 to 1.0.0#127
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/ion-rs-1.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 3, 2026

Copy link
Copy Markdown
Contributor

Bumps ion-rs from 0.18.1 to 1.0.0.

Release notes

Sourced from ion-rs's releases.

v1.0.0

What's Changed

This release marks the first stable API. See the API documentation for the full public surface.

The list of changes compared to prior releases is extensive and includes breaking changes; these release notes attempt to summarize significant new features and breaking changes. Please refer to the full changelogs if you need an exhaustive list of changes.

New Features (since 0.18.x)

  • Reading and writing Ion no longer requires constructing reader/writer objects; Element::read_one, Element::iter, and Element::encode_as handle the common cases directly.
  • Element now provides typed accessors (expect_i64(), expect_string(), etc.) and From/Into conversions for building values without intermediate types.
  • Element::location() reports byte offsets and line/column positions for values parsed from text Ion, useful for error reporting and debugging.
  • IonData now implements Hash, allowing Element and other Ion data model types to be hashed in a way that is consistent with Ion equivalence.
  • The experimental-serde feature adds Serialize/Deserialize implementations that map Rust types to and from Ion, with support for enums, annotations, and symbol-as-string deserialization.

Breaking – Clean up public API for v1.0.0 release (#1024)

  • Sign and Coefficient are now in ion_rs::decimal
  • TextKind was renamed and moved to ion_rs::TextFormat
  • SymbolId, ElementWriter, ElementReader are now behind the experimental-reader-writer feature flag
  • All other public types are exported through the crate root ion_rs

Breaking – Remove Eq from Element and fix Struct equality (#1028)

Element and some related types no longer implement Eq (see #1025, #1026). If you need map/set key semantics for Ion data model values, wrap values in IonData (e.g. HashMap<IonData<Element>, V>) which provides Eq and Hash using Ion structural equivalence and provides a total Ord. See IonData documentation for details and warnings.

Additional breaking changes from RC versions

If you adopted an earlier RC, these additional changes may affect you:

  • Some experimental writer traits were split or simplified (#732)
  • Closure-based container writers were dropped (#741)
  • Serde serialization no longer emits type-identifier annotations by default (#751)
  • Ion 1.1 support now requires the experimental-ion-1-1 feature flag (#842); warning: the Ion 1.1 implementation is not complete or correct at the time of this release

Additional breaking changes since 0.18.x

  • All APIs that previously accepted or returned Vec<Element> now use the Sequence type (#572)
  • UInt and Int are now opaque structs with no public fields, conversions from signed types to UInt are fallible, and the crate no longer depends on or exposes BigInt/BigUint although arbitrary precision is still supported (#568, #570, #571, #767)
  • The IntAccess trait (as_i64(), as_big_int()) was removed; use Element::expect_i64(), Element::expect_int(), and similar typed accessor methods instead (#595)
  • The IonReader and IonWriter traits, ReaderBuilder, TextWriterBuilder, BinaryWriterBuilder, IonDataSource, SymbolTable, Catalog, and all related raw/user/system reader types have been removed from the public API (#591, #602, #727, #729, #749, #752)
  • IonError variants now wrap opaque inner types rather than exposing fields directly (#584)
  • BigDecimal is no longer re-exported; for BigDecimal interop, enable the bigdecimal feature (#990) or use the components of Decimal to convert to any big decimal representation

Upgrading from 0.18.x

  1. Bump your toolchain to Rust 1.82 or newer.

... (truncated)

Commits
  • af15062 Version bump to v1.0.0 (#1029)
  • 3a392c6 fix: remove Eq from Element and fix Struct equality (#1028)
  • f57dcee Clean up public API for v1.0.0 release (#1024)
  • 2b0df7f Add regression test for IVM resetting the encoding context (#1022)
  • 235fc03 fix: write annotations for all value types in serde serializer (#1023)
  • 96d4ff5 Version bump to v1.0.0-rc.12 (#1021)
  • 0afce61 Add support for arbitrary precision integers, decimals, and timestamps (#1019)
  • d18d2bc fix: correctly parse i128::MIN from text Ion (#1018)
  • bbcd84c fix: resolve clippy warnings from Rust toolchain update (#1017)
  • a83ec95 GH actions Maintenance (#1006)
  • 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 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 [ion-rs](https://github.com/amazon-ion/ion-rust) from 0.18.1 to 1.0.0.
- [Release notes](https://github.com/amazon-ion/ion-rust/releases)
- [Commits](amazon-ion/ion-rust@v0.18.1...v1.0.0)

---
updated-dependencies:
- dependency-name: ion-rs
  dependency-version: 1.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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 Jul 3, 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