content: #
  # This file is used to declare the list of libraries
  # which are used as dependencies in the project.
  # See https://docs.gradle.org/7.4.2/userguide/platforms.html#sub:central-declaration-of-dependencies
  #
  # For Micronaut, we have 3 kinds of dependencies:
  #   - managed dependencies, which are exposed to consumers via a BOM (or version catalog)
  #   - managed BOMs, which are imported into the BOM that we generate
  #   - all other dependencies, which are implementation details
  #
  # If a library needs to appear in the BOM of the project, then it must be
  # declared with the "managed-" prefix.
  # If a BOM needs to be imported in the BOM of the project, then it must be
  # declared with the "boms-" prefix.
  # Both managed dependencies and BOMs need to have their version declared via
  # a managed version (a version which alias starts with "managed-"
  
  [versions]
  micronaut = "4.9.11"
  micronaut-platform = "4.9.3"
  micronaut-groovy = "4.7.0"
  micronaut-kotlin = "4.7.0"
  micronaut-docs = "2.0.0"
  micronaut-serde = "2.15.1"
  micronaut-sql = "6.2.1"
  micronaut-opensearch = "1.6.0"
  micronaut-neo4j = "6.10.0"
  micronaut-mongodb = "5.7.0"
  micronaut-elasticsearch = "5.9.0"
  micronaut-redis = "6.8.0"
  micronaut-test = "4.7.0"
  micronaut-test-resources = "2.8.0"
  micronaut-logging = "1.7.0"
  micronaut-gradle-plugin = "4.5.4"
  micronaut-sourcegen = "1.8.2"
  micronaut-grpc = "4.11.0"
  micronaut-oraclecloud = "5.3.2"
  groovy = "4.0.23"
  spock = "2.3-groovy-4.0"
  awaitility = "4.3.0"
  #TODO remove when non vulnerable versions exists
  commons-compress = "1.27.1"
  commons-lang3 = "3.18.0"
  gson = "2.12.0"
  jinjava = "2.8.1"
  
  # Managed versions appear in the BOM
  managed-langchain4j = "1.5.0"
  managed-langchain4j-community = "1.5.0-beta11"
  sonatype-scan = "3.1.3"
  testcontainers-redis = "2.2.4"
  testcontainers = "1.21.3"
  astra-db-client = "1.2.7"
  
  [libraries]
  # TODO Remove when non vulnerable versions exist
  commons-compress = { module = 'org.apache.commons:commons-compress', version.ref = 'commons-compress'  }
  commons-lang3 = { module = 'org.apache.commons:commons-lang3', version.ref = 'commons-lang3' }
  gson = { module = 'com.google.code.gson:gson', version.ref = 'gson' }
  jinjava = { module = "com.hubspot.jinjava:jinjava", version.ref = "jinjava"}
  
  # Micronaut BOMS
  micronaut-core = { module = 'io.micronaut:micronaut-core-bom', version.ref = 'micronaut'  }
  micronaut-groovy = { module = 'io.micronaut.groovy:micronaut-groovy-bom', version.ref = 'micronaut-groovy' }
  micronaut-kotlin = { module = 'io.micronaut.kotlin:micronaut-kotlin-bom', version.ref = 'micronaut-kotlin' }
  micronaut-redis = { module = 'io.micronaut.redis:micronaut-redis-bom', version.ref = 'micronaut-redis' }
  micronaut-grpc = { module = 'io.micronaut.grpc:micronaut-grpc-bom', version.ref = 'micronaut-grpc' }
  micronaut-mongodb = { module = 'io.micronaut.mongodb:micronaut-mongo-bom', version.ref = 'micronaut-mongodb' }
  micronaut-opensearch = { module = 'io.micronaut.opensearch:micronaut-opensearch-bom', version.ref = 'micronaut-opensearch' }
  micronaut-elasticsearch = { module = 'io.micronaut.elasticsearch:micronaut-elasticsearch-bom', version.ref = 'micronaut-elasticsearch' }
  micronaut-neo4j = { module = 'io.micronaut.neo4j:micronaut-neo4j-bom', version.ref = 'micronaut-neo4j' }
  micronaut-logging = { module = 'io.micronaut.logging:micronaut-logging-bom', version.ref = 'micronaut-logging' }
  micronaut-serde = { module = 'io.micronaut.serde:micronaut-serde-bom', version.ref = 'micronaut-serde' }
  micronaut-sql = { module = 'io.micronaut.sql:micronaut-sql-bom', version.ref = 'micronaut-sql' }
  micronaut-oraclecloud = { module = 'io.micronaut.oraclecloud:micronaut-oraclecloud-bom', version.ref = 'micronaut-oraclecloud' }
  micronaut-oraclecloud-bmc-generativeaiinference = { module = 'io.micronaut.oraclecloud:micronaut-oraclecloud-bmc-generativeaiinference' }
  micronaut-sourcegen = { module = 'io.micronaut.sourcegen:micronaut-sourcegen-bom', version.ref = 'micronaut-sourcegen' }
  micronaut-test-resources = { module = 'io.micronaut.testresources:micronaut-test-resources-bom', version.ref = 'micronaut-test-resources' }
  langchain4j = { module = 'dev.langchain4j:langchain4j' }
  langchain4j-jlama = { module = 'dev.langchain4j:langchain4j-jlama' }
  langchain4j-ollama = { module = 'dev.langchain4j:langchain4j-ollama' }
  langchain4j-bedrock = { module = 'dev.langchain4j:langchain4j-bedrock' }
  langchain4j-anthropic = { module = 'dev.langchain4j:langchain4j-anthropic' }
  langchain4j-hugging-face = { module = 'dev.langchain4j:langchain4j-hugging-face' }
  langchain4j-vertex-ai-gemini = { module = 'dev.langchain4j:langchain4j-vertex-ai-gemini' }
  langchain4j-vertex-ai = { module = 'dev.langchain4j:langchain4j-vertex-ai' }
  langchain4j-mistral-ai = { module = 'dev.langchain4j:langchain4j-mistral-ai' }
  langchain4j-open-ai = { module = 'dev.langchain4j:langchain4j-open-ai' }
  langchain4j-azure-open-ai = { module = 'dev.langchain4j:langchain4j-azure-open-ai' }
  langchain4j-redis = { module = 'dev.langchain4j:langchain4j-community-redis' }
  langchain4j-oracle = { module = 'dev.langchain4j:langchain4j-oracle' }
  langchain4j-oci-genai = { module = 'dev.langchain4j:langchain4j-community-oci-genai' }
  langchain4j-mongodb-atlas = { module = 'dev.langchain4j:langchain4j-mongodb-atlas' }
  langchain4j-neo4j = { module = 'dev.langchain4j:langchain4j-community-neo4j' }
  langchain4j-opensearch = { module = 'dev.langchain4j:langchain4j-opensearch' }
  langchain4j-elasticsearch = { module = 'dev.langchain4j:langchain4j-elasticsearch' }
  langchain4j-pgvector = { module = 'dev.langchain4j:langchain4j-pgvector' }
  langchain4j-qdrant = { module = 'dev.langchain4j:langchain4j-qdrant' }
  langchain4j-google-ai-gemini = { module = 'dev.langchain4j:langchain4j-google-ai-gemini' }
  langchain4j-cassandra = { module = 'dev.langchain4j:langchain4j-cassandra' }
  langchain4j-embeddings-all-minilm-l6-v2 = { module = 'dev.langchain4j:langchain4j-embeddings-all-minilm-l6-v2' }
  junit-platform-engine = { module = "org.junit.platform:junit-platform-suite-engine" }
  awaitility = { module = 'org.awaitility:awaitility', version.ref = "awaitility" }
  testcontainers-bom = { module = "org.testcontainers:testcontainers-bom", version.ref = "testcontainers" }
  testcontainers-junit-jupiter = { module = "org.testcontainers:junit-jupiter" }
  testcontainers-redis = { module = "com.redis:testcontainers-redis", version.ref = "testcontainers-redis" }
  testcontainers-neo4j = { module = "org.testcontainers:neo4j" }
  testcontainers-cassandra = { module = "org.testcontainers:cassandra" }
  astra-db-client = { module = "com.datastax.astra:astra-db-client", version.ref = "astra-db-client" }
  
  # BOMs
  langchain4j-bom = { module = "dev.langchain4j:langchain4j-bom", version.ref = "managed-langchain4j" }
  langchain4j-community-bom = { module = "dev.langchain4j:langchain4j-community-bom", version.ref = "managed-langchain4j-community" }
  
  # Plugins
  gradle-micronaut = { module = "io.micronaut.gradle:micronaut-gradle-plugin", version.ref = "micronaut-gradle-plugin" }
  sonatype-scan = { module = "org.sonatype.gradle.plugins:scan-gradle-plugin", version.ref = "sonatype-scan" }
  
  [bundles]
  
  [plugins]
  