Skip to content

Latest commit

 

History

History
87 lines (48 loc) · 3 KB

CONTRIBUTING.md

File metadata and controls

87 lines (48 loc) · 3 KB

Contributing to lockfree

Thank you for your interest in contributing to lockfree! We welcome contributions from the community to help improve, enhance and expand the project. By contributing, you can make a positive impact and help us build better lock-free data structures for Go.

To ensure a smooth and effective contribution process, please review the guidelines outlined below.

How to Contribute

  1. Fork the repository on GitHub.

  2. Clone your forked repository to your local machine:

    git clone https://github.com/your-username/lockfree.git
  3. Create a new branch for your contribution:

    git checkout -b my-contribution
  4. Make your desired changes or additions to the codebase.

  5. Test your changes to ensure they work as intended.

  6. Commit your changes with a descriptive commit message:

    git commit -m "Add feature XYZ" 
  7. Push your changes to your forked repository:

    git push origin my-contribution
  8. Open a pull request on the main repository. Provide a clear and concise description of your changes and any additional information that may be relevant.

  9. Wait for the maintainers to review your pull request. They may provide feedback or request additional changes.

  10. Iterate on the changes as necessary and push new commits to your branch. The pull request will be automatically updated.

  11. Once your pull request is approved, it will be merged into the main repository. Congratulations on your contribution!

Code Guidelines

To maintain consistency and readability, please follow these code guidelines:

  • Use idiomatic Go code.

  • Format your code using make fmt.

  • Lint your code using make lint.

  • Write meaningful variable and function names.

  • Include comments to explain complex logic or provide context.

  • Use make test to run all tests

  • Use make bench to run bechmarks

  • Use make bench-load to run load testing bechmarks

  • Add appropriate tests to ensure the correctness of your changes.

Bug Reports and Feature Requests

If you encounter a bug or have an idea for a new feature, you can open an issue on the GitHub repository. When reporting a bug, please provide detailed steps to reproduce the issue and any relevant information about your environment.

Code of Conduct

Contributors are expected to adhere to the Contributor Covenant Code of Conduct to ensure a respectful and inclusive community. Please familiarize yourself with the code of conduct and abide by its principles when participating in the project.

License

By contributing to LockFree, you agree that your contributions will be licensed under the MIT License along with the rest of the project.

Get in Touch

If you have any questions or need further assistance, feel free to reach out to the maintainers or the community through the project's GitHub repository.

We appreciate your interest and look forward to your contributions!

Happy coding!