Skip to content

Commit f61e51b

Browse files
committed
Update dependency io.cucumber:gherkin to v24
1 parent 250617a commit f61e51b

File tree

6 files changed

+17
-13
lines changed

6 files changed

+17
-13
lines changed

cucumber-bom/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
<properties>
1515
<ci-environment.version>9.1.0</ci-environment.version>
1616
<cucumber-expressions.version>16.0.0</cucumber-expressions.version>
17-
<html-formatter.version>19.2.0</html-formatter.version>
17+
<html-formatter.version>20.0.0</html-formatter.version>
1818
<tag-expressions.version>4.1.0</tag-expressions.version>
1919
</properties>
2020

cucumber-core/src/main/java/io/cucumber/core/options/CommandlineOptionsParser.java

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import java.util.List;
2525
import java.util.Optional;
2626
import java.util.ResourceBundle;
27+
import java.util.Set;
2728
import java.util.function.Function;
2829
import java.util.regex.Pattern;
2930
import java.util.stream.Collectors;
@@ -199,15 +200,15 @@ private String removeArgFor(String arg, List<String> args) {
199200

200201
private byte printI18n(String language) {
201202
GherkinDialectProvider dialectProvider = new GherkinDialectProvider();
202-
List<String> languages = dialectProvider.getLanguages();
203+
Set<String> languages = dialectProvider.getLanguages();
203204

204205
if (language.equalsIgnoreCase("help")) {
205206
if (language.equalsIgnoreCase("help")) {
206-
List<GherkinDialect> dialects = new ArrayList<>();
207-
for (String code : languages) {
208-
GherkinDialect dialect = dialectProvider.getDialect(code, null);
209-
dialects.add(dialect);
210-
}
207+
List<GherkinDialect> dialects = languages.stream()
208+
.map(dialectProvider::getDialect)
209+
.filter(Optional::isPresent)
210+
.map(Optional::get)
211+
.collect(Collectors.toList());
211212

212213
int widestLanguage = findWidest(dialects, GherkinDialect::getLanguage);
213214
int widestName = findWidest(dialects, GherkinDialect::getName);
@@ -220,7 +221,8 @@ private byte printI18n(String language) {
220221
}
221222
}
222223
if (languages.contains(language)) {
223-
return printKeywordsFor(dialectProvider.getDialect(language, null));
224+
dialectProvider.getDialect(language)
225+
.ifPresent(this::printKeywordsFor);
224226
}
225227

226228
out.println("Unrecognised ISO language code");

cucumber-gherkin-messages/src/main/java/io/cucumber/core/gherkin/messages/GherkinMessagesFeatureParser.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,9 @@ public Optional<Feature> parse(URI path, String source, Supplier<UUID> idGenerat
5656
cucumberQuery.update(feature);
5757
GherkinDialectProvider dialectProvider = new GherkinDialectProvider();
5858
String language = feature.getLanguage();
59-
GherkinDialect dialect = dialectProvider.getDialect(language, null);
59+
GherkinDialect dialect = dialectProvider.getDialect(language)
60+
// Can't happen, we just parsed the feature.
61+
.orElseThrow(() -> new IllegalStateException(language + "was not a known gherkin Dialect"));
6062

6163
List<io.cucumber.messages.types.Pickle> pickleMessages = envelopes.stream()
6264
.map(Envelope::getPickle)

cucumber-java/src/main/groovy/generate-annotations.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ def unsupported = ["em", "en_tx"] // The generated files for Emoij and Texan do
1616
GherkinDialectProvider dialectProvider = new GherkinDialectProvider()
1717

1818
dialectProvider.getLanguages().each { language ->
19-
def dialect = dialectProvider.getDialect(language, null)
19+
def dialect = dialectProvider.getDialect(language).get()
2020
def normalized_language = dialect.language.replaceAll("[\\s-]", "_").toLowerCase()
2121
if (!unsupported.contains(normalized_language)) {
2222
dialect.stepKeywords.findAll { !it.contains('*') && !it.matches("^\\d.*") }.unique().each { kw ->

cucumber-java8/src/main/groovy/generate-interfaces.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ def unsupported = ["em", "en_tx"] // The generated files for Emoij and Texan do
99
GherkinDialectProvider dialectProvider = new GherkinDialectProvider()
1010

1111
dialectProvider.getLanguages().each { language ->
12-
def dialect = dialectProvider.getDialect(language, null)
12+
def dialect = dialectProvider.getDialect(language).get()
1313
def normalized_language = dialect.language.replaceAll("[\\s-]", "_").toLowerCase()
1414
if (!unsupported.contains(normalized_language)) {
1515
def templateSource = new File(project.basedir, "src/main/groovy/lambda.java.gsp").getText()

pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020

2121
<!-- io.cucumber dependencies -->
2222
<!-- Whenever messages is updated run `make update-cck` -->
23-
<messages.version>18.0.0</messages.version>
24-
<gherkin.version>23.0.1</gherkin.version>
23+
<messages.version>19.0.0</messages.version>
24+
<gherkin.version>24.0.0</gherkin.version>
2525

2626
<!--Maven plugins-->
2727
<groovy.version>2.5.15</groovy.version>

0 commit comments

Comments
 (0)