By contributing to Talisman, you agree to abide by the code of conduct.
If you are not sure how to begin contributing to Talisman, have a look at the issues tagged under good first issue.
To contribute to Talisman, you need a working golang development environment. Check this link to help you get started with that.
Talisman now uses go modules (GO111MODULE=on) to manage dependencies
Once you have go 1.11 installed and setup, clone the talisman repository. In your working copy, fetch the dependencies by having go mod fetch them for you.
GO111MODULE=on go mod vendor
To run tests GO111MODULE=on go test -mod=vendor ./...
To build Talisman, we can use gox:
gox -osarch="darwin/amd64 linux/386 linux/amd64"
Convenience scripts ./build
and ./clean
perform build and clean-up as mentioned above.
To send in a pull request
- Fork the repo.
- Create a new feature branch based off the master branch.
- Provide the commit message with the the issue number and a proper description.
- Ensure that all the tests pass.
- Submit the pull request.
- Follow the instructions at the end of 'Developing locally' to build the binaries
- Bump the version in install.sh according to semver conventions
- Update the expected hashes in install.sh to match the new binaries you just created (
shasum -b -a256 ...
) - Make release commit and tag with the new version prefixed by
v
(likegit tag v0.3.0
) - Push your release commit and tag:
git push && git push --tags
- Create a new release in github, filling in the new commit tag you just created
- Update the install script hosted on github pages:
git checkout gh-pages
,git checkout master -- install.sh
,git commit -m ...
The latest version will now be accessible to anyone who builds their own binaries, downloads binaries directly from github releases, or uses the install script from the website.