Skip to content

chore: update node version to latest LTS #2129

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

Merged
merged 2 commits into from
Jan 15, 2025
Merged

chore: update node version to latest LTS #2129

merged 2 commits into from
Jan 15, 2025

Conversation

harsha509
Copy link
Member

@harsha509 harsha509 commented Jan 15, 2025

User description

Move nodejs version to latest LTS

Description

Motivation and Context

Types of changes

  • Change to the site (I have double-checked the Netlify deployment, and my changes look good)
  • Code example added (and I also added the example to all translated languages)
  • Improved translation
  • Added new translation (and I also added a notice to each document missing translation)

Checklist

  • I have read the contributing document.
  • I have used hugo to render the site/docs locally and I am sure it works.

PR Type

enhancement, configuration changes


Description

  • Updated Node.js version to the latest LTS (22.13.0).

  • Modified netlify.toml to reflect the new Node.js version.

  • Ensured consistency across all deployment contexts in the configuration.


Changes walkthrough 📝

Relevant files
Configuration changes
netlify.toml
Update Node.js version in Netlify configuration                   

netlify.toml

  • Updated NODE_VERSION to 22.13.0 in production environment.
  • Updated NODE_VERSION to 22.13.0 in deploy-preview environment.
  • Updated NODE_VERSION to 22.13.0 in branch-deploy environment.
  • +3/-3     

    💡 PR-Agent usage: Comment /help "your question" on any pull request to receive relevant information

    Copy link
    Contributor

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    ⏱️ Estimated effort to review: 1 🔵⚪⚪⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ Recommended focus areas for review

    Version Compatibility

    The jump from Node.js 18.14.1 to 22.13.0 is significant and may introduce breaking changes. Verify that all build dependencies and scripts are compatible with Node.js 22.

    NODE_VERSION = "22.13.0"
    HUGO_VERSION = "0.125.4"
    GO_VERSION = "1.20.1"
    HUGO_ENV = "production"
    
    [context.deploy-preview]
    command = "chmod +x build-site.sh && ./build-site.sh"
    
    [context.deploy-preview.environment]
    NODE_VERSION = "22.13.0"
    HUGO_VERSION = "0.125.4"
    GO_VERSION = "1.20.1"
    
    [context.branch-deploy]
    command = "chmod +x build-site.sh && ./build-site.sh"
    
    [context.branch-deploy.environment]
    NODE_VERSION = "22.13.0"

    Copy link
    Contributor

    PR Code Suggestions ✨

    Explore these optional code suggestions:

    CategorySuggestion                                                                                                                                    Score
    Possible issue
    Use the latest LTS version of Node.js instead of a non-LTS version to ensure stability and security in production environments

    Node.js 22.13.0 is not a valid LTS version. The latest LTS version as of January
    2025 is 20.x. Using a non-LTS version in production could lead to stability issues
    and security vulnerabilities.

    netlify.toml [6]

    -NODE_VERSION = "22.13.0"
    +NODE_VERSION = "20.11.0"
    • Apply this suggestion
    Suggestion importance[1-10]: 9

    Why: The suggestion correctly identifies a critical issue where an invalid Node.js version (22.13.0) is being used. Using LTS versions in production is crucial for stability and security, making this a high-priority fix.

    9

    Copy link

    netlify bot commented Jan 15, 2025

    Deploy Preview for selenium-dev ready!

    Name Link
    🔨 Latest commit 17058c3
    🔍 Latest deploy log https://app.netlify.com/sites/selenium-dev/deploys/678754e42fb13e0008a929a6
    😎 Deploy Preview https://deploy-preview-2129--selenium-dev.netlify.app
    📱 Preview on mobile
    Toggle QR Code...

    QR Code

    Use your smartphone camera to open QR code link.

    To edit notification comments on pull requests, go to your Netlify site configuration.

    Copy link
    Contributor

    qodo-merge-pro bot commented Jan 15, 2025

    CI Failure Feedback 🧐

    (Checks updated until commit 17058c3)

    Action: tests (ubuntu, stable)

    Failed stage: Run tests [❌]

    Failed test name: Service Test - Set Driver Location

    Failure summary:

    The action failed because the 'Service Test - Set Driver Location' test consistently failed across
    all three retry attempts. The error indicates a Selenium WebDriver session creation issue:

  • Error: "SessionNotCreatedError: session not created: probably user data directory is already in use"
  • The test requires a unique --user-data-dir argument to be specified for the browser session
  • All three retry attempts failed with the same error, leading to a final exit code 1

  • Relevant error logs:
    1:  ##[group]Operating System
    2:  Ubuntu
    ...
    
    214:  > Warning:          Could not resolve keysym XF86FishingChart
    215:  > Warning:          Could not resolve keysym XF86SingleRangeRadar
    216:  > Warning:          Could not resolve keysym XF86DualRangeRadar
    217:  > Warning:          Could not resolve keysym XF86RadarOverlay
    218:  > Warning:          Could not resolve keysym XF86TraditionalSonar
    219:  > Warning:          Could not resolve keysym XF86ClearvuSonar
    220:  > Warning:          Could not resolve keysym XF86SidevuSonar
    221:  > Warning:          Could not resolve keysym XF86NavInfo
    222:  Errors from xkbcomp are not fatal to the X server
    ...
    
    261:  timeout_minutes: 20
    262:  max_attempts: 3
    263:  command: cd examples/javascript
    264:  npm test
    265:  
    266:  retry_wait_seconds: 10
    267:  polling_interval_seconds: 1
    268:  warning_on_retry: true
    269:  continue_on_error: false
    ...
    
    288:  ✔ Copy and Paste (150ms)
    289:  Actions API - Wheel Tests
    290:  ✔ Scroll to element (334ms)
    291:  ✔ Scroll by given amount (551ms)
    292:  ✔ Scroll from an element by a given amount (575ms)
    293:  ✔ Scroll from an element with an offset (559ms)
    294:  ✔ Scroll from an offset of origin (element) by given amount (1169ms)
    295:  Integration Tests
    296:  ✔ test navigate and listen to errors (10083ms)
    ...
    
    345:  - can locate node with none ownership value
    346:  - can locate node with root ownership value
    347:  - can locate node with given start nodes
    348:  - can locate nodes in a given sandbox
    349:  - can find element
    350:  - can find elements
    351:  Log Inspector
    352:  ✔ test listen to console log (2713ms)
    353:  ✔ test listen to javascript error log (2487ms)
    ...
    
    555:  ✔ Create and add non residential key
    556:  ✔ Get credential
    557:  ✔ Remove all credentials
    558:  ✔ Set is user verified
    559:  Virtual authenticator options
    560:  ✔ Virtual options
    561:  ✔ User verified
    562:  Waits
    563:  ✔ fail (481ms)
    564:  ✔ sleep (2069ms)
    565:  ✔ implicit (1081ms)
    566:  ✔ explicit (1143ms)
    567:  153 passing (5m)
    568:  21 pending
    569:  1 failing
    570:  1) Service Test
    571:  Set Driver Location:
    572:  SessionNotCreatedError: session not created: probably user data directory is already in use, please specify a unique value for --user-data-dir argument, or don't use --user-data-dir
    573:  at Object.throwDecodedError (node_modules/selenium-webdriver/lib/error.js:521:15)
    574:  at parseHttpResponse (node_modules/selenium-webdriver/lib/http.js:514:13)
    575:  at Executor.execute (node_modules/selenium-webdriver/lib/http.js:446:28)
    576:  at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    577:  ##[warning]Attempt 1 failed. Reason: Child_process exited with error code 1
    ...
    
    588:  ✔ Copy and Paste (153ms)
    589:  Actions API - Wheel Tests
    590:  ✔ Scroll to element (117ms)
    591:  ✔ Scroll by given amount (547ms)
    592:  ✔ Scroll from an element by a given amount (576ms)
    593:  ✔ Scroll from an element with an offset (559ms)
    594:  ✔ Scroll from an offset of origin (element) by given amount (1051ms)
    595:  Integration Tests
    596:  ✔ test navigate and listen to errors (2495ms)
    ...
    
    645:  - can locate node with none ownership value
    646:  - can locate node with root ownership value
    647:  - can locate node with given start nodes
    648:  - can locate nodes in a given sandbox
    649:  - can find element
    650:  - can find elements
    651:  Log Inspector
    652:  ✔ test listen to console log (2663ms)
    653:  ✔ test listen to javascript error log (2684ms)
    ...
    
    855:  ✔ Create and add non residential key
    856:  ✔ Get credential
    857:  ✔ Remove all credentials
    858:  ✔ Set is user verified
    859:  Virtual authenticator options
    860:  ✔ Virtual options
    861:  ✔ User verified
    862:  Waits
    863:  ✔ fail (551ms)
    864:  ✔ sleep (2072ms)
    865:  ✔ implicit (1085ms)
    866:  ✔ explicit (1146ms)
    867:  153 passing (5m)
    868:  21 pending
    869:  1 failing
    870:  1) Service Test
    871:  Set Driver Location:
    872:  SessionNotCreatedError: session not created: probably user data directory is already in use, please specify a unique value for --user-data-dir argument, or don't use --user-data-dir
    873:  at Object.throwDecodedError (node_modules/selenium-webdriver/lib/error.js:521:15)
    874:  at parseHttpResponse (node_modules/selenium-webdriver/lib/http.js:514:13)
    875:  at Executor.execute (node_modules/selenium-webdriver/lib/http.js:446:28)
    876:  at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    877:  ##[warning]Attempt 2 failed. Reason: Child_process exited with error code 1
    ...
    
    888:  ✔ Copy and Paste (152ms)
    889:  Actions API - Wheel Tests
    890:  ✔ Scroll to element (349ms)
    891:  ✔ Scroll by given amount (546ms)
    892:  ✔ Scroll from an element by a given amount (575ms)
    893:  ✔ Scroll from an element with an offset (558ms)
    894:  ✔ Scroll from an offset of origin (element) by given amount (1158ms)
    895:  Integration Tests
    896:  ✔ test navigate and listen to errors (2443ms)
    ...
    
    945:  - can locate node with none ownership value
    946:  - can locate node with root ownership value
    947:  - can locate node with given start nodes
    948:  - can locate nodes in a given sandbox
    949:  - can find element
    950:  - can find elements
    951:  Log Inspector
    952:  ✔ test listen to console log (2687ms)
    953:  ✔ test listen to javascript error log (2781ms)
    ...
    
    1155:  ✔ Create and add non residential key
    1156:  ✔ Get credential
    1157:  ✔ Remove all credentials
    1158:  ✔ Set is user verified
    1159:  Virtual authenticator options
    1160:  ✔ Virtual options
    1161:  ✔ User verified
    1162:  Waits
    1163:  ✔ fail (493ms)
    1164:  ✔ sleep (2070ms)
    1165:  ✔ implicit (1085ms)
    1166:  ✔ explicit (1145ms)
    1167:  153 passing (5m)
    1168:  21 pending
    1169:  1 failing
    1170:  1) Service Test
    1171:  Set Driver Location:
    1172:  SessionNotCreatedError: session not created: probably user data directory is already in use, please specify a unique value for --user-data-dir argument, or don't use --user-data-dir
    1173:  at Object.throwDecodedError (node_modules/selenium-webdriver/lib/error.js:521:15)
    1174:  at parseHttpResponse (node_modules/selenium-webdriver/lib/http.js:514:13)
    1175:  at Executor.execute (node_modules/selenium-webdriver/lib/http.js:446:28)
    1176:  at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    1177:  ##[error]Final attempt failed. Child_process exited with error code 1
    

    ✨ CI feedback usage guide:

    The CI feedback tool (/checks) automatically triggers when a PR has a failed check.
    The tool analyzes the failed checks and provides several feedbacks:

    • Failed stage
    • Failed test name
    • Failure summary
    • Relevant error logs

    In addition to being automatically triggered, the tool can also be invoked manually by commenting on a PR:

    /checks "https://github.com/{repo_name}/actions/runs/{run_number}/job/{job_number}"
    

    where {repo_name} is the name of the repository, {run_number} is the run number of the failed check, and {job_number} is the job number of the failed check.

    Configuration options

    • enable_auto_checks_feedback - if set to true, the tool will automatically provide feedback when a check is failed. Default is true.
    • excluded_checks_list - a list of checks to exclude from the feedback, for example: ["check1", "check2"]. Default is an empty list.
    • enable_help_text - if set to true, the tool will provide a help message with the feedback. Default is true.
    • persistent_comment - if set to true, the tool will overwrite a previous checks comment with the new feedback. Default is true.
    • final_update_message - if persistent_comment is true and updating a previous checks message, the tool will also create a new message: "Persistent checks updated to latest commit". Default is true.

    See more information about the checks tool in the docs.

    @harsha509 harsha509 merged commit f021281 into trunk Jan 15, 2025
    6 checks passed
    @harsha509 harsha509 deleted the node_update branch January 15, 2025 06:38
    selenium-ci added a commit that referenced this pull request Jan 15, 2025
    * chore: update node version to latest LTS
    
    * [ci]: use node 22.x for js code samples f021281
    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.

    1 participant