MarginaliaSearch/code/processes/loading-process/build.gradle
Viktor Lofgren dcb43a3308 (slop) Introduce table concept to keep track of positions and simplify closing
The most common error when dealing with Slop columns is that they can fall out of sync with each other if the programmer accidentally does a conditional read and forgets to skip.

The second most common error is forgetting to close one of the columns in a reader or writer.

To deal with both cases, a new class SlopTable is added that keeps track of the lifecycle of all slop columns and performs a check when closing them that they are in sync.
2024-07-27 13:47:47 +02:00

70 lines
2.3 KiB
Groovy

plugins {
id 'java'
id 'application'
id 'jvm-test-suite'
}
java {
toolchain {
languageVersion.set(JavaLanguageVersion.of(rootProject.ext.jvmVersion))
}
}
application {
mainClass = 'nu.marginalia.loading.LoaderMain'
applicationName = 'loader-process'
}
tasks.distZip.enabled = false
apply from: "$rootProject.projectDir/srcsets.gradle"
dependencies {
implementation project(':code:common:process')
implementation project(':code:processes:process-mq-api')
implementation project(':code:index:api')
implementation project(':code:common:model')
implementation project(':code:common:db')
implementation project(':code:common:config')
implementation project(':code:common:service')
implementation project(':code:common:linkdb')
implementation project(':code:index:index-journal')
implementation project(':code:libraries:message-queue')
implementation project(':code:libraries:language-processing')
implementation project(':code:libraries:coded-sequence')
implementation project(':code:libraries:slop')
implementation project(':third-party:commons-codec')
implementation project(':third-party:parquet-floor')
testImplementation project(':code:services-application:search-service')
implementation project(':code:processes:crawling-process:model')
implementation project(':code:processes:converting-process:model')
implementation project(':code:features-convert:keyword-extraction')
implementation project(':code:functions:link-graph:partition')
implementation libs.bundles.slf4j
implementation libs.guava
implementation dependencies.create(libs.guice.get()) {
exclude group: 'com.google.guava'
}
implementation libs.gson
implementation libs.commons.lang3
implementation libs.zstd
implementation libs.roaringbitmap
implementation libs.trove
implementation libs.bundles.mariadb
testImplementation libs.bundles.slf4j.test
testImplementation libs.bundles.junit
testImplementation libs.mockito
testImplementation libs.bundles.selenium
testImplementation platform('org.testcontainers:testcontainers-bom:1.17.4')
testImplementation 'org.testcontainers:mariadb:1.17.4'
testImplementation 'org.testcontainers:junit-jupiter:1.17.4'
testImplementation project(':code:libraries:test-helpers')
}