Pull requests for bug fixes are welcome, but before submitting new features or changes to current functionality, please open an issue and discuss your ideas or propose the changes you wish to make first. After a resolution is reached a PR can be submitted for review.
When opening a pull request, please open it as a draft to not auto assign reviewers before you feel the pull request is in a reviewable state.
Check Adding a New Instrumentation for instructions on adding a new instrumentation.
Check How Instrumentations Work for a deep dive into how instrumentations work.
Prior to contributing to the project, you can quickly check your development environment using the ./setup.sh
command
line, and fix any issue found using the Building documentation.
This project includes a .editorconfig
file for basic editor settings.
This file is supported by most common text editors.
We have automatic code formatting enabled in Gradle configuration using Spotless Gradle plugin. Main goal is to avoid extensive reformatting caused by different IDEs having different opinion about how things should be formatted by establishing single point of truth.
To reformat all the files that need reformatting:
./gradlew spotlessApply
To run formatting verify task only:
./gradlew spotlessCheck
For IntelliJ IDEA, we suggest the following settings and plugin:
In contrast to the IntelliJ IDEA set up the default JVM to build and run tests from the command line should be Java 8.
- Use Java 8 to build and run tests:
Project Structure
>Project
>SDK
> Use a JDK 1.8 - Configure import formatting:
Editor
>Code Style
>Java/Groovy
>Imports
- Google Java Format plugin
- Gradle fails with a "too many open files" error.
- You can check the
ulimit
for open files in your current shell by doingulimit -n
and raise it by callingulimit -n <new number>
- You can check the
More past issues
-
When Gradle is building the project, the error
Could not find netty-transport-native-epoll-4.1.43.Final-linux-x86_64.jar
is shown.- Execute
rm -rf ~/.m2/repository/io/netty/netty-transport*
in a Terminal and re-build again.
- Execute
-
IntelliJ 2021.3 complains
Failed to find KotlinGradleProjectData for GradleSourceSetData
https://youtrack.jetbrains.com/issue/KTIJ-20173- Switch to
IntelliJ IDEA CE 2021.2.3
- Switch to
-
IntelliJ Gradle fails to import the project with
JAVA_11_HOME must be set to build Java 11 code
- A workaround is to run IntelliJ from terminal with
JAVA_11_HOME
- In order to verify what's visible from IntelliJ use
Add Configuration
bar and go toAdd New
->Gradle
->Environmental Variables
- A workaround is to run IntelliJ from terminal with