ANN: Similar, a modern diff library for Rust for all your diffing needs

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • similar

    A high level diffing library for rust based on diffs

  • In one of the first lines in the screenshot, you can see that one of the examples is basically a binary you can use as-is.

  • advisory-db

    Security advisory database for Rust crates published through crates.io

  • Since difference.rs is unmaintained (to the point where cargo-audit complains) and I could not find a good replacement for it, I started investing some time into building something I can use in a few places.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • treediff-rs

    Extract differences between arbitrary datastructures

  • Does this support higher level structures a la treediff? Would be great to use this for json patch and friends.

  • delta

    A syntax-highlighting pager for git, diff, and grep output

  • You also have delta for viewing git diffs.

  • rust

    Empowering everyone to build reliable and efficient software.

  • What’s called a “character” in this case will be a Unicode scalar value. Note that Unicode deliberately avoids the term “character” because it’s been used to mean so many different things, so you get the more precise terms “code point” and “scalar value” instead. (The difference between those two is that “scalar value” excludes the monstrosity that is the surrogate code points, which are an awful hack to support UTF-16 which should never have been invented. As is usual, precise technical terms like this get abused over time too, so that you’ll often see “codepoint” (the two words glommed) misused to refer to scalar values rather than code points.) Rust named its scalar value type “char” for familiarity’s sake, despite misgivings.

  • gitoxide

    An idiomatic, lean, fast & safe pure Rust implementation of Git

  • I wonder if this can be used by Gitoxide. I've wanted to try to contribute to the missing blame functionality, but that requires diffing abilities.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts