Skip to content

Conversation

@jrhoads
Copy link
Contributor

@jrhoads jrhoads commented Dec 10, 2025

Purpose

This PR updates the Node.js version used in the Cypress integration tests workflow.

Approach

The actions/setup-node@v4 action in the cypress_tests.yml workflow has been updated to use Node.js version 22 instead of version 18.

Key Modifications

  • Updated node-version in .github/workflows/cypress_tests.yml from 18 to 22.

Important Technical Details

This change ensures that the Cypress tests are run against a more recent and supported version of Node.js, potentially improving compatibility and performance.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Testing

Reviewer, please remember our guidelines:

  • Be humble in the language and feedback you give, ask don't tell.
  • Consider using positive language as opposed to neutral when offering feedback. This is to avoid the negative bias that can occur with neutral language appearing negative.
  • Offer suggestions on how to improve code e.g. simplification or expanding clarity.
  • Ensure you give reasons for the changes you are proposing.

Summary by CodeRabbit

  • Chores
    • Updated Node.js version in GitHub Actions Cypress workflow from version 18 to version 22.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 10, 2025

Walkthrough

Updates the Node.js version in the GitHub Actions Cypress workflow from version 18 to version 22 in the setup-node step.

Changes

Cohort / File(s) Change Summary
GitHub Actions Workflow Configuration
​.github/workflows/cypress_tests.yml
Updates Node.js version from 18 to 22 in the setup-node GitHub Actions step

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Update Cypress tests to use Node.js 22' accurately reflects the main change: updating the Node.js version in the Cypress workflow from 18 to 22.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch update-node-cypress-tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@jrhoads jrhoads requested a review from a team December 10, 2025 09:12
@cypress
Copy link

cypress bot commented Dec 10, 2025

akita    Run #1794

Run Properties:  status check passed Passed #1794  •  git commit 81f2a9f8a3 ℹ️: Merge f16cf6b395bafb93009cb9bfb1e4e7eb97dfa4ea into 3cfc64d01dd0fa155693f34411ff...
Project akita
Branch Review update-node-cypress-tests
Run status status check passed Passed #1794
Run duration 01m 47s
Commit git commit 81f2a9f8a3 ℹ️: Merge f16cf6b395bafb93009cb9bfb1e4e7eb97dfa4ea into 3cfc64d01dd0fa155693f34411ff...
Committer Joseph Rhoads
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 3
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 47
View all changes introduced in this branch ↗︎

@jrhoads jrhoads merged commit 66a14cd into master Dec 10, 2025
12 of 13 checks passed
@jrhoads jrhoads deleted the update-node-cypress-tests branch December 10, 2025 09:16
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3cfc64d and f16cf6b.

📒 Files selected for processing (1)
  • .github/workflows/cypress_tests.yml (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: test / cypress (3)
  • GitHub Check: test / cypress (4)
  • GitHub Check: test / cypress (5)
  • GitHub Check: test / cypress (2)
  • GitHub Check: test / cypress (1)

- uses: actions/setup-node@v4
with:
node-version: 18
node-version: 22
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check for Node.js version specifications
echo "=== Checking for .nvmrc ==="
if [ -f .nvmrc ]; then
  cat .nvmrc
else
  echo "No .nvmrc file found"
fi

echo -e "\n=== Checking package.json engines field ==="
if [ -f package.json ]; then
  jq '.engines' package.json 2>/dev/null || echo "Cannot parse engines field or field not present"
else
  echo "No package.json found"
fi

echo -e "\n=== Checking for Node.js version references in docs ==="
find . -type f \( -name "*.md" -o -name "*.txt" \) -exec grep -l "node.*18\|nodejs.*18\|node-version.*18" {} \; 2>/dev/null | head -20

echo -e "\n=== Checking current Node.js version in workflow ==="
grep -n "node-version" .github/workflows/cypress_tests.yml 2>/dev/null || echo "Node version not found in workflow"

echo -e "\n=== Checking Cypress version in package.json ==="
if [ -f package.json ]; then
  jq '.devDependencies.cypress, .dependencies.cypress' package.json 2>/dev/null
else
  echo "No package.json"
fi

Repository: datacite/akita

Length of output: 362


🌐 Web query:

Cypress 13.6.3 Node.js 22 compatibility support

💡 Result:

Short answer: Cypress officially supports Node.js 22.x (per current system requirements), but v13.6.3 (released Jan 16, 2024) predates some Node‑22 related fixes — you may hit edge cases; upgrading to a newer Cypress patch/minor that explicitly addressed Node‑22 issues is recommended. [1][2]

Sources:

  • Cypress system requirements (lists Node.js 20.x, 22.x, >=24.x). [1]
  • Cypress changelog: 13.6.3 release notes (released Jan 16, 2024) and later changelogs with Node‑22 related fixes. [2]

Update Cypress to latest v13 patch for better Node.js 22 support.

The Node.js version is already updated to 22, but Cypress 13.6.3 (released January 2024) predates several Node.js 22 compatibility fixes. While the current version will work, upgrading Cypress to the latest v13 patch releases will provide better stability with Node.js 22.

Update the cypress dependency in package.json to the latest available v13 version to ensure all Node.js 22 related fixes are included.

🤖 Prompt for AI Agents
.github/workflows/cypress_tests.yml lines 26-26: the CI is using node-version 22
so update the project to a Cypress v13 patch that includes Node.js 22 fixes;
open package.json and change the "cypress" dependency to the latest v13.x patch
(e.g. 13.<latest>) ensuring the semver constraint pins to that patch, then
update lockfile (npm install or yarn install) and commit the updated
package.json and package-lock.json/yarn.lock; if CI pins Cypress elsewhere
(scripts or Dockerfiles), update those references too and run the test suite
locally to confirm compatibility.

@cypress
Copy link

cypress bot commented Dec 10, 2025

akita    Run #1795

Run Properties:  status check passed Passed #1795  •  git commit 66a14cda9e: Merge pull request #536 from datacite/update-node-cypress-tests
Project akita
Branch Review master
Run status status check passed Passed #1795
Run duration 01m 37s
Commit git commit 66a14cda9e: Merge pull request #536 from datacite/update-node-cypress-tests
Committer Joseph Rhoads
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 3
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 47
View all changes introduced in this branch ↗︎

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants