mirror of
https://github.com/sneakybugmaster/mailsender.git
synced 2026-11-10 19:48:49 +00:00
Target JDK 25 LTS instead of JDK 27
maven.compiler.release and the enforcer floor go to 25, and both the GitHub CI and the Gitea publish workflow use Temurin 25. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G71TQ5jDETVwdUJxGAwaiT
This commit is contained in:
5 files changed
+7
-7
No files matched your search
@@ -36,7 +36,7 @@ jobs:
|
||||
- uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: temurin
|
||||
java-version: '27'
|
||||
java-version: '25'
|
||||
cache: maven
|
||||
# writes ~/.m2/settings.xml with a <server id="gitea"> reading these env vars
|
||||
server-id: gitea
|
||||
|
||||
@@ -17,7 +17,7 @@ jobs:
|
||||
- uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: temurin
|
||||
java-version: '27'
|
||||
java-version: '25'
|
||||
cache: maven
|
||||
|
||||
- name: Build and test
|
||||
|
||||
@@ -4,7 +4,7 @@ OpenPGP encryption for Spring Boot mail: discovers recipients' keys via Web Key
|
||||
PGP/MIME (RFC 3156), or hands mail to an encrypting relay. See [docs/PLAN.md](docs/PLAN.md) for the design
|
||||
and milestone status.
|
||||
|
||||
Requires JDK 27; the Maven Wrapper (`./mvnw`) downloads Maven 3.9.11. Built on Spring Boot 4.1.1 and PGPainless 2.0.
|
||||
Requires JDK 25 or newer; the Maven Wrapper (`./mvnw`) downloads Maven 3.9.11. Built on Spring Boot 4.1.1 and PGPainless 2.0.
|
||||
|
||||
```
|
||||
./mvnw verify
|
||||
|
||||
+2
-2
@@ -9,7 +9,7 @@ encrypt in-process ("built-in") or hand mail to an encrypting relay/gateway.
|
||||
| Topic | Decision |
|
||||
|---|---|
|
||||
| Build | Maven, multi-module |
|
||||
| Java | JDK 27 (`maven.compiler.release=27`) |
|
||||
| Java | JDK 25 LTS (`maven.compiler.release=25`) |
|
||||
| Spring Boot | 4.1.1 (imported as BOM, not as parent, so consumers are not forced onto our parent) |
|
||||
| Crypto | PGPainless 2.0.x (on Bouncy Castle 1.84, `OpenPGPCertificate` API) |
|
||||
| WKD hashing/URLs | `org.pgpainless:wkd-java` 0.1.3 (`WKDAddress`). Note: there is no `pgpainless-wkd` artifact on Maven Central; `wkd-java` provides the hashing/URL building. Fetching is ours (JDK `HttpClient`) so we control timeouts, size limits, redirects and fallback. |
|
||||
@@ -173,7 +173,7 @@ Actuator is optional; when the `pgpkeys` endpoint is exposed
|
||||
Extension points: `KeyDiscoveryCustomizer` (wraps WKD discovery below the cache) and `SecureMailSenderCustomizer`.
|
||||
|
||||
## Milestones
|
||||
1. **Skeleton** — parent POM, modules, CI (GitHub Actions, `mvn verify` on Temurin 27). ✅
|
||||
1. **Skeleton** — parent POM, modules, CI (GitHub Actions, `mvn verify` on Temurin 25). ✅
|
||||
2. **WKD discovery + cache** — `WkdKeyDiscovery`, `HttpWkdFetcher`, `CachingKeyDiscovery`, static/composite discovery,
|
||||
properties + autoconfig for discovery beans. Tests: z-base-32 vector, advanced/direct fallback matrix,
|
||||
size limit, no redirects, cache TTLs. ✅
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
</modules>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.release>27</maven.compiler.release>
|
||||
<maven.compiler.release>25</maven.compiler.release>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
|
||||
<spring-boot.version>4.1.1</spring-boot.version>
|
||||
@@ -119,7 +119,7 @@
|
||||
<configuration>
|
||||
<rules>
|
||||
<requireJavaVersion>
|
||||
<version>[27,)</version>
|
||||
<version>[25,)</version>
|
||||
</requireJavaVersion>
|
||||
</rules>
|
||||
</configuration>
|
||||
|
||||
Reference in new issue
Block a user