mirror of
https://github.com/AsamK/signal-cli.git
synced 2026-05-23 14:04:16 +00:00
Update to java 25
This commit is contained in:
parent
82abc20871
commit
32c8d4f801
7
.github/workflows/ci.yml
vendored
7
.github/workflows/ci.yml
vendored
@ -16,7 +16,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
java: [ '21', '25' ]
|
java: [ '25' ]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
@ -58,9 +58,8 @@ jobs:
|
|||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- uses: graalvm/setup-graalvm@v1
|
- uses: graalvm/setup-graalvm@v1
|
||||||
with:
|
with:
|
||||||
distribution: 'graalvm-community'
|
distribution: 'graalvm'
|
||||||
version: '21.0.2'
|
java-version: '25'
|
||||||
java-version: '21'
|
|
||||||
cache: 'gradle'
|
cache: 'gradle'
|
||||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
- name: Build with Gradle
|
- name: Build with Gradle
|
||||||
|
|||||||
2
.github/workflows/codeql-analysis.yml
vendored
2
.github/workflows/codeql-analysis.yml
vendored
@ -24,7 +24,7 @@ jobs:
|
|||||||
uses: actions/setup-java@v3
|
uses: actions/setup-java@v3
|
||||||
with:
|
with:
|
||||||
distribution: 'zulu'
|
distribution: 'zulu'
|
||||||
java-version: 21
|
java-version: 25
|
||||||
|
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|||||||
@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
**Attention**: Now requires Java 25
|
||||||
|
|
||||||
### Breaking changes
|
### Breaking changes
|
||||||
|
|
||||||
- Remove isRegistered method without parameters from Signal dbus interface, which always returned `true`
|
- Remove isRegistered method without parameters from Signal dbus interface, which always returned `true`
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
FROM docker.io/azul/zulu-openjdk:21-jre-headless
|
FROM docker.io/azul/zulu-openjdk:25-jre-headless
|
||||||
|
|
||||||
LABEL org.opencontainers.image.source=https://github.com/AsamK/signal-cli
|
LABEL org.opencontainers.image.source=https://github.com/AsamK/signal-cli
|
||||||
LABEL org.opencontainers.image.description="signal-cli provides an unofficial commandline, dbus and JSON-RPC interface for the Signal messenger."
|
LABEL org.opencontainers.image.description="signal-cli provides an unofficial commandline, dbus and JSON-RPC interface for the Signal messenger."
|
||||||
|
|||||||
@ -23,7 +23,7 @@ Windows. There's also a [docker image and some Linux packages](https://github.co
|
|||||||
|
|
||||||
System requirements:
|
System requirements:
|
||||||
|
|
||||||
- at least Java Runtime Environment (JRE) 21
|
- at least Java Runtime Environment (JRE) 25
|
||||||
- native library: libsignal-client
|
- native library: libsignal-client
|
||||||
|
|
||||||
The native libs are bundled for x86_64 Linux (with recent enough glibc), Windows and MacOS. For other
|
The native libs are bundled for x86_64 Linux (with recent enough glibc), Windows and MacOS. For other
|
||||||
|
|||||||
@ -12,8 +12,8 @@ allprojects {
|
|||||||
}
|
}
|
||||||
|
|
||||||
java {
|
java {
|
||||||
sourceCompatibility = JavaVersion.VERSION_21
|
sourceCompatibility = JavaVersion.VERSION_25
|
||||||
targetCompatibility = JavaVersion.VERSION_21
|
targetCompatibility = JavaVersion.VERSION_25
|
||||||
|
|
||||||
if (!JavaVersion.current().isCompatibleWith(targetCompatibility)) {
|
if (!JavaVersion.current().isCompatibleWith(targetCompatibility)) {
|
||||||
toolchain {
|
toolchain {
|
||||||
@ -39,7 +39,7 @@ graalvmNative {
|
|||||||
if (System.getenv("GRAALVM_HOME") == null) {
|
if (System.getenv("GRAALVM_HOME") == null) {
|
||||||
toolchainDetection.set(true)
|
toolchainDetection.set(true)
|
||||||
javaLauncher.set(javaToolchains.launcherFor {
|
javaLauncher.set(javaToolchains.launcherFor {
|
||||||
languageVersion.set(JavaLanguageVersion.of(21))
|
languageVersion.set(JavaLanguageVersion.of(25))
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
toolchainDetection.set(false)
|
toolchainDetection.set(false)
|
||||||
|
|||||||
@ -7,11 +7,11 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
tasks.named<KotlinCompilationTask<KotlinJvmCompilerOptions>>("compileKotlin").configure {
|
tasks.named<KotlinCompilationTask<KotlinJvmCompilerOptions>>("compileKotlin").configure {
|
||||||
compilerOptions.jvmTarget.set(JvmTarget.JVM_17)
|
compilerOptions.jvmTarget.set(JvmTarget.JVM_24)
|
||||||
}
|
}
|
||||||
|
|
||||||
java {
|
java {
|
||||||
targetCompatibility = JavaVersion.VERSION_17
|
targetCompatibility = JavaVersion.VERSION_24
|
||||||
}
|
}
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
|
|||||||
@ -1,26 +1 @@
|
|||||||
[
|
[{"interfaces":["java.sql.Connection"]},{"interfaces":["org.asamk.Signal"]},{"interfaces":["org.asamk.Signal$Configuration"]},{"interfaces":["org.asamk.Signal$Device"]},{"interfaces":["org.asamk.Signal$Group"]},{"interfaces":["org.asamk.Signal$Identity"]},{"interfaces":["org.asamk.SignalControl"]},{"interfaces":["org.freedesktop.dbus.interfaces.DBus"]}]
|
||||||
{
|
|
||||||
"interfaces":["java.sql.Connection"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"interfaces":["org.asamk.Signal"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"interfaces":["org.asamk.Signal$Configuration"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"interfaces":["org.asamk.Signal$Device"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"interfaces":["org.asamk.Signal$Group"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"interfaces":["org.asamk.Signal$Identity"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"interfaces":["org.asamk.SignalControl"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"interfaces":["org.freedesktop.dbus.interfaces.DBus"]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
|
|||||||
@ -307,6 +307,14 @@
|
|||||||
"name": "getCredentials",
|
"name": "getCredentials",
|
||||||
"parameterTypes": []
|
"parameterTypes": []
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "getCredentialsProvider",
|
||||||
|
"parameterTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "getCredentialsProviderClassName",
|
||||||
|
"parameterTypes": []
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "getDataSource",
|
"name": "getDataSource",
|
||||||
"parameterTypes": []
|
"parameterTypes": []
|
||||||
@ -495,6 +503,18 @@
|
|||||||
"com.zaxxer.hikari.util.Credentials"
|
"com.zaxxer.hikari.util.Credentials"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "setCredentialsProvider",
|
||||||
|
"parameterTypes": [
|
||||||
|
"com.zaxxer.hikari.HikariCredentialsProvider"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "setCredentialsProviderClassName",
|
||||||
|
"parameterTypes": [
|
||||||
|
"java.lang.String"
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "setDataSource",
|
"name": "setDataSource",
|
||||||
"parameterTypes": [
|
"parameterTypes": [
|
||||||
@ -811,7 +831,13 @@
|
|||||||
{
|
{
|
||||||
"type": "java.lang.Enum",
|
"type": "java.lang.Enum",
|
||||||
"allDeclaredMethods": true,
|
"allDeclaredMethods": true,
|
||||||
"jniAccessible": true
|
"jniAccessible": true,
|
||||||
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "ordinal",
|
||||||
|
"parameterTypes": []
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "java.lang.Float",
|
"type": "java.lang.Float",
|
||||||
@ -931,6 +957,10 @@
|
|||||||
{
|
{
|
||||||
"name": "getStackTrace",
|
"name": "getStackTrace",
|
||||||
"parameterTypes": []
|
"parameterTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "isVirtual",
|
||||||
|
"parameterTypes": []
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@ -1879,6 +1909,10 @@
|
|||||||
"type": "org.asamk.signal.Main",
|
"type": "org.asamk.signal.Main",
|
||||||
"jniAccessible": true,
|
"jniAccessible": true,
|
||||||
"methods": [
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "<init>",
|
||||||
|
"parameterTypes": []
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "main",
|
"name": "main",
|
||||||
"parameterTypes": [
|
"parameterTypes": [
|
||||||
@ -4516,6 +4550,33 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "org.bouncycastle.jcajce.provider.kdf.HKDF$Mappings",
|
||||||
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "<init>",
|
||||||
|
"parameterTypes": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "org.bouncycastle.jcajce.provider.kdf.PBEPBKDF2$Mappings",
|
||||||
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "<init>",
|
||||||
|
"parameterTypes": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "org.bouncycastle.jcajce.provider.kdf.SCRYPT$Mappings",
|
||||||
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "<init>",
|
||||||
|
"parameterTypes": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "org.bouncycastle.jcajce.provider.keystore.BC$Mappings",
|
"type": "org.bouncycastle.jcajce.provider.keystore.BC$Mappings",
|
||||||
"methods": [
|
"methods": [
|
||||||
@ -4708,6 +4769,15 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "org.bouncycastle.jcajce.provider.symmetric.HKDF$Mappings",
|
||||||
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "<init>",
|
||||||
|
"parameterTypes": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "org.bouncycastle.jcajce.provider.symmetric.IDEA$Mappings",
|
"type": "org.bouncycastle.jcajce.provider.symmetric.IDEA$Mappings",
|
||||||
"methods": [
|
"methods": [
|
||||||
@ -5146,6 +5216,50 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "org.signal.core.models.ServiceId",
|
||||||
|
"allDeclaredFields": true,
|
||||||
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "<init>",
|
||||||
|
"parameterTypes": [
|
||||||
|
"org.signal.libsignal.protocol.ServiceId"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "equals",
|
||||||
|
"parameterTypes": [
|
||||||
|
"java.lang.Object"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "hashCode",
|
||||||
|
"parameterTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "logString",
|
||||||
|
"parameterTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "toByteArray",
|
||||||
|
"parameterTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "toByteString",
|
||||||
|
"parameterTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "toProtocolAddress",
|
||||||
|
"parameterTypes": [
|
||||||
|
"int"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "toString",
|
||||||
|
"parameterTypes": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "org.signal.libsignal.internal.CompletableFuture",
|
"type": "org.signal.libsignal.internal.CompletableFuture",
|
||||||
"jniAccessible": true,
|
"jniAccessible": true,
|
||||||
@ -5214,6 +5328,12 @@
|
|||||||
"type": "org.signal.libsignal.net.ChatConnection$ListenerBridge",
|
"type": "org.signal.libsignal.net.ChatConnection$ListenerBridge",
|
||||||
"jniAccessible": true,
|
"jniAccessible": true,
|
||||||
"methods": [
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "connectionInterrupted",
|
||||||
|
"parameterTypes": [
|
||||||
|
"java.lang.Throwable"
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "onConnectionInterrupted",
|
"name": "onConnectionInterrupted",
|
||||||
"parameterTypes": [
|
"parameterTypes": [
|
||||||
@ -5237,6 +5357,24 @@
|
|||||||
"parameterTypes": [
|
"parameterTypes": [
|
||||||
"java.lang.String[]"
|
"java.lang.String[]"
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "receivedAlerts",
|
||||||
|
"parameterTypes": [
|
||||||
|
"java.lang.String[]"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "receivedIncomingMessage",
|
||||||
|
"parameterTypes": [
|
||||||
|
"byte[]",
|
||||||
|
"long",
|
||||||
|
"long"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "receivedQueueEmpty",
|
||||||
|
"parameterTypes": []
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@ -5279,6 +5417,18 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "org.signal.libsignal.net.ChatServiceInactiveException",
|
||||||
|
"jniAccessible": true,
|
||||||
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "<init>",
|
||||||
|
"parameterTypes": [
|
||||||
|
"java.lang.String"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "org.signal.libsignal.net.DeviceDeregisteredException",
|
"type": "org.signal.libsignal.net.DeviceDeregisteredException",
|
||||||
"jniAccessible": true,
|
"jniAccessible": true,
|
||||||
@ -5315,6 +5465,18 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "org.signal.libsignal.net.TransportFailureException",
|
||||||
|
"jniAccessible": true,
|
||||||
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "<init>",
|
||||||
|
"parameterTypes": [
|
||||||
|
"java.lang.String"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "org.signal.libsignal.net.internal.BridgeChatListener",
|
"type": "org.signal.libsignal.net.internal.BridgeChatListener",
|
||||||
"jniAccessible": true
|
"jniAccessible": true
|
||||||
@ -6831,6 +6993,22 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "org.whispersystems.signalservice.api.link.SetDeviceNameRequest",
|
||||||
|
"allDeclaredFields": true,
|
||||||
|
"methods": [
|
||||||
|
{
|
||||||
|
"name": "<init>",
|
||||||
|
"parameterTypes": [
|
||||||
|
"java.lang.String"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "getDeviceName",
|
||||||
|
"parameterTypes": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "org.whispersystems.signalservice.api.messages.calls.HangupMessage",
|
"type": "org.whispersystems.signalservice.api.messages.calls.HangupMessage",
|
||||||
"allDeclaredFields": true,
|
"allDeclaredFields": true,
|
||||||
@ -6894,7 +7072,7 @@
|
|||||||
"allDeclaredFields": true
|
"allDeclaredFields": true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "org.signal.core.models.ServiceId",
|
"type": "org.whispersystems.signalservice.api.push.ServiceId",
|
||||||
"allDeclaredFields": true,
|
"allDeclaredFields": true,
|
||||||
"methods": [
|
"methods": [
|
||||||
{
|
{
|
||||||
@ -9234,4 +9412,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
File diff suppressed because one or more lines are too long
@ -4,8 +4,8 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
java {
|
java {
|
||||||
sourceCompatibility = JavaVersion.VERSION_21
|
sourceCompatibility = JavaVersion.VERSION_25
|
||||||
targetCompatibility = JavaVersion.VERSION_21
|
targetCompatibility = JavaVersion.VERSION_25
|
||||||
|
|
||||||
if (!JavaVersion.current().isCompatibleWith(targetCompatibility)) {
|
if (!JavaVersion.current().isCompatibleWith(targetCompatibility)) {
|
||||||
toolchain {
|
toolchain {
|
||||||
|
|||||||
@ -32,7 +32,7 @@ fi
|
|||||||
|
|
||||||
run() {
|
run() {
|
||||||
# To update graalvm config, set GRAALVM_HOME, e.g:
|
# To update graalvm config, set GRAALVM_HOME, e.g:
|
||||||
# export GRAALVM_HOME=/usr/lib/jvm/java-21-graalvm
|
# export GRAALVM_HOME=/usr/lib/jvm/java-25-graalvm
|
||||||
if [ ! -z "$GRAALVM_HOME" ]; then
|
if [ ! -z "$GRAALVM_HOME" ]; then
|
||||||
export JAVA_HOME=$GRAALVM_HOME
|
export JAVA_HOME=$GRAALVM_HOME
|
||||||
export SIGNAL_CLI_OPTS="-agentlib:native-image-agent=config-merge-dir=graalvm-config-dir-${SIGNAL_CLI_AGENT_ID}/"
|
export SIGNAL_CLI_OPTS="-agentlib:native-image-agent=config-merge-dir=graalvm-config-dir-${SIGNAL_CLI_AGENT_ID}/"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user