Skip to content

Commit 40af8e6

Browse files
authored
Split changelog per version (#2594)
We're looking to automate the release process based on polyglot-release[1]. This requires the use of the changelog tool[2] to automate various aspects of the process. Unfortunately the changelog tool puts some requirements on the format of the changelog. Rather then fixing the formatting on 1k lines it is preferable to split the changelog and fix only the last 200 lines. 1: https://github.com/cucumber/polyglot-release 2: https://github.com/cucumber/changelog/
1 parent 4cd24e8 commit 40af8e6

File tree

9 files changed

+1925
-1916
lines changed

9 files changed

+1925
-1916
lines changed

CHANGELOG.md

Lines changed: 98 additions & 1896 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,52 @@
1-
21
# Cucumber JVM
32

43
[![#StandWithUkraine](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/badges/StandWithUkraine.svg)](https://vshymanskyy.github.io/StandWithUkraine)
5-
[![OpenCollective](https://opencollective.com/cucumber/backers/badge.svg)](https://opencollective.com/cucumber)
4+
[![OpenCollective](https://opencollective.com/cucumber/backers/badge.svg)](https://opencollective.com/cucumber)
65
[![OpenCollective](https://opencollective.com/cucumber/sponsors/badge.svg)](https://opencollective.com/cucumber)
76
[![Maven Central](https://img.shields.io/maven-central/v/io.cucumber/cucumber-java.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:%22io.cucumber%22%20AND%20a:%22cucumber-java%22)
87
[![Build Status](https://github.com/cucumber/cucumber-jvm/workflows/Cucumber%20CI/badge.svg)](https://github.com/cucumber/cucumber-jvm/actions)
98
[![Coverage Status](https://codecov.io/gh/cucumber/cucumber-jvm/branch/main/graph/badge.svg)](https://codecov.io/gh/cucumber/cucumber-jvm/branch/main)
109

11-
Cucumber-JVM is a pure Java implementation of Cucumber.
12-
You can [run](https://cucumber.io/docs/cucumber/api/#running-cucumber) it with
10+
Cucumber-JVM is a pure Java implementation of Cucumber.
11+
You can [run](https://cucumber.io/docs/cucumber/api/#running-cucumber) it with
1312
the tool of your choice.
1413

15-
Cucumber-JVM also integrates with all the popular
14+
Cucumber-JVM also integrates with all the popular
1615
[Dependency Injection containers](https://cucumber.io/docs/installation/java/#dependency-injection).
1716

1817
## Getting started
19-
* [Installation](https://cucumber.io/docs/installation/java/)
20-
* [Documentation](https://cucumber.io/docs/cucumber/)
21-
* [Hello World project](https://github.com/cucumber/cucumber-java-skeleton)
18+
19+
* [Installation](https://cucumber.io/docs/installation/java/)
20+
* [Documentation](https://cucumber.io/docs/cucumber/)
21+
* [Hello World project](https://github.com/cucumber/cucumber-java-skeleton)
22+
23+
## Upgrading?
24+
25+
Migration instructions from previous major version and a long form
26+
explanation of noteworthy changes can be found in the [release-notes archive](release-notes)
27+
28+
The changes for the current major version can be found in the [CHANGELOG.md](CHANGELOG.md).
2229

2330
## Questions, Problems, Help needed?
2431

25-
Please ask on
26-
* [Stack Overflow](https://stackoverflow.com/questions/tagged/cucumber-jvm).
27-
* [CucumberBDD Slack](https://cucumberbdd-slack-invite.herokuapp.com/) <sup>[direct link](https://cucumberbdd.slack.com/)</sup>
32+
Please ask on
33+
34+
* [Stack Overflow](https://stackoverflow.com/questions/tagged/cucumber-jvm).
35+
* [CucumberBDD Slack](https://cucumberbdd-slack-invite.herokuapp.com/) <sup>[direct link](https://cucumberbdd.slack.com/)</sup>
2836

2937
## Bugs and Feature requests
3038

31-
You can register bugs and feature requests in the
32-
[Github Issue Tracker](https://github.com/cucumber/cucumber-jvm/issues).
39+
You can register bugs and feature requests in the
40+
[Github Issue Tracker](https://github.com/cucumber/cucumber-jvm/issues).
3341

34-
Please bear in mind that this project is almost entirely developed by
35-
volunteers. If you do not provide the implementation yourself (or pay someone
36-
to do it for you), the bug might never get fixed. If it is a serious bug, other
42+
Please bear in mind that this project is almost entirely developed by
43+
volunteers. If you do not provide the implementation yourself (or pay someone
44+
to do it for you), the bug might never get fixed. If it is a serious bug, other
3745
people than you might care enough to provide a fix.
3846

39-
## Contributing
47+
## Contributing
4048

41-
If you'd like to contribute to the documentation, checkout
42-
[cucumber/docs.cucumber.io](https://github.com/cucumber/docs.cucumber.io)
49+
If you'd like to contribute to the documentation, checkout
50+
[cucumber/docs.cucumber.io](https://github.com/cucumber/docs.cucumber.io)
4351
otherwise see our
4452
[CONTRIBUTING.md](https://github.com/cucumber/cucumber-jvm/blob/main/CONTRIBUTING.md).

SEMVER.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@ This project adheres to [Semantic Versioning](http://semver.org/).
66
## Public API ##
77

88
The public API consists of:
9-
* Any public class in in the `cucumber.api` package or subpackage thereof.
9+
* Any public class in the `cucumber.api` package or subpackage thereof.
1010
* Any public class annotated with `@org.apiguardian.api.API(status = API.Status.STABLE)`.

release-notes/v1-CHANGELOG.md

Lines changed: 576 additions & 0 deletions
Large diffs are not rendered by default.

release-notes/v2-CHANGELOG.md

Lines changed: 147 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,147 @@
1+
# Changelog
2+
This file documents all notable changes for v2.
3+
4+
The format is based on [Keep a Changelog](http://keepachangelog.com/)
5+
and this project adheres to [Semantic Versioning](http://semver.org/).
6+
7+
----
8+
## [2.4.0](https://github.com/cucumber/cucumber-jvm/compare/v2.3.1...v2.4.0)
9+
10+
### Added
11+
* [JUnit] Add readme to cucumber-junit ([#1306](https://github.com/cucumber/cucumber-jvm/pull/1306) M.P. Korstanje)
12+
* [Java] Add detail to DataTable hint in JavaSnippet ([#1298](https://github.com/cucumber/cucumber-jvm/pull/1298) Marit van Dijk)
13+
14+
### Changed
15+
* [Java] Remove 'throws Exception' from JavaSnippet ([#1308](https://github.com/cucumber/cucumber-jvm/pull/1308) Marit van Dijk)
16+
17+
### Fixed
18+
* [Android] Make test names passed to the instrumentation unique ([#1094](https://github.com/cucumber/cucumber-jvm/pull/1094) Christian Gnüchtel)
19+
* [Core] Json Formatter: include the content type of doc strings ([#1309](https://github.com/cucumber/cucumber-jvm/pull/1309) Björn Rasmusson)
20+
21+
## [2.3.1] (2017-12-14)
22+
23+
### Fixed
24+
* [Core] Remove scenario scoped step definitions from step definition cache ([#1301](https://github.com/cucumber/cucumber-jvm/pull/1301) M.P. Korstanje)
25+
26+
## [2.3.0] - [Release Announcement](release-notes/v2.3.0.md)
27+
28+
### Added
29+
* [Core] Cache matched steps definitions ([#1289](https://github.com/cucumber/cucumber-jvm/pull/1289) Łukasz Suski)
30+
31+
## [2.2.0] - [Release Announcement](release-notes/v2.2.0.md)
32+
33+
### Added
34+
* [JUnit] Document supported JUnit annotations ([#1272](https://github.com/cucumber/cucumber-jvm/pull/1272) Marit van Dijk)
35+
36+
### Changed
37+
* [Core] Upgraded tag-expressions to 1.1.1 (M.P. Korstanje)
38+
* Allows empty tag expressions ([cucumber/#296](https://github.com/cucumber/cucumber/issues/296))
39+
* Don't allow reverse polish notation in tag expressions ([cucumber/#304](https://github.com/cucumber/cucumber/issues/304))
40+
41+
### Deprecated
42+
* [JUnit] `Cucumber.createRuntime` has been deprecated ([#1287](https://github.com/cucumber/cucumber-jvm/pull/1287) M.P. Korstanje)
43+
44+
### Fixed
45+
* [Core] Add missing feature tags in the JSON output ([#1288](https://github.com/cucumber/cucumber-jvm/pull/1284) Pierre Gentile)
46+
* [Core] Fix detection of XStreamsConverters annotation ([#1283](https://github.com/cucumber/cucumber-jvm/pull/1283), [#1284](https://github.com/cucumber/cucumber-jvm/pull/1284) Dmitrii Demin)
47+
* [TestNG] Fix null pointer exception when invalid options are used ([#1282](https://github.com/cucumber/cucumber-jvm/pull/1282) M.P. Korstanje)
48+
49+
## [2.1.0] - [Release Announcement](release-notes/v2.1.0.md)
50+
51+
### Added
52+
* [JUnit] Print JUnit Options when unknown option is provided ([#1273](https://github.com/cucumber/cucumber-jvm/pull/1273), Marit Van Dijk)
53+
* [Spring] Support BootstrapWith annotation ([#1245](https://github.com/cucumber/cucumber-jvm/pull/1245), [#1242](https://github.com/cucumber/cucumber-jvm/pull/1242), [#1061](https://github.com/cucumber/cucumber-jvm/pull/1061) M.P. Korstanje)
54+
* [Core] Allow String parameter in plugin constructors (Aslak Hellesøy)
55+
* [Core] Prefer single-arg constructors over empty constructors in plugins ([#1104](https://github.com/cucumber/cucumber-jvm/issues/1104), [c6e471c2](https://github.com/cucumber/cucumber-jvm/commit/c6e471c27235fa3c091c6db1162c16291462a0ca) Aslak Hellesøy)
56+
* [Core] Optimize MethodScanner ([#1238](https://github.com/cucumber/cucumber-jvm/pull/1236) Łukasz Suski)
57+
### Changed
58+
* [Core] Running empty Pickles yields the result undefined ([#1274](https://github.com/cucumber/cucumber-jvm/pull/1274) Björn Rasmusson)
59+
* [Core] Use gherkin 5.0.0 ([#1252](https://github.com/cucumber/cucumber-jvm/commit/5e305951026a1573ede77e05e86bbe8ed3bca55b) M.P. Korstanje)
60+
61+
### Deprecated
62+
* [Spring] Deprecate Spring context configuration by more than one class ([#1259](https://github.com/cucumber/cucumber-jvm/pull/1259) Björn Rasmusson)
63+
64+
### Removed
65+
* [Scala, Groovy, Clojure, Jython, JRuby, Rhino, Gosu] Moved to own repositories (M.P. Korstanje)
66+
67+
### Fixed
68+
* [Java8] Fix Java8StepDefinition.isDefinedA ([#1254](https://github.com/cucumber/cucumber-jvm/pull/1254), [#1255](https://github.com/cucumber/cucumber-jvm/pull/1255) tts-ll, M.P. Korstanje)
69+
* [Core] Fix race condition in Timeout ([#1244](https://github.com/cucumber/cucumber-jvm/pull/1244) M.P. Korstanje)
70+
* [Core] Correct the name of the Json Formatter embeddings node ([#1236](https://github.com/cucumber/cucumber-jvm/pull/1236) Haroon Sheikh)
71+
* [Spring] Exception is thrown complaining about multiple matching beans ([#1225](https://github.com/cucumber/cucumber-jvm/pull/1225), [#1226](https://github.com/cucumber/cucumber-jvm/pull/1226), M.P. Korstanje)
72+
73+
## [2.0.1] - [Release Announcement](release-notes/v2.0.1.md)
74+
75+
### Added
76+
* [Core] cucumber.api.TableConverter interface ([#1223](https://github.com/cucumber/cucumber-jvm/pull/1223) M.P. Korstanje)
77+
78+
### Deprecated
79+
* [Core] Deprecated constructors and run method of TestCase and Test Step ([#1223](https://github.com/cucumber/cucumber-jvm/pull/1223) M.P. Korstanje)
80+
81+
### Fixed
82+
* [Core] Skip test step execution if --dry-run is specified ([#1220](https://github.com/cucumber/cucumber-jvm/pull/1220) ,[#1219](https://github.com/cucumber/cucumber-jvm/issues/1219) Adrian Baker)
83+
* [Java8] NullPointerException at Java8StepDefinition.isDefinedAt ([#1222](https://github.com/cucumber/cucumber-jvm/pull/1222), [#1217](https://github.com/cucumber/cucumber-jvm/issues/1217) M.P. Korstanje)
84+
* [Core] Scenario.isFailed always return false ([#1216](https://github.com/cucumber/cucumber-jvm/pull/1216), [#1215](https://github.com/cucumber/cucumber-jvm/issues/1215) Olivier Lemasle)
85+
* [Docs] Javadoc stylesheet issue ([#1212](https://github.com/cucumber/cucumber-jvm/pull/1212), [#796](https://github.com/cucumber/cucumber-jvm/issues/796) Marit Van Dijk)
86+
87+
## [2.0.0] - [Release Announcement](release-notes/v2.0.0.md)
88+
89+
* [Java] Reduce Throwable to Exception in JavaSnippet ([#1207](https://github.com/cucumber/cucumber-jvm/issues/1207), [#1208](https://github.com/cucumber/cucumber-jvm/pull/1208) M.P. Korstanje)
90+
* [Core] Update the cucumber-html dependency to version 0.2.6 (Björn Rasmusson)
91+
* [Core] Fix PrettyFormatter exception on nested arguments ([#1200](https://github.com/cucumber/cucumber-jvm/pull/1200) Marit van Dijk, M.P. Korstanje)
92+
* [Core] Added tests for diffing with empty table and list ([#1194](https://github.com/cucumber/cucumber-jvm/pull/1194) Marit van Dijk, M.P. Korstanje)
93+
* [JUnit] Invoke (Before|After)Class and TestRules around Cucumber execution ([#1190](https://github.com/cucumber/cucumber-jvm/pull/1190) M.P. Korstanje)
94+
* [Core] Use whole path for uri:s for file system feature files ([#1189](https://github.com/cucumber/cucumber-jvm/pull/1189), [#854](https://github.com/cucumber/cucumber-jvm/issues/854) Björn Rasmusson)
95+
* [Java, Java8, Kotlin Java8] Support method references ([#1178](https://github.com/cucumber/cucumber-jvm/pull/1178), [#1140](https://github.com/cucumber/cucumber-jvm/pull/1140) M.P. Korstanje)
96+
* Java8 method references can be used in lambda step definitions
97+
* It is no longer possible to use lambda step definitions without also using `cucumber-java8`
98+
* Lambda step definitions can be used in Kotlin. Function references are not yet understood
99+
* [Core] Make the parsing of the rerun file more robust ([#1187](https://github.com/cucumber/cucumber-jvm/pull/1187) M.P. Korstanje)
100+
* [Android] Update the version of the cucumber-jvm-deps dependency - to a version without Java8 bytecode ([#1170](https://github.com/cucumber/cucumber-jvm/pull/1170), [#893](https://github.com/cucumber/cucumber-jvm/issues/893) Björn Rasmusson)
101+
* [Needle] Handle circular dependencies ([#853](https://github.com/cucumber/cucumber-jvm/pull/853) Lars Bilger)
102+
* [Core] Use "uri" instead of "path" to reference feature files in external APIs ([#1179](https://github.com/cucumber/cucumber-jvm/pull/1179) Björn Rasmusson)
103+
* [Core] Separate rerun paths by a new line character ([#1177](https://github.com/cucumber/cucumber-jvm/pull/1177), [#1187](https://github.com/cucumber/cucumber-jvm/pull/1187) M.P. Korstanje)
104+
* [TestNG] Run a separate TestNG test per scenario (deprecate one TestNG test per feature, and one TestNG for the whole suite) ([#1174](https://github.com/cucumber/cucumber-jvm/pull/1174), [#1113](https://github.com/cucumber/cucumber-jvm/issues/1113) Luciano van der Veekens, Björn Rasmusson)
105+
* [Core] Close OutputStream for embedded images in HTML formatter ([#1175](https://github.com/cucumber/cucumber-jvm/pull/1175), [#1108](https://github.com/cucumber/cucumber-jvm/issues/1108) M.P. Korstanje)
106+
* [Scala] Compile cucumber-scala_2.12 against Java 8 ([#1171](https://github.com/cucumber/cucumber-jvm/pull/1171), [#1087](https://github.com/cucumber/cucumber-jvm/issues/1087) M.P. Korstanje, Paolo Ambrosio). This includes:
107+
* Update Scala Versions
108+
- 2.12.0-M1 to 2.12.2
109+
- 2.11.8 to 2.11.11
110+
* Use Manifest instead of Java reflection to provide type information
111+
* [Core] Avoid closing System.out or System.err from formatters ([#1173](https://github.com/cucumber/cucumber-jvm/issues/1173) Björn Rasmusson)
112+
* [Core] Decouple UndefinedStepsTracker from Glue ([#1019](https://github.com/cucumber/cucumber-jvm/pull/1019) [#1172](https://github.com/cucumber/cucumber-jvm/pull/1172) Illapikov, M.P. Korstanje)
113+
* [Core] Add TestRunStarted event, let Stats handle the exit code ([#1162](https://github.com/cucumber/cucumber-jvm/pull/1162) Björn Rasmusson)
114+
* [Core, JUnit, Android] Add the ambiguous result type ([#1168](https://github.com/cucumber/cucumber-jvm/pull/1168) Björn Rasmusson)
115+
* [Core] Add the SnippetsSuggestedEvent ([#1163](https://github.com/cucumber/cucumber-jvm/pull/1163) Björn Rasmusson)
116+
* [Java] Prevent MethodScanner from checking Object.class methods ([#940](https://github.com/cucumber/cucumber-jvm/pull/940) Łukasz Suski)
117+
* [Weld] Use Weld SE 2.4.4.Final ([#1166](https://github.com/cucumber/cucumber-jvm/pull/1166) Frank Seidinger)
118+
* [Core] Provide a unique id of the current scenario to the hooks. ([#1160](https://github.com/cucumber/cucumber-jvm/pull/1160) Björn Rasmusson)
119+
* [Gosu] Fix and re-enable Gosu for 2.0.0 ([#1155](https://github.com/cucumber/cucumber-jvm/pull/1155), [#1086](https://github.com/cucumber/cucumber-jvm/pull/1086), [#874](https://github.com/cucumber/cucumber-jvm/pull/874) Kyle Moore, M.P. Korstanje)
120+
* [Core] Fix issue where ComplexTypeWriter would create unbalanced tables. ([#1042](https://github.com/cucumber/cucumber-jvm/pull/1042) Roy Jacobs, M.P. Korstanje)
121+
* [Guice] Use the ContextClassLoader when loading InjectorSource. ([#1036](https://github.com/cucumber/cucumber-jvm/pull/1036), [#1037](https://github.com/cucumber/cucumber-jvm/pull/1037) Kyle Moore)
122+
* [Core] Allow global registration of custom XStream converters. ([#1010](https://github.com/cucumber/cucumber-jvm/pull/1010), [#1009](https://github.com/cucumber/cucumber-jvm/issues/1009) Chris Rankin)
123+
* [Spring] Support multithreaded execution of scenarios ([#1106](https://github.com/cucumber/cucumber-jvm/issues/1106), [#1107](https://github.com/cucumber/cucumber-jvm/issues/1107), [#1148](https://github.com/cucumber/cucumber-jvm/issues/1148), [#1153](https://github.com/cucumber/cucumber-jvm/pull/1153) Ismail Bhana, M.P. Korstanje)
124+
* [Core] Show explicit error message when field name missed in table header ([#1014](https://github.com/cucumber/cucumber-jvm/pull/1014) Mykola Gurov)
125+
* [Examples] Properly quit selenium in webbit examples ([#1146](https://github.com/cucumber/cucumber-jvm/pull/1146) Alberto Scotto)
126+
* [JUnit] Use AssumptionFailed to mark scenarios/steps as skipped ([#1142](https://github.com/cucumber/cucumber-jvm/pull/1142) Björn Rasmusson)
127+
* [Core] Map AssumptionViolatedException to Skipped status ([#1145](https://github.com/cucumber/cucumber-jvm/pull/1145), [#1007](https://github.com/cucumber/cucumber-jvm/issues/1007) Björn Rasmusson)
128+
* [Java] SnippetGenerator recognises parameters from Scenario Outline ([#1078](https://github.com/cucumber/cucumber-jvm/pull/1078) Andrey Vokin)
129+
* [Java8] Allow lambda steps to throw checked Exceptions ([#1001](https://github.com/cucumber/cucumber-jvm/issues/1001), [#1110](https://github.com/cucumber/cucumber-jvm/pull/1110) Christian Hujer)
130+
* [JUnit] Add `--[no-]step-notifications` option to JunitOptions (no step notifications is the default) ([#1135](https://github.com/cucumber/cucumber-jvm/pull/1135), [#1159](https://github.com/cucumber/cucumber-jvm/pull/1159), [#263](https://github.com/cucumber/cucumber-jvm/issues/263), [#935](https://github.com/cucumber/cucumber-jvm/issues/935), [#577](https://github.com/cucumber/cucumber-jvm/issues/577) M.P. Korstanje, Björn Rasmusson)
131+
* [JUnit] Use deterministic unique ids in Descriptions ([#1134](https://github.com/cucumber/cucumber-jvm/pull/1134), [#1120](https://github.com/cucumber/cucumber-jvm/issues/1120) mpkorstanje)
132+
* [All] Support [Tag Expressions](https://github.com/cucumber/cucumber/tree/master/tag-expressions) (part of [#1035](https://github.com/cucumber/cucumber-jvm/pull/1035) Björn Rasmusson)
133+
* [All] Upgrade to Gherkin 4.1 ([#1035](https://github.com/cucumber/cucumber-jvm/pull/1035), [#1131](https://github.com/cucumber/cucumber-jvm/pull/1131), [#1133](https://github.com/cucumber/cucumber-jvm/pull/1133) Björn Rasmusson, M.P. Korstanje). This also fixes:
134+
* JsonFormatter attach text to last step when sceneario.write is invoked from after hook ([#1080](https://github.com/cucumber/cucumber-jvm/issues/1080))
135+
* CucumberOptions: Tags and name do not work well together ([#976](https://github.com/cucumber/cucumber-jvm/issues/976))
136+
* Tags at the examples block are not treated as actual tags in scenario ([#849](https://github.com/cucumber/cucumber-jvm/issues/849))
137+
* NullPointerException from @Before tag ([#638](https://github.com/cucumber/cucumber-jvm/issues/638), [#701](https://github.com/cucumber/cucumber-jvm/issues/701))
138+
* [All] Change the maven groupId to io.cucumber (part of [#1035](https://github.com/cucumber/cucumber-jvm/pull/1035) Björn Rasmusson)
139+
140+
<!-- Releases -->
141+
[2.4.0]: https://github.com/cucumber/cucumber-jvm/compare/v2.3.1...v2.4.0
142+
[2.3.1]: https://github.com/cucumber/cucumber-jvm/compare/v2.3.0...v2.3.1
143+
[2.3.0]: https://github.com/cucumber/cucumber-jvm/compare/v2.2.0...v2.3.0
144+
[2.2.0]: https://github.com/cucumber/cucumber-jvm/compare/v2.1.0...v2.2.0
145+
[2.1.0]: https://github.com/cucumber/cucumber-jvm/compare/v2.0.1...v2.1.0
146+
[2.0.1]: https://github.com/cucumber/cucumber-jvm/compare/v2.0.0...v2.0.1
147+
[2.0.0]: https://github.com/cucumber/cucumber-jvm/compare/v1.2.5...v2.0.0

0 commit comments

Comments
 (0)