Skip to content

Commit 7594133

Browse files
authored
Merge pull request #5237 from kwvanderlinde/refactor/5214-version-catalogue
Add gradle version catalogue
2 parents 32fbc29 + 63a51d1 commit 7594133

File tree

3 files changed

+280
-199
lines changed

3 files changed

+280
-199
lines changed

build.gradle

Lines changed: 76 additions & 175 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,14 @@ plugins {
1717
id "application"
1818
id "base"
1919
id "java"
20-
id "org.ajoberstar.grgit" version "5.2.1"
21-
id 'org.openjfx.javafxplugin' version '0.0.14'
22-
id 'org.beryx.runtime' version '1.13.1'
23-
id "com.google.protobuf" version "0.9.4"
24-
id 'com.github.johnrengelman.shadow' version '8.1.1'
2520

26-
id "com.diffplug.spotless" version "6.25.0" apply false
21+
alias(libs.plugins.grgit)
22+
alias(libs.plugins.javafx)
23+
alias(libs.plugins.jpackage.runtime)
24+
alias(libs.plugins.protobuf)
25+
alias(libs.plugins.shadow)
26+
27+
alias(libs.plugins.spotless) apply false
2728
}
2829

2930
allprojects {
@@ -354,177 +355,77 @@ def zipJpackageImage = tasks.register('zipJpackageImage', Zip) {
354355

355356
// In this section you declare the dependencies for your production and test code
356357
dependencies {
357-
forms group: 'com.jetbrains.intellij.java', name: 'java-compiler-ant-tasks', version: '233.14475.56'
358-
359358
implementation project(':clientserver')
360359

361-
implementation group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.22.1'
362-
implementation group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.22.1'
363-
implementation group: 'org.apache.logging.log4j', name: 'log4j-1.2-api', version: '2.20.0' // Bridges v1 to v2 for other code in other libs
364-
implementation group: 'org.slf4j', name: 'slf4j-simple', version: '2.0.16'
365-
implementation group: 'commons-logging', name: 'commons-logging', version: '1.3.0'
366-
367-
// Image processing lib
368-
implementation group: 'com.twelvemonkeys.imageio', name: 'imageio-core', version: '3.10.1' // https://mvnrepository.com/artifact/com.twelvemonkeys.imageio/imageio-core
369-
implementation group: 'com.twelvemonkeys.imageio', name: 'imageio-jpeg', version: '3.12.0' // https://mvnrepository.com/artifact/com.twelvemonkeys.imageio/imageio-core
370-
implementation group: 'com.twelvemonkeys.imageio', name: 'imageio-psd', version: '3.10.1' // https://mvnrepository.com/artifact/com.twelvemonkeys.imageio/imageio-psd
371-
implementation group: 'com.twelvemonkeys.imageio', name: 'imageio-tiff', version: '3.12.0'
372-
implementation group: 'com.twelvemonkeys.imageio', name: 'imageio-batik', version: '3.12.0'
373-
implementation group: 'com.twelvemonkeys.imageio', name: 'imageio-tga', version: '3.12.0'
374-
implementation group: 'com.twelvemonkeys.imageio', name: 'imageio-bmp', version: '3.10.1'
375-
// For Twelvemonkey SVG
376-
implementation 'org.apache.xmlgraphics:batik-all:1.17'
377-
378-
379-
// For Sentry bug reporting
380-
implementation group: 'io.sentry', name: 'sentry', version: '1.7.29'
381-
implementation group: 'io.sentry', name: 'sentry-log4j2', version: '1.7.29'
382-
383-
// parsing of configuration data
384-
implementation group: 'org.apache.commons', name: 'commons-configuration2', version: '2.11.0'
385-
// Specialized collections: ReferenceMap, LinkedMap.
386-
implementation 'org.apache.commons:commons-collections4:4.4'
387-
// Various file utilities
388-
implementation 'commons-io:commons-io:2.15.1'
389-
// ftp client
390-
implementation 'commons-net:commons-net:3.11.1'
391-
// commandline parsing
392-
implementation 'commons-cli:commons-cli:1.6.0'
393-
implementation 'org.apache.commons:commons-lang3:3.17.0'
394-
395-
// needed for preference dialog at runtime
396-
implementation 'commons-beanutils:commons-beanutils:1.9.4'
397-
398-
// RPTool Libs
399-
// default ressources (token, textures etc.)
400-
implementation 'com.github.RPTools:maptool-resources:1.6.0'
401-
// parser for macros
402-
implementation 'com.github.RPTools:parser:1.8.3'
403-
404-
// Currently hosted on nerps.net/repo
405-
implementation group: 'com.jidesoft', name: 'jide-common', version: '3.7.9'
406-
implementation group: 'com.jidesoft', name: 'jide-components', version: '3.7.9'
407-
implementation group: 'com.jidesoft', name: 'jide-dialogs', version: '3.7.9'
408-
implementation group: 'com.jidesoft', name: 'jide-dock', version: '3.7.9'
409-
implementation group: 'com.jidesoft', name: 'jide-editor', version: '3.7.9'
410-
implementation group: 'com.jidesoft', name: 'jide-grids', version: '3.7.9'
411-
implementation group: 'com.jidesoft', name: 'jide-properties', version: '3.7.9'
412-
implementation group: 'com.jidesoft', name: 'jide-shortcut', version: '3.7.9'
413-
414-
// utils for handling reflection
415-
implementation 'org.reflections:reflections:0.10.2'
416-
417-
// find running instances in LAN
418-
implementation 'net.tsc.servicediscovery:servicediscovery:1.0.b5'
419-
420-
//maybe replace with jupnp
421-
implementation 'commons-jxpath:commons-jxpath:1.3'
422-
implementation 'com.github.fishface60:upnplib:0351d7502a57f6c5dc8653220bc03ad99af58b21'
423-
424-
// custom binding stuff, should probably be replace with Beans Binding (JSR 295)
425-
implementation 'yasb:yasb:0.2-21012007'
426-
427-
implementation 'de.muntjak.tinylookandfeel:tinylaf-nocp:1.4.0'
428-
429-
// serialize to and from xml
430-
implementation 'com.thoughtworks.xstream:xstream:1.4.21'
431-
432-
// themes
433-
implementation 'com.formdev:flatlaf:3.5.4'
434-
implementation 'com.formdev:flatlaf-intellij-themes:3.5.4'
435-
implementation 'com.formdev:flatlaf-extras:3.5.4'
436-
implementation 'com.github.weisj:jsvg:1.4.0'
437-
implementation 'com.formdev:flatlaf-jide-oss:3.5.4'
438-
439-
// JS support for macros
440-
implementation group: 'org.graalvm.js', name: 'js', version: '21.2.0'
441-
implementation group: 'org.graalvm.js', name: 'js-scriptengine', version: '21.1.0'
442-
443-
implementation 'com.jayway.jsonpath:json-path:2.9.0'
444-
445-
// For PDF image extraction
446-
implementation 'org.apache.pdfbox:pdfbox:3.0.0'
447-
implementation 'org.apache.pdfbox:pdfbox-tools:3.0.0'
448-
implementation 'org.bouncycastle:bcmail-jdk15on:1.70' // To decrypt passworded/secured pdf's
449-
implementation 'com.github.jai-imageio:jai-imageio-core:1.4.0' // For pdf image extraction, specifically for jpeg2000 (jpx) support.
450-
implementation 'com.github.jai-imageio:jai-imageio-jpeg2000:1.4.0' // For pdf image extraction, specifically for jpeg2000 (jpx) support.
451-
452-
implementation 'com.github.gotson:webp-imageio:0.2.2' // webp support https://search.maven.org/artifact/com.github.gotson/webp-imageio/0.2.2/jar
453-
454-
// For syntax highlighting in macro editor
455-
implementation "com.fifesoft:rsyntaxtextarea:3.5.3" // https://mvnrepository.com/artifact/com.fifesoft/rsyntaxtextarea
456-
implementation "com.fifesoft:rstaui:3.3.1" // https://mvnrepository.com/artifact/com.fifesoft/rstaui
457-
implementation "com.fifesoft:autocomplete:3.3.1" // https://mvnrepository.com/artifact/com.fifesoft/autocomplete
458-
implementation "com.fifesoft:languagesupport:3.3.0"
459-
460-
// For simple xml work in Hero Lab integration
461-
implementation group: 'com.jcabi', name: 'jcabi-xml', version: '0.33.5' // https://mvnrepository.com/artifact/com.jcabi/jcabi-xml
462-
463-
// For some math functions used in the A* Pathfinding
464-
// https://locationtech.github.io/jts/jts-features.html
465-
implementation group: 'org.locationtech.jts', name: 'jts-core', version: '1.19.0' // https://mvnrepository.com/artifact/org.locationtech.jts/jts-core
466-
467-
// For RESTful functions
468-
implementation group: 'com.squareup.okhttp3', name: 'okhttp', version: '4.12.0'
469-
470-
// Better JSON functions...
471-
implementation group: 'com.google.code.gson', name: 'gson', version: '2.10.1' // https://mvnrepository.com/artifact/com.google.code.gson/gson
472-
473-
// Declare the dependency for your favourite test framework you want to use in your tests.
474-
// TestNG is also supported by the Gradle Test task. Just change the
475-
// testimplementation dependency to testimplementation 'org.testng:testng:6.8.1' and add
476-
// 'test.useTestNG()' to your build script.
477-
//testCompile 'junit:junit:4.12'
478-
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
479-
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.11.4'
480-
implementation group: 'com.google.code.gson', name: 'gson', version: '2.10.1' // https://mvnrepository.com/artifact/com.google.code.gson/gson
481-
482-
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.11.4'
483-
testImplementation 'org.junit.jupiter:junit-jupiter-params:5.11.4'
484-
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.10.2'
485-
486-
// For mocking features during unit tests
487-
testImplementation group: 'org.mockito', name: 'mockito-core', version: '5.15.2'
488-
489-
// flexmark markdown parsing / conversion
490-
implementation 'com.vladsch.flexmark:flexmark-all:0.64.8'
491-
492-
// Apache Tika Parsers for determining file type
493-
implementation 'org.apache.tika:tika-core:3.0.0'
494-
495-
// Noise Generator
496-
implementation 'com.github.cwisniew:NoiseLib:1.0.0' // The most recent version, 1.0.0 is build for a later java version: major version 55 is newer than 54, the highest major version supported by this compiler
497-
498-
// protobuf
499-
implementation "io.grpc:grpc-protobuf:1.61.1"
500-
implementation "com.google.protobuf:protobuf-java-util:4.29.1"
501-
502-
// Java Tuples
503-
implementation 'com.flipkart.utils:javatuples:3.0'
504-
505-
// HTTP End Point
506-
implementation 'javax.ws.rs:javax.ws.rs-api:2.1.1'
507-
508-
// HTML Parsing
509-
implementation 'org.jsoup:jsoup:1.17.2'
510-
// eventbus
511-
implementation 'com.google.guava:guava:33.0.0-jre'
512-
// intellij forms runtime
513-
implementation 'com.jetbrains.intellij.java:java-gui-forms-rt:241.12019'
514-
// layout for forms created in code
515-
implementation 'com.miglayout:miglayout-swing:11.3'
516-
517-
implementation 'com.github.jknack:handlebars:4.3.1'
518-
implementation 'com.github.jknack:handlebars-helpers:4.4.0'
519-
520-
implementation 'org.jgrapht:jgrapht-core:1.5.2'
521-
522-
523-
// Built In Add-on Libraries
524-
implementation 'com.github.RPTools:maptool-builtin-addons:1.3'
525-
526-
// For advanced dice roller
527-
implementation 'com.github.RPTools:advanced-dice-roller:1.0.3'
360+
implementation(libs.bundles.log4j)
361+
implementation(libs.slf4j.simple)
362+
implementation(libs.apache.commons.logging)
363+
implementation(libs.bundles.sentry)
364+
365+
implementation(libs.servicediscovery)
366+
implementation(libs.upnplib)
367+
implementation(libs.okhttp)
368+
implementation(libs.protobuf.grpc)
369+
implementation(libs.protobuf.java.util)
370+
371+
implementation(libs.bundles.imageio)
372+
implementation(libs.batik)
373+
implementation(libs.bundles.pdfbox)
374+
implementation(libs.bcmail)
375+
implementation(libs.bundles.jai.imageio)
376+
implementation(libs.webp.imageio)
377+
378+
implementation(libs.bundles.jide) // Currently hosted on nerps.net/repo
379+
implementation(libs.fifesoft.rsyntaxtexxtarea)
380+
implementation(libs.fifesoft.rstaui)
381+
implementation(libs.fifesoft.autocomplete)
382+
implementation(libs.fifesoft.languagesupport)
383+
implementation(libs.bundles.flatlaf)
384+
implementation(libs.tinylaf.nocp)
385+
implementation(libs.jsvg)
386+
387+
implementation(libs.bundles.handlebars)
388+
389+
implementation(libs.apache.commons.configuration)
390+
implementation(libs.apache.commons.collections)
391+
implementation(libs.apache.commons.io)
392+
implementation(libs.apache.commons.net)
393+
implementation(libs.apache.commons.cli)
394+
implementation(libs.apache.commons.lang)
395+
implementation(libs.apache.commons.beanutils)
396+
implementation(libs.apache.commons.jxpath)
397+
implementation(libs.apache.tika)
398+
399+
implementation(libs.gson)
400+
implementation(libs.jsonpath)
401+
implementation(libs.jsoup)
402+
implementation(libs.jcabi.xml)
403+
implementation(libs.xstream)
404+
405+
implementation(libs.javatuples)
406+
implementation(libs.guava)
407+
implementation(libs.jts.core)
408+
implementation(libs.jgrapht.core)
409+
implementation(libs.flexmark.all)
410+
implementation(libs.reflections)
411+
implementation(libs.yasb)
412+
413+
implementation(libs.bundles.graalvm.js)
414+
415+
forms(libs.intellij.forms.tasks)
416+
implementation(libs.intellij.forms.runtime)
417+
implementation(libs.miglayout.swing)
418+
419+
implementation(libs.rptools.maptool.resources)
420+
implementation(libs.rptools.parser)
421+
implementation(libs.rptools.maptool.addons)
422+
implementation(libs.rptools.dice.roller)
423+
implementation(libs.noiselib)
424+
425+
testRuntimeOnly(libs.junit.platform.launcher)
426+
testRuntimeOnly(libs.junit.engine)
427+
testImplementation(libs.bundles.junit)
428+
testImplementation(libs.mockito.core)
528429
}
529430

530431
processResources {

clientserver/build.gradle

Lines changed: 17 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -7,39 +7,32 @@ apply from: rootProject.file('buildSrc/shared.gradle')
77

88
// In this section you declare the dependencies for your production and test code
99
dependencies {
10-
implementation group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.2'
10+
implementation(libs.findbugs.jsr305)
1111

12-
implementation group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.22.1'
13-
implementation group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.22.1'
14-
implementation group: 'org.apache.logging.log4j', name: 'log4j-1.2-api', version: '2.20.0' // Bridges v1 to v2 for other code in other libs
15-
implementation group: 'org.slf4j', name: 'slf4j-simple', version: '2.0.16'
16-
implementation group: 'commons-logging', name: 'commons-logging', version: '1.3.0'
12+
implementation(libs.bundles.log4j)
13+
implementation(libs.slf4j.simple)
14+
implementation(libs.apache.commons.logging)
1715

18-
// Better JSON functions...
19-
implementation group: 'com.google.code.gson', name: 'gson', version: '2.10.1' // https://mvnrepository.com/artifact/com.google.code.gson/gson
16+
implementation(libs.gson)
2017

2118
// webrtc
22-
implementation group: 'org.java-websocket', name: 'Java-WebSocket', version: '1.5.7'
23-
// Needs to be API since WebRTCConnection implements PeerConnectionObserver and RTCDataChannelObserver.
24-
implementation 'dev.onvoid.webrtc:webrtc-java:0.9.0'
19+
implementation(libs.websocket)
20+
implementation(libs.webrtc)
2521
if (osdetector.os.is('windows'))
26-
implementation 'dev.onvoid.webrtc:webrtc-java:0.9.0:windows-x86_64'
22+
implementation(variantOf(libs.webrtc) { classifier('windows-x86_64')})
2723
else if (osdetector.os.is('osx'))
28-
implementation 'dev.onvoid.webrtc:webrtc-java:0.9.0:macos-x86_64'
24+
implementation(variantOf(libs.webrtc) { classifier('macos-x86_64')})
2925
else if (osdetector.os.is('linux'))
30-
implementation 'dev.onvoid.webrtc:webrtc-java:0.9.0:linux-x86_64'
26+
implementation(variantOf(libs.webrtc) { classifier('linux-x86_64')})
3127

3228
// compression of messages between client and server
33-
implementation 'org.apache.commons:commons-compress:1.27.1'
34-
implementation 'com.github.luben:zstd-jni:1.5.5-11'
35-
36-
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
37-
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.11.4'
38-
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.11.4'
39-
testImplementation 'org.junit.jupiter:junit-jupiter-params:5.11.4'
40-
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.10.2'
41-
// For mocking features during unit tests
42-
testImplementation group: 'org.mockito', name: 'mockito-core', version: '5.15.2'
29+
implementation(libs.apache.commons.compress)
30+
implementation(libs.zstd)
31+
32+
testRuntimeOnly(libs.junit.platform.launcher)
33+
testRuntimeOnly(libs.junit.engine)
34+
testImplementation(libs.bundles.junit)
35+
testImplementation(libs.mockito.core)
4336
}
4437

4538
test {

0 commit comments

Comments
 (0)