Skip to content

Update Gradle, Node and dependencies (+ CI fixes) - #46

Merged
stefan-ka merged 6 commits into
masterfrom
chore/dependency-updates
Oct 21, 2026
Merged

stefan-ka merged 6 commits into
masterfrom
chore/dependency-updates

Conversation

@stefan-ka

Copy link
Copy Markdown
Member

Dependency and build updates, analogous to ContextMapper/context-mapper-dsl#390. To be merged before #44 and #45.

CI fixes (taken over from #44)

  • actions/cache@v2 has been shut down → CI was broken
  • LSP snapshots are resolved from the Central Portal snapshot repository (https://central.sonatype.com/repository/maven-snapshots/); OSSRH has been shut down

Gradle

  • Gradle 7.5.1 → 9.8.2, gradle-node-plugin 7.0.2 → 7.1.0, nebula.release 19.0.10 → 21.1.4
  • Fixes for Gradle 9/10: property assignment syntax, no Task.project at execution time in checkVersion, empty string instead of null if the publishing tokens are not set (Gradle 9 rejects null command line arguments)
  • npmInstallVsce removed: vsce is already a dependency in package.json and installed by npm ci; the second install collided with npmInstall (Gradle 9 validation error)

Node / npm

  • Node 18.17 (end of life) → 22 LTS (Gradle node download and CI)
  • Deprecated packages replaced: vsce → @vscode/vsce 4, vscode-test → @vscode/test-electron (same runTests API)
  • TypeScript 5.9, @types/node 22 (required by @vscode/test-electron)
  • npm audit fix (non-breaking): 25 → 8 findings. The remaining ones are in dev tools only (mocha 10, tslint), not in the packaged extension; fixing them needs mocha 12 and replacing the deprecated tslint (e.g. by ESLint), so I left that for a separate PR.

CI workflows

  • Current action versions (checkout v7, setup-java v6, cache v6, setup-node v7, xvfb-action v1.7)
  • dcodeIO/setup-node-nvm@master → actions/setup-node, Node 22; the npm pin is no longer needed

README

  • JRE 17 or newer: the language server (DSL ≥ 6.12.1) is built with Xtext 2.42, which requires Java 17

Verification (local)

  • ./gradlew clean snapshot vscodeExtension on JDK 17: build, integration test and packaging (.vsix) successful; the bundled LSP is 6.12.1-SNAPSHOT from the Central Portal (Xtext 2.42, LSP4J 1.0)
  • Bundled language server started with Java 17 and answered an LSP initialize request with the expected capabilities
  • The release workflow (publish, publishToOpenVSX) can only be tested with a real release

actions/cache@v2 has been shut down by GitHub, which makes every build
fail. Also update checkout and setup-java (now requires a distribution).
The latest npm no longer supports Node 18, which the build uses.
- gradle-node-plugin 7.1.0, nebula.release 21.1.4
- Property assignment syntax and checkVersion without Task.project at
  execution time (both fail in Gradle 10)
- Empty string instead of null if the publishing tokens are not set
  (Gradle 9 rejects null command line arguments)
- Remove npmInstallVsce: vsce is already installed by npm ci via
  package.json, the extra install conflicted with npmInstall
- Node 18.17 (end of life) -> 22 LTS
- vsce -> @vscode/vsce 4 (vsce was renamed), vscode-test ->
  @vscode/test-electron (renamed)
- TypeScript 5.9 and @types/node 22
- npm audit fix (non-breaking)
- Current versions of the GitHub actions, Node 22 via actions/setup-node
- npm 10 pin no longer needed with Node 22
- README: JRE 17 or newer (required by the language server since
  Xtext 2.42)
@stefan-ka
stefan-ka marked this pull request as ready for review October 21, 2026 05:55
@stefan-ka
stefan-ka merged commit cf1b120 into master Oct 21, 2026
2 checks passed
@stefan-ka
stefan-ka deleted the chore/dependency-updates branch October 21, 2026 05:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant