NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #2512 most downloaded on crates.io
Code generation for `cucumber` crate.
Last release 5 months ago
23 Apr 2026
Ships unpredictably
gaps range from 8 days to 1.5 years
Nearly every release is documented
notes for 31 of 32 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
33 releases · first in 2021
One column per quarter.
API docs Changelog
gherkin] crate to 0.16 version. (0d544772)And-like and But-like keywords at the beginning of Scenario, automatically considering them as Given-type steps. (gherkin#53)API docs Changelog
API docs Changelog
once_cell crate, for #[expect] attribute usage, and because of migration to 2024 edition. (4010c1ad, f1307038, b46930c3, 9705253b, 0c7dfc3c, a4cbd3d2)Arc with PartialEq/Hash pointer-optimized Source in events: (#352)
Source<gherkin::Feature> in event::Cucumber::Feature.Source<gherkin::Rule> in event::Feature::Rule.Source<gherkin::Scenario> in event::Feature::Scenario and event::Rule::Scenario.Source<gherkin::Step> in event::Scenario::Background and event::Scenario::Step.const the following constructor functions for input type polymorphism: (#352)
event::Cucumber::feature_started() and event::Cucumber::feature_finished().event::Cucumber::rule_started() and event::Cucumber::rule_finished().event::Scenario::step_started(), event::Scenario::step_passed() and event::Scenario::step_skipped().event::Scenario::background_step_started(), event::Scenario::background_step_passed() and event::Scenario::background_step_skipped().Examples table in expanded Scenario Outlines. (#371, #369)CUCUMBER_FILTER_TAGS environment variable support. (#372)API docs Changelog
API docs Changelog
API docs Changelog
World on hook/background step failure. (#313)API docs Changelog
API docs Changelog
Log variant to event::Scenario. (#258)embeddings field to writer::json::Step and writer::json::HookResult. (#261)report_time field to writer::libtest::Cli. (#264, #265)IsTerminal trait from std. (#288)tracing] crate integration behind the tracing feature flag. (#213, #258, #261)--report-time CLI option for writer::Libtest. (#264, #265)API docs Changelog
API docs Changelog
writer::FailOnSkipped::writer field with writer::FailOnSkipped::inner_writer() method. (56456e66)writer::Normalized::writer field with writer::Normalized::inner_writer() method. (56456e66)writer::Or::left/writer::Or::right fields with writer::Or::left_writer()/writer::Or::right_writer() methods. (56456e66)writer::Repeat::writer field with writer::Repeat::inner_writer() method. (56456e66)writer::Summarize::writer field with writer::Summarize::inner_writer() method. (56456e66)writer::Summarize::scenarios/writer::Summarize::steps fields with writer::Summarize::scenarios_stats()/writer::Summarize::steps_stats() methods. (56456e66)writer::Summarize::features/writer::Summarize::rules fields private. (56456e66)writer::Summarize::parsing_errors/writer::Summarize::failed_hooks fields private in favour of writer::Stats::parsing_errors()/writer::Stats::failed_hooks() methods. (56456e66)runner::Basic::fail_fast() method as Cucumber::fail_fast(). (#252)Cucumber::with_default_cli() method. (56456e66)Default implementation for CLI types. (56456e66)@serial Scenarios continue running after failure when --fail-fast() CLI option is specified. (#252)[0.17.0]: https://github.com/cucumber-rs/cucumber/tree/v0.17.0
[0.16.0]: https://github.com/cucumber-rs/cucumber/tree/v0.16.0
[0.15.3]: https://github.com/cucumber-rs/cucumber/tree/v0.15.3
[0.15.2]: https://github.com/cucumber-rs/cucumber/tree/v0.15.2
gherkin] crate to 0.13 version. (4cad49f8)Feature having comment and tag simultaneously. (4cad49f8, cucumber-rs/gherkin#37, cucumber-rs/gherkin#35)@retry, @serial and @allow.skipped tags semantics inheritance. (#237)[0.15.0]: https://github.com/cucumber-rs/cucumber/tree/v0.15.0
[0.14.2]: https://github.com/cucumber-rs/cucumber/tree/v0.14.2
[0.14.1]: https://github.com/cucumber-rs/cucumber/tree/v0.14.1
[0.14.0]: https://github.com/cucumber-rs/cucumber/tree/v0.14.0
#[derive(WorldInit)] with #[derive(World)] to remove the need of manual World trait implementation. (#219, #217)WorldInit trait into the World trait. (#219)ParsingFinished variant to event::Cucumber. (#220)writer::Failure/writer::discard::Failure as writer::Stats/writer::discard::Stats. (#220)WriterExt::discard_failure_writes() to WriterExt::discard_stats_writes(). (#220)Option<step::Location> field to event::Step::Passed and event::Step::Failed. (#221)event::Scenario into event::RetryableScenario for storing in other events. (#223, #212)retried_steps() method to writer::Stats. (#223, #212)writer::Libtest (enables IntelliJ Rust integration) behind the libtest feature flag. (#220)writer::Or to alternate between 2 Writers basing on a predicate. (#220)writer::Stats::passed_steps() and writer::Stats::skipped_steps() methods. (#220)FeatureExt::count_steps() method. (#220)fn matching a failed Step in output. (#221)Scenarios. (#223, #212)--retry, --retry-after and --retry-tag-filter CLI options. (#223, #212)[0.13.0]: https://github.com/cucumber-rs/cucumber/tree/v0.13.0
[0.12.2]: https://github.com/cucumber-rs/cucumber/tree/v0.12.2
Cucumber::after now gets the World instance even if some Step or a Hook before it has failed. (#209, #207)regex crate to 1.5.5 version to fix [CVE-2022-24713].
[0.12.0]: https://github.com/cucumber-rs/cucumber/tree/v0.12.0
step::Context::matches now contains regex capturing group names in addition to captured values. (#204)Parameter regex (previously was forbidden). (#204){string} parameter in [Cucumber Expressions] returning its enclosing quotes. (cucumber-rs/cucumber-expressions#7)[0.11.3]: https://github.com/cucumber-rs/cucumber/tree/v0.11.3
[0.11.2]: https://github.com/cucumber-rs/cucumber/tree/v0.11.2
[0.11.1]: https://github.com/cucumber-rs/cucumber/tree/v0.11.1
[0.11.0]: https://github.com/cucumber-rs/cucumber/tree/v0.11.0
World type parameter of WriterExt trait to methods. (#160)Normalized and Summarized Writers to Normalize and Summarize. (#162)writer::Basic Default impl and change writer::Basic::new() return type to writer::Normalize<writer::Basic>. (#162)const assertions. (cef3d480)gherkin] crate instead of [gherkin_rust]. (e2a41ab0)@allow_skipped built-in tag to @allow.skipped. (#181)clap] from structopt. (#188, #155)verbose CLI option of writer::Basic: (#193, #192)
-v default behavior (no additional output).-vv additionally output World on failed steps.-vvv additionally output docstrings (old behavior).Result. (#151)writer::Basic. (#147)writer::JUnit (JUnit XML report) behind the output-junit feature flag. (#147)writer::Json (Cucumber JSON format) behind the output-json feature flag. (#159)writer::Tee for outputting to multiple terminating Writers simultaneously. (#160)writer::discard::Arbitrary and writer::discard::Failure for providing no-op implementations of the corresponding Writer traits. (#160)Writers pipelines:
#[given(expr = ...)], #[when(expr = ...)] and #[then(expr = ...)] syntax. (#157)#[derive(cucumber::Parameter)] macro. (#168)Feature and Rule with Scenario when filtering with --tags CLI option. (#166)writer::AssertNormalized forcing Normalized implementation. (#182)cli::Colored trait for propagating Coloring to arbitrary Writers. (#189, #186)Nothing published for this version
[0.10.2]: https://github.com/cucumber-rs/cucumber/tree/v0.10.2
[0.10.1]: https://github.com/cucumber-rs/cucumber/tree/v0.10.1
[0.10.0]: https://github.com/cucumber-rs/cucumber/tree/v0.10.0
cucumber.Parser, Runner, Writer;macros feature by default.#[given(step)], #[when(step)] and #[then(step)] function argument attributes with a single #[step]. (#128)&mut World instead of World. (#128)#[step] argument of step functions Step instead of StepContext again, while test callbacks still receive StepContext as a second parameter. (#128)&mut World as their last parameter. (#142)Scenarios concurrently. (#128)timestamps Cargo feature that enables collecting of timestamps for all the happened events during tests execution (useful for Writers which format requires them) (#145).Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →