Cucumber Expressions > Regular Expressions

403 views
Skip to first unread message

Aslak Hellesøy

unread,
Jul 26, 2017, 5:50:05 PM7/26/17
to Cucumber Users
Hi folks,

We all love Regular Expressions. Or do we? Many don't. While they are powerful, they're not pretty, and you won't ever get anything else than strings out of them.

Say hi to Cucumber Expressions. Not quite the expressive power of Regular Expressions, but gorgeous! And they can convert strings into anything.

Check out the intro blog post:


Cheers,
Aslak


The Cucumber logo is the intellectual property of Cucumber Ltd, a limited company registered in Scotland, number 456793.


UK Headquarters: Cucumber Ltd, Drumsyniebeg, Lochgoilhead, Cairndow, Argyll, PA24 8AN UK.


CONFIDENTIALITY NOTICE: The information in this e-mail is confidential and privileged; it is intended for use solely by the individual or entity named as the recipient hereof. Disclosure, copying, distribution, or use of the contents of this e-mail by persons other than the intended recipient is strictly prohibited and may violate applicable laws. If you have received this e-mail in error, please delete the original message and notify us by email immediately. Thank you. Cucumber Ltd.

Tim Walker

unread,
Jul 27, 2017, 11:17:24 AM7/27/17
to cu...@googlegroups.com
On Wed, Jul 26, 2017 at 3:49 PM, Aslak Hellesøy <as...@cucumber.io> wrote:
Hi folks,

We all love Regular Expressions. Or do we? Many don't. While they are powerful, they're not pretty, and you won't ever get anything else than strings out of them.

Say hi to Cucumber Expressions. Not quite the expressive power of Regular Expressions, but gorgeous! And they can convert strings into anything.

Check out the intro blog post:


Very cool. Great job! Question. Much like the ability to control snake|camel case in snippets generated by missing steps can we keep the regex snippets around as an option? Thank you again, this looks fantastic. Tim
 
Cheers,
Aslak


The Cucumber logo is the intellectual property of Cucumber Ltd, a limited company registered in Scotland, number 456793.


UK Headquarters: Cucumber Ltd, Drumsyniebeg, Lochgoilhead, Cairndow, Argyll, PA24 8AN UK.


CONFIDENTIALITY NOTICE: The information in this e-mail is confidential and privileged; it is intended for use solely by the individual or entity named as the recipient hereof. Disclosure, copying, distribution, or use of the contents of this e-mail by persons other than the intended recipient is strictly prohibited and may violate applicable laws. If you have received this e-mail in error, please delete the original message and notify us by email immediately. Thank you. Cucumber Ltd.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

aslak hellesoy

unread,
Jul 27, 2017, 11:55:54 AM7/27/17
to cu...@googlegroups.com
On Thu, 27 Jul 2017 at 16:17, Tim Walker <walk...@gmail.com> wrote:
On Wed, Jul 26, 2017 at 3:49 PM, Aslak Hellesøy <as...@cucumber.io> wrote:
Hi folks,

We all love Regular Expressions. Or do we? Many don't. While they are powerful, they're not pretty, and you won't ever get anything else than strings out of them.

Say hi to Cucumber Expressions. Not quite the expressive power of Regular Expressions, but gorgeous! And they can convert strings into anything.

Check out the intro blog post:


Very cool. Great job! Question. Much like the ability to control snake|camel case in snippets generated by missing steps can we keep the regex snippets around as an option? Thank you again, this looks fantastic. Tim

I can't really think of a good reason to do so. Why would you want that?

Aslak
 
Cheers,
Aslak


The Cucumber logo is the intellectual property of Cucumber Ltd, a limited company registered in Scotland, number 456793.


UK Headquarters: Cucumber Ltd, Drumsyniebeg, Lochgoilhead, Cairndow, Argyll, PA24 8AN UK.


CONFIDENTIALITY NOTICE: The information in this e-mail is confidential and privileged; it is intended for use solely by the individual or entity named as the recipient hereof. Disclosure, copying, distribution, or use of the contents of this e-mail by persons other than the intended recipient is strictly prohibited and may violate applicable laws. If you have received this e-mail in error, please delete the original message and notify us by email immediately. Thank you. Cucumber Ltd.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

Tim Walker

unread,
Jul 28, 2017, 9:26:05 AM7/28/17
to cu...@googlegroups.com


