From 5813d896f0d9f1049a40fc15ecae98685a81975c Mon Sep 17 00:00:00 2001 From: Mohammad Saddam Hossain Date: Sat, 15 Aug 2026 10:58:09 +0530 Subject: [PATCH] =?UTF-8?q?release:=20v3.3.0=20=E2=80=94=20surface=20the?= =?UTF-8?q?=20execution.parallel=20fix=20(#35)=20and=20point=20pom.xml=20a?= =?UTF-8?q?t=20the=20site?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The behaviour change from #35/#36/#37 (execution.parallel validated against TestNG's own modes, so `tests` and `instances` are accepted) has been on master since Jul 28 with no user-visible release record. This bump exists to ship exactly that, nothing else: - Version 3.2.0 -> 3.3.0 across pom.xml, README, and the docs site (getting-started, junit5, migration guide, homepage hero snippet). - CHANGELOG.md + docs-site/docs/changelog.md: new v3.3.0 entry for #35. - Dropped the "next release" version-gating note in configuration.md and guides/parallel.md now that tests/instances ship in this release. - pom.xml now points at https://seleniumboot.com instead of the GitHub repo — Maven Central, MvnRepository, Libraries.io and Sonatype all read this field and currently advertise GitHub instead of the site. Only the top-level project changed; , , and URLs are untouched. mvn clean verify: BUILD SUCCESS, 494 tests, 0 failures. --- CHANGELOG.md | 4 ++++ README.md | 6 +++--- docs-site/docs/changelog.md | 7 +++++++ docs-site/docs/configuration.md | 4 ---- docs-site/docs/getting-started.md | 6 +++--- docs-site/docs/guides/parallel.md | 4 ---- docs-site/docs/junit5.md | 2 +- docs-site/docs/migration/from-selenium-testng.md | 2 +- docs-site/src/pages/index.js | 2 +- pom.xml | 4 ++-- 10 files changed, 22 insertions(+), 19 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d7e8f58..553f21d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/). --- +### v3.3.0 — 2026-08-15 + +- **`execution.parallel` now validates against TestNG's own parallel modes, not a hand-written allowlist that had drifted from them** — `tests` and `instances` are legitimate TestNG modes that flow straight through to `XmlSuite.setParallel()` and work exactly like `methods`/`classes` downstream, but Selenium Boot's bootstrap validator rejected them anyway, and did so with a "Parallel execution configuration missing" message — telling users their config was absent when it was present but simply not on the list. Validation now delegates to TestNG's `XmlSuite.ParallelMode` enum directly, so anything TestNG accepts, Selenium Boot accepts, and an unrecognised value's error message names both the rejected value and the full valid set instead of going stale again. (Fixes #35) + ### v3.2.0 — 2026-07-18 - **Three new `WaitEngine` conditions**, consistent with the existing `waitFor*` naming: diff --git a/README.md b/README.md index 59e85e2..da69e1d 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ Three files. Copy them as-is and `mvn test` goes green against a real Chrome. io.github.seleniumboot selenium-boot - 3.2.0 + 3.3.0 @@ -168,7 +168,7 @@ Add to your `pom.xml`: io.github.seleniumboot selenium-boot - 3.2.0 + 3.3.0 ``` @@ -749,7 +749,7 @@ ci: ## Project Status -**Current release: v3.2.0** — three new `WaitEngine` conditions: `waitForAttribute` (exact-match attribute), `waitForUrlMatches`, and `waitForTextMatches` (regex). +**Current release: v3.3.0** — `execution.parallel` is now validated against TestNG's own parallel modes, so `tests` and `instances` are accepted alongside `none`, `methods`, and `classes`. See the full version history in **[CHANGELOG.md](CHANGELOG.md)**. diff --git a/docs-site/docs/changelog.md b/docs-site/docs/changelog.md index 89699a2..d0e3d29 100644 --- a/docs-site/docs/changelog.md +++ b/docs-site/docs/changelog.md @@ -11,6 +11,13 @@ All notable changes to Selenium Boot are documented here. --- +## [3.3.0] — 2026-08-15 + +### Fixed +- **`execution.parallel` validation now matches TestNG's own parallel modes** — `tests` and `instances` are legitimate TestNG modes that flow straight through to `XmlSuite.setParallel()` and behave exactly like `methods`/`classes` downstream, but Selenium Boot's bootstrap validator rejected both, reporting a misleading "Parallel execution configuration missing" for a value that was present but not on a hand-written allowlist. Validation now delegates to TestNG's `XmlSuite.ParallelMode` enum directly, so `none`, `methods`, `classes`, `tests`, and `instances` are all accepted, and an unrecognised value's error message names both the rejected value and the full valid set. (Fixes #35) + +--- + ## [3.2.0] — 2026-07-18 ### Added diff --git a/docs-site/docs/configuration.md b/docs-site/docs/configuration.md index 0145743..4567d06 100644 --- a/docs-site/docs/configuration.md +++ b/docs-site/docs/configuration.md @@ -191,10 +191,6 @@ Maps directly to TestNG parallel execution mode. Thread count is set via `thread | `tests` | Each `` in the suite XML runs in its own thread | | `instances` | Each test class instance runs in its own thread | -:::note Version -`tests` and `instances` are accepted from the next release onwards. **v3.2.0, the current release on Maven Central, accepts only `none`, `methods` and `classes`.** -::: - ### `maxActiveSessions` Maximum concurrent browser instances. Tests wait (up to 30s) for a slot rather than failing immediately. Prevents resource exhaustion in parallel runs. diff --git a/docs-site/docs/getting-started.md b/docs-site/docs/getting-started.md index 11ccf3c..e990069 100644 --- a/docs-site/docs/getting-started.md +++ b/docs-site/docs/getting-started.md @@ -35,7 +35,7 @@ No WebDriver binaries required — Selenium Manager handles browser driver downl io.github.seleniumboot selenium-boot - 3.2.0 + 3.3.0 ``` @@ -44,7 +44,7 @@ No WebDriver binaries required — Selenium Manager handles browser driver downl ```groovy title="build.gradle" dependencies { - testImplementation 'io.github.seleniumboot:selenium-boot:3.2.0' + testImplementation 'io.github.seleniumboot:selenium-boot:3.3.0' } test { @@ -58,7 +58,7 @@ test { ```kotlin title="build.gradle.kts" dependencies { - testImplementation("io.github.seleniumboot:selenium-boot:3.2.0") + testImplementation("io.github.seleniumboot:selenium-boot:3.3.0") } tasks.test { diff --git a/docs-site/docs/guides/parallel.md b/docs-site/docs/guides/parallel.md index 85b8363..03b181d 100644 --- a/docs-site/docs/guides/parallel.md +++ b/docs-site/docs/guides/parallel.md @@ -95,10 +95,6 @@ You do not need to do anything special in your tests. `getDriver()` always retur | `tests` | Each `` in the suite XML runs in a thread | Use to isolate suite-level groupings | | `instances` | Each test class instance runs in a thread | Rarely needed — factory-driven suites | -:::note Version -`tests` and `instances` are accepted from the next release onwards. **v3.2.0, the current release on Maven Central, accepts only `none`, `methods` and `classes`** and rejects the other two at bootstrap. -::: - --- ## Parallel + per-suite lifecycle diff --git a/docs-site/docs/junit5.md b/docs-site/docs/junit5.md index f0f6330..f67877b 100644 --- a/docs-site/docs/junit5.md +++ b/docs-site/docs/junit5.md @@ -17,7 +17,7 @@ Selenium Boot supports both **TestNG** (built-in) and **JUnit 5** (opt-in). The io.github.seleniumboot selenium-boot - 3.2.0 + 3.3.0 diff --git a/docs-site/docs/migration/from-selenium-testng.md b/docs-site/docs/migration/from-selenium-testng.md index 9bd83a9..998ac9f 100644 --- a/docs-site/docs/migration/from-selenium-testng.md +++ b/docs-site/docs/migration/from-selenium-testng.md @@ -26,7 +26,7 @@ Remove your Selenium, WebDriverManager, and reporting dependencies and add one: io.github.seleniumboot selenium-boot - 3.2.0 + 3.3.0 ``` diff --git a/docs-site/src/pages/index.js b/docs-site/src/pages/index.js index 94a8214..e043d83 100644 --- a/docs-site/src/pages/index.js +++ b/docs-site/src/pages/index.js @@ -241,7 +241,7 @@ export default function Home() { code={` io.github.seleniumboot selenium-boot - 3.2.0 + 3.3.0 `} /> diff --git a/pom.xml b/pom.xml index 1b15645..013db91 100644 --- a/pom.xml +++ b/pom.xml @@ -6,12 +6,12 @@ io.github.seleniumboot selenium-boot - 3.2.0 + 3.3.0 jar Selenium Boot Opinionated Selenium framework inspired by Spring Boot - https://github.com/seleniumboot/selenium-boot + https://seleniumboot.com