flowmark 0.2.4

A Markdown auto-formatter for clean diffs and semantic line breaks
Documentation
# Contributing to flowmark

Thank you for your interest in contributing to flowmark!

## Prerequisites

- Rust 1.85+ (see `rust-version` in Cargo.toml for MSRV)
- cargo (comes with Rust)
- Python flowmark v0.6.4 — for cross-binary parity tests
  (`uv tool install flowmark==0.6.4`)
- Node.js 22+ and tryscript — for golden CLI tests (`npm install -g tryscript@latest`)

All test dependencies are required.
Tests fail loudly when a dependency is missing — there is no skip logic.
See
[Principle 6](repos/rust-porting-playbook/guidelines/porting-principles-and-antipatterns.md)
of the porting playbook.

## Building

```bash
cargo build --all-features
```

## Testing

```bash
cargo test --all-features
```

The full test suite (430 tests) includes unit tests, integration tests, D11 cross-binary
parity tests (requires Python flowmark), and tryscript golden tests (requires
tryscript).

## Linting

Before submitting a PR, run the full lint and format checks:

```bash
cargo fmt --check
cargo clippy --all-targets --all-features
```

The project uses pedantic clippy lints and denies `unsafe_code` and `unwrap_used`.

## Pull Request Guidelines

- Run the full test suite and linting locally before submitting.
- Keep PRs focused on a single change.
- Write clear commit messages following
  [Conventional Commits]https://www.conventionalcommits.org/ format.

## Releasing

See [docs/publishing.md](docs/publishing.md) for the release process.