On Jul 27, 2017 9:55 AM, "aslak hellesoy" <aslak.h...@gmail.com> wrote:

On Thu, 27 Jul 2017 at 16:17, Tim Walker <walk...@gmail.com> wrote:
On Wed, Jul 26, 2017 at 3:49 PM, Aslak Hellesøy <as...@cucumber.io> wrote:
Hi folks,

We all love Regular Expressions. Or do we? Many don't. While they are powerful, they're not pretty, and you won't ever get anything else than strings out of them.

Say hi to Cucumber Expressions. Not quite the expressive power of Regular Expressions, but gorgeous! And they can convert strings into anything.

Check out the intro blog post:


Very cool. Great job! Question. Much like the ability to control snake|camel case in snippets generated by missing steps can we keep the regex snippets around as an option? Thank you again, this looks fantastic. Tim

I can't really think of a good reason to do so. Why would you want that?

I guess because of the power and flexibility of regex.  I like and use things like optionality for pluralization and non-capturing groups for slight syntax differences to keep expressiveness high. Perhaps I like regex and the tools and support that help craft them since they are standard reusable constructs. I guess this is just supporting backwards compatability for the skills we know.

Thank you again. Tim

Aslak
 
Cheers,
Aslak


The Cucumber logo is the intellectual property of Cucumber Ltd, a limited company registered in Scotland, number 456793.


UK Headquarters: Cucumber Ltd, Drumsyniebeg, Lochgoilhead, Cairndow, Argyll, PA24 8AN UK.


CONFIDENTIALITY NOTICE: The information in this e-mail is confidential and privileged; it is intended for use solely by the individual or entity named as the recipient hereof. Disclosure, copying, distribution, or use of the contents of this e-mail by persons other than the intended recipient is strictly prohibited and may violate applicable laws. If you have received this e-mail in error, please delete the original message and notify us by email immediately. Thank you. Cucumber Ltd.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.

aslak hellesoy

unread,
Jul 28, 2017, 7:42:08 PM7/28/17
to cu...@googlegroups.com
On Fri, 28 Jul 2017 at 08:26, Tim Walker <walk...@gmail.com> wrote:


On Jul 27, 2017 9:55 AM, "aslak hellesoy" <aslak.h...@gmail.com> wrote:

On Thu, 27 Jul 2017 at 16:17, Tim Walker <walk...@gmail.com> wrote:
On Wed, Jul 26, 2017 at 3:49 PM, Aslak Hellesøy <as...@cucumber.io> wrote:
Hi folks,

We all love Regular Expressions. Or do we? Many don't. While they are powerful, they're not pretty, and you won't ever get anything else than strings out of them.

Say hi to Cucumber Expressions. Not quite the expressive power of Regular Expressions, but gorgeous! And they can convert strings into anything.

Check out the intro blog post:


Very cool. Great job! Question. Much like the ability to control snake|camel case in snippets generated by missing steps can we keep the regex snippets around as an option? Thank you again, this looks fantastic. Tim

I can't really think of a good reason to do so. Why would you want that?

I guess because of the power and flexibility of regex.  I like and use things like optionality for pluralization and non-capturing groups for slight syntax differences to keep expressiveness high. Perhaps I like regex and the tools and support that help craft them since they are standard reusable constructs. I guess this is just supporting backwards compatability for the skills we know.

Regexps are still supported, and won't go away. The only difference is that if you want to use regexps, you have to write them yourself.

Generated regexps didn't take advantage of fancy regexp features. If you wanted that (fancy character classes, optional captures, negative lookahead etc) the generated ones wouldn't be much help anyway.

What do you think Tim?



Thank you again. Tim

Aslak
 
Cheers,
Aslak


The Cucumber logo is the intellectual property of Cucumber Ltd, a limited company registered in Scotland, number 456793.


UK Headquarters: Cucumber Ltd, Drumsyniebeg, Lochgoilhead, Cairndow, Argyll, PA24 8AN UK.


CONFIDENTIALITY NOTICE: The information in this e-mail is confidential and privileged; it is intended for use solely by the individual or entity named as the recipient hereof. Disclosure, copying, distribution, or use of the contents of this e-mail by persons other than the intended recipient is strictly prohibited and may violate applicable laws. If you have received this e-mail in error, please delete the original message and notify us by email immediately. Thank you. Cucumber Ltd.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

Tim Walker

