Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve Contributor Setup Guide #1

Merged
merged 1 commit into from
Jan 22, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
96 changes: 91 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,96 @@
# Contributing to the OpenTelemetry Protocol with Apache Arrow project

We want to make contributing to this project as easy and transparent
as possible. Please see the OpenTelemetry [CONTRIBUTING.md][]
guidelines for project-wide information, including code of conduct,
and contributor license agreements, copyright notices, and how to
engage with the OpenTelemetry community.
## Introduction

Welcome to the OpenTelemetry Protocol with Apache Arrow project! 🎉
This repository defines and supports Golang libraries for producing and consuming telemetry data streams using the OpenTelemetry Protocol with Apache Arrow.

We value all contributions, whether big or small, and encourage you to join us in improving this project. If you have questions, don’t hesitate to reach out to the OpenTelemetry community—we’re here to help!


## Pre-requisites

To work with this repository, you'll need:

- **Go (Golang):** v1.18 or higher. [Installation Guide](https://golang.org/doc/install)
- **Protocol Buffer Compiler (protoc):** Required for regenerating gRPC services. [Installation Guide](https://grpc.io/docs/protoc-installation/)
- **protoc-gen-go:** Install using:
```shell
go install google.golang.org/protobuf/cmd/[email protected]

## Local Run/Build

### How to set up and run the project locally
TBD

### Commands for building the project and starting the application.
TBD

## Testing
-How to run the test suite for the repository. (TBD)

-Explanation of different types of tests (e.g., unit, integration, or functional). (TBD)

-Tools and frameworks used for testing (TBD)

-How to interpret test results and resolve common test failures. (TBD)

-Mention code coverage expectations or reporting tools if applicable. (TBD)

## Contribution Guidelines
This guide outlines best practices and requirements to ensure a smooth and effective contribution process.

### Adhering to Coding Standards

All contributions must align with the project's coding standards and guidelines. These standards ensure consistency, readability, and maintainability of the codebase. Please review the following:

- Follow the coding standards outlined in [CONTRIBUTING.md](./CONTRIBUTING.md).
- Use clear and concise naming conventions for variables, functions, and files.
- Run linters or formatters where applicable to maintain consistent code style.


### Writing Meaningful Commit Messages

Commit messages are essential for understanding the history and context of changes. Follow these tips for writing effective commit messages:

- Use the conventional commit format:

Examples of `<type>`: `feat` (new feature), `fix` (bug fix), `docs` (documentation updates), `test` (test-related updates), etc.

- Include a brief description of what and why, avoiding overly technical jargon.
- Use present-tense verbs, e.g., "Add" instead of "Added."


### Including Tests for New Features or Bug Fixes

Testing is crucial to ensure code reliability. When contributing:

- Write unit tests for new features and bug fixes.
- Run the test suite before submitting a pull request to verify changes.
-Ensure test coverage remains high, and add tests for edge cases when applicable.

### Community Standards and Style Guides

This project adheres to the OpenTelemetry community's standards. Please ensure you:

Follow the [Code of Conduct](https://github.com/open-telemetry/community/blob/main/code-of-conduct.md).

Align with any specific style guides, such as [Go Style Guide.](https://google.github.io/styleguide/go/)

### Contributor License Agreement (CLA)

Before contributing, you may need to sign a Contributor License Agreement (CLA). This ensures that the community can freely use your contributions.

Instructions for signing the CLA:

Visit [OpenTelemetry CLA Portal](https://docs.linuxfoundation.org/lfx/easycla/contributors) and follow the steps to sign electronically.

## Further Help

If you have any questions or run into issues:

Join the OpenTelemetry [Slack](https://cloud-native.slack.com/archives/C07S4Q67LTF) Community.


## Our Development Process

Expand Down