Skip to content

Latest commit

 

History

History
83 lines (59 loc) · 3.65 KB

CONTRIBUTING.md

File metadata and controls

83 lines (59 loc) · 3.65 KB

Contributing

Community contributions to libdatadog are welcome 😃! See below for some basic guidelines.

Want to request a new feature?

Many great ideas for new features come from the community, and we'd be happy to consider yours!

To share your request, you can open a Github issue with the details about what you'd like to see. At a minimum, please provide:

  • The goal of the new feature
  • A description of how it might be used or behave
  • Links to any important resources (e.g. GitHub repos, websites, screenshots, specifications, diagrams)

Additionally, if you can, include:

  • A description of how it could be accomplished
  • Code snippets that might demonstrate its use or implementation
  • Screenshots or mockups that visually demonstrate the feature
  • Links to similar features that would serve as a good comparison
  • (Any other details that would be useful for implementing this feature!)

Found a bug?

For any urgent matters (such as outages) or issues concerning the Datadog service or UI, contact our support team via https://docs.datadoghq.com/help/ for direct, faster assistance.

You can submit bug reports concerning libdatadog by opening a Github issue. At a minimum, please provide:

  • A description of the problem
  • Steps to reproduce
  • Expected behavior
  • Actual behavior
  • Errors or warnings received
  • Any details you can share about your configuration

If at all possible, also provide:

  • Logs (from the library/profiler/application/agent) or other diagnostics
  • Screenshots, links, or other visual aids that are publicly accessible
  • Code sample or test that reproduces the problem
  • An explanation of what causes the bug and/or how it can be fixed

Reports that include rich detail are better, and ones with code that reproduce the bug are best.

Have a patch?

We welcome code contributions to the library, which you can submit as a pull request. To create a pull request:

  1. Fork the repository from https://github.com/datadog/libdatadog
  2. Make any changes for your patch
  3. Write tests that demonstrate how the feature works or how the bug is fixed
  4. Update any documentation especially for new features.
  5. Submit the pull request from your fork back to the latest revision of the main branch on https://github.com/datadog/libdatadog

The pull request will be run through our CI pipeline, and a project member will review the changes with you. At a minimum, to be accepted and merged, pull requests must:

  • Have a stated goal and detailed description of the changes made
  • Include thorough test coverage and documentation, where applicable
  • Pass all tests and code quality checks (linting/coverage/benchmarks) on CI
  • Receive at least one approval from a project member with push permissions

We also recommend that you share in your description:

  • Any motivations or intent for the contribution
  • Links to any issues/pull requests it might be related to
  • Links to any webpages or other external resources that might be related to the change
  • Screenshots, code samples, or other visual aids that demonstrate the changes or how they are implemented
  • Benchmarks if the feature is anticipated to have performance implications
  • Any limitations, constraints or risks that are important to consider

If at any point you have a question or need assistance with your pull request, feel free to mention a project member! We're always happy to help contributors with their pull requests.

Final word

Many thanks to all of our contributors, and looking forward to seeing you on Github! 🎉