# Bill of Materials This library is composed of multiple modules where each module is published as a separate artifact on Maven Central. We also publish a single top-level artifact that automatically brings in all the artifacts of this library, so the simplest way to depend on the entire library is to add a single dependency to the top-level artifact as described in [dependency details](../../README.md#dependency). In addition to the above, we also publish a bill of materials, BOM, which references all the artifact versions in that release. The main use-case for the BOM is if you prefer to pick and choose individual components instead of depending on the entire library. In that case, you can reference the BOM at a particular version and add dependencies for the components that you want without specifying their individual versions. ## Gradle ```kotlin repositories { mavenCentral() } dependencies { // Import the BOM at a particular version implementation(platform("com.danrusu.pods4k:bom:[version_number]")) // Pick the artifacts that you want but don't specify their versions as that's controlled by the BOM implementation("com.danrusu.pods4k.immutable-arrays:core") implementation("com.danrusu.pods4k.immutable-arrays:transformations-to-standard-collections") } ``` ## Maven ```xml com.danrusu.pods4k bom [version_number] pom import com.danrusu.pods4k.immutable-arrays core com.danrusu.pods4k.immutable-arrays transformations-to-standard-collections ``` ## Artifacts The `bom` references the following artifacts: | GroupId | ArtifactId | Description | |:--------------------------------------|:------------------------------------------|:---------------------------------------------------------------------------| | `com.danrusu.pods4k.immutable-arrays` | `core` | The core Immutable Arrays library | | `com.danrusu.pods4k.immutable-arrays` | `transformations-to-standard-collections` | Extensions that transform immutable arrays to standard-library collections |