Skip to content

chore: release v0.25.0#800

Merged
frankmcsherry merged 2 commits into
masterfrom
release-plz-2026-07-15T01-21-25Z
Jul 15, 2026
Merged

chore: release v0.25.0#800
frankmcsherry merged 2 commits into
masterfrom
release-plz-2026-07-15T01-21-25Z

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

🤖 New release

  • differential-dataflow: 0.24.0 -> 0.25.0 (⚠ API breaking changes)
  • differential-dogs3: 0.24.0 -> 0.25.0 (✓ API compatible changes)

differential-dataflow breaking changes

--- failure enum_missing: pub enum removed or renamed ---

Description:
A publicly-visible enum cannot be imported by its prior path. A `pub use` may have been removed, or the enum itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/enum_missing.ron

Failed in:
  enum differential_dataflow::columnar::arrangement::trie_merger::ReportReference, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/trie_merger.rs:623
  enum differential_dataflow::columnar::arrangement::trie_merger::Report, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/trie_merger.rs:624
  enum differential_dataflow::columnar::spill::Entry, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/spill.rs:14

--- failure function_missing: pub fn removed or renamed ---

Description:
A publicly-visible function cannot be imported by its prior path. A `pub use` may have been removed, or the function itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/function_missing.ron

Failed in:
  function differential_dataflow::columnar::arrangement::trie_merger::survey, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/trie_merger.rs:405
  function differential_dataflow::columnar::join_function, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/mod.rs:267
  function differential_dataflow::columnar::as_recorded_updates, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/mod.rs:403
  function differential_dataflow::columnar::arrangement::trie_merger::extract, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/trie_merger.rs:67
  function differential_dataflow::columnar::arrangement::trie_merger::write_diffs, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/trie_merger.rs:564
  function differential_dataflow::columnar::leave_dynamic, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/mod.rs:322
  function differential_dataflow::columnar::arrangement::trie_merger::merge_batches, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/trie_merger.rs:171
  function differential_dataflow::columnar::arrangement::trie_merger::write_layer, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/trie_merger.rs:475

--- failure function_requires_different_generic_type_params: function now requires a different number of generic type parameters ---

Description:
A function now requires a different number of generic type parameters than it used to. Uses of this function that supplied the previous number of generic types (e.g. via turbofish syntax) will be broken.
        ref: https://doc.rust-lang.org/reference/items/generics.html
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/function_requires_different_generic_type_params.ron

Failed in:
  function reduce_trace (5 -> 6 generic types) in /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/operators/reduce.rs:93
  function join_traces (4 -> 5 generic types) in /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/operators/join.rs:63

--- failure method_requires_different_generic_type_params: method now requires a different number of generic type parameters ---

Description:
A method now requires a different number of generic type parameters than it used to. Uses of this method that supplied the previous number of generic types will be broken.
        ref: https://doc.rust-lang.org/reference/items/generics.html
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/method_requires_different_generic_type_params.ron

Failed in:
  differential_dataflow::operators::arrange::arrangement::Arranged::join_core takes 6 generic types instead of 3, in /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/operators/arrange/arrangement.rs:230
  differential_dataflow::operators::arrange::arrangement::Arranged::reduce_abelian takes 5 generic types instead of 4, in /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/operators/arrange/arrangement.rs:269
  differential_dataflow::operators::arrange::arrangement::Arranged::reduce_core takes 5 generic types instead of 4, in /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/operators/arrange/arrangement.rs:290
  differential_dataflow::operators::arrange::Arranged::join_core takes 6 generic types instead of 3, in /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/operators/arrange/arrangement.rs:230
  differential_dataflow::operators::arrange::Arranged::reduce_abelian takes 5 generic types instead of 4, in /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/operators/arrange/arrangement.rs:269
  differential_dataflow::operators::arrange::Arranged::reduce_core takes 5 generic types instead of 4, in /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/operators/arrange/arrangement.rs:290
  differential_dataflow::collection::Collection::join_core takes 4 generic types instead of 3, in /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/collection.rs:1245
  differential_dataflow::Collection::join_core takes 4 generic types instead of 3, in /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/collection.rs:1245

--- failure module_missing: pub module removed or renamed ---

Description:
A publicly-visible module cannot be imported by its prior path. A `pub use` may have been removed, or the module may have been renamed, removed, or made non-public.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/module_missing.ron

Failed in:
  mod differential_dataflow::columnar::arrangement::batch_container, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/mod.rs:31
  mod differential_dataflow::columnar::spill, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/spill.rs:1
  mod differential_dataflow::columnar::builder, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/builder.rs:1
  mod differential_dataflow::columnar::batcher, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/batcher.rs:1
  mod differential_dataflow::columnar::arrangement, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/mod.rs:1
  mod differential_dataflow::columnar::arrangement::builder, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/mod.rs:254
  mod differential_dataflow::columnar::exchange, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/exchange.rs:1
  mod differential_dataflow::columnar::arrangement::trie_merger, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/trie_merger.rs:1

