diff --git a/scripts/release-updates.sh b/scripts/release-updates.sh index 927406e3af79..aa6fd79079e1 100755 --- a/scripts/release-updates.sh +++ b/scripts/release-updates.sh @@ -20,18 +20,19 @@ git add "$NEW_BLOG" sed -i '' "s/4\.$OLD_VERSION/4\.$NEW_VERSION/g" "$NEW_BLOG" +SINCE_COMMIT_DATE=$(gh api repos/seleniumhq/selenium/commits/selenium-4.${OLD_VERSION}.0 --jq '.commit.committer.date') +UNTIL_COMMIT_DATE=$(gh api repos/seleniumhq/selenium/commits/selenium-4.${NEW_VERSION}.0 --jq '.commit.committer.date') + echo "Selenium Contributors" -gh api --method GET /repos/seleniumhq/selenium/commits -f since=selenium-4.${OLD_VERSION}.0 -f per_page=1000 \ +gh api --method GET /repos/seleniumhq/selenium/commits -f since="$SINCE_COMMIT_DATE" -f until="$UNTIL_COMMIT_DATE" -f per_page=1000 \ --jq 'map(.author.login) | unique | sort | map("{{< gh-user \"https://api.github.com/users/" + . + "\" >}}") | .[]' -COMMIT_DATE=$(gh api repos/seleniumhq/selenium/commits/selenium-4.${OLD_VERSION}.0 --jq '.commit.committer.date') - echo echo "Docs Contributors" -gh api --method GET /repos/seleniumhq/seleniumhq.github.io/commits -f since="$COMMIT_DATE" -f per_page=1000 \ +gh api --method GET /repos/seleniumhq/seleniumhq.github.io/commits -f since="$SINCE_COMMIT_DATE" -f until="$UNTIL_COMMIT_DATE" -f per_page=1000 \ --jq 'map(.author.login) | unique | sort | map("{{< gh-user \"https://api.github.com/users/" + . + "\" >}}") | .[]' echo echo "Docker Contributors" -gh api --method GET /repos/seleniumhq/docker-selenium/commits -f since="$COMMIT_DATE" -f per_page=1000 \ +gh api --method GET /repos/seleniumhq/docker-selenium/commits -f since="$SINCE_COMMIT_DATE" -f until="$UNTIL_COMMIT_DATE" -f per_page=1000 \ --jq 'map(.author.login) | unique | sort | map("{{< gh-user \"https://api.github.com/users/" + . + "\" >}}") | .[]' diff --git a/website_and_docs/content/blog/2025/selenium-4-29-released.md b/website_and_docs/content/blog/2025/selenium-4-29-released.md index 278f97aeb2e0..92a32986dc91 100644 --- a/website_and_docs/content/blog/2025/selenium-4-29-released.md +++ b/website_and_docs/content/blog/2025/selenium-4-29-released.md @@ -62,6 +62,7 @@ Links to everything can be found on our [downloads page][downloads]. - Improved logging stability. ([#15257](https://github.com/SeleniumHQ/selenium/pull/15257)) ### **Docker Selenium** + - Publish Node/Standalone images with the latest Grid core version and browser backward versions - Update container environment to JDK21 ([#2642](https://github.com/SeleniumHQ/docker-selenium/pull/2642)) - Node base with share system certificate support ([#2653](https://github.com/SeleniumHQ/docker-selenium/pull/2653)) @@ -109,7 +110,6 @@ For a detailed look at all changes, check out the [release notes](https://github {{< gh-user "https://api.github.com/users/AndreyJVM" >}} {{< gh-user "https://api.github.com/users/Delta456" >}} {{< gh-user "https://api.github.com/users/alaahong" >}} -{{< gh-user "https://api.github.com/users/automatealchemist" >}} {{< gh-user "https://api.github.com/users/b2m" >}} {{< gh-user "https://api.github.com/users/pallavigitwork" >}} diff --git a/website_and_docs/content/blog/2025/selenium-4-30-released.md b/website_and_docs/content/blog/2025/selenium-4-30-released.md new file mode 100644 index 000000000000..8c9c41880c27 --- /dev/null +++ b/website_and_docs/content/blog/2025/selenium-4-30-released.md @@ -0,0 +1,197 @@ +--- +title: "Selenium 4.30 Released!" +linkTitle: "Selenium 4.30 Released!" +date: 2025-03-21 +tags: [ "selenium" ] +categories: [ "releases" ] +author: Diego Molina [@diemol](https://www.diemol.com) +images: + - "/images/blog/2025/selenium_4.30.jpg" +description: > + Today we're happy to announce that Selenium 4.30 has been released! +--- + +We're very happy to announce the release of Selenium 4.30 for Javascript, Ruby, Python, .NET, Java +and the Grid! +This version brings key updates across the project, with improvements to the BiDi protocol, +extensive nullability work in .NET, better error handling, and various bug fixes. It’s a great +step forward as we continue strengthening Selenium’s stability, consistency, and support across +all supported languages. + +Links to all assets can be found on our [downloads page][downloads]. + + +--- + +## 🚀 Major Highlights + +- Continued enhancements to **BiDi (Bi-Directional Protocol)** support across Java, Ruby, .NET, JavaScript, and Python. +- Extensive **nullability annotations** added throughout the .NET bindings. +- Selenium Manager (Rust) now supports **nightly Grid builds**. +- Improvements to testing infrastructure and developer experience, including better packaging, linting, and platform support. +- Numerous bug fixes and refactors across the Grid, bindings, and devtools. + +--- + +## 🔹 Language-Specific Changes + +### **Java** + +- Implemented BiDi commands: `getBidiSessionStatus` and `Permissions`. +- Refined logger initialization. +- Removed deprecated, non-W3C compliant `NetworkConnection` interface. +- Added support for setting viewport and handling CDP warnings gracefully. + +### **Python** + +- Improved devtools test handling and documentation. +- Fixed packaging issues and test discovery for `pytest`. +- Added docstring updates for clarity and modernization. +- Replaced strings with `By` class attributes. +- Improved socket resource management and error handling. +- Updated `expected_conditions` type annotations. + +### **JavaScript** + +- Fixed BiDi tests for Chrome and Firefox on CI. +- Implemented BiDi `permissions` module commands. + +### **Ruby** + +- Fixed a compatibility issue with Ruby 3.1 ("no anonymous block parameter"). +- Added BiDi support for: + - Setting viewport + - Activating browser context + - Providing responses +- Added a `target_type` parameter to devtools. + +### **.NET** + +- Enabled **nullable reference types** across many components. +- Trimmed away CDP for **AOT** applications. +- Enhanced BiDi support including: + - `SetFiles` command + - Support for `UnhandledPromptBehavior` + - Event support like `OnNavigationCommitted` + - Encapsulation of the transport layer +- Improved `WebDriver`, `WebElement`, and capabilities types with nullability. +- Introduced `SystemClock` singleton. +- Revisited and fixed test execution on Windows/macOS. +- Removed obsoleted members for 4.30. + +### **Grid & Selenium Manager** + +- Added trace logging for session stop events in Grid. +- Improved configuration options for server timeouts and session handling. +- Added support in Selenium Manager (Rust) for **nightly Grid builds**. +- Enhanced ability to trace and view live sessions. + +### **Docker Selenium** + +- Helm config: Node Relay to extend autoscaling Grid with test cloud resources ([#2703](https://github.com/SeleniumHQ/docker-selenium/pull/2703)). +- Docker: Disable HeapDumpOnOutOfMemoryError by default ([#2708](https://github.com/SeleniumHQ/docker-selenium/pull/2708)) +- [See all changes](https://github.com/SeleniumHQ/docker-selenium/releases) + + +
+ +We thank all our contributors for their incredible efforts in making Selenium better with every +release. ❤️ + +For a detailed look at all changes, check out +the [release notes](https://github.com/SeleniumHQ/selenium/releases/tag/4.30). + +
+ +## Contributors + +**Special shout-out to everyone who helped the Selenium Team get this release out!** + +### [Selenium](https://github.com/SeleniumHQ/selenium) + +
+
+
+{{< gh-user "https://api.github.com/users/Delta456" >}} +{{< gh-user "https://api.github.com/users/FloKNetcare" >}} +{{< gh-user "https://api.github.com/users/ahalbrock" >}} +{{< gh-user "https://api.github.com/users/allrob23" >}} +{{< gh-user "https://api.github.com/users/jpawlyn" >}} +{{< gh-user "https://api.github.com/users/navin772" >}} +{{< gh-user "https://api.github.com/users/smortex" >}} +{{< gh-user "https://api.github.com/users/pallavigitwork" >}} +{{< gh-user "https://api.github.com/users/ahalbrock" >}} +
+
+
+ +### [Selenium Docs & Website](https://github.com/SeleniumHQ/seleniumhq.github.io) + +
+
+
+{{< gh-user "https://api.github.com/users/Delta456" >}} +{{< gh-user "https://api.github.com/users/WasiqB" >}} +{{< gh-user "https://api.github.com/users/alaahong" >}} +{{< gh-user "https://api.github.com/users/beinghumantester" >}} +{{< gh-user "https://api.github.com/users/franciscotrenco" >}} +{{< gh-user "https://api.github.com/users/pallavigitwork" >}} +
+
+
+ +### [Docker Selenium](https://github.com/SeleniumHQ/docker-selenium) + +
+
+
+{{< gh-user "https://api.github.com/users/VietND96" >}} +
+
+
+ +### [Selenium Team Members][team] + +**Thanks as well to all the team members who contributed to this release:** + +
+
+
+{{< gh-user "https://api.github.com/users/aguspe" >}} +{{< gh-user "https://api.github.com/users/AutomatedTester" >}} +{{< gh-user "https://api.github.com/users/bonigarcia" >}} +{{< gh-user "https://api.github.com/users/cgoldberg" >}} +{{< gh-user "https://api.github.com/users/diemol" >}} +{{< gh-user "https://api.github.com/users/harsha509" >}} +{{< gh-user "https://api.github.com/users/joerg1985" >}} +{{< gh-user "https://api.github.com/users/nvborisenko" >}} +{{< gh-user "https://api.github.com/users/p0deje" >}} +{{< gh-user "https://api.github.com/users/pujagani" >}} +{{< gh-user "https://api.github.com/users/RenderMichael" >}} +{{< gh-user "https://api.github.com/users/shbenzer" >}} +{{< gh-user "https://api.github.com/users/shs96c" >}} +{{< gh-user "https://api.github.com/users/titusfortner" >}} +{{< gh-user "https://api.github.com/users/VietND96" >}} +
+
+
+ + + +Stay tuned for updates by following SeleniumHQ on: + +- [Mastodon](https://mastodon.social/@seleniumHQ@fosstodon.org) +- [BlueSky](https://bsky.app/profile/seleniumconf.bsky.social) +- [LinkedIn](https://www.linkedin.com/company/selenium/) +- [Selenium Community YouTube Channel](https://www.youtube.com/@SeleniumHQProject/streams) +- [X (Formerly Twitter)](https://twitter.com/seleniumhq) + +Happy automating! + +[downloads]: /downloads + +[bindings]: /downloads#bindings + +[team]: /project/structure + +[BiDi]: https://github.com/w3c/webdriver-bidi diff --git a/website_and_docs/content/blog/2025/selenium-4-31-released.md b/website_and_docs/content/blog/2025/selenium-4-31-released.md new file mode 100644 index 000000000000..c4c1fa14db18 --- /dev/null +++ b/website_and_docs/content/blog/2025/selenium-4-31-released.md @@ -0,0 +1,175 @@ +--- +title: "Selenium 4.31 Released!" +linkTitle: "Selenium 4.31 Released!" +date: 2025-04-05 +tags: [ "selenium" ] +categories: [ "releases" ] +author: Diego Molina [@diemol](https://www.diemol.com) +images: + - "/images/blog/2025/selenium_4.31.jpg" +description: > + Today we're happy to announce that Selenium 4.31 has been released! +--- + +We’re excited to announce the release of **Selenium 4.31** for Javascript, Ruby, Python, .NET, Java +and the Grid! 🎉 +This release focuses on improvements across the board, including better BiDi protocol support, test +reliability, nullability enhancements, and cleanup of legacy code across languages. + +Links to all assets can be found on our [downloads page][downloads]. + + +--- + +## 🚀 Major Highlights + +- Continued work towards full BiDi support in all bindings +- Cleanup of unused legacy components (like `wgxpath`) +- Expanded test coverage and fixes for various environments (CI, RBE, MacOS) +- Improvements in documentation and development tooling + +--- + +## 🔹 Language-Specific Changes + +### **Java** + +- [Handle `getNamedCookie` and `deleteNamedCookie` for empty strings](https://github.com/SeleniumHQ/selenium/pull/15092) +- [Add nullness for AppCacheStatus, Credential, and Either](https://github.com/SeleniumHQ/selenium/pull/15119) +- [Add nullness for interactions](https://github.com/SeleniumHQ/selenium/pull/15118) +- [Enable Safari for CookieImplementationTest](https://github.com/SeleniumHQ/selenium/pull/15544) +- [Add test to add a cookie in a user context (BiDi)](https://github.com/SeleniumHQ/selenium/pull/15312) + +### **Python** + +- [Fix docstring issues that sphinx complains about](https://github.com/SeleniumHQ/selenium/pull/15466) +- [Only shutdown service if process not already terminated](https://github.com/SeleniumHQ/selenium/pull/15183) +- [Remove unused mocker arg in chrome options test](https://github.com/SeleniumHQ/selenium/pull/15540) +- [Fix driver class name in test fixtures](https://github.com/SeleniumHQ/selenium/pull/15550) + +### **JavaScript** + +- Fixed BiDi tests for Chrome and Firefox on CI. +- Implemented BiDi `permissions` module commands. + +### **Ruby** + +- [Fix BiDi test errors](https://github.com/SeleniumHQ/selenium/pull/15482) +- [Allow symbols again to be passed on `delete_cookie`](https://github.com/SeleniumHQ/selenium/pull/15519) + +### **.NET** + +- [Decouple nested BiDi types across multiple modules](https://github.com/SeleniumHQ/selenium/pulls?q=is%3Apr+author%3Anvborisenko+label%3Adotnet) +- [Fix null warnings in `RelativeBy` by sealing the type](https://github.com/SeleniumHQ/selenium/pull/15379) +- [Simplify conversion to `LocalValue`](https://github.com/SeleniumHQ/selenium/pull/15441) +- [Unify protected and internal Execute methods](https://github.com/SeleniumHQ/selenium/pull/15233) +- [Make `ContinueWithAuthCommand` closer to spec (breaking change)](https://github.com/SeleniumHQ/selenium/pull/15545) +- [Avoid intermediate JsonDocument allocation to improve performance](https://github.com/SeleniumHQ/selenium/pull/15555) + +### **Grid** + +- [Expose register status via Node status response](https://github.com/SeleniumHQ/selenium/pull/15448) +- [Add traces for event stop session in Node](https://github.com/SeleniumHQ/selenium/pull/15348) + +### **Docker Selenium** + +- Helm config: Add template for file browser video records service ([#2763](https://github.com/SeleniumHQ/docker-selenium/pull/2763)) +- Helm config: Strictly handle `basicAuth.enabled` in template ([#2760](https://github.com/SeleniumHQ/docker-selenium/pull/2760)) +- Selenium Grid Autoscaling in Kubernetes is expected working well with KEDA core v2.17.0. +- [See all changes](https://github.com/SeleniumHQ/docker-selenium/releases) + + +
+ +We thank all our contributors for their incredible efforts in making Selenium better with every +release. ❤️ + +For a detailed look at all changes, check out +the [release notes](https://github.com/SeleniumHQ/selenium/releases/tag/4.31). + +
+ +## Contributors + +**Special shout-out to everyone who helped the Selenium Team get this release out!** + +### [Selenium](https://github.com/SeleniumHQ/selenium) + +
+
+
+{{< gh-user "https://api.github.com/users/Delta456" >}} +{{< gh-user "https://api.github.com/users/PSandro" >}} +{{< gh-user "https://api.github.com/users/mk868" >}} +{{< gh-user "https://api.github.com/users/navin772" >}} +
+
+
+ +### [Selenium Docs & Website](https://github.com/SeleniumHQ/seleniumhq.github.io) + +
+
+
+{{< gh-user "https://api.github.com/users/alaahong" >}} +{{< gh-user "https://api.github.com/users/pallavigitwork" >}} +
+
+
+ +### [Docker Selenium](https://github.com/SeleniumHQ/docker-selenium) + +
+
+
+{{< gh-user "https://api.github.com/users/KenHuPricer" >}} +{{< gh-user "https://api.github.com/users/KyriosGN0" >}} +
+
+
+ +### [Selenium Team Members][team] + +**Thanks as well to all the team members who contributed to this release:** + +
+
+
+{{< gh-user "https://api.github.com/users/aguspe" >}} +{{< gh-user "https://api.github.com/users/AutomatedTester" >}} +{{< gh-user "https://api.github.com/users/bonigarcia" >}} +{{< gh-user "https://api.github.com/users/cgoldberg" >}} +{{< gh-user "https://api.github.com/users/diemol" >}} +{{< gh-user "https://api.github.com/users/harsha509" >}} +{{< gh-user "https://api.github.com/users/joerg1985" >}} +{{< gh-user "https://api.github.com/users/nvborisenko" >}} +{{< gh-user "https://api.github.com/users/p0deje" >}} +{{< gh-user "https://api.github.com/users/pujagani" >}} +{{< gh-user "https://api.github.com/users/RenderMichael" >}} +{{< gh-user "https://api.github.com/users/shbenzer" >}} +{{< gh-user "https://api.github.com/users/shs96c" >}} +{{< gh-user "https://api.github.com/users/titusfortner" >}} +{{< gh-user "https://api.github.com/users/VietND96" >}} +
+
+
+ + + +Stay tuned for updates by following SeleniumHQ on: + +- [Mastodon](https://mastodon.social/@seleniumHQ@fosstodon.org) +- [BlueSky](https://bsky.app/profile/seleniumconf.bsky.social) +- [LinkedIn](https://www.linkedin.com/company/selenium/) +- [Selenium Community YouTube Channel](https://www.youtube.com/@SeleniumHQProject/streams) +- [X (Formerly Twitter)](https://twitter.com/seleniumhq) + +Happy automating! + +[downloads]: /downloads + +[bindings]: /downloads#bindings + +[team]: /project/structure + +[BiDi]: https://github.com/w3c/webdriver-bidi diff --git a/website_and_docs/static/images/blog/2025/selenium_4.30.jpg b/website_and_docs/static/images/blog/2025/selenium_4.30.jpg new file mode 100644 index 000000000000..e4a948f087d3 Binary files /dev/null and b/website_and_docs/static/images/blog/2025/selenium_4.30.jpg differ diff --git a/website_and_docs/static/images/blog/2025/selenium_4.31.jpg b/website_and_docs/static/images/blog/2025/selenium_4.31.jpg new file mode 100644 index 000000000000..a8374b70e789 Binary files /dev/null and b/website_and_docs/static/images/blog/2025/selenium_4.31.jpg differ