Skip to content

Add serenity-bom module for dependency version alignment#3721

Open
abendt wants to merge 2 commits intoserenity-bdd:mainfrom
abendt:feature/serenity-bom
Open

Add serenity-bom module for dependency version alignment#3721
abendt wants to merge 2 commits intoserenity-bdd:mainfrom
abendt:feature/serenity-bom

Conversation

@abendt
Copy link
Contributor

@abendt abendt commented Feb 15, 2026

Summary

  • Adds a serenity-bom module that publishes a Bill of Materials POM for Serenity BDD
  • Includes a build-time Groovy validation script ensuring all reactor modules are listed in the BOM
  • Registers serenity-bom as a module in the root pom.xml

Intended effect

Users can import the BOM in their <dependencyManagement> to align all Serenity artifact versions automatically, eliminating the need to specify <version> on each individual Serenity dependency:

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>net.serenity-bdd</groupId>
            <artifactId>serenity-bom</artifactId>
            <version>${serenity.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

Relevant tickets

Closes #3720

Notes

I have also updated the github build to use the provided maven wrapper version to ensure a consistent version is used locally and on github.

Github build fails: https://github.com/serenity-bdd/serenity-core/actions/runs/22038026810/job/63674148191?pr=3721

This looks it is not related to the changes from the PR. Looks this happens after the bom module was built. In the linked job i have even excluded the bom from the build

@abendt abendt force-pushed the feature/serenity-bom branch from 9dee64c to 051da9b Compare February 15, 2026 14:50
…ity-bdd#3720)

Introduces a Bill of Materials (BOM) POM that users can import to align
all Serenity artifact versions. Includes a build-time Groovy validation
script that fails the build if any reactor module is missing from the BOM.
@abendt abendt force-pushed the feature/serenity-bom branch from 7796b8d to 478019b Compare February 15, 2026 15:08
Use ./mvnw instead of mvn to ensure the build uses the project's pinned
Maven version rather than the runner's system Maven.
@abendt abendt force-pushed the feature/serenity-bom branch from cdfd631 to 081b200 Compare February 15, 2026 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add a serenity-bom module for dependency version alignment

1 participant