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
|
- uses: actions/setup-java@v4
|
||||||
with:
|
with:
|
||||||
distribution: temurin
|
distribution: temurin
|
||||||
java-version: '27'
|
java-version: '25'
|
||||||
cache: maven
|
cache: maven
|
||||||
# writes ~/.m2/settings.xml with a <server id="gitea"> reading these env vars
|
# writes ~/.m2/settings.xml with a <server id="gitea"> reading these env vars
|
||||||
server-id: gitea
|
server-id: gitea
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ jobs:
|
|||||||
- uses: actions/setup-java@v4
|
- uses: actions/setup-java@v4
|
||||||
with:
|
with:
|
||||||
distribution: temurin
|
distribution: temurin
|
||||||
java-version: '27'
|
java-version: '25'
|
||||||
cache: maven
|
cache: maven
|
||||||
|
|
||||||
- name: Build and test
|
- 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
|
PGP/MIME (RFC 3156), or hands mail to an encrypting relay. See [docs/PLAN.md](docs/PLAN.md) for the design
|
||||||
and milestone status.
|
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
|
./mvnw verify
|
||||||
|
|||||||
+2
-2
@@ -9,7 +9,7 @@ encrypt in-process ("built-in") or hand mail to an encrypting relay/gateway.
|
|||||||
| Topic | Decision |
|
| Topic | Decision |
|
||||||
|---|---|
|
|---|---|
|
||||||
| Build | Maven, multi-module |
|
| 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) |
|
| 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) |
|
| 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. |
|
| 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`.
|
Extension points: `KeyDiscoveryCustomizer` (wraps WKD discovery below the cache) and `SecureMailSenderCustomizer`.
|
||||||
|
|
||||||
## Milestones
|
## 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,
|
2. **WKD discovery + cache** — `WkdKeyDiscovery`, `HttpWkdFetcher`, `CachingKeyDiscovery`, static/composite discovery,
|
||||||
properties + autoconfig for discovery beans. Tests: z-base-32 vector, advanced/direct fallback matrix,
|
properties + autoconfig for discovery beans. Tests: z-base-32 vector, advanced/direct fallback matrix,
|
||||||
size limit, no redirects, cache TTLs. ✅
|
size limit, no redirects, cache TTLs. ✅
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
</modules>
|
</modules>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<maven.compiler.release>27</maven.compiler.release>
|
<maven.compiler.release>25</maven.compiler.release>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
|
||||||
<spring-boot.version>4.1.1</spring-boot.version>
|
<spring-boot.version>4.1.1</spring-boot.version>
|
||||||
@@ -119,7 +119,7 @@
|
|||||||
<configuration>
|
<configuration>
|
||||||
<rules>
|
<rules>
|
||||||
<requireJavaVersion>
|
<requireJavaVersion>
|
||||||
<version>[27,)</version>
|
<version>[25,)</version>
|
||||||
</requireJavaVersion>
|
</requireJavaVersion>
|
||||||
</rules>
|
</rules>
|
||||||
</configuration>
|
</configuration>
|
||||||
|
|||||||
Reference in new issue
Block a user