-
Notifications
You must be signed in to change notification settings - Fork 664
Feat/migrate devextreme to nx part 2 #32200
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
base: 26_1
Are you sure you want to change the base?
Feat/migrate devextreme to nx part 2 #32200
Conversation
d06eb22 to
aa3431d
Compare
0c4f0e9 to
de4bf99
Compare
de4bf99 to
1de99ac
Compare
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.
Pull request overview
This PR continues the Nx migration for DevExtreme by removing the dev mode flag from build scripts, introducing new build workflow orchestration through a dedicated workflows package, and migrating the localization build process to a new Nx executor. The changes simplify the build system by eliminating conditional dev/prod logic in favor of distinct Nx targets and configurations.
Changes:
- Removed dev mode flag from
build-all.tsscript, always running full production builds - Created new
workflowspackage withall:build-devandall:build-testingtargets for build orchestration - Migrated localization generation from Gulp tasks to a new Nx executor with comprehensive E2E tests
- Enhanced
copy-filesandadd-license-headersexecutors with glob pattern and custom template support - Updated CI workflows to use Nx configurations instead of environment variables
- Changed executor logging from
logger.infotologger.verbosefor cleaner output
Reviewed changes
Copilot reviewed 39 out of 40 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/scripts/build-all.ts | Removed yargs dependency and dev mode conditional logic, always runs production build steps |
| package.json | Changed all:build-dev to use new workflows target instead of passing --dev flag |
| packages/workflows/project.json | New package defining all:build-dev and all:build-testing workflow targets |
| packages/nx-infra-plugin/src/executors/localization/* | New localization executor replacing Gulp tasks with E2E tests |
| packages/nx-infra-plugin/src/executors/copy-files/* | Enhanced with glob pattern support and additional tests |
| packages/nx-infra-plugin/src/executors/add-license-headers/* | Enhanced with custom template support and refactored tests |
| packages/nx-infra-plugin/src/executors/*/executor.ts | Changed logging from logger.info to logger.verbose for cleaner console output |
| packages/nx-infra-plugin/package.json | Added lodash and @types/lodash dependencies, changed fs-extra to exact version |
| packages/devextreme/project.json | Added granular build targets, removed npm script-based build, added testing configuration |
| packages/devextreme/package.json | Removed build script (now handled by Nx target) |
| packages/devextreme/build/gulp/localization.js | Replaced complex Gulp tasks with shell command calling Nx executor |
| packages/devextreme-angular/project.json | Added testing configuration and updated dependsOn with params forwarding |
| .github/workflows/*.yml | Updated to use all:build-testing workflow and testing configurations |
| pnpm-lock.yaml | Various minor dependency version updates |
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
1de99ac to
ff5e0d5
Compare
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.
Pull request overview
Copilot reviewed 39 out of 40 changed files in this pull request and generated 2 comments.
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
| "executor": "nx:run-commands", | ||
| "dependsOn": ["^build"], | ||
| "dependsOn": [ | ||
| { |
Copilot
AI
Jan 16, 2026
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.
There's an incorrect indentation on line 171. The opening brace should be aligned with the array bracket on line 170. This makes the JSON structure invalid and will cause parsing errors.
| { | |
| { |
| }, | ||
| "dependencies": { | ||
| "fs-extra": "^11.2.0", | ||
| "fs-extra": "11.2.0", |
Copilot
AI
Jan 16, 2026
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.
The fs-extra version specifier was changed from a range ^11.2.0 to an exact version 11.2.0. While this provides more deterministic builds, it prevents automatic patch version updates that might include security fixes. Consider using the tilde ~ specifier instead (e.g., ~11.2.0) to allow patch updates while maintaining the same minor version.
| "fs-extra": "11.2.0", | |
| "fs-extra": "~11.2.0", |
This PR should be completed after #32047.