Releases: sbryngelson/ffmt
Releases · sbryngelson/ffmt
v0.3.4
v0.3.1
Add implicit none spacing: ensures one blank line before and after implicit none
v0.3.0
New features
- Format suppression —
! ffmt off/! ffmt onto skip formatting regions - EOL normalization —
end-of-line = "lf"(default),"crlf", or"preserve" - Relational operator modernization —
.eq.→==,.ne.→/=, etc. - Double-colon enforcement —
integer x→integer :: x - Multi-statement splitting —
x = 1; y = 2→ separate lines (opt-in) - Assignment alignment — align
=across consecutive assignments (opt-in) - Continuation
&alignment — align&at column limit (opt-in) - Use-statement reformatting — one import per line (opt-in)
--dump-config— print resolved configuration.ffmt.toml— hidden config file support
Improvements
- Toggle type — most options now accept
true,false, or"preserve" - Fuzz-discovered fixes — repeated
;;,!&!&,\rnormalization, blank line collapse - Early
\rnormalization — prevents idempotency issues with CRLF input
Documentation
- ReadTheDocs site with per-option examples
- Expanded README with feature summary
- CI: docs build, markdown lint, cargo fmt check
v0.2.8
Fix 2-space enforcement for single !< inline Doxygen comments
v0.2.7
2-space inline comments (S102), trailing semicolon removal (S081), string-aware print/write rewrapping
v0.2.6
Strip comment-only continuation lines (& ! ...) that cause Cray ftn-71 errors
v0.2.5
Strip trailing !& no-op continuation comments that cause Cray ftn strict-mode errors
v0.2.4
Fix Fypp #: directives inserting spurious blank lines in declaration regions
v0.2.3
Blank line normalization fixes: #else/#elif openers, #ifdef in declaration regions, Fypp continuation alignment
v0.2.2
Structural blank line formatting, comment rewrapping, use statement alignment, idempotency fixes