PackageTrack
Sign in Get early access

diffutil_dart

Calculate the difference between two lists as list of edit operations. Used for example for implicitly animating Flutter lists without having to maintain a StatefulWidget.

5.0.0 174K downloads/mo #904 most downloaded on pub.dev knaeckeKami/diffutil.dart

What this package is like to depend on

Last release 2 months ago

06 Jun 2026

Release timing varies

gaps range from 6 weeks to 2.5 years

Most releases are documented

notes for 16 of 18 stable releases

Nothing withdrawn

no release was ever pulled

7 years old

24 releases · first in 2020

1 release in the last 12 months

see the full history below

Release timeline

24 releases · Feb 2020 to Jun 2026
2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 24
  1. 5.0.0 06 Jun 2026
    Release notes
    • BREAKING: optimize exact diff calculation by trimming matching suffixes before running Myers. This keeps diffs minimal, but duplicate-heavy lists may now choose a different valid anchor/update position than 4.x.
    • Improve common diff performance by reusing typed-data buffers for k-lines/status arrays and interning larger non-aligned list diffs.
    • Add an AOT/JIT benchmark harness under tool/bench/bench.dart.
    • Add hash-collision regression tests for both update APIs.
    Open source →
  2. 4.0.1 16 Dec 2023
    Release notes
    • fix endless loopi/wrong result in certain cases (#21, #18)
    Open source →
  3. 4.0.0 09 Jul 2023
    Release notes
    • Fix bug that caused wrong update list to be returned when the list would contain duplicate items (see https://github.com/knaeckeKami/diffutil.dart/issues/15)
    • BREAKING: add sealed class modifiers to data classes, require Dart 3.0
    Open source →
  4. 3.0.0 28 Oct 2021
    Release notes
    • added DiffResult::getUpdatesWithData. To make this work, following changes have been made:
      • The functions calculateDiff(), calculateListDiff, calculateCustomListDiff now have an additional generic type parameter. This is a breaking change (if you used calculateCustomListDiff with a single explicit type parameter, it now has two)
      • DiffResulthas now a generic type parameter for the type of the data of the underlying lists
    Open source →
  5. 2.0.0 20 Mar 2021
    Release notes
    • stable nullsafe release
    Open source →
  6. 2.0.0+1 20 Mar 2021

    Nothing published for this version

  7. 2.0.0-nullsafety.0 20 Nov 2020 pre-release
    Release notes
    • removed deprecated methods
    • migrate to nullsafety
    Open source →
  8. 1.0.2 10 Oct 2020
    Release notes
    • More tests, add github action badges
    Open source →
  9. 1.0.1 23 Jul 2020
    Release notes
    • Relax version constraint of package meta
    Open source →
  10. 1.0.0 23 Jul 2020
    Release notes

    Major revamp to make the libary more Dart-y and less cumbersome to use!

    • Add ability to calculate the changeset as list of DiffUpdate object, where each object is of type Insert, Remove, Change or Insert

    • Ability to turn off changeset batching (See README for an explanation on changeset batching)

    • Improved the example

    • Deprecated the old way the get the changeset via ListUpdateCallback.

    Open source →
  11. 1.0.0-alpha 21 May 2020 pre-release

    Nothing published for this version

  12. 1.0.0-alpha+1 21 May 2020 pre-release

    Nothing published for this version

  13. 1.0.0-alpha+2 21 May 2020 pre-release

    Nothing published for this version

  14. 1.0.0-alpha+3 21 May 2020 pre-release

    Nothing published for this version

  15. 1.0.0-alpha+4 22 Jul 2020 pre-release

    Nothing published for this version

  16. 0.1.0 07 Feb 2020
    Release notes
    • Fix bug in move detection
    • Tighten up privacy of instance variables that were unnecessarily public
    • add tests
    Open source →
  17. 0.1.0+1 09 Feb 2020
    Release notes
    • more tests
    Open source →
  18. 0.0.7 02 Feb 2020
    Release notes

    Fix lint errors

    Open source →
  19. 0.0.6 02 Feb 2020
    Release notes

    Fix missing exports

    Open source →
  20. 0.0.5 02 Feb 2020
    Release notes

    Add support for custom list-like types

    Open source →
  21. 0.0.4 02 Feb 2020
    Release notes

    Add example

    Open source →
  22. 0.0.3 02 Feb 2020
    Release notes

    Update Package description

    Open source →
  23. 0.0.2 02 Feb 2020
    Release notes

    Dokumentation Fixes

    Open source →
  24. 0.0.1 02 Feb 2020

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive