keepsorted 0.1.8

A tool for sorting blocks of lines in code files
Documentation
# Changelog

All notable changes to this project are documented here.\
This changelog follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## Unreleased

Adds quiet mode and skips binary files during recursive checks. Also drafts new documentation for contributors and AI models.

- feat: skip binary files during recursive traversal
- feat: `--check` now prints which files need sorting
- feat: silence "skipping binary file" warnings by default (removed `--quiet` flag)
- fix: correctly parse comments in `rust_derive` when string literals contain `//`
- fix: correctly parse comments in `Cargo.toml` when string literals contain `#`
- fix: correctly parse comments in Bazel files when string literals contain `#`
- fix: bash 3.2 compatibility in `utils/exit_codes.bash`
- fix: print stderr output when diff command fails
- docs: draft meta guidelines for AI and contributors

## v0.1.7 – 2025-07-27

Adds quiet mode and skips binary files during recursive checks. Improves documentation clarity.

- feat: skip binary files during recursive traversal
- feat: add `--quiet` flag to suppress warnings
- docs: clarify derive sorting feature in README
- docs: rename architecture doc to specs
- chore: update `.gitignore`

## v0.1.6 – 2025-07-26

Adds recursive traversal, new options, and better CI exit codes. Expands documentation and fixes CLI errors.

- feat: recursive directory traversal via `-r` / `--recursive`
- feat: add `--mode` and `--diff-command` options
- feat: add exit code `4` for failed diff checks
- fix: correct exit codes and usage errors
- docs: expand README and help text

## v0.1.5 – 2025-07-15

Adds `--check` mode for CI and pre-commit use. Improves crate documentation and updates README.

- feat: add `--check` mode to lint command
- docs: improve crate-level documentation
- docs: update README with badges

## v0.1.4 – 2025-07-14

Fixes Bazel file detection and improves comment support. Cleans up documentation and sorting logic.

- fix: correct Bazel file detection
- fix: support Lua-style `--` comments for ignore directives
- docs: fix link in the development guide
- docs: fix numbering in the publish guide
- chore: add license file
- chore: correct alphabetical sort function typo

## v0.1.3 – 2025-07-10

Adds Lua file support and improves interaction with Rust generics. Simplifies CI configuration.

- feat: add support for Lua files
- fix: improve `rust_derive` and generic sorting interaction
- chore: simplify workflow configuration

## v0.1.2 – 2025-06-03

Fixes multi-line array handling in `Cargo.toml`.

- fix: support multi-line arrays in `Cargo.toml` ([#34]https://github.com/maksym-arutyunyan/keepsorted/issues/34)

## v0.1.1 – 2024-10-01

Introduces experimental support for grouped Rust derive tokens.

- feat: (experimental) keep Rust derive tokens together (e.g., `Serialize`, `serde::Serialize`)

## v0.1.0 – 2024-09-12

Initial release with support for common config file types and experimental sorting features.

- feat: add generic keyword sorting
- feat: support Bazel files
- feat: support `Cargo.toml` files
- feat: (experimental) support `.gitignore` files
- feat: (experimental) support `CODEOWNERS` files
- feat: (experimental) sort Rust `#[derive(...)]` traits