# Changelog
## 0.2.1 - 2026-09-18
- Preserve oversized declarations in their original module instead of silently
omitting them from split output, including oversized `main` functions and
declarations inside recursively split modules.
- Preserve imports and module preambles needed by retained declarations.
- Keep `cfg`/`cfg_attr` inline modules braced and intact so same-named platform
implementations cannot overwrite one another in an extracted file.
- Exit non-zero when the line budget remains unmet, including module-wiring
overhead. Preserved output is still written for review. Scripts that previously
relied on exit 0 for incomplete splits must handle this failure status.
- Large conditional modules remain inline and may require manual extraction.
Existing conditional attributes on other declarations are not migrated.
Validation: 67 tests, including compilation of both conditional alternatives,
plus formatting and Clippy checks.