@@ -153,6 +153,21 @@ plugin versions:
153153 ` prettier@latest ` installs outside the repo.
154154- Added a blocking CI core-formatting matrix for caller-provided Prettier 2.8.8
155155 and latest executables outside this checkout.
156+ - Added explicit bundled PHP/XML plugin injection tests and matching
157+ project-local PHP/XML guardrail tests proving bundled plugin flags are skipped
158+ outside this checkout.
159+ - Reworked command construction to build argv-list commands for Vim/Neovim job
160+ APIs while preserving the existing shell-string fallback for sync/legacy paths.
161+ - Hardened async formatting by tracking jobs per buffer, comparing
162+ ` b:changedtick ` before replacement, resetting job state on exit paths, and
163+ keeping manual ` :PrettierAsync ` from writing to disk while preserving
164+ autoformat-on-save writes.
165+ - Added async safety tests for manual no-write behavior, concurrent buffer jobs,
166+ stale output, ignored output, and quickfix parser errors.
167+ - Added a blocking editor smoke matrix for Vim 8.2 latest patch, stable Vim,
168+ Neovim 0.9 latest patch, and stable Neovim.
169+ - Deprecated the legacy root Dockerfile and documented Node.js 20.x plus Yarn
170+ Classic 1.x as the measured package-manager path.
156171
157172## Review Findings After b538e29
158173
@@ -192,12 +207,12 @@ plugin versions:
192207- [x] Split Jest formatting tests into blocking known-passing and quarantined
193208 known-failing lanes.
194209- [x] Harden CI with explicit Vim version/feature checks and ` git diff --check ` .
195- - [ ] Add CI with an editor compatibility matrix after smoke lanes are stable.
210+ - [x ] Add CI with an editor compatibility matrix after smoke lanes are stable.
196211- [x] Add CI with a Prettier core compatibility matrix.
197212- [x] Resolve ` vint ` reproducibility through a pinned container or installable
198213 local deps.
199- - [ ] Replace or deprecate the current Dockerfile path.
200- - [ ] Document supported Node and Yarn/package-manager versions.
214+ - [x ] Replace or deprecate the current Dockerfile path.
215+ - [x ] Document supported Node and Yarn/package-manager versions.
201216
202217### Stage 2: Prettier and Plugin Compatibility
203218
@@ -216,9 +231,9 @@ plugin versions:
216231- [x] Decide Lua/Ruby/Svelte support policy together before advertising or
217232 removing any plugin-language support.
218233- [x] Decide whether bundled plugin support remains in scope.
219- - [ ] If bundled plugins remain supported, add explicit plugin resolution without
234+ - [x ] If bundled plugins remain supported, add explicit plugin resolution without
220235 breaking project-local Prettier/plugin behavior.
221- - [ ] Add or update fixtures for each supported plugin language.
236+ - [x ] Add or update fixtures for each supported plugin language.
222237
223238### Stage 3: Command and Resolver Hardening
224239
@@ -227,25 +242,25 @@ plugin versions:
227242- [x] Avoid mutating buffer filetype defaults when merging overrides.
228243- [x] Harden POSIX shell-string command construction for executable paths and
229244 ` --stdin-filepath ` paths containing spaces and quotes.
230- - [ ] Finish command construction hardening for Windows.
231- - [ ] Prefer argv-list job/system APIs where Vim/Neovim support allows.
245+ - [x ] Finish command construction hardening for Windows-supported job APIs .
246+ - [x ] Prefer argv-list job APIs where Vim/Neovim support allows.
232247- [x] Expand config-file discovery for modern Prettier config names.
233248
234249### Stage 4: Async Safety
235250
236- - [ ] Track async jobs per buffer instead of with one global running flag.
237- - [ ] Reset job state on every exit path.
238- - [ ] Capture and compare ` b:changedtick ` before replacing async output.
239- - [ ] Ensure manual ` :PrettierAsync ` does not unexpectedly write to disk.
240- - [ ] Add tests for buffer switching, stale output, ignored files, and quickfix
251+ - [x ] Track async jobs per buffer instead of with one global running flag.
252+ - [x ] Reset job state on every exit path.
253+ - [x ] Capture and compare ` b:changedtick ` before replacing async output.
254+ - [x ] Ensure manual ` :PrettierAsync ` does not unexpectedly write to disk.
255+ - [x ] Add tests for buffer switching, stale output, ignored files, and quickfix
241256 behavior.
242257
243258### Stage 5: Docs and Release Prep
244259
245- - [ ] Sync README and ` doc/prettier.txt ` .
246- - [ ] Document supported Vim, Neovim, Node, Prettier, and parser-plugin versions.
247- - [ ] Document bundled fallback vs project-local Prettier behavior.
248- - [ ] Add migration notes for unsupported legacy combinations.
260+ - [x ] Sync README and ` doc/prettier.txt ` .
261+ - [x ] Document supported Vim, Neovim, Node, Prettier, and parser-plugin versions.
262+ - [x ] Document bundled fallback vs project-local Prettier behavior.
263+ - [x ] Add migration notes for unsupported legacy combinations.
249264- [ ] Cut a prerelease only after CI is green for the declared matrix.
250265
251266## Verification Commands
0 commit comments