chore: fix CI Node-20 deprecation + clear all lint debt#1
Conversation
CI: - Bump actions/checkout and actions/setup-node v4 -> v5 (Node-20 actions are deprecated; GitHub forces Node-24 on 2026-06-16). Lint — root cause of the 263 warnings was an ESLint/Prettier conflict (vue/vue3-recommended formatting rules vs Prettier wrapping, fighting each other): - Add eslint-config-prettier and append 'prettier' (last) to the extends chain, which disables the conflicting formatting rules. lint:check now reports 0/0. Substantive lint fixes: - Remove unused `thumbnailRefs` destructure in GallerySection.vue + GalleryView.vue. - Remove unused `ext` in vite.config.js asset namer. - Document the BlogView v-html as safe (post.safeBody is DOMPurify-sanitized) with a scoped eslint-disable instead of changing correct code. - Replace the placeholder `true===true` HelloWorld test with real Icon.vue specs (8 tests), which also fixes its unused `mount` import. Verified: lint:check 0, format:check 0, 8/8 tests, build all pass. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
Caution Review failedPull request was closed or merged during review 📝 WalkthroughWalkthroughThis PR integrates Prettier with ESLint configuration, refactors lightbox ref bindings in gallery components to use a consolidated ChangesPrettier Integration & Code Quality Updates
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
CI: - Bump actions/checkout and actions/setup-node v4 -> v5 (Node-20 actions are deprecated; GitHub forces Node-24 on 2026-06-16). Lint — root cause of the 263 warnings was an ESLint/Prettier conflict (vue/vue3-recommended formatting rules vs Prettier wrapping, fighting each other): - Add eslint-config-prettier and append 'prettier' (last) to the extends chain, which disables the conflicting formatting rules. lint:check now reports 0/0. Substantive lint fixes: - Remove unused `thumbnailRefs` destructure in GallerySection.vue + GalleryView.vue. - Remove unused `ext` in vite.config.js asset namer. - Document the BlogView v-html as safe (post.safeBody is DOMPurify-sanitized) with a scoped eslint-disable instead of changing correct code. - Replace the placeholder `true===true` HelloWorld test with real Icon.vue specs (8 tests), which also fixes its unused `mount` import. Verified: lint:check 0, format:check 0, 8/8 tests, build all pass.
Cleans up the remaining technical debt flagged after the GitHub-stats fix.
CI
actions/checkoutandactions/setup-nodev4 → v5. Node-20 actions are deprecated; GitHub forces Node-24 on 2026-06-16.Lint — 263 warnings → 0
Root cause was an ESLint ↔ Prettier conflict:
plugin:vue/vue3-recommendedenables strict formatting rules (vue/max-attributes-per-line, etc.) that fight Prettier's wrapping, so--fixcould never win.eslint-config-prettierand appended'prettier'(last) to the extends chain, disabling the conflicting formatting rules.lint:checknow reports 0/0 cleanly.Substantive fixes
thumbnailRefsdestructure (GallerySection.vue, GalleryView.vue)extin vite.config.jsv-htmlas safe (post.safeBodyis DOMPurify-sanitized) with a scopedeslint-disablerather than altering correct codetrue===truetest with 8 real Icon.vue specs (also fixes its unusedmountimport)Verification
lint:check✅ 0 ·format:check✅ 0 · tests ✅ 8/8 ·build✅No runtime/visual changes — this is tooling + cleanup only.
🤖 Generated with Claude Code
Summary by CodeRabbit
Tests
Chores
Style