import org.gradle.plugins.ide.idea.model.*
import org.apache.tools.ant.filters.ReplaceTokens
import t5build.*

description = "Tapestry classes that handle HTTP requests"

dependencies {
    implementation project(':tapestry-ioc')
    implementation project(':tapestry-json')
    implementation project(':beanmodel')

    provided project(":tapestry-test")
    provided project(":tapestry-test-constants")

    provided "javax.servlet:javax.servlet-api:${versions.servletapi}"

    implementation "commons-codec:commons-codec:1.10"
    implementation "commons-io:commons-io:2.11.0"

    testRuntimeOnly "org.hsqldb:hsqldb:1.8.0.10"

    testRuntimeOnly 'com.google.inject:guice:3.0'
}

// Not sure why this is necessary:
compileTestGroovy.dependsOn compileTestJava

jar {
    from("src/main/filtered-resources") {
        filter(ReplaceTokens, tokens: [version: project.parent.version])
    }
}