Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Target message protocol from upstream Cucumber project #130

Open
pjlsergeant opened this issue Aug 16, 2018 · 5 comments
Open

Target message protocol from upstream Cucumber project #130

pjlsergeant opened this issue Aug 16, 2018 · 5 comments

Comments

@pjlsergeant
Copy link
Collaborator

There are a number of parsing and output protocols in the upstream Cucumber project that if we targeted properly, we could use more of their tooling

@ehuelsmann
Copy link
Collaborator

ehuelsmann commented Sep 2, 2019

I would argue that the reverse is true: if we part with our own parser (and use theirs), we can use more of their tooling. My proposal is to move to the Gherkin parser in their tree (after it gets fixed using cucumber/common#694).

@ehuelsmann
Copy link
Collaborator

I've tried fixing their parser and succeeded. However, quite soon after the working code was contributed, they broke it again.

In order to fix the official parser, I'll need to add a dependency on a protobuf library (https://metacpan.org/pod/Google::ProtocolBuffers::Dynamic). The output they generate isn't the usual binary protobuf output, but JSONLD instead.

I'm not sure I like the dependency on the protobuf library. At least JSON::XS is self-contained. The protobuf library is a binding for an external library, which means an extra hurdle for installation.

@ehuelsmann
Copy link
Collaborator

The Perl code in their parser has been upgraded to comply with the latest language definition. Waiting for a release.

@ehuelsmann
Copy link
Collaborator

Current state of affairs is that there is no dependency on proto if anymore. Instead, there are jsonschemas which map to ndjson structures. Which allows tapping into the wire protocol much more easily (or rather, at all, imo).

@ehuelsmann
Copy link
Collaborator

Oh. And the Perl parser has been released.

@ehuelsmann ehuelsmann changed the title Target wire protocol from upstream Cucumber project better Target wire protocol from upstream Cucumber project Jul 19, 2021
@ehuelsmann ehuelsmann changed the title Target wire protocol from upstream Cucumber project Target message protocol from upstream Cucumber project Aug 11, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants