-
Notifications
You must be signed in to change notification settings - Fork 663
chore(devextreme): create the localization gulp task alternative based on nx #32047
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?
chore(devextreme): create the localization gulp task alternative based on nx #32047
Conversation
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 creates a new Nx-based localization executor to replace the existing Gulp-based localization task, modernizing the build system infrastructure. The implementation generates localization message files and TypeScript CLDR data modules, and enhances the add-license-headers executor with custom template support.
Key Changes
- New localization executor that generates message files and CLDR TypeScript modules using lodash templates
- Enhanced add-license-headers executor with custom template support, EULA URL configuration, and prepend-after-license functionality
- Integration of localization tasks into devextreme project.json with proper Nx caching and dependency management
Reviewed changes
Copilot reviewed 12 out of 13 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| pnpm-lock.yaml | Adds lodash and @types/lodash dependencies; includes minor formatting change to Q package deprecation message |
| packages/nx-infra-plugin/src/executors/localization/schema.ts | Defines TypeScript interface for localization executor options |
| packages/nx-infra-plugin/src/executors/localization/schema.json | JSON schema for localization executor with configurable paths and skip flags |
| packages/nx-infra-plugin/src/executors/localization/executor.ts | Core implementation that generates localization messages and CLDR modules, replacing Gulp-based approach |
| packages/nx-infra-plugin/src/executors/localization/executor.e2e.spec.ts | E2E tests verifying message file and CLDR module generation |
| packages/nx-infra-plugin/src/executors/add-license-headers/schema.ts | Extends schema with custom template, EULA URL, and prepend options |
| packages/nx-infra-plugin/src/executors/add-license-headers/schema.json | Adds JSON schema definitions for new license header features |
| packages/nx-infra-plugin/src/executors/add-license-headers/executor.ts | Refactors and extends license header executor with custom template support using lodash |
| packages/nx-infra-plugin/src/executors/add-license-headers/executor.e2e.spec.ts | Adds test for custom license template and consolidates header validation tests |
| packages/nx-infra-plugin/package.json | Adds lodash and @types/lodash as dependencies |
| packages/nx-infra-plugin/executors.json | Registers new localization executor |
| packages/devextreme/project.json | Defines new localization build targets (generate, headers, composite) with Nx caching |
| nx.json | Adds named inputs for devextreme sources and build configuration |
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
cbb0822 to
cbbb0aa
Compare
cbbb0aa to
2e1c102
Compare
2e1c102 to
94fe0f0
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 14 out of 15 changed files in this pull request and generated 3 comments.
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
tools/scripts/build-all.ts
Outdated
| sh.exec('pnpm run all:pack-and-copy'); | ||
|
|
||
| sh.exec('pnpx nx pack devextreme-react', { silent: true }); | ||
| sh.exec('pnpx nx pack devextreme-react', { silent: false }); |
Copilot
AI
Jan 7, 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 change from silent: true to silent: false appears to be a debug leftover. This change should be reverted to maintain consistency with the other pack commands on lines 82 and 83, which keep silent: true.
| sh.exec('pnpx nx pack devextreme-react', { silent: false }); | |
| sh.exec('pnpx nx pack devextreme-react', { silent: true }); |
| You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other. | ||
|
|
||
| (For a CapTP with native promises, see @endo/eventual-send and @endo/captp) |
Copilot
AI
Jan 7, 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 removal of the blank line in the deprecated message for the 'q' package is a whitespace-only change that doesn't appear related to the purpose of this PR. This change should be reverted to avoid unrelated modifications to the lockfile.
94fe0f0 to
e07f880
Compare
No description provided.