unread,
Jul 29, 2017, 10:09:54 AM7/29/17
to cu...@googlegroups.com
On Jul 28, 2017 17:42, "aslak hellesoy" <aslak.h...@gmail.com> wrote:
On Fri, 28 Jul 2017 at 08:26, Tim Walker <walk...@gmail.com> wrote:


On Jul 27, 2017 9:55 AM, "aslak hellesoy" <aslak.h...@gmail.com> wrote:

On Thu, 27 Jul 2017 at 16:17, Tim Walker <walk...@gmail.com> wrote:
On Wed, Jul 26, 2017 at 3:49 PM, Aslak Hellesøy <as...@cucumber.io> wrote:
Hi folks,

We all love Regular Expressions. Or do we? Many don't. While they are powerful, they're not pretty, and you won't ever get anything else than strings out of them.

Say hi to Cucumber Expressions. Not quite the expressive power of Regular Expressions, but gorgeous! And they can convert strings into anything.

Check out the intro blog post:


Very cool. Great job! Question. Much like the ability to control snake|camel case in snippets generated by missing steps can we keep the regex snippets around as an option? Thank you again, this looks fantastic. Tim

I can't really think of a good reason to do so. Why would you want that?

I guess because of the power and flexibility of regex.  I like and use things like optionality for pluralization and non-capturing groups for slight syntax differences to keep expressiveness high. Perhaps I like regex and the tools and support that help craft them since they are standard reusable constructs. I guess this is just supporting backwards compatability for the skills we know.

Regexps are still supported, and won't go away. The only difference is that if you want to use regexps, you have to write them yourself.

Generated regexps didn't take advantage of fancy regexp features. If you wanted that (fancy character classes, optional captures, negative lookahead etc) the generated ones wouldn't be much help qanyway.

What do you think Tim?

Understood. The patterns generated the simple general solutions that need twiddling anyway. I have mixed feelings about the multiple solutions without the symmetry in the supporting approaches. I am trying to understand if apps will use all Cucumber expressions or a hybrid of them and regular expressions. I suppose I don't have a strong opinion one way or the other aside from the shared desire to keep things as simple as possible. The clarity of the transforms is so much better with the tradeoff being management of an additional intermediary construct to support it. I need to toddle off and find a project to apply the new goodness! Thanks again. Tim


Thank you again. Tim

Aslak
 
Cheers,
Aslak


The Cucumber logo is the intellectual property of Cucumber Ltd, a limited company registered in Scotland, number 456793.


UK Headquarters: Cucumber Ltd, Drumsyniebeg, Lochgoilhead, Cairndow, Argyll, PA24 8AN UK.


CONFIDENTIALITY NOTICE: The information in this e-mail is confidential and privileged; it is intended for use solely by the individual or entity named as the recipient hereof. Disclosure, copying, distribution, or use of the contents of this e-mail by persons other than the intended recipient is strictly prohibited and may violate applicable laws. If you have received this e-mail in error, please delete the original message and notify us by email immediately. Thank you. Cucumber Ltd.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.

aslak hellesoy

unread,
Aug 1, 2017, 10:15:36 AM8/1/17
to cu...@googlegroups.com
On Sat, 29 Jul 2017 at 09:09, Tim Walker <walk...@gmail.com> wrote:
On Jul 28, 2017 17:42, "aslak hellesoy" <aslak.h...@gmail.com> wrote:
On Fri, 28 Jul 2017 at 08:26, Tim Walker <walk...@gmail.com> wrote:


On Jul 27, 2017 9:55 AM, "aslak hellesoy" <aslak.h...@gmail.com> wrote:

On Thu, 27 Jul 2017 at 16:17, Tim Walker <walk...@gmail.com> wrote:
On Wed, Jul 26, 2017 at 3:49 PM, Aslak Hellesøy <as...@cucumber.io> wrote:
Hi folks,

We all love Regular Expressions. Or do we? Many don't. While they are powerful, they're not pretty, and you won't ever get anything else than strings out of them.

Say hi to Cucumber Expressions. Not quite the expressive power of Regular Expressions, but gorgeous! And they can convert strings into anything.

Check out the intro blog post:


Very cool. Great job! Question. Much like the ability to control snake|camel case in snippets generated by missing steps can we keep the regex snippets around as an option? Thank you again, this looks fantastic. Tim

I can't really think of a good reason to do so. Why would you want that?

