// This file works around dependabot issue https://github.com/dependabot/dependabot-core/issues/1618
// See https://www.sameerkulkarni.de/posts/dependabot-with-gradle/

ext {
    // PICOCLI VERSION

    // projectPreviousPublishedVersion is non-SNAPSHOT, only published releases
    projectPreviousPublishedVersion = "4\\.7\\.6"      // for task bumpReadmeVersion
    // projectPreviousVersionRegex may be a SNAPSHOT
    projectPreviousVersionRegex     = "4\\.7\\.6"      // for task bumpVersion
    projectVersion                  = "4.7.7-SNAPSHOT" // for all build tasks
    releaseDate                     = "2024-05-07"     // for task bumpVersion
    releaseDatePreviousRegex        = "2024\\-05\\-07" // for task bumpVersion

    // DEPENDENCIES
    asciidoctorGradlePluginVersion = "4.0.2"
    compileTestingVersion          = "0.21.0"
    groovyVersion       = "2.4.21"
    hamcrestCoreVersion = "2.2"
    ivyVersion          = "2.5.2"
    jacocoVersion       = "0.8.2"
    jansiVersion        = "2.4.1"
    jline2Version       = "2.14.6"
    jline3Version       = "3.26.1"
    junitDepVersion     = "4.11"
    junitVersion        = "4.13.2"
    log4j2Version       = "2.23.1"
    springBootVersion   = "3.1.2" // Spring Boot 3.0 requires Java 17 as a minimum version
    systemRulesVersion  = "1.19.0"
    systemLambdaVersion = '1.2.1'
    junit5Version       = '5.10.2'

    supportDependencies = [
        junit             : "junit:junit:$junitVersion",
        junit5Api         : "org.junit.jupiter:junit-jupiter-api:$junit5Version",
        junit5Engine      : "org.junit.jupiter:junit-jupiter-engine:$junit5Version",
        systemLambda      : "com.github.stefanbirkner:system-lambda:$systemLambdaVersion",
        hamcrestCore      : "org.hamcrest:hamcrest-core:$hamcrestCoreVersion",
        jansi             : "org.fusesource.jansi:jansi:$jansiVersion",
        groovy            : "org.codehaus.groovy:groovy-all:$groovyVersion",
        systemRules       : "com.github.stefanbirkner:system-rules:$systemRulesVersion",
        junitParams       : "pl.pragmatists:JUnitParams:1.1.1",
        springbootstarter : "org.springframework.boot:spring-boot-starter:$springBootVersion",
        springbootannproc : "org.springframework.boot:spring-boot-configuration-processor:$springBootVersion",
        springboottest    : "org.springframework.boot:spring-boot-starter-test:$springBootVersion",
        jline3            : "org.jline:jline:$jline3Version",
        jline2            : "jline:jline:$jline2Version",
        ivy               : "org.apache.ivy:ivy:$ivyVersion",
        compileTesting    : "com.google.testing.compile:compile-testing:$compileTestingVersion",
        log4j2api         : "org.apache.logging.log4j:log4j-api:$log4j2Version",
        log4j2core        : "org.apache.logging.log4j:log4j-core:$log4j2Version",
        kotlin_stdlib     : "org.jetbrains.kotlin:kotlin-stdlib",
        scala_lang        : "org.scala-lang:scala-library:2.13.14",
        validation_api    : "jakarta.validation:jakarta.validation-api:3.0.2",
        //el_api            : "jakarta.el:jakarta.el-api:3.0.3",
        el_impl           : "org.glassfish:jakarta.el:4.0.2",

        hibernate_validator_annproc: "org.hibernate.validator:hibernate-validator-annotation-processor:8.0.1.Final",
        hibernate_validator        : "org.hibernate.validator:hibernate-validator:8.0.1.Final",

        kotlin_script_runtime      : "org.jetbrains.kotlin:kotlin-script-runtime:1.9.23",
    ]
}
