Thank you for your interest in contributing to our project. Whether it’s a bug report, new feature, correction, or additional documentation, we greatly value feedback and contributions from our community.
Please read through this document before submitting any issues or pull requests to ensure we have all the necessary information to effectively respond to your bug report or contribution..
If you don’t know where to start, please join our community on Slack and ask us. We will help you get started!
Before you get started, we ask that you:
- Check out the code of conduct.
- Sign the lakeFS CLA when making your first pull request (individual / corporate)
- Submit any security issues directly to email@example.com
Welcome Hacktoberfest participants! We commit to actively seek, help, and merge your improvements to lakeFS. We’ve labelled some issues with the hacktoberfest label. Please check out our contributing guide.
We know you like badges, stickers, and T-shirts, because we like them too! But, like many other open-source projects, we are seeing an influx of lower quality PRs. During October will be unable to accept PRs if they:
- Only change punctuation or grammar, unless accompanied by an explanation or are clearly better.
- Repeat an existing PR, or try to merge branches authored by other contributors that are under active work.
- Do not affect generated code or documentation in any way.
- Are detrimental: do not compile or cause harm when run.
- Change text or code that should be changed upstream, such as licenses, code of conduct, or React boilerplate.
We shall close such PRs and label them
x/invalid; Digital Ocean will not count those PRs towards Hacktoberfest progress, so such PRs only waste your time and ours.
You can help us accept your PR by adding a clear title and description to the PR and to commits in that PR. “Fixes #1234” or “update README.md” are not as good as “Make lakeFS run 3x faster” or “Add update regarding Hacktoberfest”. Communication is key: If you are uncertain, please open a discussion: ask us on the PR or on the issue.
Want to report a bug or request a feature? Please open an issue
Working on your first Pull Request? You can learn how from this free series, How to Contribute to an Open Source Project on GitHub.
This section was tested on macOS and Linux (Fedora 32, Ubuntu 20.04) - Your mileage may vary
Our Go release workflow holds under go-version the Go version we currently use.
- Install the required dependencies for your OS:
go get github.com/rakyll/statik
(go env GOPATH)/binis in your
$PATH(or at least, that the
- Clone the repository from https://github.com/treeverse/lakeFS
Build the project:
Make sure tests are passing:
- Review this document in full
- Make sure there’s an open issue on GitHub that this pull request addresses, and that it isn’t labeled
- Fork the lakeFS repository
- If you’re adding new functionality, create a new branch named
- If you’re fixing a bug, create a new branch named
fix/<DESCRIPTIVE NAME>-<ISSUE NUMBER>
Once you’ve made the necessary changes to the code, make sure tests pass:
Check linting rules are passing:
lakeFS uses go fmt as a style guide for Go code.
After submitting your pull request, GitHub Actions will automatically run tests on your changes and make sure that your updated code builds and runs on Go 1.14.
Check back shortly after submitting your pull request to make sure that your code passes these checks. If any of the checks come back with a red X, then do your best to address the errors.