I guess because of the power and flexibility of regex.  I like and use things like optionality for pluralization and non-capturing groups for slight syntax differences to keep expressiveness high. Perhaps I like regex and the tools and support that help craft them since they are standard reusable constructs. I guess this is just supporting backwards compatability for the skills we know.

Regexps are still supported, and won't go away. The only difference is that if you want to use regexps, you have to write them yourself.

Generated regexps didn't take advantage of fancy regexp features. If you wanted that (fancy character classes, optional captures, negative lookahead etc) the generated ones wouldn't be much help qanyway.

What do you think Tim?

Understood. The patterns generated the simple general solutions that need twiddling anyway. I have mixed feelings about the multiple solutions without the symmetry in the supporting approaches.

If Cucumber was released for the first time today, it would probably only support Cucumber expressions, and not regexp. The regexp support is there for backwards compatibility.

In my experience, if you're reaching for the advanced features of regexp it's usually a symptom of a vague/inconsistent domain language.

I am trying to understand if apps will use all Cucumber expressions or a hybrid of them and regular expressions.

I'm working on an application that uses Cucumber expressions exclusively, and I don't expect we'll ever need to use regexp. If we do, we'll take that as a cue to tighten our domain language and use Cucumber expressions instead.

For existing applications that use regexp, I see 3 equally valid options:

a) Continue to use regexp because that's what the team is used to
b) Use Cucumber expressions for new stepdefs, but leave existing ones as regexp
c) Translate all existing stepdefs to use Cucumber expressions

In Cucumber Ruby we went for c)

I suppose I don't have a strong opinion one way or the other aside from the shared desire to keep things as simple as possible. The clarity of the transforms is so much better with the tradeoff being management of an additional intermediary construct to support it. I need to toddle off and find a project to apply the new goodness! Thanks again. Tim

Let us know how you get on with it Tim. We don't have a lot of feedback of how it feels to use yet, except our own experience.

Aslak


Thank you again. Tim

Aslak
 
Cheers,
Aslak


The Cucumber logo is the intellectual property of Cucumber Ltd, a limited company registered in Scotland, number 456793.


UK Headquarters: Cucumber Ltd, Drumsyniebeg, Lochgoilhead, Cairndow, Argyll, PA24 8AN UK.


CONFIDENTIALITY NOTICE: The information in this e-mail is confidential and privileged; it is intended for use solely by the individual or entity named as the recipient hereof. Disclosure, copying, distribution, or use of the contents of this e-mail by persons other than the intended recipient is strictly prohibited and may violate applicable laws. If you have received this e-mail in error, please delete the original message and notify us by email immediately. Thank you. Cucumber Ltd.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

George Dinwiddie

unread,
Aug 1, 2017, 10:28:32 AM8/1/17
to cu...@googlegroups.com
On 8/1/17 10:15 AM, aslak hellesoy wrote:
>
> On Sat, 29 Jul 2017 at 09:09, Tim Walker <walk...@gmail.com
> <mailto:walk...@gmail.com>> wrote:
>
> On Jul 28, 2017 17:42, "aslak hellesoy" <aslak.h...@gmail.com
> <mailto:aslak.h...@gmail.com>> wrote:
>
> On Fri, 28 Jul 2017 at 08:26, Tim Walker <walk...@gmail.com
> <mailto:walk...@gmail.com>> wrote:
>
>
>
> On Jul 27, 2017 9:55 AM, "aslak hellesoy"
> <aslak.h...@gmail.com <mailto:aslak.h...@gmail.com>>
I've mostly used regex for a/an and singular/plural situations. Does
Cucumber expressions have means to handle these?
- George

--
----------------------------------------------------------------------
* George Dinwiddie * http://blog.gdinwiddie.com
Software Development http://www.idiacomputing.com
Consultant and Coach http://www.agilemaryland.org
----------------------------------------------------------------------

aslak hellesoy

unread,
Aug 1, 2017, 10:43:16 AM8/1/17
to cu...@googlegroups.com

Richard Lawrence

unread,
Aug 1, 2017, 11:25:29 AM8/1/17
to cu...@googlegroups.com
I finally had a chance to read through the docs on this. Nicely done! As a big proponent of regular expressions in Cucumber, I was skeptical when this effort started, but I'm impressed with how this incorporates what I like about regular expressions with what I like about growing a rich domain language. 

