[build] combine pre-release dependency updates#16973
Conversation
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
||||||||||||||||||||||||
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||
There was a problem hiding this comment.
Pull request overview
This PR consolidates pre-release dependency updates by combining separate Maven and Node workflow steps into a single "dependencies" step, with the update logic centralized in a new release_update Rake task. It also adds git staging for files modified by dependency update tasks (Node package.json and Rust lockfiles) and introduces a new task to update multitool binaries.
Changes:
- Created
release_updatetask to orchestrate Java, Node, and multitool dependency updates - Added
update_multitooltask to update multitool binaries via a Bazel target - Enhanced
node:updateandrust:updatetasks to stage modified files with git.add
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| Rakefile | Adds release_update and update_multitool tasks; adds git.add calls to node:update and rust:update tasks to stage modified lockfiles |
| .github/workflows/pre-release.yml | Combines separate maven and node workflow steps into single "dependencies" step; updates patch application and status table accordingly |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
User description
💥 What does this PR do?
Combines pre-release dependency updates into a single workflow step and centralizes the update logic in the Rakefile.
Also ensures the dependency update tasks stage the files they modify (notably Node package.json and Rust lockfiles).
🔧 Implementation Notes
update_dependencies, backed by a newrelease_updatetask.node:updateandrust:updatefor the files those tasks actually modify.🔄 Types of changes
PR Type
Enhancement
Description
Consolidates Maven and Node dependency updates into single
update_dependenciestaskAdds file staging for modified lockfiles and package.json files
Moves multitool binary updates to dedicated Bazel target for hermeticity
Simplifies pre-release workflow by reducing separate matrix steps
Diagram Walkthrough
File Walkthrough
pre-release.yml
Consolidate workflow matrix steps for dependencies.github/workflows/pre-release.yml
mavenandnodematrix steps with singledependenciesstep
dependenciesoutputvariable
Rakefile
Add release_update task and file stagingRakefile
release_updatetask that orchestrates Maven, Node, andmultitool updates
update_multitooltask as dedicated Bazel target for binaryupdates
@git.add()calls to stage modified files innode:updateandrust:updatetasksjavascript/selenium-webdriver/package.json,rust/Cargo.Bazel.lock, andrust/Cargo.lock