Skip to content
New issue

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

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

Already on GitHub? # to your account

Move the formatters to an internal package. #319

Closed
lonnblad opened this issue Jun 23, 2020 · 2 comments
Closed

Move the formatters to an internal package. #319

lonnblad opened this issue Jun 23, 2020 · 2 comments
Assignees
Milestone

Comments

@lonnblad
Copy link
Member

lonnblad commented Jun 23, 2020

To create a bit more structure and to decouple the code base in the root directory of the repository, I would like to move the formatters to its own internal package.

@lonnblad lonnblad added this to the v0.11.0 milestone Jun 23, 2020
@lonnblad lonnblad changed the title Move the formatters to an internal pkg Move the formatters to an internal package. Jun 23, 2020
@aslakhellesoy
Copy link
Contributor

We've started to do this over in the monorepo:

The idea is to publish formatters as libraries. Their public API is a function that accepts a stream of cucumber messages. The formatter libraries can be used inside Cucumber implementations, but they can also be published as command line tools.

By keeping them in the monorepo we can more easily ensure that various implementations behave the same. For the more complex ones we can do this using a shared set of test data (and expected output) like we're doing for gherkin.

What are the formatters you want to move out? Would you consider moving them to the monorepo? It's always interesting to add another one - any slight inconcistency is an opportunity for improvement!

@lonnblad
Copy link
Member Author

I believe that we should work towards moving the formatters to the monorepo as a long term goal, but my aim with this improvement is to continue the work to decouple different parts of godog, so it will be easier to work with whole project.

There are still issues with how godog does some things that need to be solved before we can use more of the cucumber messages, an example is that the timestamps in the protobuf messages are not compatible with how godog handle timestamps during testing.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants