-
-
Notifications
You must be signed in to change notification settings - Fork 638
Improve the move #2078
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve the move #2078
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the ✨ Finishing touches🧪 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 |
PR Review: Improve the moveI've reviewed this PR which modernizes the react-on-rails-pro-node-renderer package structure. Overall it's a solid refactor with excellent code quality improvements, but there are several critical issues that must be addressed before merging. Critical Issues (MUST FIX)
Important Issues (SHOULD FIX)
Strengths
Action ItemsBefore merging:
The code quality changes are excellent. Please address the critical testing requirement and Jest configuration bug before merging. |
PR Review: Improve the moveThis PR successfully consolidates the react-on-rails-pro-node-renderer package structure, removing redundancy and improving maintainability. Overall, this is a solid refactoring with good attention to detail. Strengths
Critical Issues to Address1. Build Script Testing Required (CRITICAL per CLAUDE.md)From CLAUDE.md and testing-build-scripts.md, you MUST test build scripts manually before merging to prevent silent failures like the 7-week yalc publish bug documented in the testing guide. Required tests:
2. TypeScript Configuration ConcernsIssue: The package-level tsconfig.json was deleted, and build scripts now reference src/tsconfig.json. I don't see src/tsconfig.json in the diff. Did this file already exist, or does it need to be created? If it doesn't exist, the build will fail. Recommendation: Verify this file exists or update build scripts to use the root tsconfig with overrides. 3. Import Path Breaking ChangesThe test imports changed to use relative paths with eslint-disable-next-line import/no-relative-packages. Using lib/ directory imports couples tests to build artifacts. Tests will fail if the package isn't built first. The eslint-disable comments suggest this violates project conventions. Consider if these should use source imports instead. 4. Dependency Resolution Workaroundspackage.json adds resolutions for sentry-testkit dependencies using empty-npm-package. Why are these needed? Consider adding a comment explaining this workaround or documenting it in the changelog. Additional Observations
Testing Checklist (Per CLAUDE.md)Before merging:
Overall AssessmentThis is quality refactoring work with good attention to monorepo structure and modern package practices. The main risks are:
Once the critical build testing is completed and the TypeScript config is verified, this should be safe to merge. Recommendation: Request changes to verify build scripts work and TypeScript config exists. |
Code Review: PR #2078 - Improve the moveThis PR makes significant improvements to the monorepo structure by consolidating the node-renderer package configuration. Overall, the changes are well-structured and improve maintainability. Here's my detailed feedback: ✅ Strengths
|
b5d4923
into
justin808/monorepo-completion
This pull request makes several significant updates to the
react-on-rails-pro-node-rendererpackage and its workspace configuration, focusing on improving package exports, dependency management, build/test scripts, and code quality tooling. The changes also remove obsolete files and update references to streamline the development and build process.Package structure and configuration:
packages/react-on-rails-pro-node-renderer/package.json: removes deprecated fields, adds anexportsmap for proper subpath exports (includingintegrations), sets upresolutionsfor problematic dependencies, updates scripts to usenpsand Yarn consistently, and introduces Jest and Husky configuration directly in the package. [1] [2]react_on_rails_pro/package.jsonand the package-specifictsconfig.json, consolidating configuration and eliminating redundancy. [1] [2]Dependency and workspace management:
knip.tsto better reflect actual usage: removes unnecessary test and runtime dependencies, refines entry points (including newintegrationsglob), and improves ignore/include logic for dependencies and files. Also enablesignoreExportsUsedInFilefor more accurate unused export checks. [1] [2] [3] [4] [5].prettierignoreand workspace ignore files to reflect new test fixture locations and remove unnecessary exclusions. [1] [2]Build and test scripts:
yarn runin root and workflow scripts for consistency and reliability in all environments. [1] [2]package-scripts.ymlbuild check to support multiple output files, improving robustness for different build targets.Code and import improvements:
import ... with { type: 'json' }for JSON imports, reverting to standard imports for better compatibility. [1] [2]Notifier,ErrorNotifier,MessageNotifier) fromerrorReporter.jsfor integrations.@internaltag to theresetVMexport for clarity in test usage.Dependencies and peer dependencies:
package.jsonfiles, including the addition of@jest/globalsand development dependencies for testing and linting. [1] [2]These changes collectively modernize the package's structure, improve maintainability, and ensure more reliable builds and tests across the monorepo.