|
4 | 4 |
|
5 | 5 | ### Purpose |
6 | 6 |
|
7 | | -This plugin configures various aspects of dependency management. Where values are configurable, a default is specified. |
8 | | -Certain values are configurable via `dependencySettings` extension inside each project build.gradle.kts, but most are |
| 7 | +This plugin configures various aspects of dependency management. Where values are configurable, a |
| 8 | +default is specified. |
| 9 | +Certain values are configurable via `dependencySettings` extension inside each project |
| 10 | +build.gradle.kts, but most are |
9 | 11 | configured only once in a `dependencySettings` extension in settings.gradle.kts. |
10 | 12 |
|
11 | 13 | - Adds a version catalog (default name: `commonLibs`, default |
12 | | - artifact: `org.hypertrace.bom:hypertrace-version-catalog:<catalogVersion>`. catalogVersion must be set explicitly) |
| 14 | + artifact: `org.hypertrace.bom:hypertrace-version-catalog:<catalogVersion>`. catalogVersion must be |
| 15 | + set explicitly) |
13 | 16 | - Renames the default `libs` catalog (from `libs.versions.toml`) to `localLibs` to disambiguate |
14 | 17 | - For each java project: |
15 | 18 | - Adds dependency repositories of mavenLocal, mavenCentral, confluent and hypertrace |
16 | | - - If `autoApplyBom` is specified (default: true), adds a BOM dependency to the `api` configuration (falling back |
| 19 | + - If `autoApplyBom` is specified (default: true), adds a BOM dependency to the `api` |
| 20 | + configuration (falling back |
17 | 21 | to `implementation` if `api` is unavailable). The BOM reference to use (`bomArtifactName` - |
18 | | - default `hypertrace.bom`) and version can also be configured. `bomVersionName` (defaults to `hypertrace.bom`) |
19 | | - describes the name of the version property in the catalog and `bomVersion` (defaults to latest - `+`) describes the value to assign. |
20 | | - - If `useDependencyLocking` is specified (default: true), configures strict dependency locking on certain |
21 | | - configurations (default: `annotationProcessor`, `compileClasspath`, `runtimeClasspath`) |
22 | | - - If `useDependencyLocking` is specified (default: true), adds a project task `resolveAndLockAll`which can be use in |
| 22 | + default `hypertrace.bom`) and version can also be configured. `bomVersionName` (defaults |
| 23 | + to `hypertrace.bom`) |
| 24 | + describes the name of the version property in the catalog and `bomVersion` (defaults to |
| 25 | + latest - `+`) describes the value to assign. |
| 26 | + - If `useDependencyLocking` is specified (default: true), configures strict dependency locking |
| 27 | + on certain |
| 28 | + configurations ( |
| 29 | + default: `annotationProcessor`, `compileClasspath`, `runtimeClasspath`, `testCompileClasspath`, `testRuntimeClasspath`) |
| 30 | + - If `useDependencyLocking` is specified (default: true), adds a project |
| 31 | + task `resolveAndLockAll`which can be use in |
23 | 32 | conjunction with the `--write-locks` flag to update all project lockfiles. |
24 | 33 |
|
25 | 34 | Example usage in `settings.gradle.kts`: |
| 35 | + |
26 | 36 | ```kts |
27 | 37 | plugins { |
28 | | - id("org.hypertrace.dependency-settings") version "0.1.0" |
29 | | - } |
| 38 | + id("org.hypertrace.dependency-settings") version "0.1.0" |
| 39 | +} |
30 | 40 |
|
31 | 41 |
|
32 | | - configure<DependencyPluginSettingExtension> { |
33 | | - catalogVersion.set("0.1.0") |
34 | | - } |
| 42 | +configure<DependencyPluginSettingExtension> { |
| 43 | + catalogVersion.set("0.1.0") |
| 44 | +} |
35 | 45 | ``` |
0 commit comments