|
| 1 | +# Contributing Guide |
| 2 | + |
| 3 | +This Contributing Guide is intended for those that would like to contribute to this repository. |
| 4 | + |
| 5 | +If you would like to use any of the published modules in your project, you can instead |
| 6 | +include the artifacts from the Maven Central repository using your build tool of choice or the published container images. |
| 7 | + |
| 8 | +## Code of Conduct |
| 9 | + |
| 10 | +See [our Contributor Code of Conduct](https://github.com/micrometer-metrics/.github/blob/main/CODE_OF_CONDUCT.md). |
| 11 | + |
| 12 | +## Contributions |
| 13 | + |
| 14 | +Contributions come in various forms and are not limited to code changes. The community benefits from |
| 15 | +contributions in all forms. |
| 16 | + |
| 17 | +For example, those with knowledge and experience can contribute by: |
| 18 | + |
| 19 | +* Answering [Stackoverflow questions](https://stackoverflow.com/tags/prometheus-rsocket-proxy) |
| 20 | +* Answering questions on the [Micrometer slack](https://slack.micrometer.io) |
| 21 | +* Share knowledge in other ways (e.g. presentations, blogs) |
| 22 | + |
| 23 | +The remainder of this document will focus on guidance for contributing code changes. It will help contributors to build, |
| 24 | +modify, or test the source code. |
| 25 | + |
| 26 | +## Include a Signed Off By Trailer |
| 27 | + |
| 28 | +All commits must include a *Signed-off-by* trailer at the end of each commit message to indicate that the contributor agrees to the [Developer Certificate of Origin](https://developercertificate.org). |
| 29 | +For additional details, please refer to the blog post [Hello DCO, Goodbye CLA: Simplifying Contributions to Spring](https://spring.io/blog/2025/01/06/hello-dco-goodbye-cla-simplifying-contributions-to-spring). |
| 30 | + |
| 31 | +## Getting the source |
| 32 | + |
| 33 | +The source code is hosted on GitHub at https://github.com/micrometer-metrics/prometheus-rsocket-proxy. You can use a |
| 34 | +Git client to clone the source code to your local machine. |
| 35 | + |
| 36 | +## Building |
| 37 | + |
| 38 | +This project targets Java 8. |
| 39 | + |
| 40 | +The Gradle wrapper is provided and should be used for building with a consistent version of Gradle. |
| 41 | + |
| 42 | +The wrapper can be used with a command, for example, `./gradlew check` to build the project and check conventions. |
| 43 | + |
| 44 | +## Importing into an IDE |
| 45 | + |
| 46 | +This repository should be imported as a Gradle project into your IDE of choice. |
| 47 | + |
| 48 | +## Testing changes locally |
| 49 | + |
| 50 | +Specific modules or a test class can be run from your IDE for convenience. |
| 51 | + |
| 52 | +The Gradle `check` task depends on the `test` task, and so tests will be run as part of a build as described previously. |
| 53 | + |
| 54 | +### Publishing local snapshots |
| 55 | + |
| 56 | +Run `./gradlew pTML` to publish a Maven-style snapshot to your Maven local repo. The build automatically calculates |
| 57 | +the "next" version for you when publishing snapshots. |
| 58 | + |
| 59 | +These local snapshots can be used in another project to test the changes. |
0 commit comments