refactor: migrate to oxlint, oxfmt#455
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request undertakes a significant refactoring of the project's development tooling by replacing Biome with OXLint and OXFmt. This migration streamlines the linting and formatting processes, providing a more efficient and potentially more performant code quality pipeline. The changes span across configuration files, package scripts, and minor code adjustments to align with the new toolset, enhancing the overall developer workflow. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Changelog
Ignored Files
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
이 PR은 린팅 및 포매팅 도구를 Biome에서 oxlint와 oxfmt로 마이그레이션하는 리팩터링 작업을 포함하고 있습니다. 전반적으로 설정 파일 추가, package.json 스크립트 수정, 그리고 새로운 포매터에 따른 코드 스타일 변경이 대부분을 차지합니다. 몇 가지 설정상의 잠재적인 문제점과 성능에 영향을 줄 수 있는 부분을 발견하여 코멘트를 남겼습니다. 특히, 접근성(a11y) 관련 린트 규칙이 비활성화된 부분은 중요한 문제이므로 확인이 필요해 보입니다.
Note: Security Review did not run due to the size of the PR.
| "jsx-a11y/button-has-type": "off", | ||
| "jsx-a11y/click-events-have-key-events": "off", | ||
| "jsx-a11y/label-has-associated-control": "off", | ||
| "jsx-a11y/alt-text": "off" |
| "sortTailwindcss": { | ||
| "stylesheet": "./apps/spectator/src/styles/globals.css", | ||
| "functions": ["clsx", "cn"], | ||
| "preserveWhitespace": true | ||
| }, |
| {days.map((day) => { | ||
| const isSelected = day === selectedDay; | ||
| const hasGame = day !== null && gameDates.includes(day); | ||
| return ( | ||
| <div key={d ? `date-${year}-${month}-${d}` : `empty-${i}`} className="h-10"> | ||
| {d ? ( | ||
| <div | ||
| key={day ? `date-${year}-${month}-${day}` : `empty-${new Date().getTime()}`} | ||
| className="h-10" | ||
| > |
There was a problem hiding this comment.
map 함수 내에서 key 값으로 new Date().getTime()을 사용하는 것은 좋지 않습니다. 렌더링할 때마다 새로운 키가 생성되어 React가 컴포넌트를 새로 마운트하게 되므로, 성능 저하 및 상태 유실의 원인이 될 수 있습니다. 안정적인 key를 사용해야 합니다. 빈 셀의 경우 map의 index를 사용하는 것이 더 나은 방법입니다.
| {days.map((day) => { | |
| const isSelected = day === selectedDay; | |
| const hasGame = day !== null && gameDates.includes(day); | |
| return ( | |
| <div key={d ? `date-${year}-${month}-${d}` : `empty-${i}`} className="h-10"> | |
| {d ? ( | |
| <div | |
| key={day ? `date-${year}-${month}-${day}` : `empty-${new Date().getTime()}`} | |
| className="h-10" | |
| > | |
| {days.map((day, index) => { | |
| const isSelected = day === selectedDay; | |
| const hasGame = day !== null && gameDates.includes(day); | |
| return ( | |
| <div | |
| key={day ? `date-${year}-${month}-${day}` : `empty-${index}`} | |
| className="h-10" | |
| > |
✅ 작업 내용
♾️ 기타