Rewrite the parser #319

Closed
gabrielfalcao opened this Issue Jan 29, 2013 · 10 comments

Projects

None yet

7 participants

@gabrielfalcao
Owner

The lettuce parser should be rewritten in order to achieve speed and trustfulness

refs #194

@andreyshipilov

Hi there.
Are there any plans to fix that issue, Gabriel? Would be really awesome.
We are using Behave in the meantime, it's kinda horrible I'd say.
And we also have no interest to use Cucumber, because of Ruby of course.

@gabrielfalcao
Owner

@clarete is my best friend and is working on a pure lexer/parser implementation of gherkin, he should be done in the next weeks and I'll plug it into lettuce fixing all those parsing-related problems that lettuce has now

@thedrow
Contributor
thedrow commented Aug 24, 2013

Could @clarete please release it as a separate package?

@clarete
clarete commented Aug 24, 2013

Hi folks, that's actually what I'm doing! I'm planning to release the first version of this new guy in the next weekend and it will definitely be a separate package.

@andreyshipilov

Very much appreciated.

@erisilbe

I'm also interested in this thread. I'd like to be able to pull UserStories from an agile artifact repo,
parse out a delimited section containing the acceptance tests detailed in Lettuce/Gherkin,
edit and write out runnable test(s)

@clarete
clarete commented Sep 20, 2013

Hi there. Since I've been working on a different project these days, gherking is in my wait list. Since I might take more time to finish my current thing, I'll share the current state of the work with you guys in this repo.

I'll eventually finish this project I just think it's good to share it now, so anyone else can join whenever they want! :)

@danni
Collaborator
danni commented Jan 24, 2014

@clarete I'm not sure where you go to with this, but I knocked out a parser using pyparsing today. It passes the parser tests (sans max_length, which I'm ignoring for now). I'm in the process of retro-fitting it into the Lettuce core.

The code is in https://github.com/infoxchange/lettuce/tree/new-parser

@adaschevici
Collaborator

@danni I've been doing a bit of digging in the code and it seems max_length is tied in with the spaces on each line so i think it may be a good idea to adapt the tests for less spacey values since the pyparsing lib is not very fond of spaces.
I haven't been able to run the batch of tests.
It's not detecting this method: Feature.from_string = classmethod(from_string)

@adaschevici
Collaborator

#430 closing this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment