Skip to content

chore: migrate remaining gulp build TS task to nx#33710

Merged
GoodDayForSurf merged 50 commits into
26_1from
chore/migrate-devextreme-to-nx-TS
Jul 2, 2026
Merged

chore: migrate remaining gulp build TS task to nx#33710
GoodDayForSurf merged 50 commits into
26_1from
chore/migrate-devextreme-to-nx-TS

Conversation

@GoodDayForSurf

@GoodDayForSurf GoodDayForSurf commented May 25, 2026

Copy link
Copy Markdown
Contributor
  • Migrated the TypeScript build/validation pipeline from gulp ts and gulp validate-ts to native Nx targets in packages/devextreme/project.json.
  • Added and integrated the check-declarations executor (modules, bundle, jquery, public-modules) to replace gulp-based declaration checks.
  • Switched build:declarations and validate:ts to nx:noop + dependsOn with params: "forward" to correctly support -c internal.
  • Removed duplicate build:npm:dts-bundle work across verify:ts-*; Nx now deduplicates shared dependencies in a single task graph.
  • Improved cache correctness for validate:ts by adding pnpm-lock.yaml to inputs, preventing stale cache hits after dependency changes.
  • Expanded check-declarations E2E coverage with minimal smoke tests for bundle, jquery, and public-modules (including temporary entry file cleanup checks).
  • Artifact parity: TS/CSS/declaration outputs match the baseline; the only remaining difference is devextreme-dist-*.tgz (packaging-level, outside the declaration pipeline).

@GoodDayForSurf GoodDayForSurf marked this pull request as ready for review May 26, 2026 08:28
Copilot AI review requested due to automatic review settings May 26, 2026 08:28
@GoodDayForSurf GoodDayForSurf requested review from a team and alexslavr and removed request for a team May 26, 2026 08:29

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 completes the migration of DevExtreme TypeScript declaration build/validation steps from the legacy gulp pipeline to Nx by introducing a dedicated check-declarations executor and wiring new Nx targets/scripts to replace gulp ts / gulp validate-ts behavior.

Changes:

  • Added devextreme-nx-infra-plugin:check-declarations executor (modes: jquery, bundle, modules, public-modules) with Jest E2E coverage.
  • Updated packages/devextreme Nx targets and npm scripts to run declaration build + validation via Nx instead of gulp, and removed the old gulp ts.js task implementation.
  • Adjusted dts-modules license header application to exclude specific output subfolders.

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
packages/nx-infra-plugin/src/executors/dts-modules/dts-modules.impl.ts Excludes bundles/, dist/, license/ from module license header stamping.
packages/nx-infra-plugin/src/executors/check-declarations/schema.ts Adds TS schema typing for the new executor options.
packages/nx-infra-plugin/src/executors/check-declarations/schema.json Adds Nx JSON schema for check-declarations executor configuration.
packages/nx-infra-plugin/src/executors/check-declarations/executor.ts Registers executor entrypoint + re-exports helper functions.
packages/nx-infra-plugin/src/executors/check-declarations/executor.e2e.spec.ts Adds Jest E2E tests for the new executor + content builders.
packages/nx-infra-plugin/src/executors/check-declarations/declaration-check-content.ts Implements generated TS entry content for jquery and public-modules checks.
packages/nx-infra-plugin/src/executors/check-declarations/check-declarations.impl.ts Implements the new declaration type-checking executor.
packages/nx-infra-plugin/executors.json Registers the new check-declarations executor in the plugin catalog.
packages/nx-infra-plugin/AGENTS.md Documents the new executor as a shared cross-executor concern.
packages/devextreme/project.json Adds Nx targets (verify:*, validate:ts, build:declarations) to replace gulp TS tasks.
packages/devextreme/package.json Switches validate-ts script to run the new Nx target.
packages/devextreme/gulpfile.js Re-routes gulp ts to the Nx build:declarations target and removes gulp TS task import.
packages/devextreme/build/gulp/ts.js Removes the legacy gulp implementation for TS declaration build/check tasks.
packages/devextreme/build/gulp/npm.js Updates npm gulp pipeline to invoke Nx d.ts build steps and drops the old public-modules check from gulp.

Comment thread packages/devextreme/project.json
Comment thread packages/nx-infra-plugin/src/executors/check-declarations/schema.json Outdated
Comment thread packages/devextreme/project.json Outdated
Copilot AI review requested due to automatic review settings May 26, 2026 12:55

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 14 changed files in this pull request and generated 3 comments.

Comment thread packages/devextreme/gulpfile.js Outdated
Comment thread packages/devextreme/project.json
Copilot AI review requested due to automatic review settings May 26, 2026 19:43

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 14 changed files in this pull request and generated 4 comments.

Comment thread packages/nx-infra-plugin/src/executors/check-declarations/executor.e2e.spec.ts Outdated
Comment thread packages/devextreme/project.json

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 14 changed files in this pull request and generated 3 comments.

Comment thread packages/devextreme/project.json Outdated
Comment thread packages/devextreme/project.json Outdated
Copilot AI review requested due to automatic review settings June 26, 2026 14:04

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 14 changed files in this pull request and generated no new comments.

Copilot AI review requested due to automatic review settings June 29, 2026 21:23

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 14 changed files in this pull request and generated no new comments.

Copilot AI review requested due to automatic review settings June 30, 2026 08:25

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 14 changed files in this pull request and generated 1 comment.

Comment thread packages/devextreme/project.json
Copilot AI review requested due to automatic review settings June 30, 2026 09:39

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 14 changed files in this pull request and generated no new comments.

@GoodDayForSurf GoodDayForSurf added this pull request to the merge queue Jul 2, 2026
Merged via the queue into 26_1 with commit b8c3bbc Jul 2, 2026
127 checks passed
@GoodDayForSurf GoodDayForSurf deleted the chore/migrate-devextreme-to-nx-TS branch July 2, 2026 11:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants