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
Monorepo Phase 2 #7434
Monorepo Phase 2 #7434
Conversation
i. @handsontable/angular ii. @handsontable/react iii. @handsontable/vue to the './wrappers/' subdirectory, - Configure npm workspaces for the wrappers, - Add a link to the root directory under './packages/handsontable', because of an issue with generating 'package-lock.json', - Add scripts for: i. running commands on specific projects ii. running commands for all projects iii. recognizing the context for running tests only for specific projects - Add the config for Codesandbox CI,� - Update some of the dependencies, to be compatible with npm@7's auto-installing peerDependencies, - Modify and/or create issue templates, PR templates and other content, - Update urls to the wrappers in READMEs, - Add (and temporarily disable) new eslint options. (#7380)
- Modify the packages' dependencies to fix npm audit errors. #7380
- Add a first version of the release-scheduling script (will be extended with bundle verification etc) #7380
- Unify the typescript version across the packages�. - Clean up some of the unused dependencies. - Bump some versions to be compatible with the typescript version. - Bump the angular version to 9 (along with some of the dependencies) in the angular wrapper + disable Ivy for compatibility.
- Add npm scripts for freezing, releasing and publishing + unify their naming between the packages. - Rename the scripts from camelCase to kebab-case. - Modify the freezing script with the commit/push functionality, along with some fixes. - Add a release script. - Modify the angular wrapper's version static to make it work with older TS versions, after changing its' dependency from Angular 8 to Angular 9. - Modify the GH actions config to use Node 15 instead of 12.
…in the future) - Remove the wrapper entries from the codesandbox config (temporarily) - Add a safenet to the release script to prevent accidental release pushes to master (the --push argument) - Add a script to re-link local packages in node_modules (needed after the modularization merge) - Add a eslint-disabling comment to one of the files (bug in the eslint-plugin-import package)
… script exists). - Simplify some scripts. - Add the changelog entry. - Correct the codesandbox ci script, to (temporarily) build only handsontable.
This pull request is automatically built and testable in CodeSandbox. To see build info of the built libraries, click here or the icon next to each commit SHA. Latest deployment of this branch, based on commit 4fcbf3e:
|
- Add a forced handsontable build in the targeted test script. - Add an error message in the node_modules linking script.
- Refresh package-lock. - Fix the delegate-command script.
Ok, I can continue my insight, and here are my thoughts:
|
- Get rid of all eslint-disabling comments in favor of a eslint exceptions for the 'scripts' directory. - Correct the targeted tests script to accept commits with no projects changed. - Extend yargs config for the targeted tests script.
Co-authored-by: Krzysztof Budnik <571316+budnix@users.noreply.github.com>
- Apply the post-CR suggestions.
…ontable/handsontable into feature/issue-7380-phase-2
Co-authored-by: Wojciech Czerniak <wojciech.czerniak@gmail.com>
…ontable/handsontable into feature/issue-7380-phase-2
- Modify the spawnProcess helper.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After the long journey, I'm happy to accept the changes :) Good job 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🏆
Nicely done @jansiegel |
Context
Additional scripts and functionalities for the monorepo.
Known issues:
npm@<7
, which makes it impossible to utilize thenpm workspaces
functionality. It has been temporarily configured to build onlyhandsontable
.@handsontable/angular
package displays warnings during the build. It's caused by using Node 14+ and thestylus
dependency of Angular 9. The warnings were fixed in the latest version ofstylus
, but it would require us to update to Angular 10.Related issue(s):
Checklist: