Skip to content

Releases: gwen-interpreter/gwen

4.2.0

17 Jan 01:03
Compare
Choose a tag to compare
  • Use unique id to name video file attachments
  • Synchronise masked value cache

4.1.2

26 Dec 20:43
Compare
Choose a tag to compare
  • Update dependencies
    • Update scala from v3.5.2 to v3.6.2
    • Update gherkin from v30.0.0 to v30.0.4
    • Update jline from v3.27.1 to v3.28.0
    • Update logback-core from v1.5.12 to v1.5.15
    • Update commons-text from v1.12.0 to v1.13.0
    • Update jackson-databind from v2.18.1 to v2.18.2

4.1.1

22 Dec 21:24
Compare
Choose a tag to compare
  • Revert:
    • Do not honor @Try annotation in dry run mode when a reference is invalid

4.1.0

20 Dec 03:02
Compare
Choose a tag to compare
  • Add support for masking input data fields
  • Ensure masked fields are unmasked when evaluating javascript
  • Added DSLs
    • <step> <while|until> <name> is[ not] <blank|empty>
    • <step> <while|until> <name> is[ not] "<value>"
    • <step> <while|until> <name> <match> "<expression>"
    • <step> <while|until> <name> does not <match> "<expression>"
  • Do not honor @Try annotation in dry run mode when a reference is invalid

4.0.3

09 Dec 22:11
Compare
Choose a tag to compare
  • Do not check step rules when resolving guard references in dry runs

4.0.2

09 Dec 21:35
Compare
Choose a tag to compare
  • Resolve guard references in dry runs

4.0.1

15 Nov 01:14
Compare
Choose a tag to compare
  • Load associative meta after common meta

4.0.0