--- failure struct_missing: pub struct removed or renamed ---

Description:
A publicly-visible struct cannot be imported by its prior path. A `pub use` may have been removed, or the struct itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/struct_missing.ron

Failed in:
  struct differential_dataflow::columnar::builder::ValBuilder, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/builder.rs:17
  struct differential_dataflow::columnar::ValColBuilder, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/builder.rs:17
  struct differential_dataflow::trace::wrappers::enter::CursorEnter, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/trace/wrappers/enter.rs:166
  struct differential_dataflow::operators::join::EffortBuilder, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/operators/join.rs:29
  struct differential_dataflow::columnar::arrangement::trie_merger::ChainBuilder, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/trie_merger.rs:638
  struct differential_dataflow::trace::wrappers::frontier::CursorFrontier, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/trace/wrappers/frontier.rs:122
  struct differential_dataflow::columnar::exchange::ValPact, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/exchange.rs:86
  struct differential_dataflow::columnar::ValPact, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/exchange.rs:86
  struct differential_dataflow::columnar::arrangement::builder::ValMirror, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/mod.rs:281
  struct differential_dataflow::columnar::batcher::MergeBatcher, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/batcher.rs:24
  struct differential_dataflow::columnar::arrangement::ValChunker, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/mod.rs:137
  struct differential_dataflow::columnar::ValChunker, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/mod.rs:137
  struct differential_dataflow::columnar::arrangement::TrieChunker, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/mod.rs:137
  struct differential_dataflow::columnar::exchange::ValDistributor, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/exchange.rs:21
  struct differential_dataflow::columnar::arrangement::trie_merger::ReportContainer, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/trie_merger.rs:623
  struct differential_dataflow::columnar::RecordedUpdates, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/mod.rs:53
  struct differential_dataflow::columnar::arrangement::batch_container::Coltainer, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/mod.rs:38
  struct differential_dataflow::columnar::arrangement::Coltainer, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/arrangement/mod.rs:38
  struct differential_dataflow::trace::wrappers::enter_at::CursorEnter, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/trace/wrappers/enter_at.rs:193

--- failure trait_associated_type_added: non-sealed public trait added associated type without default value ---

Description:
A non-sealed trait has gained an associated type without a default value, which breaks downstream implementations of the trait
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-item-no-default
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/trait_associated_type_added.ron

Failed in:
  trait associated type differential_dataflow::trace::BatchReader::Time in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/mod.rs:221
  trait associated type differential_dataflow::trace::cursor::Cursor::Key in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:71
  trait associated type differential_dataflow::trace::cursor::Cursor::ValOwn in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:73
  trait associated type differential_dataflow::trace::cursor::Cursor::Val in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:75
  trait associated type differential_dataflow::trace::cursor::Cursor::Time in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:77
  trait associated type differential_dataflow::trace::cursor::Cursor::TimeGat in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:79
  trait associated type differential_dataflow::trace::cursor::Cursor::Diff in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:81
  trait associated type differential_dataflow::trace::cursor::Cursor::DiffGat in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:83
  trait associated type differential_dataflow::trace::cursor::Cursor::KeyContainer in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:86
  trait associated type differential_dataflow::trace::cursor::Cursor::ValContainer in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:88
  trait associated type differential_dataflow::trace::cursor::Cursor::TimeContainer in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:90
  trait associated type differential_dataflow::trace::cursor::Cursor::DiffContainer in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:92
  trait associated type differential_dataflow::trace::Cursor::Key in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:71
  trait associated type differential_dataflow::trace::Cursor::ValOwn in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:73
  trait associated type differential_dataflow::trace::Cursor::Val in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:75
  trait associated type differential_dataflow::trace::Cursor::Time in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:77
  trait associated type differential_dataflow::trace::Cursor::TimeGat in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:79
  trait associated type differential_dataflow::trace::Cursor::Diff in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:81
  trait associated type differential_dataflow::trace::Cursor::DiffGat in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:83
  trait associated type differential_dataflow::trace::Cursor::KeyContainer in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:86
  trait associated type differential_dataflow::trace::Cursor::ValContainer in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:88
  trait associated type differential_dataflow::trace::Cursor::TimeContainer in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:90
  trait associated type differential_dataflow::trace::Cursor::DiffContainer in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:92
  trait associated type differential_dataflow::trace::TraceReader::Time in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/mod.rs:42

--- failure trait_method_added: pub trait method added ---

Description:
A non-sealed public trait added a new method without a default implementation, which breaks downstream implementations of the trait
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-new-item-no-default
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/trait_method_added.ron

