# What changed in insta

> 18 changes in insta 1 from its official release notes, upgrade guides and advisories: 1 breaking, 4 new APIs and options. Each one cited. Sources checked 2026-11-12. HTML: https://unstale.sh/cargo/insta/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## insta 1

### Breaking changes

- The Comparator trait now requires Send + Sync bounds, consistent with Arc-based storage. (1.47.2) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.47.2)

### New APIs and options

- Snapshot names can now accept Option<&OsStr>, such as Path::file_name(), without explicit string conversion. (1.49.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.49.0)
- Adds --nextest-profile to select the nextest profile. (1.48.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.48.0)
- Opt in to YAML literal blocks for multiline strings in snapshot metadata fields such as description and expression. (1.48.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.48.0)
- Adds a setting that removes ANSI escape sequences from snapshot content before comparison; requires the filters feature. (1.48.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.48.0)

### Behavior and default changes

- The --snapshot filter accepts partial paths by matching any trailing path suffix, so a bare snapshot filename works. (1.48.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.48.0)
- Explicit snapshot handling options such as --accept now take precedence over CI=true, so users can override the usual --check behavior. (1.48.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.48.0)

### Tooling

- Prebuilt cargo-insta binaries are now available for ARM64 Linux (aarch64-unknown-linux-gnu). (1.49.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.49.0)
- Snapshot mismatch hints for file snapshots now mention INSTA_UPDATE=always. (1.49.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.49.0)

### Fixes and other changes

- This command no longer fails with a doctest target-selection error; like cargo test --all-targets, it no longer runs doctests. (1.49.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.49.0)
- Maps keyed by unit enum variants serialize keys using the serialized variant name, including serde renames. (1.49.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.49.0)
- Trailing semicolons are removed from serialization macro bodies to avoid compiler warnings when used in expression position. (1.49.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.49.0)
- Accepting a binary snapshot no longer fails when its data file is missing, such as when it is gitignored and not committed. (1.48.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.48.0)
- On Windows, the command no longer prints unusable \\?\-prefixed paths. (1.48.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.48.0)
- The --profile option now translates to --cargo-profile for the nextest runner instead of being forwarded as the nextest profile. (1.48.0) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.48.0)
- Restores Send + Sync on Redaction, reversing the semver-breaking change from 1.47.0. (1.47.2) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.47.2)
- Restores Send + Sync on Redactions, reversing the semver-breaking change from 1.47.0. (1.47.2) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.47.2)
- Restores Send + Sync on Settings, reversing the semver-breaking change from 1.47.0. (1.47.2) — [release notes](https://github.com/mitsuhiko/insta/releases/tag/1.47.2)
