Pull requests and Bug reports are always welcome. When contributing to this repository, please first discuss the change you wish to make by opening an issue.
Please note we have a code of conduct, please follow it in all your interactions with the project.
- Clone the repo using
git clone https://github.com/sivaramasubramanian/csvprocessor.git
- Install
go
andmake
if not already installed. - Run
make install
to install the dev dependencies. - Make the changes as per coding guidelines and run the unit tests using
make test
- To run benchmarks, use
make bench
- After verifying the test results, commit the code with commit as per the commit message guidelines
- Push the code and raise a PR for review and follow the Pull request process
- Ensure to add test cases for any changes, to keep the code coverage at a maximum.
- Always run lint (golang-ci lint) before commiting any changes.
- Follow the guidelines given in Golang CodeReviewComments
- Add comments judiciously explaining any changes, wherever necessary.
Please follow Conventional Commits for commit messages
- Ensure that the build pipeline succeeds and if there are any breakages, please change the PR to draft state till the issues are fixed.
- Update the README.md with details of changes to the interface.
- Increase the version numbers in any examples files and the README.md to the new version that this Pull Request would represent. The versioning scheme we use is SemVer.
- You may merge the Pull Request in once you have the sign-off of the maintainers, or if you do not have permission to do that, you may request the maintainer to merge it for you.