-
Notifications
You must be signed in to change notification settings - Fork 665
chore(devextreme): migrate transpile gulp task to nx, part 1 #32309
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
Open
chaosmirage
wants to merge
24
commits into
DevExpress:26_1
Choose a base branch
from
chaosmirage:feat/migrate-devextreme-to-nx-part-3
base: 26_1
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
chore(devextreme): migrate transpile gulp task to nx, part 1 #32309
chaosmirage
wants to merge
24
commits into
DevExpress:26_1
from
chaosmirage:feat/migrate-devextreme-to-nx-part-3
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
79012d6 to
8290b80
Compare
8290b80 to
900aa50
Compare
Contributor
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
Migrates key DevExtreme build steps from Gulp scripts to Nx targets/executors (part 1), introducing a reusable “workflows” Nx project and updating CI to use Nx configurations.
Changes:
- Added new custom Nx executors (localization generation, Babel transform, file concatenation) and expanded existing infra executors.
- Reworked
devextremeNx targets to model localization/transpile/bundle/npm steps and wired Gulp tasks to call Nx targets. - Updated repo build/test entrypoints and CI workflows to run Nx targets/configurations for testing/dev builds.
Reviewed changes
Copilot reviewed 53 out of 54 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/scripts/build-all.ts | Removes --dev branching and always runs production-oriented Nx build/pack steps. |
| packages/workflows/project.json | Adds a new Nx “workflows” project to orchestrate common build targets. |
| packages/nx-infra-plugin/src/utils/test-utils.ts | Adds findWorkspaceRoot() for e2e tests. |
| packages/nx-infra-plugin/src/executors/prepare-submodules/executor.ts | Downgrades log verbosity to verbose. |
| packages/nx-infra-plugin/src/executors/prepare-package-json/executor.ts | Downgrades log verbosity to verbose. |
| packages/nx-infra-plugin/src/executors/pack-npm/executor.ts | Downgrades log verbosity to verbose. |
| packages/nx-infra-plugin/src/executors/localization/schema.ts | Defines options interface for new localization executor. |
| packages/nx-infra-plugin/src/executors/localization/schema.json | Adds schema for localization executor options. |
| packages/nx-infra-plugin/src/executors/localization/executor.ts | Introduces Nx localization generator (messages + CLDR TS modules + optional lint). |
| packages/nx-infra-plugin/src/executors/localization/executor.e2e.spec.ts | Adds e2e coverage for localization executor behavior/outputs. |
| packages/nx-infra-plugin/src/executors/karma-multi-env/executor.ts | Downgrades most logs to verbose. |
| packages/nx-infra-plugin/src/executors/generate-components/executor.ts | Downgrades generator logs to verbose. |
| packages/nx-infra-plugin/src/executors/generate-components/angular-generator.ts | Downgrades generator logs to verbose. |
| packages/nx-infra-plugin/src/executors/generate-component-names/executor.ts | Downgrades generator logs to verbose. |
| packages/nx-infra-plugin/src/executors/copy-files/schema.json | Improves schema metadata and clarifies from/to semantics. |
| packages/nx-infra-plugin/src/executors/copy-files/executor.ts | Adds glob support + refactors copy logic (dir/file/glob). |
| packages/nx-infra-plugin/src/executors/copy-files/executor.e2e.spec.ts | Adds e2e test for glob copying. |
| packages/nx-infra-plugin/src/executors/concatenate-files/schema.ts | Defines schema interface for new concatenate executor. |
| packages/nx-infra-plugin/src/executors/concatenate-files/schema.json | Adds schema for concatenate executor options. |
| packages/nx-infra-plugin/src/executors/concatenate-files/executor.ts | Adds concatenate executor with extraction/transforms/normalization. |
| packages/nx-infra-plugin/src/executors/concatenate-files/executor.e2e.spec.ts | Adds e2e test covering bundler-config concatenation use case. |
| packages/nx-infra-plugin/src/executors/clean/executor.ts | Downgrades clean logs to verbose. |
| packages/nx-infra-plugin/src/executors/build-typescript/executor.ts | Downgrades build logs to verbose. |
| packages/nx-infra-plugin/src/executors/build-angular-library/executor.ts | Downgrades build logs to verbose. |
| packages/nx-infra-plugin/src/executors/babel-transform/schema.ts | Defines schema interface for new Babel transform executor. |
| packages/nx-infra-plugin/src/executors/babel-transform/schema.json | Adds schema for Babel transform executor options. |
| packages/nx-infra-plugin/src/executors/babel-transform/executor.ts | Adds Babel-based transform executor (remove debug blocks, rename extensions). |
| packages/nx-infra-plugin/src/executors/babel-transform/executor.e2e.spec.ts | Adds e2e tests for CJS/ESM transforms and DEBUG block removal. |
| packages/nx-infra-plugin/src/executors/add-license-headers/schema.ts | Extends schema interface for custom templates/version/EULA/prepend behavior. |
| packages/nx-infra-plugin/src/executors/add-license-headers/schema.json | Adds schema metadata and options for custom template rendering. |
| packages/nx-infra-plugin/src/executors/add-license-headers/executor.ts | Refactors license header generation, adds custom template support. |
| packages/nx-infra-plugin/src/executors/add-license-headers/executor.e2e.spec.ts | Adds tests for default header content and custom template support. |
| packages/nx-infra-plugin/project.json | Adds test.ci configuration (silent). |
| packages/nx-infra-plugin/package.json | Adds lodash + Babel-related peer deps and typings; pins fs-extra version. |
| packages/nx-infra-plugin/jest.config.ts | Adds custom resolver and expands transform ignore patterns. |
| packages/nx-infra-plugin/jest-resolver.js | Adds pnpm-symlink-friendly Jest resolver. |
| packages/nx-infra-plugin/executors.json | Registers new executors: localization, concatenate-files, babel-transform. |
| packages/devextreme/project.json | Adds many granular Nx targets and rewires build to run Nx pipeline. |
| packages/devextreme/package.json | Removes build script (build now driven by Nx target). |
| packages/devextreme/gulpfile.js | Makes Gulp transpile task call Nx build:transpile (with ci config in TEST_CI). |
| packages/devextreme/build/gulp/transpile.js | Removes old transpile orchestration; keeps TS compile + dual-mode manifest task. |
| packages/devextreme/build/gulp/localization.js | Replaces localization Gulp pipeline with Nx build:localization. |
| packages/devextreme-angular/project.json | Updates dependsOn semantics and adds testing env configuration; uses testing config in build-all-tests. |
| package.json | Switches all:build-dev to Nx workflows target. |
| nx.json | Adds named inputs for devextreme sources/build config. |
| apps/demos/project.json | Forwards params when depending on devextreme build. |
| .github/workflows/wrapper_tests_e2e.yml | Switches build step to pnpm nx all:build-testing workflows. |
| .github/workflows/wrapper_tests.yml | Builds devextreme with -c testing (instead of env var). |
| .github/workflows/testcafe_tests.yml | Builds devextreme with -c testing (instead of env var). |
| .github/workflows/publish-demos.yml | Switches build step to pnpm nx all:build-testing workflows. |
| .github/workflows/demos_visual_tests.yml | Switches build step to pnpm nx all:build-testing workflows; builds devextreme with -c testing. |
| .github/workflows/default_workflow.yml | Adds -c ci to nx run-many -t lint,test. |
| .github/copilot-instructions.md | Updates repo documentation to reflect custom Nx executors and granular targets. |
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR should be completed after #32200