Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Changelog
All notable changes to this project will be documented in this file.
Only document user-facing changes (features, bug fixes, performance improvements, API changes, etc.)
Add new entries at the top of the appropriate section (most recent first)
[0.1.0] - 2026-02-13
Windtrap is an all-in-one OCaml testing framework that unifies unit tests, property-based tests, snapshot tests, and expect tests under a single API. Instead of juggling multiple testing libraries, Windtrap gives you one cohesive package with a PPX for inline expect tests (ppx_windtrap).
Unit tests with combinators, tags, skip, brackets, and timeouts.
Property-based testing with configurable seeds and shrinking.
Snapshot testing with automatic file management and diffing.
Inline expect tests via ppx_windtrap with automatic correction.
CLI test runner with filtering, verbosity, and color support.
Test coverage reporting with bisect_ppx integration.
Acknowledgments
Windtrap builds on ideas and code from several OCaml projects:
Alcotest by Thomas Gazagnaire — test structure and runner design
Craig Ferguson's Alcotest PRs (#294, #247) — API design, subcomponent diffing, and Levenshtein distance (ISC)
QCheck2 by Simon Cruanes et al. — generator design and integrated shrinking (BSD 2-Clause)