Now we just need consistent support across Cucumber implementations. (I'm especially looking forward to seeing this in Cucumber-JVM and SpecFlow, since I get called to teach those most often.) 

Richard


On Tue, Aug 1, 2017 at 8:42 AM, aslak hellesoy <aslak.h...@gmail.com> wrote:
On Tue, 1 Aug 2017 at 09:28, George Dinwiddie <li...@idiacomputing.com> wrote:
On 8/1/17 10:15 AM, aslak hellesoy wrote:
>
> On Sat, 29 Jul 2017 at 09:09, Tim Walker <walk...@gmail.com
> <mailto:walk...@gmail.com>> wrote:
>
>     On Jul 28, 2017 17:42, "aslak hellesoy" <aslak.h...@gmail.com
>     <mailto:aslak.hellesoy@gmail.com>> wrote:
>
>         On Fri, 28 Jul 2017 at 08:26, Tim Walker <walk...@gmail.com
>         <mailto:walk...@gmail.com>> wrote:
>
>
>
>             On Jul 27, 2017 9:55 AM, "aslak hellesoy"
>             <aslak.h...@gmail.com <mailto:aslak.hellesoy@gmail.com>>
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+unsubscribe@googlegroups.com.

aslak hellesoy

unread,
Aug 1, 2017, 10:50:17 PM8/1/17
to Cucumber Users
On Tue, Aug 1, 2017 at 10:24 AM, Richard Lawrence <richard.lawrence@agileforall.com> wrote:
I finally had a chance to read through the docs on this. Nicely done! As a big proponent of regular expressions in Cucumber, I was skeptical when this effort started, but I'm impressed with how this incorporates what I like about regular expressions with what I like about growing a rich domain language. 


Thanks Richard - that's great to hear, particularly from someone like you who's been using BDD and Cucumber since the very beginning!
 
Now we just need consistent support across Cucumber implementations. (I'm especially looking forward to seeing this in Cucumber-JVM and SpecFlow, since I get called to teach those most often.) 


The Cucumber Expressions library is already implemented in Java, but it hasn't been integrated into Cucumber-JVM yet. The library uses Java 8 features, while Cucumber-JVM is still supporting Java 7. We need to decide whether we should a) backport Cucumber Expressions to Java 7 and continue to support this unsupported Java version, or b) draw a line in the sand and say that the next versions of Cucumber-JVM will require Java 8. What do you think?

As for SpecFlow support - step 1 would be to port the Java version of Cucumber Expressions to C# (with a pull request to cucumber), step 2 would be to change SpecFlow to use it (with a pull request to specflow). We're looking for contributors to help with this.

Dan Lynch

unread,
Aug 2, 2017, 8:23:06 AM8/2/17
to Cukes
On Tuesday, August 1, 2017 at 10:50:17 PM UTC-4, Aslak Hellesøy wrote:
The library uses Java 8 features, while Cucumber-JVM is still supporting Java 7. We need to decide whether we should a) backport Cucumber Expressions to Java 7 and continue to support this unsupported Java version, or b) draw a line in the sand and say that the next versions of Cucumber-JVM will require Java 8. What do you think?

Wouldn't this kind of "line in the sand" also mean the end of support for the Android platform by Cucumber-JVM? I think that would be unfortunate. And there are probably many other users still relying on Java 7.

Dan Lynch

aslak hellesoy

unread,
Aug 2, 2017, 8:40:27 AM8/2/17
to cu...@googlegroups.com
Wouldn't Java 8 be ok as long as we stay within the Java 8 feature set supported by Android?


Aslak


Dan Lynch

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.

Dan Lynch

unread,
Aug 2, 2017, 9:00:23 AM8/2/17
to Cukes
On Wednesday, August 2, 2017 at 8:40:27 AM UTC-4, Aslak Hellesøy wrote:
Wouldn't Java 8 be ok as long as we stay within the Java 8 feature set supported by Android?


That toolchain ran into a lot of unexpected problems, and was deprecated while it was still "experimental". The replacement functionality is in a preview state only.

Assuming Java 8 language support does eventually make it into a stable release of the Android SDK build tools, and achieves mainstream success, then there should be no problem. However, any Android apps being written today using only stable, non-experimental, non-deprecated build tools are not capable of supporting any Java 8 language features.

Dan Lynch

Richard Lawrence

