Hi, devs,
I've performed a kind of controversial change in Java binding and I want to explain the reasons:
I've moved all IO, OS and Net utility classes to internal namespace (org.openqa.selenium.internal package).
Despite the fact that these utility classes can be used in clients' code, they don't form Selenium external API. They are part of internal API. They are not indended for use by clients.
Selenium is dedicated browser automation API, and I want this API to be as clean as possible. In no means classes like CircularOutputStream or PortProber or ExecutableFinder should be considered a part of browser automation API.
I understand that my commits may break clients' code. But I think it is a revitalizing crysis.
If you think that some of the moved classes should be considered the official Selenium external API -- let's discuss it, agree on it, and I'll move them back.
If you think that some of the moved classes should be temporary (for a release or two) kept in the old location -- let's discuss it, agree on it, and I'll create shims and mark them deprecated.
Regards,
--
Alexei Barantsev
Software-Testing.Ru
Selenium2.Ru