Skip to content

Commit 41b3929

Browse files
committed
Update Gherkin version to 9.2.0
1 parent a93b043 commit 41b3929

File tree

4 files changed

+12
-4
lines changed

4 files changed

+12
-4
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ See also the [CHANGELOG](https://github.com/cucumber/cucumber-jvm/blob/master/CH
2121
- Hooks definition changed
2222
- See [Upgrade Guide](docs/upgrade_v5.md)
2323
- [Build] Update Scala versions to 2.12.11 and 2.13.1 ([#23](https://github.com/cucumber/cucumber-jvm-scala/issues/23) Gaël Jourdan-Weil)
24+
- [Gherkin] Update Gherkin version to 9.2.0
25+
- New `MR` and `ME` traits available
2426

2527
### Deprecated
2628

pom.xml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
<outputDirectory>${project.build.directory}</outputDirectory>
3232
<scala-maven-plugin.version>3.4.6</scala-maven-plugin.version>
3333
<cucumber.version>5.6.0</cucumber.version>
34-
<gherkin.version>5.1.0</gherkin.version>
34+
<gherkin.version>9.2.0</gherkin.version>
3535
<groovy.version>2.4.19</groovy.version>
3636
<jackson-databind.version>2.10.3</jackson-databind.version>
3737
<junit.version>4.12</junit.version>
@@ -143,6 +143,10 @@
143143
<artifactId>groovy-all</artifactId>
144144
<version>${groovy.version}</version>
145145
</dependency>
146+
<!--
147+
Gherkin is used during build time to generate code. We add it to the plugin classpath to prevent polluting
148+
the compile/test classpaths.
149+
-->
146150
<dependency>
147151
<groupId>io.cucumber</groupId>
148152
<artifactId>gherkin</artifactId>

scala/sources/src/main/groovy/I18n.scala.gsp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package io.cucumber.scala
22

3-
<% gherkin.GherkinDialectProvider.DIALECTS.keySet().findAll { !unsupported.contains(it) }.each { language -> %>
3+
<% dialectProvider.getLanguages().findAll { !unsupported.contains(it) }.each { language -> %>
44
trait ${language.replaceAll("[\\s-]", "_").toUpperCase()} {
55
this: ScalaDsl =>
66
<% dialectProvider.getDialect(language, null).stepKeywords.findAll { !it.contains('*') && !it.matches("^\\d.*") }.sort().unique().each { kw -> %>
Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
import groovy.text.SimpleTemplateEngine
2-
import gherkin.GherkinDialectProvider
2+
import io.cucumber.gherkin.GherkinDialectProvider
33

44
SimpleTemplateEngine engine = new SimpleTemplateEngine()
55
def templateSource = new File(project.baseDir, "../sources/src/main/groovy/I18n.scala.gsp").getText()
66

7-
def unsupported = ["em"]
7+
def unsupported = ["em"] // The generated files for Emoji do not compile.
88
GherkinDialectProvider dialectProvider = new GherkinDialectProvider()
9+
910
def binding = ["dialectProvider":dialectProvider, "unsupported":unsupported]
1011
template = engine.createTemplate(templateSource).make(binding)
12+
1113
def file = new File(project.baseDir, "target/generated-sources/i18n/io/cucumber/scala/I18n.scala")
1214
file.parentFile.mkdirs()
1315
file.write(template.toString(), "UTF-8")

0 commit comments

Comments
 (0)