[build] Separate rust from all: namespace by titusfortner · Pull Request #16995 · SeleniumHQ/selenium

User description

Rust stuff is sometimes in all namespace and sometimes not, this just clarifies it

💥 What does this PR do?

Separates rust (Selenium Manager) from the all: namespace since it has a different release cycle.

  • Removes rust from all:pin, all:update, all:lint, all:version, all:changelogs
  • Updates descriptions to say "language bindings" instead of "languages"
  • Adds rust:lint explicitly to top-level lint task with -rust skip flag support
  • Updates workflows to explicitly call rust tasks where needed

🔧 Implementation Notes

The all: namespace now means "language bindings" while rust: is for Selenium Manager.
This matches how releases already work - rust releases separately via its own branch (rust-release-$version).

Workflow changes:

  • pre-release.yml: Added explicit rust:changelogs call
  • release.yml: Added explicit rust:version nightly call

💡 Additional Considerations

If we need one command to include rust we can do what we're doing with lint and putting it in main namespace

🔄 Types of changes

  • Cleanup (formatting, renaming)

PR Type

Enhancement


Description

  • Separates Rust/Selenium Manager from all: namespace tasks

  • Removes Rust from all:pin, all:update, all:version, all:changelogs

  • Adds explicit rust:lint to top-level lint task with skip support

  • Updates task descriptions to clarify "language bindings" vs Rust separation

  • Updates CI workflows to explicitly call Rust tasks where needed


Diagram Walkthrough

flowchart LR
  A["all: namespace<br/>Language bindings only"] -->|removed| B["rust:pin<br/>rust:update<br/>rust:version<br/>rust:changelogs"]
  C["Top-level lint task"] -->|added| D["rust:lint<br/>with -rust skip flag"]
  E["CI Workflows"] -->|explicit calls| F["rust:changelogs<br/>rust:version nightly"]
Loading

File Walkthrough

Relevant files
Enhancement
Rakefile
Separate Rust from all: namespace tasks                                   

Rakefile

  • Removed Rust from all:pin, all:update, all:version, all:changelogs
    tasks
  • Added explicit rust:lint invocation to top-level lint task with -rust
    skip flag support
  • Updated task descriptions to say "language bindings" instead of
    "languages"
  • Updated all:lint to only include language bindings (removed rust from
    list)
+18/-11 
Configuration changes
pre-release.yml
Add explicit Rust changelogs generation                                   

.github/workflows/pre-release.yml

  • Added explicit ./go rust:changelogs call after all:changelogs in
    generate-changelogs job
+1/-1     
release.yml
Add explicit Rust version reset for nightly                           

.github/workflows/release.yml

  • Added explicit ./go rust:version nightly call after all:version
    nightly in reset-version job
+1/-1