* Bump javadocs since version to 3.1.0
* Extend integration tests to cover all Kafka clients
* Add autoconfiguration module for kafka instrumentation
* Refactor instrumentation for reactive Kafka Receiver
* Refactor instrumentation for reactive Kafka Receiver
* Add docs for Kafka instrumentation
* Revert "Refactor instrumentation for reactive Kafka Receiver"
This reverts commit 58c8f2fa
* Revert "Revert "Refactor instrumentation for reactive Kafka Receiver""
This reverts commit 450a9f8c
* Remove empty test
* Resolve comments from PR 1936
* Revert whitespaces
* Revert whitespaces in common tests pom.xml
* Fix autoconfig to consider generics when registering beans.
Only register reactor-kafka beans if the dependency is on the classpath.
* Split autoconfig for kafka and reactor-kafka
* Do not autoconfigure Branve Mongo DB trace for async mongo db
* Fix checkstyle violations
* Add Junit to test BraveMongoDBAutoConfig for async mongo db driver
* Minor fixes
* Use JUnit 5
# Modules
* New modules: `spring-cloud-sleuth-autoconfigure`, `spring-cloud-sleuth-api`, `spring-cloud-sleuth-instrumentation`
`spring-cloud-sleuth-core` removed and changed to `spring-cloud-sleuth-instrumentation` & `spring-cloud-sleuth-api`
* Removed `spring-cloud-starter-sleuth-otel`
To add OpenTelemetry support you need to add `spring-cloud-starter-sleuth` (adds Brave by default), exclude Brave and add `spring-cloud-sleuth-otel` dependency
* Except for the tests, `spring-cloud-sleuth-autoconfigure` is the only module that can have access to `@Configuration`, `@ConfigurationProperties` classes.
Tests have been added to ensure such separation.
## Package moving
* `org.springframework.cloud.sleuth.api` -> `org.springframework.cloud.sleuth`
* `org.springframework.cloud.sleuth.brave.autoconfig` -> `org.springframework.cloud.sleuth.autoconfig.brave`
* `org.springframework.cloud.sleuth.otel.autoconfig` -> `org.springframework.cloud.sleuth.autoconfig.otel`
* `org.springframework.cloud.sleuth` -> `org.springframework.cloud.sleuth`
* Instrumentation: `org.springframework.cloud.sleuth.annotation` -> `org.springframework.cloud.sleuth.instrument.annotation`
* All the autoconfiguration classes were moved under `org.springframework.cloud/sleuth.autoconfig` package
## Global class modifications
* Any class registered as a bean is now public
## Classes
* `RateLimitingSampler` constructor changed
* Merged a lot of auto configuration classes into one (e.g. `BraveAutoConfiguration` now imports various other configurations)
* Renamed `TraceBraveAutoConfiguration` to `BraveAutoConfiguration`
* Renamed `TraceOtelAutoConfiguration` to `OtelAutoConfiguration`
* Removed all `NoOp` implementations of the API