Failed in:
  trait method differential_dataflow::trace::TraceReader::batches_through in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/mod.rs:61
  trait method differential_dataflow::trace::implementations::merge_batcher::Merger::len in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/implementations/merge_batcher.rs:212

--- failure trait_method_missing: pub trait method removed or renamed ---

Description:
A trait method is no longer callable, and may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#trait-item-signature
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/trait_method_missing.ron

Failed in:
  method cursor of trait BatchReader, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/trace/mod.rs:268
  method account of trait Merger, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/trace/implementations/merge_batcher.rs:193

--- failure trait_missing: pub trait removed or renamed ---

Description:
A publicly-visible trait cannot be imported by its prior path. A `pub use` may have been removed, or the trait itself may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/trait_missing.ron

Failed in:
  trait differential_dataflow::columnar::spill::SpillPolicy, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/spill.rs:27
  trait differential_dataflow::columnar::spill::Fetch, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/spill.rs:44
  trait differential_dataflow::columnar::spill::Spill, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/columnar/spill.rs:38
  trait differential_dataflow::trace::implementations::LayoutExt, previously in file /tmp/.tmpFWqreU/differential-dataflow/src/trace/implementations/mod.rs:111

--- failure trait_removed_associated_type: trait's associated type was removed ---

Description:
A public trait's associated type was removed or renamed.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/trait_removed_associated_type.ron

Failed in:
  associated type BatchReader::Cursor, previously at /tmp/.tmpFWqreU/differential-dataflow/src/trace/mod.rs:250
  associated type TraceReader::Storage, previously at /tmp/.tmpFWqreU/differential-dataflow/src/trace/mod.rs:72
  associated type TraceReader::Cursor, previously at /tmp/.tmpFWqreU/differential-dataflow/src/trace/mod.rs:75

--- failure trait_removed_supertrait: supertrait removed or renamed ---

Description:
A supertrait was removed from a trait. Users of the trait can no longer assume it can also be used like its supertrait.
        ref: https://doc.rust-lang.org/reference/items/traits.html#supertraits
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.48.0/src/lints/trait_removed_supertrait.ron

Failed in:
  supertrait differential_dataflow::trace::implementations::LayoutExt of trait BatchReader in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/mod.rs:215
  supertrait differential_dataflow::trace::implementations::LayoutExt of trait TraceReader in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/mod.rs:36
  supertrait differential_dataflow::trace::implementations::LayoutExt of trait Cursor in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:65
  supertrait differential_dataflow::trace::implementations::LayoutExt of trait Cursor in file /tmp/.tmpwPpoa9/differential-dataflow/differential-dataflow/src/trace/cursor/mod.rs:65
Changelog

differential-dataflow

0.25.0 - 2026-07-15

Other

  • name the shared key container to fix HRTB normalization (#798)
  • name the shared key container to fix HRTB normalization (#797)
  • Revert the extract-first seal; restore merge-then-extract (#796)
  • :common — types and methods generally useful for differential computation (#794)
  • extract-first seal (#793)
  • Integer-proxy chunks: backend-agnostic join and reduce over (key_hash, value_id) (#781)
  • Flip tactics from pub(crate) to pub (#791)
  • reshape JoinTactic to an iterator of output containers (#790)
  • document and assert the ReduceTactic / JoinTactic contracts (#789)
  • add a model-derived reference tactic (differential oracle) (#780)
  • Chunk navigation capability (#778)
  • Add formal/: machine-checked coverage and compaction arguments in Lean (#776)
  • Generalize join and reduce into navigation-free drivers over pluggable tactics (#773)
  • Move layout onto the Cursor; make navigation an optional capability (#772)
  • Remove TraceReader::Cursor; hard-wire CursorList<Batch::Cursor> (#771)
  • Chunk columnar retarget (#769)
  • Chunk abstraction for collections, merge batching, and batches. (#744)
  • weigh the geometric ladder by updates; split Merger::account (#767)

differential-dogs3

0.25.0 - 2026-07-15

Other

  • Fix off-by-one in lookup_map: key_con.index(1) -> index(0) (#765)
  • Move layout onto the Cursor; make navigation an optional capability (#772)


This PR was generated with release-plz.

github-actions Bot and others added 2 commits July 15, 2026 01:21
Rewrite the release-plz-generated changelogs into the house style:
categorized Added/Changed/Removed sections plus a closing summary of
the breaking surface. Add the omitted timely 0.31 bump, drop the
reverted extract-first seal pair (#793/#796), de-duplicate the HRTB
entries, and flag the new Chunk and JoinTactic/ReduceTactic surface as
experimental.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@frankmcsherry frankmcsherry merged commit 4e8ff9d into master Jul 15, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant