diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index af35096..adc4107 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,11 +31,11 @@ jobs: - name: Check out source uses: actions/checkout@v4 - - name: Set up Java 17 + - name: Set up Java 25 uses: actions/setup-java@v4 with: distribution: temurin - java-version: "17" + java-version: "25" cache: maven - name: Build and test diff --git a/Dockerfile b/Dockerfile index af91b83..e518d42 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,11 @@ -FROM maven:3.9.9-eclipse-temurin-17 AS build +FROM maven:3.9.9-eclipse-temurin-25 AS build WORKDIR /workspace COPY pom.xml . COPY src ./src RUN mvn -B -DskipTests package -FROM eclipse-temurin:17-jre-alpine AS runtime +FROM eclipse-temurin:25-jre-alpine AS runtime WORKDIR /app RUN addgroup -S spring && adduser -S spring -G spring diff --git a/README.md b/README.md index 52db31f..b8d0dc5 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@ # Task Manager API A Spring Boot REST API for managing tasks, with JWT-based authentication. It uses -Java 17, Maven, Spring Web, Spring Data JPA, Spring Security, Lombok, and H2 for +Java 25, Maven, Spring Web, Spring Data JPA, Spring Security, Lombok, and H2 for local development. Docker Compose runs the application with PostgreSQL. ## Run locally -With Java 17 and Maven installed, start the application from the project root: +With Java 25 and Maven installed, start the application from the project root: ```sh mvn spring-boot:run diff --git a/pom.xml b/pom.xml index 778c659..f8e2b89 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ org.springframework.boot spring-boot-starter-parent - 3.2.0 + 3.5.16 @@ -18,7 +18,7 @@ Spring Boot Task Manager API - 17 + 25 @@ -59,7 +59,7 @@ org.springdoc springdoc-openapi-starter-webmvc-ui - 2.3.0 + 2.8.17 @@ -72,6 +72,7 @@ org.postgresql postgresql + 42.7.12 runtime @@ -110,6 +111,19 @@ + + org.apache.maven.plugins + maven-compiler-plugin + + + + org.projectlombok + lombok + ${lombok.version} + + + + org.springframework.boot spring-boot-maven-plugin diff --git a/target/classes/com/example/taskmanager/TaskManagerApplication.class b/target/classes/com/example/taskmanager/TaskManagerApplication.class index 9e02d1a..61fd878 100644 Binary files a/target/classes/com/example/taskmanager/TaskManagerApplication.class and b/target/classes/com/example/taskmanager/TaskManagerApplication.class differ diff --git a/target/classes/com/example/taskmanager/config/OpenApiConfig.class b/target/classes/com/example/taskmanager/config/OpenApiConfig.class index 81ef9f6..49f6766 100644 Binary files a/target/classes/com/example/taskmanager/config/OpenApiConfig.class and b/target/classes/com/example/taskmanager/config/OpenApiConfig.class differ diff --git a/target/classes/com/example/taskmanager/config/RequestLoggingConfig$1.class b/target/classes/com/example/taskmanager/config/RequestLoggingConfig$1.class index e16bf8b..c760068 100644 Binary files a/target/classes/com/example/taskmanager/config/RequestLoggingConfig$1.class and b/target/classes/com/example/taskmanager/config/RequestLoggingConfig$1.class differ diff --git a/target/classes/com/example/taskmanager/config/RequestLoggingConfig.class b/target/classes/com/example/taskmanager/config/RequestLoggingConfig.class index 9da593a..62cc347 100644 Binary files a/target/classes/com/example/taskmanager/config/RequestLoggingConfig.class and b/target/classes/com/example/taskmanager/config/RequestLoggingConfig.class differ diff --git a/target/classes/com/example/taskmanager/config/SecurityConfig.class b/target/classes/com/example/taskmanager/config/SecurityConfig.class index 6181943..6702432 100644 Binary files a/target/classes/com/example/taskmanager/config/SecurityConfig.class and b/target/classes/com/example/taskmanager/config/SecurityConfig.class differ diff --git a/target/classes/com/example/taskmanager/controller/AuthController$AuthRequest.class b/target/classes/com/example/taskmanager/controller/AuthController$AuthRequest.class index 095bfcd..a8902af 100644 Binary files a/target/classes/com/example/taskmanager/controller/AuthController$AuthRequest.class and b/target/classes/com/example/taskmanager/controller/AuthController$AuthRequest.class differ diff --git a/target/classes/com/example/taskmanager/controller/AuthController$AuthResponse.class b/target/classes/com/example/taskmanager/controller/AuthController$AuthResponse.class index 5a8cfc2..beb28e0 100644 Binary files a/target/classes/com/example/taskmanager/controller/AuthController$AuthResponse.class and b/target/classes/com/example/taskmanager/controller/AuthController$AuthResponse.class differ diff --git a/target/classes/com/example/taskmanager/controller/AuthController.class b/target/classes/com/example/taskmanager/controller/AuthController.class index 8465bfe..004f80d 100644 Binary files a/target/classes/com/example/taskmanager/controller/AuthController.class and b/target/classes/com/example/taskmanager/controller/AuthController.class differ diff --git a/target/classes/com/example/taskmanager/controller/TaskController.class b/target/classes/com/example/taskmanager/controller/TaskController.class index e724e5a..083fad1 100644 Binary files a/target/classes/com/example/taskmanager/controller/TaskController.class and b/target/classes/com/example/taskmanager/controller/TaskController.class differ diff --git a/target/classes/com/example/taskmanager/health/DatabaseHealthIndicator.class b/target/classes/com/example/taskmanager/health/DatabaseHealthIndicator.class index 0ca9f7e..c7647e0 100644 Binary files a/target/classes/com/example/taskmanager/health/DatabaseHealthIndicator.class and b/target/classes/com/example/taskmanager/health/DatabaseHealthIndicator.class differ diff --git a/target/classes/com/example/taskmanager/model/Task.class b/target/classes/com/example/taskmanager/model/Task.class index bcf0d4d..b1bcf76 100644 Binary files a/target/classes/com/example/taskmanager/model/Task.class and b/target/classes/com/example/taskmanager/model/Task.class differ diff --git a/target/classes/com/example/taskmanager/model/User.class b/target/classes/com/example/taskmanager/model/User.class index 204314d..4ce3845 100644 Binary files a/target/classes/com/example/taskmanager/model/User.class and b/target/classes/com/example/taskmanager/model/User.class differ diff --git a/target/classes/com/example/taskmanager/repository/TaskRepository.class b/target/classes/com/example/taskmanager/repository/TaskRepository.class index 7cc7ad1..5a62de7 100644 Binary files a/target/classes/com/example/taskmanager/repository/TaskRepository.class and b/target/classes/com/example/taskmanager/repository/TaskRepository.class differ diff --git a/target/classes/com/example/taskmanager/repository/UserRepository.class b/target/classes/com/example/taskmanager/repository/UserRepository.class index 95e0a51..8fd46b5 100644 Binary files a/target/classes/com/example/taskmanager/repository/UserRepository.class and b/target/classes/com/example/taskmanager/repository/UserRepository.class differ diff --git a/target/classes/com/example/taskmanager/security/JwtAuthenticationFilter.class b/target/classes/com/example/taskmanager/security/JwtAuthenticationFilter.class index ed52a62..c8c2209 100644 Binary files a/target/classes/com/example/taskmanager/security/JwtAuthenticationFilter.class and b/target/classes/com/example/taskmanager/security/JwtAuthenticationFilter.class differ diff --git a/target/classes/com/example/taskmanager/security/JwtUtil.class b/target/classes/com/example/taskmanager/security/JwtUtil.class index a056411..7e41531 100644 Binary files a/target/classes/com/example/taskmanager/security/JwtUtil.class and b/target/classes/com/example/taskmanager/security/JwtUtil.class differ diff --git a/target/classes/com/example/taskmanager/service/TaskService.class b/target/classes/com/example/taskmanager/service/TaskService.class index d268441..563d653 100644 Binary files a/target/classes/com/example/taskmanager/service/TaskService.class and b/target/classes/com/example/taskmanager/service/TaskService.class differ diff --git a/target/classes/com/example/taskmanager/service/UserService.class b/target/classes/com/example/taskmanager/service/UserService.class index 9029070..8373fbf 100644 Binary files a/target/classes/com/example/taskmanager/service/UserService.class and b/target/classes/com/example/taskmanager/service/UserService.class differ diff --git a/target/direct-dependencies.txt b/target/direct-dependencies.txt new file mode 100644 index 0000000..95bb886 --- /dev/null +++ b/target/direct-dependencies.txt @@ -0,0 +1,17 @@ + +The following files have been resolved: + org.springframework.boot:spring-boot-starter-web:jar:3.5.16:compile -- module spring.boot.starter.web [auto] + org.springframework.boot:spring-boot-starter-data-jpa:jar:3.5.16:compile -- module spring.boot.starter.data.jpa [auto] + org.springframework.boot:spring-boot-starter-security:jar:3.5.16:compile -- module spring.boot.starter.security [auto] + org.springframework.boot:spring-boot-starter-actuator:jar:3.5.16:compile -- module spring.boot.starter.actuator [auto] + io.micrometer:micrometer-registry-prometheus:jar:1.15.12:runtime -- module micrometer.registry.prometheus [auto] + net.logstash.logback:logstash-logback-encoder:jar:8.0:compile -- module logstash.logback.encoder [auto] + org.springdoc:springdoc-openapi-starter-webmvc-ui:jar:2.8.17:compile -- module org.springdoc.openapi.ui [auto] + com.h2database:h2:jar:2.3.232:runtime -- module com.h2database [auto] + org.postgresql:postgresql:jar:42.7.11:runtime -- module org.postgresql.jdbc [auto] + io.jsonwebtoken:jjwt-api:jar:0.12.5:compile -- module jjwt.api (auto) + io.jsonwebtoken:jjwt-impl:jar:0.12.5:runtime -- module jjwt.impl (auto) + io.jsonwebtoken:jjwt-jackson:jar:0.12.5:runtime -- module jjwt.jackson (auto) + org.projectlombok:lombok:jar:1.18.46:compile (optional) -- module lombok + org.springframework.boot:spring-boot-starter-test:jar:3.5.16:test -- module spring.boot.starter.test [auto] +