diff --git a/.editorconfig b/.editorconfig index 201ab30485ca..df5bcd178fae 100644 --- a/.editorconfig +++ b/.editorconfig @@ -761,3 +761,7 @@ ij_properties_spaces_around_key_value_delimiter = false [{*.yaml, *.yml}] ij_yaml_keep_indents_on_empty_lines = false ij_yaml_keep_line_breaks = true + +[*.md] +# Markdown line length is handled by rumdl +max_line_length = off diff --git a/.github/agents/code-review-and-fix.agent.md b/.github/agents/code-review-and-fix.agent.md index e0c34dc20d80..885a7be002ea 100644 --- a/.github/agents/code-review-and-fix.agent.md +++ b/.github/agents/code-review-and-fix.agent.md @@ -178,27 +178,27 @@ Auto-fix boundaries: but absent from the current module's check (or vice versa) reveal a version boundary — the class was likely added or removed between versions. Then determine the comment form for each class: - **Positive floor class** (proves "at least version X"): look up when the class was - **introduced** → comment `// added in X.Y`. - **Positive ceiling class** (proves "not yet version Y"): look up when the class was - **removed** → comment `// removed in Y.Z` (meaning: its presence here ensures we - don't match version Y.Z+ where a different module takes over). - **Negated exclusion class** in `not(hasClassesNamed(...))`: look up when the class was - **introduced** → comment `// added in Y.Z`, because that first appearance begins the - excluded version range. - **Single positive class that provides both bounds**: include both facts in one comment, - e.g. `// added in X.Y, removed in Y.Z`. - A ceiling class might have been *introduced* much earlier than the module's target version. - Do not use `// added in` for a positive ceiling class — that is misleading. The relevant - fact is when it was **removed**. But for a negated exclusion class, `// added in` is the - correct form because the class's introduction is exactly what starts excluding newer versions. - Validate the version in the comment before adding or requesting it. Do not guess the - version from the module name alone; confirm it with repository or upstream evidence. - Sources: muzzle `versions.set(...)` ranges, sibling module `classLoaderMatcher()` checks, - module directory names, existing code comments, Javadoc/release notes. - Do NOT add a `classLoaderMatcher()` override where one does not already exist — - this method is only for version-boundary detection when muzzle is insufficient, - not for optimization (use `TypeInstrumentation.classLoaderOptimization()` instead) + **Positive floor class** (proves "at least version X"): look up when the class was + **introduced** → comment `// added in X.Y`. + **Positive ceiling class** (proves "not yet version Y"): look up when the class was + **removed** → comment `// removed in Y.Z` (meaning: its presence here ensures we + don't match version Y.Z+ where a different module takes over). + **Negated exclusion class** in `not(hasClassesNamed(...))`: look up when the class was + **introduced** → comment `// added in Y.Z`, because that first appearance begins the + excluded version range. + **Single positive class that provides both bounds**: include both facts in one comment, + e.g. `// added in X.Y, removed in Y.Z`. + A ceiling class might have been *introduced* much earlier than the module's target version. + Do not use `// added in` for a positive ceiling class — that is misleading. The relevant + fact is when it was **removed**. But for a negated exclusion class, `// added in` is the + correct form because the class's introduction is exactly what starts excluding newer versions. + Validate the version in the comment before adding or requesting it. Do not guess the + version from the module name alone; confirm it with repository or upstream evidence. + Sources: muzzle `versions.set(...)` ranges, sibling module `classLoaderMatcher()` checks, + module directory names, existing code comments, Javadoc/release notes. + Do NOT add a `classLoaderMatcher()` override where one does not already exist — + this method is only for version-boundary detection when muzzle is insufficient, + not for optimization (use `TypeInstrumentation.classLoaderOptimization()` instead) - redundant `isMethod()` in method matchers inside `transform()` when the matcher already names a specific, non-empty method (e.g., `isMethod().and(named("execute"))` → `named("execute")`). Do not remove `isMethod()` when the name could be empty — diff --git a/.github/config/.rumdl.toml b/.github/config/.rumdl.toml new file mode 100644 index 000000000000..f741c5d63fab --- /dev/null +++ b/.github/config/.rumdl.toml @@ -0,0 +1,15 @@ +# See https://rumdl.dev/ +# and https://rumdl.dev/rules/ +[global] +# disable link text should be descriptive check +disable = ["MD059", "line-length", "no-inline-html", "MD041", "MD022", "ul-style", "fenced-code-language"] + +[no-duplicate-heading] +siblings-only = true + +[no-trailing-punctuation] +# allowing exclamation points and question marks at end of sentences +punctuation = ".,;:" + +[ol-prefix] +style = "ordered" diff --git a/.github/config/flint.toml b/.github/config/flint.toml new file mode 100644 index 000000000000..2f04bf06dcc1 --- /dev/null +++ b/.github/config/flint.toml @@ -0,0 +1,6 @@ +[settings] +exclude = ["CHANGELOG.md", "licenses/licenses.md"] +setup_migration_version = 2 + +[checks.lychee] +check_all_local = true diff --git a/.github/prompts/fix-pr-ci-failures.md b/.github/prompts/fix-pr-ci-failures.md index 1a3f39dabf66..bf8e0a8e3b7d 100644 --- a/.github/prompts/fix-pr-ci-failures.md +++ b/.github/prompts/fix-pr-ci-failures.md @@ -64,6 +64,7 @@ Create `/tmp/ci-plan.md` (outside the repo — no risk of accidental commit): # CI Failure Analysis Plan ## Failed Jobs Summary + - Job 1: (job ID: ) ... @@ -74,6 +75,7 @@ Create `/tmp/ci-plan.md` (outside the repo — no risk of accidental commit): - Log files: /tmp/.log, ... ## Suspected Flaky / Infra Failures (skipped) + - : ## Notes diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 429374bc3ff5..a722eb583900 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -1,6 +1,7 @@ { $schema: 'https://docs.renovatebot.com/renovate-schema.json', extends: [ + "github>grafana/flint#v0.21.0", 'config:best-practices', 'helpers:pinGitHubActionDigestsToSemver', ':semanticCommits', @@ -385,17 +386,6 @@ }, ], customManagers: [ - { - // keep SHA-pinned raw.githubusercontent.com URLs in mise.toml up to date - customType: 'regex', - datasourceTemplate: 'github-tags', - managerFilePatterns: [ - '/^mise\\.toml$/', - ], - matchStrings: [ - 'https://raw\\.githubusercontent\\.com/(?[^/]+/[^/]+)/(?[a-f0-9]{40})/.*#\\s*(?v\\S+)', - ], - }, // commented out to see whether weekly update passes without this block // { // customType: 'regex', diff --git a/.github/workflows/build-daily.yml b/.github/workflows/build-daily.yml index 9067c003b3b4..f0dd0d10411d 100644 --- a/.github/workflows/build-daily.yml +++ b/.github/workflows/build-daily.yml @@ -23,11 +23,8 @@ jobs: muzzle: uses: ./.github/workflows/reusable-muzzle.yml - link-check: - uses: ./.github/workflows/reusable-link-check.yml - - markdown-lint-check: - uses: ./.github/workflows/reusable-markdown-lint-check.yml + lint: + uses: ./.github/workflows/reusable-lint-check.yml publish-snapshots: environment: protected @@ -76,7 +73,7 @@ jobs: - common - test-latest-deps - muzzle - - link-check + - lint - publish-snapshots if: always() uses: ./.github/workflows/reusable-workflow-notification.yml @@ -86,6 +83,6 @@ jobs: needs.common.result == 'success' && needs.test-latest-deps.result == 'success' && needs.muzzle.result == 'success' && - needs.link-check.result == 'success' && + needs.lint.result == 'success' && needs.publish-snapshots.result == 'success' }} diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 93f6c2b38e49..06ba3d7d1eaa 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -32,14 +32,8 @@ jobs: if: "!startsWith(github.ref_name, 'release/')" uses: ./.github/workflows/reusable-muzzle.yml - link-check: - # release branches are excluded to avoid unnecessary maintenance if external links break - # (and also because the README.md javaagent download link has to be updated on release branches - # before the release download has been published) + lint: + # release branches are excluded because the README.md javaagent download link has to be updated + # on release branches before the release download has been published if: "!startsWith(github.ref_name, 'release/')" - uses: ./.github/workflows/reusable-link-check.yml - - markdown-lint-check: - # release branches are excluded - if: "!startsWith(github.ref_name, 'release/')" - uses: ./.github/workflows/reusable-markdown-lint-check.yml + uses: ./.github/workflows/reusable-lint-check.yml diff --git a/.github/workflows/reusable-link-check.yml b/.github/workflows/reusable-lint-check.yml similarity index 65% rename from .github/workflows/reusable-link-check.yml rename to .github/workflows/reusable-lint-check.yml index 8ea87549c37b..ba77aa5cb400 100644 --- a/.github/workflows/reusable-link-check.yml +++ b/.github/workflows/reusable-lint-check.yml @@ -1,4 +1,4 @@ -name: Reusable - Link check +name: Reusable - Lint check on: workflow_call: @@ -7,7 +7,7 @@ permissions: contents: read jobs: - link-check: + lint-check: runs-on: ubuntu-latest steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 @@ -16,16 +16,18 @@ jobs: - uses: jdx/mise-action@1648a7812b9aeae629881980618f079932869151 # v4.0.1 - - name: Link check for pull requests + - name: Lint for pull requests if: github.event_name == 'pull_request' env: GITHUB_TOKEN: ${{ github.token }} - GITHUB_HEAD_SHA: ${{ github.event.pull_request.head.sha }} + GITHUB_REPOSITORY: ${{ github.repository }} + GITHUB_BASE_REF: ${{ github.base_ref }} + GITHUB_HEAD_REF: ${{ github.head_ref }} PR_HEAD_REPO: ${{ github.event.pull_request.head.repo.full_name }} - run: mise run lint:links + run: mise run lint - - name: Link check for pushes and scheduled workflows + - name: Lint for pushes and scheduled workflows if: github.event_name != 'pull_request' env: GITHUB_TOKEN: ${{ github.token }} - run: mise run lint:links --full + run: mise run lint diff --git a/.github/workflows/reusable-markdown-lint-check.yml b/.github/workflows/reusable-markdown-lint-check.yml deleted file mode 100644 index 5b0dec6dbe45..000000000000 --- a/.github/workflows/reusable-markdown-lint-check.yml +++ /dev/null @@ -1,23 +0,0 @@ -name: Reusable - Markdown lint check - -on: - workflow_call: - -permissions: - contents: read - -jobs: - markdown-lint-check: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - - uses: jdx/mise-action@1648a7812b9aeae629881980618f079932869151 # v4.0.1 - - - name: Run markdownlint - run: | - if ! mise run lint:markdown; then - echo "markdownlint failed. To auto-fix many issues locally, run:" - echo " mise run lint:markdown --fix" - exit 1 - fi diff --git a/.github/workflows/reusable-pr-build.yml b/.github/workflows/reusable-pr-build.yml index 1a7ae02f529b..e35a628a3678 100644 --- a/.github/workflows/reusable-pr-build.yml +++ b/.github/workflows/reusable-pr-build.yml @@ -41,22 +41,18 @@ jobs: with: cache-read-only: true - # this is not a required check to avoid blocking pull requests if external links break - markdown-check: + lint: # release branches are excluded because the README.md javaagent download link has to be updated # on release branches before the release download has been published if: "!startsWith(github.ref_name, 'release/') && !startsWith(github.base_ref, 'release/')" - uses: ./.github/workflows/reusable-link-check.yml - - markdown-lint-check: - uses: ./.github/workflows/reusable-markdown-lint-check.yml + uses: ./.github/workflows/reusable-lint-check.yml required-status-check: needs: - common - test-latest-deps - muzzle - - markdown-lint-check + - lint runs-on: ubuntu-latest if: ${{ always() }} steps: @@ -64,5 +60,8 @@ jobs: needs.common.result != 'success' || needs.test-latest-deps.result != 'success' || needs.muzzle.result != 'success' || - needs.markdown-lint-check.result != 'success' + ( + !startsWith(github.base_ref, 'release/') && + needs.lint.result != 'success' + ) run: exit 1 # fail diff --git a/.markdownlint.yaml b/.markdownlint.yaml deleted file mode 100644 index 513be90ec949..000000000000 --- a/.markdownlint.yaml +++ /dev/null @@ -1,15 +0,0 @@ -# See https://github.com/DavidAnson/markdownlint/blob/main/doc/Rules.md -# and https://github.com/DavidAnson/markdownlint-cli2 - -ul-style: false -line-length: false -no-duplicate-heading: - siblings_only: true -ol-prefix: - style: ordered -no-inline-html: false -fenced-code-language: false -no-trailing-punctuation: - punctuation: ".,;:" # allowing exclamation points and question marks at end of sentences -MD059: false # disable link text should be descriptive check -MD041: false # files with YAML frontmatter don't start with a heading diff --git a/.mise/tasks/lint/markdown.sh b/.mise/tasks/lint/markdown.sh deleted file mode 100755 index c7d41aa63e47..000000000000 --- a/.mise/tasks/lint/markdown.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/env bash -#MISE description="Lint markdown files" -#USAGE flag "--fix" help="Automatically fix issues" - -set -e - -if [ "${usage_fix:-false}" = "true" ]; then - markdownlint-cli2 --fix "**/*.md" "#**/build" "#CHANGELOG.md" "#licenses/licenses.md" -else - markdownlint-cli2 "**/*.md" "#**/build" "#CHANGELOG.md" "#licenses/licenses.md" -fi diff --git a/docs/contributing/documenting-instrumentation.md b/docs/contributing/documenting-instrumentation.md index e95067ea052d..5bb72c1035d1 100644 --- a/docs/contributing/documenting-instrumentation.md +++ b/docs/contributing/documenting-instrumentation.md @@ -64,6 +64,7 @@ Every javaagent instrumentation module should have a README.md file in the javaa [Brief description of what the instrumentation does and what versions it applies to] ## Settings + | System property | Type | Default | Description | |-----------------|------|---------|-------------| | `property.name` | Type | Default | Description | diff --git a/instrumentation-docs/readme.md b/instrumentation-docs/readme.md index 8b04bfb3258d..394f408db7ef 100644 --- a/instrumentation-docs/readme.md +++ b/instrumentation-docs/readme.md @@ -236,7 +236,7 @@ We parse gradle files in order to determine several pieces of metadata: ### Scope For now, the scope name is the only value that is implemented in our instrumentations. The scope -name is determined by the instrumentation module name: `io.opentelemetry.{instrumentation name}` +name is determined by the instrumentation module name: `io.opentelemetry.{instrumentation name}` We will implement gatherers for the schemaUrl and scope attributes when instrumentations start implementing them. diff --git a/instrumentation/apache-httpclient/apache-httpclient-5.2/library/README.md b/instrumentation/apache-httpclient/apache-httpclient-5.2/library/README.md index d698df32094d..2c902b9de09b 100644 --- a/instrumentation/apache-httpclient/apache-httpclient-5.2/library/README.md +++ b/instrumentation/apache-httpclient/apache-httpclient-5.2/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [Apache Http Client 5.2](https://hc.a ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-apache-httpclient-5.2). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-apache-httpclient-5.2). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/aws-lambda/aws-lambda-core-1.0/library/README.md b/instrumentation/aws-lambda/aws-lambda-core-1.0/library/README.md index dcbf60ebebba..ba3f21a428c6 100644 --- a/instrumentation/aws-lambda/aws-lambda-core-1.0/library/README.md +++ b/instrumentation/aws-lambda/aws-lambda-core-1.0/library/README.md @@ -50,7 +50,7 @@ link to tracing information provided by Lambda itself. To do so, add a dependenc `io.opentelemetry.contrib:opentelemetry-aws-xray-propagator`. Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.contrib/opentelemetry-aws-xray-propagator). +release](https://central.sonatype.com/artifact/io.opentelemetry.contrib/opentelemetry-aws-xray-propagator). Gradle: diff --git a/instrumentation/c3p0-0.9/library/README.md b/instrumentation/c3p0-0.9/library/README.md index 25104e1f1565..fb2f05eb77cd 100644 --- a/instrumentation/c3p0-0.9/library/README.md +++ b/instrumentation/c3p0-0.9/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [C3P0](https://www.mchange.com/projec ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-c3p0-0.9). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-c3p0-0.9). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/graphql-java/graphql-java-12.0/library/README.md b/instrumentation/graphql-java/graphql-java-12.0/library/README.md index 14892cd58a08..fe50507771a7 100644 --- a/instrumentation/graphql-java/graphql-java-12.0/library/README.md +++ b/instrumentation/graphql-java/graphql-java-12.0/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [GraphQL Java](https://www.graphql-ja ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-graphql-java-12.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-graphql-java-12.0). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/graphql-java/graphql-java-20.0/library/README.md b/instrumentation/graphql-java/graphql-java-20.0/library/README.md index 27aef38bd404..4dab41d2f99b 100644 --- a/instrumentation/graphql-java/graphql-java-20.0/library/README.md +++ b/instrumentation/graphql-java/graphql-java-20.0/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [GraphQL Java](https://www.graphql-ja ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-graphql-java-12.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-graphql-java-12.0). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/grpc-1.6/library/README.md b/instrumentation/grpc-1.6/library/README.md index 09674fbb97a5..ecba1980aa12 100644 --- a/instrumentation/grpc-1.6/library/README.md +++ b/instrumentation/grpc-1.6/library/README.md @@ -6,7 +6,7 @@ Provides OpenTelemetry instrumentation for [gRPC](https://grpc.io/). ### Add the following dependencies to your project -Replace `OPENTELEMETRY_VERSION` with the [latest release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-grpc-1.6). +Replace `OPENTELEMETRY_VERSION` with the [latest release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-grpc-1.6). For Maven, add the following to your `pom.xml` dependencies: diff --git a/instrumentation/hikaricp-3.0/library/README.md b/instrumentation/hikaricp-3.0/library/README.md index 49fd620870c2..3d78d3ab2a2c 100644 --- a/instrumentation/hikaricp-3.0/library/README.md +++ b/instrumentation/hikaricp-3.0/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [HikariCP](https://github.com/brettwo ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-hikaricp-3.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-hikaricp-3.0). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/java-http-client/library/README.md b/instrumentation/java-http-client/library/README.md index a40ff57550c4..d961f43ef963 100644 --- a/instrumentation/java-http-client/library/README.md +++ b/instrumentation/java-http-client/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [Java HTTP Client](https://openjdk.or ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-java-http-client). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-java-http-client). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/java-http-server/library/README.md b/instrumentation/java-http-server/library/README.md index 4cd445097f4f..3c6727f942d8 100644 --- a/instrumentation/java-http-server/library/README.md +++ b/instrumentation/java-http-server/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [Java HTTP Server](https://docs.oracl ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-java-http-server). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-java-http-server). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/jdbc/library/README.md b/instrumentation/jdbc/library/README.md index 1d1ebb5138c6..26b905c16e15 100644 --- a/instrumentation/jdbc/library/README.md +++ b/instrumentation/jdbc/library/README.md @@ -8,7 +8,7 @@ Provides OpenTelemetry instrumentation for ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-jdbc). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-jdbc). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/README.md b/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/README.md index b22e6d9fcf85..0ff425c01e98 100644 --- a/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/README.md +++ b/instrumentation/kafka/kafka-clients/kafka-clients-2.6/library/README.md @@ -5,7 +5,7 @@ ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-kafka-clients-2.6). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-kafka-clients-2.6). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/ktor/ktor-1.0/library/README.md b/instrumentation/ktor/ktor-1.0/library/README.md index a8028d4571d0..adceb428700f 100644 --- a/instrumentation/ktor/ktor-1.0/library/README.md +++ b/instrumentation/ktor/ktor-1.0/library/README.md @@ -8,7 +8,7 @@ Currently, only server instrumentation is supported. ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-ktor-1.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-ktor-1.0). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/ktor/ktor-2.0/library/README.md b/instrumentation/ktor/ktor-2.0/library/README.md index 22c9d8395d17..107bc23337fd 100644 --- a/instrumentation/ktor/ktor-2.0/library/README.md +++ b/instrumentation/ktor/ktor-2.0/library/README.md @@ -8,7 +8,7 @@ Server and client instrumentations are supported. ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-ktor-2.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-ktor-2.0). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/ktor/ktor-3.0/library/README.md b/instrumentation/ktor/ktor-3.0/library/README.md index 80a3fa2033bc..54ce89836a7e 100644 --- a/instrumentation/ktor/ktor-3.0/library/README.md +++ b/instrumentation/ktor/ktor-3.0/library/README.md @@ -8,7 +8,7 @@ Server and client instrumentations are supported. ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-ktor-3.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-ktor-3.0). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/log4j/log4j-appender-2.17/library/README.md b/instrumentation/log4j/log4j-appender-2.17/library/README.md index de2d081cc942..562a81f79a51 100644 --- a/instrumentation/log4j/log4j-appender-2.17/library/README.md +++ b/instrumentation/log4j/log4j-appender-2.17/library/README.md @@ -9,7 +9,7 @@ which forwards Log4j2 log events to the ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-log4j-appender-2.17). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-log4j-appender-2.17). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/README.md b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/README.md index f81e256cca1f..551d3aceaca0 100644 --- a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/README.md +++ b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/README.md @@ -8,7 +8,7 @@ into log context. ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-log4j-context-data-2.17-autoconfigure). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-log4j-context-data-2.17-autoconfigure). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/logback/logback-appender-1.0/library/README.md b/instrumentation/logback/logback-appender-1.0/library/README.md index 0be6b056386d..0b2a6b508faf 100644 --- a/instrumentation/logback/logback-appender-1.0/library/README.md +++ b/instrumentation/logback/logback-appender-1.0/library/README.md @@ -9,7 +9,7 @@ forwards Logback log events to the ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-logback-appender-1.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-logback-appender-1.0). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/logback/logback-mdc-1.0/library/README.md b/instrumentation/logback/logback-mdc-1.0/library/README.md index ad10a3ee34ac..678d430f451a 100644 --- a/instrumentation/logback/logback-mdc-1.0/library/README.md +++ b/instrumentation/logback/logback-mdc-1.0/library/README.md @@ -8,7 +8,7 @@ mounted span using a custom Logback appender. ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-logback-mdc-1.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-logback-mdc-1.0). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/micrometer/micrometer-1.5/library/README.md b/instrumentation/micrometer/micrometer-1.5/library/README.md index 0c27de3155e7..fd28922b1a86 100644 --- a/instrumentation/micrometer/micrometer-1.5/library/README.md +++ b/instrumentation/micrometer/micrometer-1.5/library/README.md @@ -9,7 +9,7 @@ sends Micrometer metrics to the ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-micrometer-1.5). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-micrometer-1.5). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/okhttp/okhttp-3.0/library/README.md b/instrumentation/okhttp/okhttp-3.0/library/README.md index ac49000bf315..d951722f24e4 100644 --- a/instrumentation/okhttp/okhttp-3.0/library/README.md +++ b/instrumentation/okhttp/okhttp-3.0/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [okhttp3](https://square.github.io/ok ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-okhttp-3.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-okhttp-3.0). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/openai/openai-java-1.1/library/README.md b/instrumentation/openai/openai-java-1.1/library/README.md index d8b1e745d93e..0e1fc7a6193e 100644 --- a/instrumentation/openai/openai-java-1.1/library/README.md +++ b/instrumentation/openai/openai-java-1.1/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [openai-java](https://github.com/open ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-openai-java-1.1). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-openai-java-1.1). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/oracle-ucp-11.2/library/README.md b/instrumentation/oracle-ucp-11.2/library/README.md index 4f8d5ec15c73..e51543127614 100644 --- a/instrumentation/oracle-ucp-11.2/library/README.md +++ b/instrumentation/oracle-ucp-11.2/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [Oracle UCP](https://docs.oracle.com/ ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-oracle-ucp-11.2). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-oracle-ucp-11.2). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/r2dbc-1.0/library/README.md b/instrumentation/r2dbc-1.0/library/README.md index b9e17a09bedb..3171ba481cdb 100644 --- a/instrumentation/r2dbc-1.0/library/README.md +++ b/instrumentation/r2dbc-1.0/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [R2dbc](https://r2dbc.io/). ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-r2dbc-1.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-r2dbc-1.0). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/rocketmq/rocketmq-client-4.8/library/README.md b/instrumentation/rocketmq/rocketmq-client-4.8/library/README.md index 6d0619adee87..e0cac5bafa98 100644 --- a/instrumentation/rocketmq/rocketmq-client-4.8/library/README.md +++ b/instrumentation/rocketmq/rocketmq-client-4.8/library/README.md @@ -6,7 +6,7 @@ Provides OpenTelemetry instrumentation for [Apache RocketMQ](https://rocketmq.ap ### Add the following dependencies to your project -Replace `OPENTELEMETRY_VERSION` with the [latest release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-rocketmq-client-4.8). +Replace `OPENTELEMETRY_VERSION` with the [latest release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-rocketmq-client-4.8). For Maven, add the following to your `pom.xml` dependencies: diff --git a/instrumentation/spring/spring-web/spring-web-3.1/library/README.md b/instrumentation/spring/spring-web/spring-web-3.1/library/README.md index 47e38f91c2c1..df5aef2aa9d3 100644 --- a/instrumentation/spring/spring-web/spring-web-3.1/library/README.md +++ b/instrumentation/spring/spring-web/spring-web-3.1/library/README.md @@ -10,7 +10,7 @@ Replace `SPRING_VERSION` with the version of spring you're using. `Minimum version: 3.1` Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-spring-web-3.1). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-spring-web-3.1). For Maven, add to your `pom.xml` dependencies: diff --git a/instrumentation/spring/spring-webmvc/spring-webmvc-5.3/library/README.md b/instrumentation/spring/spring-webmvc/spring-webmvc-5.3/library/README.md index b724e63e374b..4a648d1f3859 100644 --- a/instrumentation/spring/spring-webmvc/spring-webmvc-5.3/library/README.md +++ b/instrumentation/spring/spring-webmvc/spring-webmvc-5.3/library/README.md @@ -11,7 +11,7 @@ Replace `SPRING_VERSION` with the version of spring you're using. - `Minimum version: 5.3` Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-spring-webmvc-5.3). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-spring-webmvc-5.3). For Maven add the following to your `pom.xml`: diff --git a/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/library/README.md b/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/library/README.md index 52b1a33ee592..223a10937cf0 100644 --- a/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/library/README.md +++ b/instrumentation/spring/spring-webmvc/spring-webmvc-6.0/library/README.md @@ -11,7 +11,7 @@ Replace `SPRING_VERSION` with the version of spring you're using. - `Minimum version: 6.0.0` Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-spring-webmvc-6.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-spring-webmvc-6.0). For Maven add the following to your `pom.xml`: diff --git a/instrumentation/vibur-dbcp-11.0/library/README.md b/instrumentation/vibur-dbcp-11.0/library/README.md index 149d8da48a18..4a028eececb3 100644 --- a/instrumentation/vibur-dbcp-11.0/library/README.md +++ b/instrumentation/vibur-dbcp-11.0/library/README.md @@ -7,7 +7,7 @@ Provides OpenTelemetry instrumentation for [Vibur DBCP](https://www.vibur.org/). ### Add these dependencies to your project Replace `OPENTELEMETRY_VERSION` with the [latest -release]( https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-vibur-dbcp-11.0). +release](https://central.sonatype.com/artifact/io.opentelemetry.instrumentation/opentelemetry-vibur-dbcp-11.0). For Maven, add to your `pom.xml` dependencies: diff --git a/mise.toml b/mise.toml index 2efe0f1ba7af..6991bcbf95d4 100644 --- a/mise.toml +++ b/mise.toml @@ -1,18 +1,17 @@ [tools] + +# Linters +"github:grafana/flint" = "0.21.0" lychee = "0.23.0" -markdownlint-cli2 = "0.22.1" +rumdl = "0.1.80" -[settings] -# Only install tools explicitly defined in the [tools] section above -idiomatic_version_file_enable_tools = [] +[env] +FLINT_CONFIG_DIR = ".github/config" -# Windows configuration for file-based tasks -# Based on: https://github.com/jdx/mise/discussions/4461 -windows_executable_extensions = ["sh"] -windows_default_file_shell_args = "bash" -use_file_shell_for_executable_tasks = true +[tasks.lint] +description = "Run all lints" +run = "flint run" -# Pick the tasks you need from flint (https://github.com/grafana/flint) -[tasks."lint:links"] -description = "Check for broken links in changed files + all local links" -file = "https://raw.githubusercontent.com/grafana/flint/feab606ce514fbbf2722cc26aeafa39956383cf3/tasks/lint/links.sh" # v0.21.0 +[tasks."lint:fix"] +description = "Auto-fix lint issues" +run = "flint run --fix"