v0.3.0
What's Changed
New Features 馃帀
- feat(setup): support custom Git hooks directories by @chenjiahan in #93
- feat(fmt): establish formatter runtime boundary by @chenjiahan in #109
- feat(fmt): add define.fmt config registration by @chenjiahan in #110
- feat(fmt): normalize formatter config by @chenjiahan in #111
- feat(fmt): resolve formatter config by @chenjiahan in #112
- feat(fmt): resolve formatter overrides by @chenjiahan in #114
- feat(fmt): add single-file formatting core by @chenjiahan in #115
- feat(fmt): add ignore patterns matcher by @chenjiahan in #116
- feat(fmt): add file path discovery by @chenjiahan in #117
- feat(fmt): respect gitignore files by @chenjiahan in #118
- feat(fmt): resolve format file requests by @chenjiahan in #119
- feat(fmt): add serial runner by @chenjiahan in #121
- feat(fmt): add CLI argument parser by @chenjiahan in #122
- feat(fmt): add rs fmt command by @chenjiahan in #124
- feat(cli): add format alias for fmt by @chenjiahan in #126
- feat(fmt): enable parallel formatting by @chenjiahan in #132
- feat(fmt): support custom parallel worker count by @chenjiahan in #133
- feat(fmt): add project-root plugin resolver by @chenjiahan in #134
- feat(fmt): support Prettier plugins by @chenjiahan in #135
- feat: add Rstack configuration guide link by @chenjiahan in #137
- feat(fmt): enable Yuku by default by @chenjiahan in #138
- feat(fmt): support package.json sorting by @chenjiahan in #139
Performance 馃殌
- perf(setup): reduce Git subprocess overhead by @chenjiahan in #105
- perf(setup): speed up repeated setup by @chenjiahan in #106
- perf(fmt): disable fsync for atomic writes by @chenjiahan in #141
- perf(fmt): use synchronous file I/O in workers by @chenjiahan in #142
- perf(fmt): infer parsers in workers by @chenjiahan in #143
Bug Fixes 馃悶
- fix(setup): validate Git hooks directory by @chenjiahan in #104
- fix(setup): reject parent hooks directories by @chenjiahan in #107
Refactor 馃敤
- refactor(fmt): prepare runner for multiple execution paths by @chenjiahan in #131
- refactor(fmt): always use workers by @chenjiahan in #140
Document 馃摉
- docs: document rs setup Git hooks by @chenjiahan in #96
- docs: link staged and setup guides by @chenjiahan in #97
- docs: add setup to CLI best practices by @chenjiahan in #98
- docs: add Git hook migration guide by @chenjiahan in #100
- docs: use Prettier for rs fmt by @chenjiahan in #108
- docs: add Prettier to credits by @chenjiahan in #120
- docs: use Markdown for skill references by @chenjiahan in #123
Other Changes
- test: reduce setup test overhead by @chenjiahan in #94
- test: parallelize setup cases by @chenjiahan in #95
- chore(deps): move load-config to rstack package by @chenjiahan in #99
- chore: add Husky third-party notice by @chenjiahan in #101
- chore(ci): add heading case check by @chenjiahan in #103
- chore: expand third-party notices by @chenjiahan in #102
- chore: replace Oxfmt with Prettier by @chenjiahan in #113
- chore: migrate repository formatting to rs fmt by @chenjiahan in #125
- test(staged): cover rs fmt integration by @chenjiahan in #127
- chore(deps): update dependency tiny-readdir to v3 by @renovate[bot] in #129
- chore(deps): update all non-major dependencies by @renovate[bot] in #128
- test: simplify temporary test fixtures by @chenjiahan in #130
- chore(fmt): enable packagejson plugin by @chenjiahan in #136
- release: v0.3.0 by @chenjiahan in #144
Full Changelog: v0.2.0...v0.3.0