unread,
Aug 2, 2017, 1:43:23 PM8/2/17
to cu...@googlegroups.com
On Tue, Aug 1, 2017 at 8:49 PM, aslak hellesoy <aslak.h...@gmail.com> wrote:


On Tue, Aug 1, 2017 at 10:24 AM, Richard Lawrence <richard.lawrence@agileforall.com> wrote:
I finally had a chance to read through the docs on this. Nicely done! As a big proponent of regular expressions in Cucumber, I was skeptical when this effort started, but I'm impressed with how this incorporates what I like about regular expressions with what I like about growing a rich domain language. 


Thanks Richard - that's great to hear, particularly from someone like you who's been using BDD and Cucumber since the very beginning!
 
Now we just need consistent support across Cucumber implementations. (I'm especially looking forward to seeing this in Cucumber-JVM and SpecFlow, since I get called to teach those most often.) 


The Cucumber Expressions library is already implemented in Java, but it hasn't been integrated into Cucumber-JVM yet. The library uses Java 8 features, while Cucumber-JVM is still supporting Java 7. We need to decide whether we should a) backport Cucumber Expressions to Java 7 and continue to support this unsupported Java version, or b) draw a line in the sand and say that the next versions of Cucumber-JVM will require Java 8. What do you think?

Most of my clients who are using Java are still on Java 7, and I'd love to bring Cucumber Expressions to them, provided backporting isn't too onerous. (I'd love even more to see my clients using Java 8, but that's more difficult to make happen.)
 

As for SpecFlow support - step 1 would be to port the Java version of Cucumber Expressions to C# (with a pull request to cucumber), step 2 would be to change SpecFlow to use it (with a pull request to specflow). We're looking for contributors to help with this.

I'd love to help make this happen, but I don't even have a current Windows VM at the moment, let alone a .NET dev environment. I'll think whether there's anyone else I know who might be interested and capable, though.
 

 
Richard


Mark Levison

unread,
Aug 2, 2017, 1:46:21 PM8/2/17
to cu...@googlegroups.com
On Wed, Aug 2, 2017 at 1:42 PM, Richard Lawrence <richard....@agileforall.com> wrote:


On Tue, Aug 1, 2017 at 8:49 PM, aslak hellesoy <aslak.h...@gmail.com> wrote:


On Tue, Aug 1, 2017 at 10:24 AM, Richard Lawrence <richard.lawrence@agileforall.com> wrote:
I finally had a chance to read through the docs on this. Nicely done! As a big proponent of regular expressions in Cucumber, I was skeptical when this effort started, but I'm impressed with how this incorporates what I like about regular expressions with what I like about growing a rich domain language. 


Thanks Richard - that's great to hear, particularly from someone like you who's been using BDD and Cucumber since the very beginning!
 
Now we just need consistent support across Cucumber implementations. (I'm especially looking forward to seeing this in Cucumber-JVM and SpecFlow, since I get called to teach those most often.) 


The Cucumber Expressions library is already implemented in Java, but it hasn't been integrated into Cucumber-JVM yet. The library uses Java 8 features, while Cucumber-JVM is still supporting Java 7. We need to decide whether we should a) backport Cucumber Expressions to Java 7 and continue to support this unsupported Java version, or b) draw a line in the sand and say that the next versions of Cucumber-JVM will require Java 8. What do you think?

Most of my clients who are using Java are still on Java 7, and I'd love to bring Cucumber Expressions to them, provided backporting isn't too onerous. (I'd love even more to see my clients using Java 8, but that's more difficult to make happen.)
 

As for SpecFlow support - step 1 would be to port the Java version of Cucumber Expressions to C# (with a pull request to cucumber), step 2 would be to change SpecFlow to use it (with a pull request to specflow). We're looking for contributors to help with this.

I'd love to help make this happen, but I don't even have a current Windows VM at the moment, let alone a .NET dev environment. I'll think whether there's anyone else I know who might be interested and capable, though.

​You can do .NET dev work on OSX - I do it occasionally for fun (I've not tried SpecFlow on my Mac).

Cheers
Mark​

aslak hellesoy

unread,
Aug 2, 2017, 11:04:34 PM8/2/17
to cu...@googlegroups.com
Yes, both VSCode and Xamarin Studio work great on mac.


Cheers
Mark​

--
Posting rules: http://cukes.info/posting-rules.html
---
You received this message because you are subscribed to the Google Groups "Cukes" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cukes+un...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages