Repository navigation
chore(deps): test on a single DevExtreme version, bump JS dev deps - #752
Merged
mpreyskurantov merged 5 commits intoNov 4, 2026
Merged
mpreyskurantov merged 5 commits into
mpreyskurantov merged 5 commits into
Conversation
- Pin devextreme and devextreme-dist 26.1.6 as devDependencies (peerDependencies stays >=18.1.0); drop the 18.1/22.2 lockfiles and the CI version matrix - Align net/Sample devextreme-dist with root; add a CI check that keeps devextreme, devextreme-dist and jquery in sync, and disable Renovate for them - Bump typescript 7, eslint 10, webpack-cli 7, webpack, qunit 3, karma-qunit 4, karma-chrome-launcher 3, @types/jquery - Migrate ESLint to flat config - Drop the no longer needed qs override
- follow-redirects 1.16.1 -> 1.16.2 (GHSA-mrwp-f3q8-3g9p) - Override minimatch to 11.0.4 under eslint (GHSA-g3hv-75wg-m249) minimatch 3.1.5 used by karma, karma-coverage and glob is still reported, but it lacks the affected firstPhasePreProcess() code, and v11 can't replace it (no callable CommonJS export).
Versions in package.json and net/Sample/package.json are kept in sync manually.
- Point net/Sample/libman.json at ../../node_modules - Remove net/Sample/package.json and its lockfile - Run npm ci at the repo root in the dotnet-test-build action
npm 10 (used on CI runners) rejects the nested "eslint": { "minimatch" }
override in npm ci ("lock file's minimatch@11.0.4 does not satisfy
minimatch@10.2.6"). Select by version instead; the resolved tree and
lockfile are unchanged.
alexslavr
approved these changes
Nov 4, 2026
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
No active review issues block approval of the tooling and test-configuration updates.
No open issues 🎉
1 file not reviewed
net/Sample/package-lock.json: Generated file
What changed in this PR
Simplifies DevExtreme testing and modernizes development tooling without changing shipped JavaScript or the supported peer dependency range.
Changes:
- Pins development dependencies to DevExtreme 26.1.6 and replaces the CI version matrix with a single test version.
- Updates JavaScript tooling and migrates ESLint to flat configuration while retaining ES5 checks for
js/. - Reuses root npm dependencies for the .NET sample and disables automated DevExtreme and jQuery updates.
| File | Description |
|---|---|
renovate.json |
Disables automated DevExtreme and jQuery updates. |
package.json |
Updates tooling, pins DevExtreme, and adjusts TypeScript commands and overrides. |
net/Sample/package.json |
Removes the sample-specific dependency manifest. |
net/Sample/package-lock.json |
Removes the sample-specific lockfile. |
net/Sample/libman.json |
Restores sample assets from root node_modules. |
js-test/webpack.config.js |
Removes the legacy ESLint environment comment. |
js-test/test.js |
Replaces the browser environment comment with explicit globals. |
js-test/test-deps.js |
Always loads the DevExtreme distribution bundle. |
js-test/karma.conf.js |
Removes the legacy ESLint environment comment. |
eslint.config.js |
Adds flat configuration with rules, globals, and ignores. |
build/.eslintrc.json |
Removes the legacy build-specific ESLint configuration. |
.github/workflows/ci.yml |
Removes the DevExtreme matrix and lockfile switching. |
.github/actions/dotnet-test-build/action.yml |
Installs npm dependencies at the repository root. |
.eslintrc.json |
Removes the legacy root ESLint configuration. |
.eslintignore |
Moves ignore patterns into flat configuration. |
Review effort: Balanced
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
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.
The shipped files don't change:
js/,build/make-nojquery.js,build/replace-meta.jsand.npmignoreare untouched. Only dev tooling and CI change.peerDependencies.devextremestays>=18.1.0.DevExtreme tests: one version instead of a matrix
devextremeanddevextreme-distare pinned to26.1.6indevDependencies; the peer range is unchangedjs-test/18.1,js-test/22.2)js-test/test-deps.jsalways loadsdevextreme-dist/js/dx.all.jsdevextreme,devextreme-distandjquery; they're bumped by handnet/Sample
jqueryanddevextreme-distfrom the rootpackage.json:libman.jsonpoints at../../node_modules, andnet/Sample/package.jsonand its lockfile are removeddotnet-test-buildaction runsnpm ciat the repo rootDev dependency bumps
npm run dtsnow passes--types jquery --strict false, because TS 6+ no longer loads@typespackages automatically and is strict by defaulteslint.config.js):js/is still limited to ES5/* eslint-env */comments are replaced by config globalsno-unused-varskeepscaughtErrors: "none", because ES5 needs thecatch(x)variablenpm audit: 12 (1 high, 11 moderate) → 6 moderate
overrides(GHSA-g3hv-75wg-m249)qsoverride; body-parser now requires a fixedqsitself<11.0.1) is too broad: 3.x doesn't contain the affectedfirstPhasePreProcess()codeTesting
Run locally:
npm run eslintandnpm run dtsdotnet build net/Sample: libman restores devextreme 26.1.6 and jquery 3.7.1 from the rootNote
CI doesn't set a Node version. ESLint 10 needs Node ≥ 20.19, and webpack-cli 7 needs ≥ 20.9.