Skip to content

Commit

Permalink
Development: Update client and server dependencies (#6695)
Browse files Browse the repository at this point in the history
  • Loading branch information
Stephan Krusche authored Jun 18, 2023
1 parent 1a5da0f commit 0c9d5cb
Show file tree
Hide file tree
Showing 82 changed files with 893 additions and 1,070 deletions.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

86 changes: 38 additions & 48 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@ plugins {
id "jacoco"
id "org.springframework.boot" version "${spring_boot_version}"
id "io.spring.dependency-management" version "1.1.0"
id "com.google.cloud.tools.jib" version "3.3.1"
id "com.google.cloud.tools.jib" version "3.3.2"
id "com.github.node-gradle.node" version "${gradle_node_plugin_version}"
id "com.diffplug.spotless" version "6.18.0"
id "com.diffplug.spotless" version "6.19.0"
// this allows us to find outdated dependencies via ./gradlew dependencyUpdates
id "com.github.ben-manes.versions" version "0.46.0"
id "com.github.ben-manes.versions" version "0.47.0"
id "com.github.andygoossens.modernizer" version "${modernizer_plugin_version}"
id "com.gorylenko.gradle-git-properties" version "2.4.1"
id "info.solidsoft.pitest" version "1.9.11"
Expand Down Expand Up @@ -107,7 +107,7 @@ test {
maxHeapSize = "3072m" // maximum heap size
}

tasks.register('testReport', TestReport) {
tasks.register("testReport", TestReport) {
destinationDirectory = file("$buildDir/reports/tests")
testResults.from(test)
}
Expand Down Expand Up @@ -177,13 +177,13 @@ repositories {
}
}

ext['jackson.version'] = fasterxml_version
ext["jackson.version"] = fasterxml_version

dependencies {

// This will make sure that e.g. src/main/java/de/tum/in/www1/artemis/config/BeanInfoProcessor.java is invoked during the build
annotationProcessor "com.google.auto.service:auto-service:1.0.1"
compileOnly "com.google.auto.service:auto-service:1.0.1"
annotationProcessor "com.google.auto.service:auto-service:1.1.1"
compileOnly "com.google.auto.service:auto-service:1.1.1"

// Note: jenkins-client is not well maintained and includes dependencies to libraries with critical security issues (e.g. CVE-2020-10683 for [email protected])
// implementation "com.offbytwo.jenkins:jenkins-client:0.3.8"
Expand All @@ -195,16 +195,16 @@ dependencies {
implementation ("org.dom4j:dom4j:2.1.4") {
// Note: avoid org.xml.sax.SAXNotRecognizedException: unrecognized feature http://xml.org/sax/features/external-general-entities
// also see https://github.com/dom4j/dom4j/issues/99
exclude module: 'pull-parser'
exclude module: 'jaxen'
exclude module: 'xpp3'
exclude module: 'xsdlib'
exclude module: 'stax-api'
exclude module: 'jaxb-api'
exclude module: "pull-parser"
exclude module: "jaxen"
exclude module: "xpp3"
exclude module: "xsdlib"
exclude module: "stax-api"
exclude module: "jaxb-api"
}


implementation "org.gitlab4j:gitlab4j-api:5.2.0"
implementation "org.gitlab4j:gitlab4j-api:5.3.0"

implementation "de.jplag:jplag:${jplag_version}"
implementation "de.jplag:java:${jplag_version}"
Expand Down Expand Up @@ -233,7 +233,7 @@ dependencies {
implementation "org.eclipse.jgit:org.eclipse.jgit.ssh.apache:${jgit_version}"
implementation "org.eclipse.jgit:org.eclipse.jgit.http.server:${jgit_version}"
// https://search.maven.org/artifact/net.sourceforge.plantuml/plantuml
implementation "net.sourceforge.plantuml:plantuml:1.2023.6"
implementation "net.sourceforge.plantuml:plantuml:1.2023.9"
implementation "org.imsglobal:basiclti-util:1.2.0"
implementation "org.jasypt:jasypt:1.9.3"
implementation "me.xdrop:fuzzywuzzy:1.4.0"
Expand All @@ -246,23 +246,23 @@ dependencies {


implementation "com.thoughtworks.qdox:qdox:2.0.3"
implementation "io.sentry:sentry-logback:6.18.1"
implementation "io.sentry:sentry-spring-boot-starter:6.18.1"
implementation "io.sentry:sentry-logback:${sentry_version}"
implementation "io.sentry:sentry-spring-boot-starter:${sentry_version}"
implementation "org.jsoup:jsoup:1.16.1"
implementation "commons-codec:commons-codec:1.15" // needed for spring security saml2

implementation "org.springdoc:springdoc-openapi-ui:1.7.0"
implementation "com.vdurmont:semver4j:3.1.0"

implementation 'com.github.docker-java:docker-java-core:3.3.0'
implementation 'com.github.docker-java:docker-java-transport-httpclient5:3.3.0'
implementation "com.github.docker-java:docker-java-core:3.3.1"
implementation "com.github.docker-java:docker-java-transport-httpclient5:3.3.1"

// import JHipster dependencies BOM
implementation platform("tech.jhipster:jhipster-dependencies:${jhipster_dependencies_version}")

implementation "tech.jhipster:jhipster-framework:${jhipster_dependencies_version}"
implementation "org.springframework.boot:spring-boot-starter-cache:${spring_boot_version}"
implementation "io.micrometer:micrometer-registry-prometheus:1.10.6"
implementation "io.micrometer:micrometer-registry-prometheus:1.11.1"
implementation "net.logstash.logback:logstash-logback-encoder:7.3"
implementation "com.fasterxml.jackson.datatype:jackson-datatype-hppc:${fasterxml_version}"
implementation "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:${fasterxml_version}"
Expand All @@ -271,15 +271,15 @@ dependencies {
implementation "com.fasterxml.jackson.core:jackson-databind:${fasterxml_version}"
implementation "com.hazelcast:hazelcast:${hazelcast_version}"
implementation "com.hazelcast:hazelcast-spring:${hazelcast_version}"
implementation "com.hazelcast:hazelcast-hibernate53:5.0.0"
implementation "com.hazelcast:hazelcast-hibernate53:5.1.0"
implementation "javax.cache:cache-api:1.1.1"
implementation "org.hibernate:hibernate-core:${hibernate_version}"
implementation "com.zaxxer:HikariCP:5.0.1"
implementation "org.apache.commons:commons-text:1.10.0"
implementation "org.apache.commons:commons-math3:3.6.1"
implementation "javax.transaction:javax.transaction-api:1.3"
implementation "org.hibernate:hibernate-entitymanager:${hibernate_version}"
implementation "org.liquibase:liquibase-core:4.21.1"
implementation "org.liquibase:liquibase-core:4.22.0"
implementation "org.springframework.boot:spring-boot-starter-validation:${spring_boot_version}"
implementation "org.springframework.boot:spring-boot-loader-tools:${spring_boot_version}"
implementation "org.springframework.boot:spring-boot-starter-mail:${spring_boot_version}"
Expand All @@ -302,10 +302,10 @@ dependencies {
implementation "org.springframework.cloud:spring-cloud-starter-config:3.1.6"
implementation "org.springframework.boot:spring-boot-starter-cloud-connectors:2.2.13.RELEASE"

implementation "io.netty:netty-all:4.1.92.Final"
implementation "io.projectreactor.netty:reactor-netty:1.1.6"
implementation "io.netty:netty-all:4.1.93.Final"
implementation "io.projectreactor.netty:reactor-netty:1.1.8"
implementation "org.springframework:spring-messaging:5.3.25"
implementation "org.springframework.retry:spring-retry:2.0.0"
implementation "org.springframework.retry:spring-retry:2.0.1"

implementation "org.springframework.security:spring-security-config:${spring_security_version}"
implementation "org.springframework.security:spring-security-data:${spring_security_version}"
Expand All @@ -328,12 +328,12 @@ dependencies {

// zalando problem spring web can only be updated when we support Spring 6
implementation "org.zalando:problem-spring-web:0.27.0"
implementation "com.ibm.icu:icu4j:73.1"
implementation "com.ibm.icu:icu4j:73.2"
implementation "com.github.seancfoley:ipaddress:5.4.0"
implementation "org.apache.maven:maven-model:3.9.1"
implementation "org.apache.maven:maven-model:3.9.2"
implementation "org.apache.pdfbox:pdfbox:2.0.28"
implementation "com.google.protobuf:protobuf-java:3.22.3"
implementation 'org.apache.commons:commons-csv:1.10.0'
implementation "com.google.protobuf:protobuf-java:3.23.3"
implementation "org.apache.commons:commons-csv:1.10.0"
implementation "org.commonmark:commonmark:0.21.0"
implementation "de.tum.in.ase.athene:client:0.0.2"
implementation "commons-fileupload:commons-fileupload:1.5"
Expand All @@ -358,13 +358,13 @@ dependencies {
testImplementation "org.junit.jupiter:junit-jupiter:${junit_version}"
testImplementation "org.mockito:mockito-core:${mockito_version}"
testImplementation "org.mockito:mockito-junit-jupiter:${mockito_version}"
testImplementation "io.github.classgraph:classgraph:4.8.157"
testImplementation "io.github.classgraph:classgraph:4.8.160"
testImplementation "org.awaitility:awaitility:4.2.0"
testImplementation "org.apache.maven.shared:maven-invoker:3.2.0"
testImplementation "org.gradle:gradle-tooling-api:8.1.1"
testImplementation "org.apache.maven.surefire:surefire-report-parser:3.0.0"
testImplementation "org.apache.maven.surefire:surefire-report-parser:3.1.2"
testImplementation "com.opencsv:opencsv:5.7.1"
testImplementation "io.zonky.test:embedded-database-spring-test:2.2.0"
testImplementation "io.zonky.test:embedded-database-spring-test:2.3.0"
testImplementation "com.tngtech.archunit:archunit:1.0.1"

// Lightweight JSON library needed for the internals of the MockRestServiceServer
Expand All @@ -373,11 +373,11 @@ dependencies {

dependencyManagement {
imports {
mavenBom "io.zonky.test.postgres:embedded-postgres-binaries-bom:15.2.0"
mavenBom "io.zonky.test.postgres:embedded-postgres-binaries-bom:15.3.0"
}
}

tasks.register('cleanResources', Delete) {
tasks.register("cleanResources", Delete) {
delete "build/resources"
}

Expand Down Expand Up @@ -411,7 +411,7 @@ wrapper {
gradleVersion = "8.1.1"
}

tasks.register('stage') {
tasks.register("stage") {
dependsOn "bootWar"
}

Expand Down Expand Up @@ -443,16 +443,6 @@ tasks.named("dependencyUpdates").configure {
rejectVersionIf {
isNonStable(it.candidate.version) && !isNonStable(it.currentVersion)
}

resolutionStrategy {
componentSelection {
configureEach {
if (isNonStable(it.candidate.version) && !isNonStable(it.currentVersion)) {
reject("Release candidate")
}
}
}
}
}

pitest {
Expand Down Expand Up @@ -484,6 +474,6 @@ pitest {
// 9) Check for vulnerabilities in dependencies ./gradlew dependencyCheckAnalyze -x webapp
// 10) Generate Liquibase diff: ./gradlew liquibaseDiffChangelog
// 11) Clear Liquibase checksums: ./gradlew liquibaseClearChecksums
// 12) Run PIT Mutation Tests: ./gradlew pitest -x webapp
// 13) Create changelog between Java and DB ./gradlew liquibaseDiffChangeLog (make sure to set the correct username and password in liquibase.gradle)
// 14) Generate initial schema from DB ./gradlew liquibaseGenerateChangelog (make sure to set the correct username and password in liquibase.gradle)
// 12) Create changelog between Java and DB ./gradlew liquibaseDiffChangeLog (make sure to set the correct username and password in liquibase.gradle)
// 13) Generate initial schema from DB ./gradlew liquibaseGenerateChangelog (make sure to set the correct username and password in liquibase.gradle)
// 14) Run PIT Mutation Tests: ./gradlew pitest -x webapp
2 changes: 1 addition & 1 deletion docker/cypress.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
services:
artemis-cypress:
# Cypress image with node and chrome browser installed (Cypress installation needs to be done separately because we require additional dependencies)
image: docker.io/cypress/browsers:node18.12.0-chrome107
image: docker.io/cypress/browsers:node-18.16.0-chrome-113.0.5672.92-1-ff-113.0-edge-113.0.1774.35-1
pull_policy: always
environment:
CYPRESS_baseUrl: "https://artemis-nginx"
Expand Down
2 changes: 1 addition & 1 deletion docker/mysql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
services:
mysql:
container_name: artemis-mysql
image: docker.io/library/mysql:8.0.32
image: docker.io/library/mysql:8.0.33
pull_policy: always
volumes:
- artemis-mysql-data:/var/lib/mysql
Expand Down
4 changes: 2 additions & 2 deletions docker/postgresql.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# ----------------------------------------------------------------------------------------------------------------------
# PostgreSQL base service
# Postgres base service
# ----------------------------------------------------------------------------------------------------------------------

services:
postgresql:
container_name: artemis-postgresql
image: postgres:15-alpine
image: postgres:15.3-alpine
pull_policy: always
user: postgres
command: ["postgres", "-c", "max_connections=200"]
Expand Down
21 changes: 11 additions & 10 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,26 @@ profile=dev

# Build properties
node_version=18.14.0
npm_version=9.4.0
npm_version=9.6.0

# Dependency versions
jhipster_dependencies_version=7.9.3
spring_boot_version=2.7.11
spring_security_version=5.7.7
spring_boot_version=2.7.12
spring_security_version=5.7.8
hibernate_version=5.6.15.Final
jaxb_runtime_version=4.0.2
hazelcast_version=5.2.3
jaxb_runtime_version=4.0.3
hazelcast_version=5.3.1
junit_version=5.9.3
mockito_version=5.3.1
fasterxml_version=2.15.0
jgit_version=6.5.0.202303070854-r
checkstyle_version=10.10.0
jplag_version=4.2.0
fasterxml_version=2.15.2
jgit_version=6.6.0.202305301015-r
checkstyle_version=10.12.0
jplag_version=4.3.0
slf4j_version=1.7.36
sentry_version=6.23.0

# gradle plugin version
gradle_node_plugin_version=4.0.0
gradle_node_plugin_version=5.0.0
apt_plugin_version=0.21
liquibase_plugin_version=2.1.1
modernizer_plugin_version=1.8.0
Expand Down
2 changes: 1 addition & 1 deletion gradle/liquibase.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ configurations {
}

dependencies {
liquibase "org.liquibase.ext:liquibase-hibernate5:4.21.1"
liquibase "org.liquibase.ext:liquibase-hibernate5:4.22.0"
}

if (OperatingSystem.current().isWindows()) {
Expand Down
8 changes: 4 additions & 4 deletions jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ const esModules = ['lodash-es', 'franc-min', 'trigram-utils', 'n-gram', 'collaps
'@ngx-translate/core', '@ngx-translate/http-loader', '@fortawesome/angular-fontawesome', '@angular/cdk', '@angular/material', '@angular/cdk', 'dayjs/esm',
'rxjs/operators', '@ng-bootstrap/ng-bootstrap', 'ngx-webstorage', '@ctrl/ngx-emoji-mart', 'ngx-device-detector', '@swimlane/ngx-charts',
'@angular/service-worker', '@danielmoncada/angular-datetime-picker', '@flaviosantoro92/ngx-datatable', 'd3-color', 'd3-interpolate', 'd3-transition', 'd3-brush',
'd3-drag', 'd3-selection', 'ngx-infinite-scroll'].join('|');
'd3-drag', 'd3-selection', 'd3-scale', 'd3-array', 'd3-format', 'd3-shape', 'd3-path', 'd3-ease', 'd3-hierarchy', 'ngx-infinite-scroll'].join('|');

const {
compilerOptions: { baseUrl = './' },
Expand Down Expand Up @@ -57,9 +57,9 @@ module.exports = {
coverageThreshold: {
global: {
// TODO: in the future, the following values should increase to at least 90%
statements: 85.8,
branches: 72.8,
functions: 79.4,
statements: 85.9,
branches: 72.9,
functions: 79.5,
lines: 85.8,
},
},
Expand Down
Loading

0 comments on commit 0c9d5cb

Please sign in to comment.