We love your input! We want to make contributing to CDN Service as easy and transparent as possible, whether it's:
- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing new features
- Becoming a maintainer
We use GitHub to host code, to track issues and feature requests, as well as accept pull requests.
- Fork the repo and create your branch from
main. - If you've added code that should be tested, add tests.
- If you've changed APIs, update the documentation.
- Ensure the test suite passes.
- Make sure your code lints.
- Issue that pull request!
- Update the README.md with details of changes to the interface, if applicable.
- Update the docs/ with any new documentation.
- The PR will be merged once you have the sign-off of at least one maintainer.
- Follow Go best practices and style guidelines
- Use meaningful variable and function names
- Write comments for complex logic
- Keep functions small and focused
- Use proper error handling
- Write unit tests for new functionality
- Ensure all tests pass before submitting PR
- Include integration tests where necessary
- Test edge cases and error conditions
- Use the present tense ("Add feature" not "Added feature")
- Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
- Limit the first line to 72 characters or less
- Reference issues and pull requests liberally after the first line
Great Bug Reports tend to have:
- A quick summary and/or background
- Steps to reproduce
- Be specific!
- Give sample code if you can.
- What you expected would happen
- What actually happens
- Notes (possibly including why you think this might be happening)
We love feature requests! When submitting a feature request, please:
- Check if the feature already exists
- Provide a clear description of the feature
- Explain why this feature would be useful
- Be open to feedback and discussion
By contributing, you agree that your contributions will be licensed under its Apache License.