14 Nov 21:41
Compare
Choose a tag to compare
  • Introduce profiles to support multiple launch configurations
    • -p|--profile option
  • Internal engine enhancements
  • Replace redundant multi scoped data caches with one single scoped cache
  • Manage settings internally without exposing them as system properties
  • Manage implicits at lifecycle level using boundary level caching
  • Require Java 17+ instead of Java 11+
  • Use logback instead of log4j for logging
  • Support empty literal in DSLs wherever blank is accepted
  • Make all input data read only by default
  • Add --repl option to open REPL regardless of batch and feature options
  • Change ignore placeholder syntax in template matcher from !{} to @{*}
  • Add @{**} placeholder to template matcher to support ignoring multiple lines
  • Print gwen launch arguments on startup
  • Synchronise system process bindings when resolving value from output stream
  • Do not permit scope attribute on results file configuration when logging with annoation or DSL
  • Only log results file records if results format is specified in launch options
  • Skip logging to result file if the scope or status don't match
    • and disable calling step when logged via DSL
  • Log unresolved field value if interpolation fails during result file logging
  • Support relative file locations in @Import and @Examples annotations
  • Load all associative meta if features are specified with --repl option
  • Auto discover associative meta only
  • Update dependencies
    • Update scala from v3.5.0 to v3.5.2
    • Update gherkin from v29.0.0 to v30.0.0
    • Update jline from v3.26.3 to v3.27.1
    • Update logback-core from v1.5.9 to v1.5.12
    • Update logback-classic from v1.5.9 to v1.5.12
    • Update jackson-databind from v2.17.2 to v2.18.1
  • Add settings(s):
    • gwen.input.data.readOnly
  • Add implicit variable(s):
    • gwen.profile.name
  • Add environment variable(s)
    • GWEN_PROFILE
  • Add DSL step(s):
    • I attach "<filepath>"
      • For attaching files to Gwen reports (where the name of the attachment will be the name of the file)
    • I log record to <resultsFileId> file
      • For explicitly logging records to configured results files
  • Raise deprecations as errors by default instead of logging them as warnings
    Setting Old default New default
    gwen.logLevel.deprecations warn error
  • Deprecated Settings Use this instead
    gwen.cli.options.batch gwen.launch.options.batch
    gwen.cli.options.format gwen.launch.options.format
    gwen.cli.options.inputData gwen.launch.options.inputData
    gwen.cli.options.dryRun gwen.launch.options.dryRun
    gwen.cli.options.features gwen.launch.options.features
    gwen.cli.options.parallel gwen.launch.options.parallel
    gwen.cli.options.meta gwen.launch.options.meta
    gwen.cli.options.report gwen.launch.options.report
    gwen.cli.options.tags gwen.launch.options.tags
    Removed Settings Use this instead
    :----------------------------- :--------------------------
    gwen.auto.discover.data.csv `-i
    gwen.auto.discover.data.json `-i
    gwen.auto.discover.meta `-m
    gwen.associative.meta This is now always on
  • Deprecated Implicit values Use this instead
    gwen.eval.status.keyword gwen.feature.eval.status.keyword
    gwen.eval.status.keyword.upperCased gwen.feature.eval.status.keyword.upperCased
    gwen.eval.status.keyword.lowerCased gwen.feature.eval.status.keyword.lowerCased
    gwen.eval.status.keyword.isPassed gwen.feature.eval.status.keyword.isPassed
    gwen.eval.status.keyword.isFailed gwen.feature.eval.status.keyword.isFailed
    gwen.eval.status.message gwen.feature.eval.status.message
    gwen.eval.status.message.escaped gwen.feature.eval.status.message.escaped
    gwen.eval.status.message.csvEscaped gwen.feature.eval.status.message.csvEscaped
    gwen.eval.duration gwen.feature.eval.duration
    gwen.eval.duration.msecs gwen.feature.eval.duration.msecs
    gwen.eval.duration.secs gwen.feature.eval.duration.secs
    data record number gwen.data.record.number
    data.record.number gwen.data.record.number
    data.record.index gwen.data.record.index
    record.number gwen.table.record.number
    record.index gwen.table.record.index
    iteration.number gwen.iteration.number
    iteration.index gwen.iteration.index
  • Drop deprecated features:
    • Gwen Workspaces warning
    • -p|--properties option
    • Report portal integration
    • Matrix tables
    • Core DSL steps
      • I wait <duration> second[s] when <element> is <actioned>
      • I wait until <condition> when <element> is <actioned>
    • Core DSL steps in favour of base step with @Timeout and @Delay annotations
      • <step> <until|while> <condition> using <delay> <delayUnit> delay
      • <step> <until|while> <condition> using <timeout> <timeoutUnit> timeout
      • <step> <until|while> <condition> using <delay> <delayUnit> delay and <timeout> <timeoutUnit> timeout
      • <step> <until|while> <condition> using no delay and <timeout> <timeoutUnit> timeout
      • <step> <until|while> <condition> using no delay
      • <step> <until|while> <condition> using no delay and <timeout> <timeoutUnit> timeout

3.66.0

09 Oct 00:34
Compare
Choose a tag to compare
  • Add results report format option for declarative CSV reporting
  • Introduce @Results annotation to support logging CSV results at any node level
  • Improved error handling and reporting
  • Add implicit variables:
    • gwen.feature.displayName
    • gwen.feature.eval.started
    • gwen.feature.eval.finished
    • gwen.rule.eval.started
    • gwen.rule.eval.finished
    • gwen.scenario.displayName
    • gwen.scenario.eval.started
    • gwen.scenario.eval.finished
    • gwen.stepDef.displayName
    • gwen.stepDef.eval.started
    • gwen.stepDef.eval.finished
    • gwen.examples.name
    • gwen.examples.eval.start.msecs
    • gwen.examples.eval.started
    • gwen.examples.eval.finished
    • gwen.examples.eval.status.keyword

3.65.0

26 Sep 05:34
Compare
Choose a tag to compare
  • Surround filename in file compare error messages with single quotes instead of double quotes
  • Introduce new implicit attribute:
    • gwen.eval.status.message.csvEscaped = CSV escaped equivalent of gwen.eval.status.message