-
Always run unit tests before committing.
make
will take care of this. -
Some files are generated from other files. They should be committed into the repository for this package to be go-gettable. Run
go generate ./...
to regenerate them in case you modified the source.We use the
stringer
tool in some generation rules. Install withgo get -u golang.org/x/tools/cmd/stringer
. -
Always format the code with
goimports
before committing. Rungo get golang.org/x/tools/cmd/goimports
to installgoimports
, andgoimports -w .
to format all golang sources.To automate this you can set up a
goimports
filter for Git by putting this in~/.gitconfig
:[filter "goimports"] clean = goimports smudge = cat
Git will then always run
goimports
for you before committing, since.gitattributes
in this repository refers to this filter. More about Git attributes and filters here.
If you are making significant changes or any user-visible changes (e.g. changes to the language, the UI or the elv script API), please discuss on the developer channel before starting to work.
By contributing, you agree to license your code under the same license as existing source code of elvish. See the LICENSE file.