Cucumber in 2025, year in review
A year ago, Cucumber returned to community ownership. I'd like to take a moment to reflect on what we have been up to.
Notable changes
Cucumber is a collection of different implementations. Each moves at the speed of its contributors and maintainers. So we start by highlight some changes from the individual projects.
Cucumber JVM
In 2025, we've had 20 releases for Cucumber-JVM. These were mostly bug fixes and dependency updates. But I'd like to highlight a few notable changes.
-
We had a contribution from Stefan Gasterstädt to make it possible to create locale sensitive parameter transformers. This looked quite complicated at the start, but the actual implementation turned out to be incredibly elegant.
-
Julien Kronegg contributed several 1, 2, 3, 4 performance improvements.
-
The Cucumber JUnit Platform Engine now supports rerun files. While the solution comes with a bunch of jankiness, it should smooth out the upgrade path from JUnit 4 to Junit 5+.
-
With JUnit 4 entering maintenance mode cucumber-junit has been deprecated in favor of cucumber-junit-platform-engine.
Cucumber JS
In 2025, we've made 8 releases for Cucumber-JS. These were mostly bug fixes, and small features, but we did make some architectural moves to enable bigger things. Some notable changes:
- Alexandru Gologan contributed support for execution sharding.
- Configuration files can be written in TypeScript.
- You can now write plugins to augment built-in behaviour
We're also working on @cucumber/node
built around the Node.js test runner. It's
still in the pre-1.0.0 phase, so APIs and behaviour might change. The stable
canonical implementation of Cucumber for JavaScript continues to be
@cucumber/cucumber for now.
Cucumber Ruby
In 2025 Cucumber-Ruby turned Seventeen! Which means it is now old enough to drive in some parts of the world. It also saw 5 releases including v10.0.0 which lays some of the groundwork for upcoming architectural changes.
More visibly, support for Ruby 2.7 and 3.0 was removed and support for Ruby 4.0+ was added. The minimum supported Ruby version is now 3.1.
Thanks to Jérôme Lipowicz dependencies on default gems in stdlib are now explicitly declared. Backtrace filtering is now much more robust to handle a lot of the internal ruby changes, but ideally you won't see any of that.
Cucumber Messages
Cucumber Messages is a schema to describe test results and other information from Cucumber in a new-line delimited JSON format. The first commit was done in 2018, and we are now at the point that we can dogfood our own implementation and build up the documentation and tooling through that.
For users the first results can be seen in the pretty formatter and HTML formatter which now create reports with more fidelity.
Cucumber JSON Report in maintenance-mode
With the internal adoption of messages now in progress we have now also officially put the Cucumber JSON report in maintenance mode. The format is still supported but will not receive any changes. We don't expect this will have any significant impact, in practice the format had already been ossified.
Putting the format in maintenance mode meant that we had to pin down the exact format of the report in the form of the cucumber-json-schema. Unfortunately there been a significant drift between implementations and each flavor will need its own schema. So this is very much a work in progress, but for Cucumber-JVM at least that work is now completed.
Reqnroll
While Reqnroll isn't under Cucumber umbrella, I would be amiss if I didn't find a way to highlight Chris Rudolphi's contributions.
Chris has been driving the adoption of Cucumber messages in Reqnroll and as part of that made numerous contributions to Cucumber. Including .NET implementations of tag-expressions, html-formatter and compatibility-kit.
Organizational stuff
We created a governance repository to describe who we are and how we are organized and operate. This was rather boring to do but also essential to acquire funding and sponsorships.
Additionally, we have set up a security policy to let people know how to contact us in case of security issues.
Newsletter
We're finally reviving our mailing list. If you're reading this in your email client, that means we've got it all working again.
If not, you can subscribe here.
Finances
Cucumber is currently funded through donations from Open Collective, GitHub Sponsors, and Thanks.dev. We have also partnered with Tidelift and collect some ad revenue through Ethical Ads. In total, we received $65,545.63 with the majority coming from Tidelift.
| Source | 2025 Income |
|---|---|
| Tidelift | $52,900.00 |
| Open Collective | $7,784.50 |
| GitHub Sponsors | $4,047.96 |
| Ethical Ads | $768.50 |
| Thanks.dev | $44.67 |
| --------- + | |
| Total | $65,545.63 |
On the expense side we spent $69.960,28 resulting in a small loss of $4,414.65 Fortunately we already built up some buffer in 2024 to absorb the loss.
| Destination | 2025 Expenses |
|---|---|
| Maintenance and Development | $67,842.15 |
| Payment Processor Fees | $1,588.31 |
| Hosting and Subscriptions | $529.82 |
| ----------- + | |
| Total | $69.960,28 |
The biggest expense was the maintenance and development of Cucumber. While number looks big in absolute terms, we try to compensate our maintainers fairly. So at market rates this comes down to about a cumulative 13-16 hours a week.
Sponsor Cucumber!
The development of Cucumber is made possible by you - our users. We try to handle pull- and feature-requests, keep up to date with the latest versions, and respond to bugs and issues. And all of that in a timely manner.
Your support would enable us to do this with more focus and consistency rather than weekends and our spare time.
You can sponsor us through Open Collective or GitHub Sponsors.
Get involved
We like to think Cucumber is a warm and friendly community where you can make friends and learn, building software that thousands of people rely on every day.
You can find us on Discord, GitHub Discussions or feed the robots on Stack Overflow.
We have a regular meeting on Thursdays at 4pm London time.
Thanks
One year later on I'm elated to see the Cucumber project is still alive, active and developing. Thanks for being part of this community. It's an amazing privilege to be part of such a vibrant, popular open source project.

