Skip to content
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
42 changes: 34 additions & 8 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,38 @@
# Contributing to sentry-java
<p align="center">
<a href="https://sentry.io" target="_blank" align="center">
<img src="https://sentry-brand.storage.googleapis.com/sentry-logo-black.png" width="280">
Comment thread
christophaigner marked this conversation as resolved.
</a>
<br />
</p>

We love pull requests from everyone.
We suggest opening an issue to discuss bigger changes before investing on a big PR.
# Contributing

Thanks for your interest in contributing to `sentry-java`! This guide explains how we work with external contributions and how to get your environment set up. If you have questions, reach out on [Discord](https://discord.com/invite/sentry).

# Submitting Changes

**TL;DR: Discuss your change in a GitHub issue before opening a pull request. We may close PRs that weren't discussed with a maintainer first.**

Every line we merge is code we maintain long-term for hundreds of thousands of apps, so we want to agree on the problem and the approach before anyone writes code. This saves time for you and for us.

## Before You Start

1. **Find or create an issue.** Search the [issue tracker](https://github.com/getsentry/sentry-java/issues) first. If nothing fits, open a new issue describing the problem or feature.
2. **Discuss your approach with a maintainer.** Comment on the issue with what you plan to change and wait for a maintainer to respond before you start working.
3. **Check the assignee.** If the issue is already assigned to someone else, coordinate with them in the issue before starting work.

## Making Your Contribution

- Fork the repo and make your changes on a branch.
- Add tests. Non-trivial PRs won't be accepted without them.
- Don't bump version numbers. We do that when we release.
- Open a PR that links the issue (e.g. `Fixes #123`)
- Name your PR according to our [commit message format](https://develop.sentry.dev/commit-messages/#commit-message-format).
- Keep PRs focused: one change per PR, no unrelated refactors.

## AI Use

You are welcome to use whatever tools you prefer for making a contribution. However, any changes you propose have to be understood, reviewed and tested by you, a human, first, before you submit a pull request with them for the Sentry team to review. If we feel like that didn't happen, we will close the PR outright. For example, we won't review visibly AI-generated PRs from an agent instructed to look for and "fix" open issues in the repo. This aligns with our SDK principle: [every line has an owner](https://develop.sentry.dev/sdk/getting-started/principles/#every-line-has-an-owner).

# Requirements

Expand Down Expand Up @@ -68,8 +99,3 @@ issue without a closing keyword is not enough.

Build and tests are automatically run against branches and pull requests
via GH Actions.


# AI Use

You are welcome to use whatever tools you prefer for making a contribution. However, any changes you propose have to be reviewed and tested by you, a human, first, before you submit a pull request with them for the Sentry team to review. If we feel like that did not happen, we will close the PR outright. For example, we will not review visibly AI-generated PRs from an agent instructed to look for and "fix" open issues in the repo. This aligns with our SDK principle: [every line has an owner](https://develop.sentry.dev/sdk/getting-started/principles/#every-line-has-an-owner).
Loading