diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml
index cb9701f..3d3e974 100644
--- a/.github/workflows/maven-publish.yml
+++ b/.github/workflows/maven-publish.yml
@@ -34,11 +34,11 @@ jobs:
echo "REVISION=$REVISION" >> $GITHUB_ENV
echo "IMPLEMENTATION_NAME=$IMPLEMENTATION_NAME" >> $GITHUB_ENV
- - name: Set up JDK 15
+ - name: Set up JDK 11
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
uses: actions/setup-java@v1
with:
- java-version: 15
+ java-version: 11
server-id: mchv-release-distribution
server-username: MAVEN_USERNAME
server-password: MAVEN_PASSWORD
diff --git a/src/main/java-templates-tdlib/it/tdlight/common/utils/LibraryVersion.java b/src/main/java-templates-tdlib/it/tdlight/common/utils/LibraryVersion.java
index 9178aa3..7534f48 100644
--- a/src/main/java-templates-tdlib/it/tdlight/common/utils/LibraryVersion.java
+++ b/src/main/java-templates-tdlib/it/tdlight/common/utils/LibraryVersion.java
@@ -1,14 +1,14 @@
package it.tdlight.common.utils;
public final class LibraryVersion {
- public static final String VERSION = "${project.version}";
- public static final String NATIVES_VERSION = "${natives-version}";
- public static final String IMPLEMENTATION_NAME = "tdlib";
- public static final String LINUX_X86_CLASS = "it.tdlight.jni.tdlib.linux.x86.LoadLibrary";
- public static final String LINUX_AMD64_CLASS = "it.tdlight.jni.tdlib.linux.amd64.LoadLibrary";
- public static final String LINUX_AARCH64_CLASS = "it.tdlight.jni.tdlib.linux.aarch64.LoadLibrary";
- public static final String LINUX_ARMV6_CLASS = "it.tdlight.jni.tdlib.linux.armv6.LoadLibrary";
- public static final String LINUX_ARMV7_CLASS = "it.tdlight.jni.tdlib.linux.armv7.LoadLibrary";
- public static final String LINUX_PPC64LE_CLASS = "it.tdlight.jni.tdlib.linux.ppc64le.LoadLibrary";
- public static final String WINDOWS_AMD64_CLASS = "it.tdlight.jni.tdlib.win.amd64.LoadLibrary";
- public static final String OSX_AMD64_CLASS = "it.tdlight.jni.tdlib.osx.amd64.LoadLibrary";
+ public static final String VERSION = "${project.version}";
+ public static final String NATIVES_VERSION = "${natives-version}";
+ public static final String IMPLEMENTATION_NAME = "tdlib";
+ public static final String LINUX_X86_CLASS = "it.tdlight.jni.tdlib.linux.x86.LoadLibrary";
+ public static final String LINUX_AMD64_CLASS = "it.tdlight.jni.tdlib.linux.amd64.LoadLibrary";
+ public static final String LINUX_AARCH64_CLASS = "it.tdlight.jni.tdlib.linux.aarch64.LoadLibrary";
+ public static final String LINUX_ARMHF_CLASS = "it.tdlight.jni.tdlib.linux.armhf.LoadLibrary";
+ public static final String LINUX_S390X_CLASS = "it.tdlight.jni.tdlib.linux.s390x.LoadLibrary";
+ public static final String LINUX_PPC64LE_CLASS = "it.tdlight.jni.tdlib.linux.ppc64le.LoadLibrary";
+ public static final String WINDOWS_AMD64_CLASS = "it.tdlight.jni.tdlib.win.amd64.LoadLibrary";
+ public static final String OSX_AMD64_CLASS = "it.tdlight.jni.tdlib.osx.amd64.LoadLibrary";
}
\ No newline at end of file
diff --git a/src/main/java-templates-tdlight/it/tdlight/common/utils/LibraryVersion.java b/src/main/java-templates-tdlight/it/tdlight/common/utils/LibraryVersion.java
index 4d8f625..f5c3357 100644
--- a/src/main/java-templates-tdlight/it/tdlight/common/utils/LibraryVersion.java
+++ b/src/main/java-templates-tdlight/it/tdlight/common/utils/LibraryVersion.java
@@ -1,14 +1,14 @@
package it.tdlight.common.utils;
public final class LibraryVersion {
- public static final String VERSION = "${project.version}";
- public static final String NATIVES_VERSION = "${natives-version}";
- public static final String IMPLEMENTATION_NAME = "tdlight";
- public static final String LINUX_X86_CLASS = "it.tdlight.jni.tdlight.linux.x86.LoadLibrary";
- public static final String LINUX_AMD64_CLASS = "it.tdlight.jni.tdlight.linux.amd64.LoadLibrary";
- public static final String LINUX_AARCH64_CLASS = "it.tdlight.jni.tdlight.linux.aarch64.LoadLibrary";
- public static final String LINUX_ARMV6_CLASS = "it.tdlight.jni.tdlight.linux.armv6.LoadLibrary";
- public static final String LINUX_ARMV7_CLASS = "it.tdlight.jni.tdlight.linux.armv7.LoadLibrary";
- public static final String LINUX_PPC64LE_CLASS = "it.tdlight.jni.tdlight.linux.ppc64le.LoadLibrary";
- public static final String WINDOWS_AMD64_CLASS = "it.tdlight.jni.tdlight.win.amd64.LoadLibrary";
- public static final String OSX_AMD64_CLASS = "it.tdlight.jni.tdlight.osx.amd64.LoadLibrary";
+ public static final String VERSION = "${project.version}";
+ public static final String NATIVES_VERSION = "${natives-version}";
+ public static final String IMPLEMENTATION_NAME = "tdlight";
+ public static final String LINUX_X86_CLASS = "it.tdlight.jni.tdlight.linux.x86.LoadLibrary";
+ public static final String LINUX_AMD64_CLASS = "it.tdlight.jni.tdlight.linux.amd64.LoadLibrary";
+ public static final String LINUX_AARCH64_CLASS = "it.tdlight.jni.tdlight.linux.aarch64.LoadLibrary";
+ public static final String LINUX_ARMHF_CLASS = "it.tdlight.jni.tdlight.linux.armhf.LoadLibrary";
+ public static final String LINUX_S390X_CLASS = "it.tdlight.jni.tdlight.linux.s390x.LoadLibrary";
+ public static final String LINUX_PPC64LE_CLASS = "it.tdlight.jni.tdlight.linux.ppc64le.LoadLibrary";
+ public static final String WINDOWS_AMD64_CLASS = "it.tdlight.jni.tdlight.win.amd64.LoadLibrary";
+ public static final String OSX_AMD64_CLASS = "it.tdlight.jni.tdlight.osx.amd64.LoadLibrary";
}
\ No newline at end of file
diff --git a/src/main/java/it/tdlight/common/Init.java b/src/main/java/it/tdlight/common/Init.java
index 4f8ac55..59d8d3f 100644
--- a/src/main/java/it/tdlight/common/Init.java
+++ b/src/main/java/it/tdlight/common/Init.java
@@ -37,7 +37,7 @@ public class Init {
if (!started) {
Os os = LoadLibrary.getOs();
- if (os == Os.win) {
+ if (os == Os.WINDOWS) {
// Since 3.0.0, libraries for windows are statically compiled into tdjni.dll
}
diff --git a/src/main/java/it/tdlight/common/utils/Arch.java b/src/main/java/it/tdlight/common/utils/Arch.java
index a3e4092..61f48b7 100644
--- a/src/main/java/it/tdlight/common/utils/Arch.java
+++ b/src/main/java/it/tdlight/common/utils/Arch.java
@@ -21,5 +21,11 @@ package it.tdlight.common.utils;
* Enumeration with all architectures recognized by this library.
*/
public enum Arch {
- amd64, x86, armv6, armv7, aarch64, ppc64le, unknown
+ UNKNOWN,
+ AMD64,
+ I386,
+ ARMHF,
+ AARCH64,
+ PPC64LE,
+ S390X
}
diff --git a/src/main/java/it/tdlight/common/utils/LoadLibrary.java b/src/main/java/it/tdlight/common/utils/LoadLibrary.java
index a3e764f..d1e47fc 100644
--- a/src/main/java/it/tdlight/common/utils/LoadLibrary.java
+++ b/src/main/java/it/tdlight/common/utils/LoadLibrary.java
@@ -71,11 +71,11 @@ public class LoadLibrary {
Arch arch = getCpuArch();
Os os = getOs();
- if (arch == Arch.unknown) {
+ if (arch == Arch.UNKNOWN) {
throw (CantLoadLibrary) new CantLoadLibrary().initCause(new IllegalStateException("Arch: \"" + System.getProperty("os.arch") + "\" is unknown"));
}
- if (os == Os.unknown) {
+ if (os == Os.UNKNOWN) {
throw (CantLoadLibrary) new CantLoadLibrary().initCause(new IllegalStateException("Os: \"" + System.getProperty("os.name") + "\" is unknown"));
}
@@ -104,44 +104,44 @@ public class LoadLibrary {
Path tempFile = Paths.get(tempPath.toString(), libname + getExt(os));
Class> classForResource = null;
switch (os) {
- case linux:
+ case LINUX:
switch (arch) {
- case amd64:
+ case AMD64:
try {
classForResource = Class.forName(LibraryVersion.LINUX_AMD64_CLASS);
} catch (ClassNotFoundException e) {
// not found
}
break;
- case x86:
+ case I386:
try {
classForResource = Class.forName(LibraryVersion.LINUX_X86_CLASS);
} catch (ClassNotFoundException e) {
// not found
}
break;
- case aarch64:
+ case AARCH64:
try {
classForResource = Class.forName(LibraryVersion.LINUX_AARCH64_CLASS);
} catch (ClassNotFoundException e) {
// not found
}
break;
- case armv7:
+ case ARMHF:
try {
- classForResource = Class.forName(LibraryVersion.LINUX_ARMV7_CLASS);
+ classForResource = Class.forName(LibraryVersion.LINUX_ARMHF_CLASS);
} catch (ClassNotFoundException e) {
// not found
}
break;
- case armv6:
+ case S390X:
try {
- classForResource = Class.forName(LibraryVersion.LINUX_ARMV6_CLASS);
+ classForResource = Class.forName(LibraryVersion.LINUX_S390X_CLASS);
} catch (ClassNotFoundException e) {
// not found
}
break;
- case ppc64le:
+ case PPC64LE:
try {
classForResource = Class.forName(LibraryVersion.LINUX_PPC64LE_CLASS);
} catch (ClassNotFoundException e) {
@@ -150,8 +150,8 @@ public class LoadLibrary {
break;
}
break;
- case osx:
- if (arch == Arch.amd64) {
+ case OSX:
+ if (arch == Arch.AMD64) {
try {
classForResource = Class.forName(LibraryVersion.OSX_AMD64_CLASS);
} catch (ClassNotFoundException e) {
@@ -159,16 +159,16 @@ public class LoadLibrary {
}
}
break;
- case win:
+ case WINDOWS:
switch (arch) {
- case amd64:
+ case AMD64:
try {
classForResource = Class.forName(LibraryVersion.WINDOWS_AMD64_CLASS);
} catch (ClassNotFoundException e) {
// not found
}
break;
- case x86:
+ case I386:
break;
}
break;
@@ -195,52 +195,63 @@ public class LoadLibrary {
switch (architecture) {
case "amd64":
case "x86_64":
- return Arch.amd64;
+ return Arch.AMD64;
case "i386":
case "x86":
- return Arch.x86;
+ case "386":
+ case "i686":
+ case "686":
+ return Arch.I386;
case "armv6":
- return Arch.armv6;
case "arm":
+ case "armhf":
case "aarch32":
case "armv7":
case "armv7l":
- return Arch.armv7;
+ return Arch.ARMHF;
case "arm64":
case "aarch64":
- return Arch.aarch64;
+ case "armv8":
+ case "armv8l":
+ return Arch.AARCH64;
case "powerpc":
+ case "powerpc64":
+ case "powerpc64le":
+ case "powerpc64el":
+ case "ppc":
case "ppc64":
+ case "ppc64le":
+ case "ppc64el":
if (ByteOrder.nativeOrder().equals(ByteOrder.LITTLE_ENDIAN)) // Java always returns ppc64 for all 64-bit powerpc but
- return Arch.ppc64le; // powerpc64le (our target) is very different, it uses this condition to accurately identify the architecture
+ return Arch.PPC64LE; // powerpc64le (our target) is very different, it uses this condition to accurately identify the architecture
else
- return Arch.unknown;
+ return Arch.UNKNOWN;
default:
- return Arch.unknown;
+ return Arch.UNKNOWN;
}
}
public static Os getOs() {
String os = System.getProperty("os.name").toLowerCase().trim();
if (os.contains("linux"))
- return Os.linux;
+ return Os.LINUX;
if (os.contains("windows"))
- return Os.win;
+ return Os.WINDOWS;
if (os.contains("mac"))
- return Os.osx;
+ return Os.OSX;
if (os.contains("darwin"))
- return Os.osx;
- return Os.unknown;
+ return Os.OSX;
+ return Os.UNKNOWN;
}
private static String getExt(Os os) {
switch (os) {
- case win:
+ case WINDOWS:
return ".dll";
- case osx:
+ case OSX:
return ".dylib";
- case linux:
- case unknown:
+ case LINUX:
+ case UNKNOWN:
default:
return ".so";
}
diff --git a/src/main/java/it/tdlight/common/utils/Os.java b/src/main/java/it/tdlight/common/utils/Os.java
index c0f916d..780523e 100644
--- a/src/main/java/it/tdlight/common/utils/Os.java
+++ b/src/main/java/it/tdlight/common/utils/Os.java
@@ -20,9 +20,9 @@ package it.tdlight.common.utils;
/**
* Enumeration with all operating systems recognized by this library.
*/
-public enum Os {
- linux,
- win,
- osx,
- unknown
+public enum Os {
+ LINUX,
+ WINDOWS,
+ OSX,
+ UNKNOWN
}
diff --git a/tdlib/pom.xml b/tdlib/pom.xml
index 86b7ab9..6b8be93 100644
--- a/tdlib/pom.xml
+++ b/tdlib/pom.xml
@@ -8,8 +8,8 @@
UTF-8
1.0.0-SNAPSHOT
- 3.3.72
- 3.3.74
+ 3.3.125
+ 3.3.127
@@ -66,15 +66,15 @@
1.0.3
-
-
-
- it.unimi.dsi
- fastutil
- 8.5.2
-
-
-
+
+
+
+ it.unimi.dsi
+ fastutil
+ 8.5.2
+
+
+
releaseDir
@@ -156,7 +156,8 @@
3.8.1
UTF-8
- 8
+
+ 8
false
it/tdlight/tdlight/ClientManager.java
@@ -190,10 +191,11 @@
- 8
+
+ 8
- it/tdlight/tdlight/ClientManager.java
+ it/tdlight/tdlight/ClientManager.java
module-info.java
diff --git a/tdlight/pom.xml b/tdlight/pom.xml
index 70df41b..5fef72f 100644
--- a/tdlight/pom.xml
+++ b/tdlight/pom.xml
@@ -8,8 +8,8 @@
UTF-8
1.0.0-SNAPSHOT
- 3.3.72
- 3.3.74
+ 3.3.125
+ 3.3.127
@@ -66,15 +66,15 @@
1.0.3
-
-
-
- it.unimi.dsi
- fastutil
- 8.5.2
-
-
-
+
+
+
+ it.unimi.dsi
+ fastutil
+ 8.5.2
+
+
+
releaseDir
@@ -156,7 +156,8 @@
3.8.1
UTF-8
- 8
+
+ 8
false
it/tdlight/tdlib/ClientManager.java
@@ -190,10 +191,11 @@
- 8
+
+ 8
- it/tdlight/tdlib/ClientManager.java
+ it/tdlight/tdlib/ClientManager.java
module-info.java