selenium icon indicating copy to clipboard operation
selenium copied to clipboard

[🚀 Feature]: [dotnet] Align and simplify root namespace, who is OpenQA?

Open nvborisenko opened this issue 7 months ago • 1 comments

Description

This is a continuation of https://github.com/SeleniumHQ/selenium/issues/15791

Given that soon we will have

  • Selenium.WebDriver nuget package (now)
  • Selenium.WebDriver.dll (in v5?)
using var driver = new OpenQA.Selenium.WebDriver.Chrome.ChromeDriver();

Then in .NET world the question is who is OpenQA? Seems only .NET and Java has this prefix as an organization.

Have you considered any alternatives or workarounds?

Yes, be more predictable.

dotnet new console
dotnet add package selenium.webdriver
using var driver = new Selenium.WebDriver.Chrome.ChromeDriver();

Done! No mistic OpenQA.

nvborisenko avatar Jun 04 '25 19:06 nvborisenko

@nvborisenko, thank you for creating this issue. We will troubleshoot it as soon as we can.

Selenium Triage Team: remember to follow the Triage Guide

selenium-ci avatar Jun 04 '25 19:06 selenium-ci

What do we gain from this aside of breaking user's code?

diemol avatar Jul 22 '25 11:07 diemol

be more predictable

No mistic OpenQA

nvborisenko avatar Jul 22 '25 19:07 nvborisenko

Predictable for what? I don't see the reasoning for this.

diemol avatar Jul 22 '25 19:07 diemol

https://github.com/SeleniumHQ/selenium/issues/15791#issuecomment-2920122146

nvborisenko avatar Jul 22 '25 20:07 nvborisenko

That's an opinion, I still fail to understand the benefits and what users gain from this breaking change.

diemol avatar Jul 22 '25 20:07 diemol

Everything is an opinion.

Let's compare:

dotnet add package System.Text.Json

And use it:

var a = System.Text.Json.JsonSerializer.Serialize("a");

In case of Selenium:

dotnet add package Selenium.WebDriver

And use it:

var driver = new OpenQA.Selenium.Chrome.ChromeDriver();

Who is OpenQA? Is it really necessary?

nvborisenko avatar Jul 22 '25 20:07 nvborisenko

Everything is an opinion.

Not really.

You are still not making a case for it. It seems to be more of an aesthetic change that will break every user's code.

I think OpenQA was the name of the org before it became Selenium and part of the SFC. Java also has that namespace.

diemol avatar Jul 23 '25 12:07 diemol

The proposed namespace change is more consistent, but it feels like that ship has already sailed.

I know Selenium 5 will introduce breaking changes, but this breaks every piece of code and every tutorial in existence.

cgoldberg avatar Jul 23 '25 13:07 cgoldberg

I don't know, Selenium 5 feels like the opportune time to correct it and I have always questioned what OpenQA meant in the context of the namespace and aha, so it is an old legacy org name.

Which leads to the further question, when is a suitable time to change it or must it remain indefinitely with OpenQA?

Compromise? New namespace but with a fallback if OpenQA is used?

Lorondos avatar Oct 10 '25 14:10 Lorondos

Everybody understands that Selenium.WebDriver namespace is better than OpenQA.Selenium.Webdriver. I strongly believe Selenium wants to be improved. If we really to improve (even with breaking changes), then do it. Major version is a great chance doing it.

Probably nobody knows, but Selenium introduces minor breaking changes in minor releases, it doesn't follow semantic versioning. Thus I don't see a criminal just to improve in the following major release. I cannot understand the principle: "ship has already sailed" - we are captains, we can return this ship back, it is only about costs.

nvborisenko avatar Oct 12 '25 17:10 nvborisenko

Is it possible to have the fallback as @Lorondos mentions?

diemol avatar Oct 13 '25 11:10 diemol