Skip to content
Gherkin parser/compiler for Go
Go Makefile HTML Other
Branch: master
Clone or download

Latest commit

mpkorstanje build: Add mono and berp to docker (#1001)
To make cucumber/cucumber#771 possible we need both mono and berp. Currently mono isn't installed and berp is checked in as a binary executable. Both are less then ideal. 

Currently mono isn't supported on the same version of alpine as .NET Core SDK 2.2.2. To avoid messing around too much with APK which doesn't support mono yet I've changed the base image to `ubuntu:20.04`. This makes it easier to install mono.

Additionally we can now also use the node version manager to manage the node and npm versions. They'll be installed without the need for global permissions. This solves another long standing build headace.

The make file will now use `mono  /var/lib/berp/1.1.1/tools/net471/Berp.exe -g gherkin.berp` which is less out of the box then it was before, but the exact installation instructions for berp and mono can be found in the `Dockerfile`.
Latest commit 72491cb May 31, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Migrate from git subrepo to splitsh-lite May 21, 2018
cmd Release gherkin v13.0.0 Apr 14, 2020
gherkin-generate-tokens Release gherkin v13.0.0 Apr 14, 2020
scripts Release messages v9.0.2 Jan 10, 2020
testdata Update testdata Apr 13, 2020
.gitignore build: Add mono and berp to docker (#1001) May 31, 2020
.rsync build: Add mono and berp to docker (#1001) May 31, 2020
.subrepo go: More consistent Makefiles - default.mk Jul 9, 2018
LICENSE git subrepo clone https://github.com/cucumber/gherkin-go.git gherkin/go Jan 8, 2017
Makefile build: Add mono and berp to docker (#1001) May 31, 2020
README.md all: Remove travis-ci references (#934) Mar 13, 2020
astbuilder.go Upgrade to messages 12.0.0 Apr 14, 2020
bench_test.go Upgrade to messages 12.0.0 Apr 14, 2020
default.mk Release gherkin v9.2.0 Jan 22, 2020
dialect.go Gherkin Rule keyword and Protocol Buffer messages (#416) Jun 29, 2018
dialects_builtin.go Update generated dialects_builtin.go May 15, 2020
dialects_builtin.go.jq Gherkin Rule keyword and Protocol Buffer messages (#416) Jun 29, 2018
example_test.go Upgrade to messages 12.0.0 Apr 14, 2020
gherkin-languages.json Rsync gherkin-languages.json May 14, 2020
gherkin.berp Gherkin Rule keyword and Protocol Buffer messages (#416) Jun 29, 2018
gherkin.go Upgrade to messages 12.0.0 Apr 14, 2020
go.mod Post release gherkin v13.0.0 Apr 14, 2020
go.sum Release gherkin v13.0.0 Apr 14, 2020
matcher.go gherkin: Do not trim leading newlines (#891) Feb 7, 2020
messages.go Upgrade to messages 12.0.0 Apr 14, 2020
messages_test.go Upgrade to messages 12.0.0 Apr 14, 2020
parser.go gherkin/go : remove underscore notation Aug 16, 2018
parser.go.razor gherkin/go : remove underscore notation Aug 16, 2018
pickles.go Upgrade to messages 12.0.0 Apr 14, 2020
pickles_test.go Upgrade to messages 12.0.0 Apr 14, 2020
remove_empty.jq gherkin: Implement rules in Go Jul 1, 2018
test.feature Add test script to debug the problem Aug 6, 2018
test.sh Gherkin requires Source to STDIN to be inside a Wrapper (for consiste… Aug 27, 2018

README.md

Gherkin for Go

GoDoc Go Report Card

Gherkin parser/compiler for Go. Please see Gherkin for details.

Building

You need Go installed (obviously). You also need to make sure your PATH points to where Go installs packages:

# Add go bin to path
export PATH=$(go env GOPATH)/bin:${PATH}

Now build it:

make .dist

You should have cross-compiled binaries in ./dist/.

Compress binaries

You need upx installed.

make .dist
make .dist-compressed

Your ./dist_compressed/ directory should now have compressed binaries. Compression fails for some binaries, so you likely won't have a full set.

The build copies the successfully compressed binaries back to ./dist/.

You can’t perform that action at this time.