From c9d228d760f7b1ab81ae46b0855fc842de4d0bd0 Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski Date: Mon, 9 May 2022 21:53:16 +0200 Subject: [PATCH] Update to upstream version 1.12.10 --- 0001-Avoid-bundling-asm.patch | 135 ++++++++------------ 0002-Remove-dependencies.patch | 157 +++++++++++++++--------- 0003-Remove-Java-14-tests.patch | 14 +-- 0004-Remove-JDK-15-sealed-classes.patch | 26 ++-- byte-buddy.spec | 8 +- sources | 2 +- 6 files changed, 182 insertions(+), 160 deletions(-) diff --git a/0001-Avoid-bundling-asm.patch b/0001-Avoid-bundling-asm.patch index 272fdaf..1c8ef91 100644 --- a/0001-Avoid-bundling-asm.patch +++ b/0001-Avoid-bundling-asm.patch @@ -1,14 +1,14 @@ -From 395fcc56d403d0625fe4930af4b2b772b0958fe1 Mon Sep 17 00:00:00 2001 +From 112daf42699caa2e878d4c3f6509fc0dccf7975d Mon Sep 17 00:00:00 2001 From: Marian Koncek Date: Tue, 9 Nov 2021 11:55:22 +0100 -Subject: [PATCH] Avoid bundling asm +Subject: [PATCH 1/4] Avoid bundling asm --- - byte-buddy/pom.xml | 70 ++++++++++------------------------------------ - 1 file changed, 15 insertions(+), 55 deletions(-) + byte-buddy/pom.xml | 53 +++++++++------------------------------------- + 1 file changed, 10 insertions(+), 43 deletions(-) diff --git a/byte-buddy/pom.xml b/byte-buddy/pom.xml -index 403f684..0d1d98c 100644 +index c0cec10..6b5494d 100644 --- a/byte-buddy/pom.xml +++ b/byte-buddy/pom.xml @@ -26,8 +26,6 @@ @@ -20,8 +20,8 @@ index 403f684..0d1d98c 100644 net.bytebuddy, net.bytebuddy.agent.builder, -@@ -62,9 +60,6 @@ - net.bytebuddy.utility, +@@ -63,9 +61,6 @@ + net.bytebuddy.utility.nullability, net.bytebuddy.utility.privilege, net.bytebuddy.utility.visitor, - ${shade.target}, @@ -30,79 +30,7 @@ index 403f684..0d1d98c 100644 net.bytebuddy.utility.dispatcher -@@ -120,44 +115,6 @@ - true - ${bytebuddy.extras} - true -- -- -- ${shade.source} -- ${shade.target} -- -- -- -- -- net.bytebuddy:byte-buddy-dep:* -- -- META-INF/MANIFEST.MF -- -- -- -- org.ow2.asm:* -- -- META-INF/MANIFEST.MF -- **/module-info.class -- **/LICENSE -- **/NOTICE -- -- -- -- org.ow2.asm:asm-commons -- -- org/objectweb/asm/commons/AnnotationRemapper.** -- org/objectweb/asm/commons/ClassRemapper.** -- org/objectweb/asm/commons/FieldRemapper.** -- org/objectweb/asm/commons/MethodRemapper.** -- org/objectweb/asm/commons/ModuleHashesAttribute.** -- org/objectweb/asm/commons/ModuleRemapper.** -- org/objectweb/asm/commons/RecordComponentRemapper.** -- org/objectweb/asm/commons/Remapper.** -- org/objectweb/asm/commons/SignatureRemapper.** -- org/objectweb/asm/commons/SimpleRemapper.** -- -- -- - - - net.bytebuddy.build.Plugin$Engine$Default -@@ -166,21 +123,14 @@ - META-INF/LICENSE - - -+ -+ -+ org.ow2.asm:* -+ -+ - - - -- -- -- org.ow2.asm -- asm -- ${version.asm} -- -- -- org.ow2.asm -- asm-commons -- ${version.asm} -- -- - - - -@@ -243,6 +193,16 @@ +@@ -166,6 +161,16 @@ asm ${version.asm} @@ -119,6 +47,51 @@ index 403f684..0d1d98c 100644 +@@ -249,44 +254,6 @@ + true + ${bytebuddy.extras} + true +- +- +- ${shade.source} +- ${shade.target} +- +- +- +- +- net.bytebuddy:byte-buddy-dep:* +- +- META-INF/MANIFEST.MF +- +- +- +- org.ow2.asm:* +- +- META-INF/MANIFEST.MF +- **/module-info.class +- **/LICENSE +- **/NOTICE +- +- +- +- org.ow2.asm:asm-commons +- +- org/objectweb/asm/commons/AnnotationRemapper.** +- org/objectweb/asm/commons/ClassRemapper.** +- org/objectweb/asm/commons/FieldRemapper.** +- org/objectweb/asm/commons/MethodRemapper.** +- org/objectweb/asm/commons/ModuleHashesAttribute.** +- org/objectweb/asm/commons/ModuleRemapper.** +- org/objectweb/asm/commons/RecordComponentRemapper.** +- org/objectweb/asm/commons/Remapper.** +- org/objectweb/asm/commons/SignatureRemapper.** +- org/objectweb/asm/commons/SimpleRemapper.** +- +- +- + + + net.bytebuddy.build.Plugin$Engine$Default -- -2.31.1 +2.35.1 diff --git a/0002-Remove-dependencies.patch b/0002-Remove-dependencies.patch index 024780c..c1542d7 100644 --- a/0002-Remove-dependencies.patch +++ b/0002-Remove-dependencies.patch @@ -1,18 +1,19 @@ -From c54cc280a38d05ffe93a1af6922afcefe4d0cf71 Mon Sep 17 00:00:00 2001 +From 7b86e76fe0db78bdedde22a0f021b2acfbe3900f Mon Sep 17 00:00:00 2001 From: Marian Koncek Date: Mon, 1 Nov 2021 12:51:02 +0100 -Subject: [PATCH] Remove dependencies +Subject: [PATCH 2/4] Remove dependencies --- - .../net/bytebuddy/agent/VirtualMachine.java | 1978 +---------------- - .../dynamic/loading/ClassInjector.java | 104 +- - 2 files changed, 2 insertions(+), 2080 deletions(-) + .../net/bytebuddy/agent/VirtualMachine.java | 2000 +---------------- + .../description/type/TypeDescription.java | 3 - + .../dynamic/loading/ClassInjector.java | 106 +- + 3 files changed, 2 insertions(+), 2107 deletions(-) diff --git a/byte-buddy-agent/src/main/java/net/bytebuddy/agent/VirtualMachine.java b/byte-buddy-agent/src/main/java/net/bytebuddy/agent/VirtualMachine.java -index 32fe7d1fad..795d648512 100644 +index fc53282..62344df 100644 --- a/byte-buddy-agent/src/main/java/net/bytebuddy/agent/VirtualMachine.java +++ b/byte-buddy-agent/src/main/java/net/bytebuddy/agent/VirtualMachine.java -@@ -15,13 +15,6 @@ +@@ -15,12 +15,6 @@ */ package net.bytebuddy.agent; @@ -22,11 +23,10 @@ index 32fe7d1fad..795d648512 100644 -import com.sun.jna.win32.StdCallLibrary; -import com.sun.jna.win32.W32APIOptions; -import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; -- - import java.io.*; - import java.net.ServerSocket; - import java.net.Socket; -@@ -149,15 +142,7 @@ public interface VirtualMachine { + import net.bytebuddy.agent.utility.nullability.MaybeNull; + import net.bytebuddy.agent.utility.nullability.UnknownNull; + +@@ -151,15 +145,7 @@ public interface VirtualMachine { * {@inheritDoc} */ public Class run() { @@ -43,7 +43,7 @@ index 32fe7d1fad..795d648512 100644 } } -@@ -227,23 +212,6 @@ public interface VirtualMachine { +@@ -229,23 +215,6 @@ public interface VirtualMachine { this.connection = connection; } @@ -67,7 +67,7 @@ index 32fe7d1fad..795d648512 100644 /** * Attaches to the supplied process id using the supplied connection factory. * -@@ -515,7 +483,6 @@ public interface VirtualMachine { +@@ -517,7 +486,6 @@ public interface VirtualMachine { /** * {@inheritDoc} */ @@ -75,7 +75,7 @@ index 32fe7d1fad..795d648512 100644 public Connection connect(String processId) throws IOException { File socket = new File(temporaryDirectory, SOCKET_FILE_PREFIX + processId); if (!socket.exists()) { -@@ -679,1949 +646,6 @@ public interface VirtualMachine { +@@ -681,1972 +649,6 @@ public interface VirtualMachine { */ protected abstract int read(T connection, byte[] buffer) throws IOException; } @@ -331,7 +331,7 @@ index 32fe7d1fad..795d648512 100644 - /** - * Reads a configuration dependant variable into a memory segment. - * -- * @param name The name of the variable. +- * @param name The name of the variable. - * @param buffer The buffer to read the variable into. - * @param length The length of the buffer. - * @return The amount of bytes written to the buffer. @@ -529,14 +529,15 @@ index 32fe7d1fad..795d648512 100644 - * @param threadId A pointer to the thread id or {@code null} if no thread reference is set. - * @return A handle to the created remote thread or {@code null} if the creation failed. - */ +- @MaybeNull - @SuppressWarnings("checkstyle:methodname") - WinNT.HANDLE CreateRemoteThread(WinNT.HANDLE process, -- WinBase.SECURITY_ATTRIBUTES securityAttributes, +- @MaybeNull WinBase.SECURITY_ATTRIBUTES securityAttributes, - int stackSize, - Pointer code, - Pointer argument, -- WinDef.DWORD creationFlags, -- Pointer threadId); +- @MaybeNull WinDef.DWORD creationFlags, +- @MaybeNull Pointer threadId); - - /** - * Receives the exit code of a given thread. @@ -560,6 +561,7 @@ index 32fe7d1fad..795d648512 100644 - * @param process A handle to the target process. - * @return A pointer to the allocated code or {@code null} if the code could not be allocated. - */ +- @MaybeNull - @SuppressWarnings("checkstyle:methodname") - WinDef.LPVOID allocate_remote_code(WinNT.HANDLE process); - @@ -574,13 +576,14 @@ index 32fe7d1fad..795d648512 100644 - * @param argument3 The forth argument or {@code null} if no such argument is provided. - * @return A pointer to the allocated argument or {@code null} if the argument could not be allocated. - */ +- @MaybeNull - @SuppressWarnings("checkstyle:methodname") - WinDef.LPVOID allocate_remote_argument(WinNT.HANDLE process, - String pipe, -- String argument0, -- String argument1, -- String argument2, -- String argument3); +- @MaybeNull String argument0, +- @MaybeNull String argument1, +- @MaybeNull String argument2, +- @MaybeNull String argument3); - } - - /** @@ -838,6 +841,7 @@ index 32fe7d1fad..795d648512 100644 - /** - * A pointer to the operation argument. - */ +- @MaybeNull - public Pointer dataPointer; - - /** @@ -848,6 +852,7 @@ index 32fe7d1fad..795d648512 100644 - /** - * A pointer to the operation descriptor. - */ +- @MaybeNull - public Pointer descriptorPointer; - - /** @@ -858,6 +863,7 @@ index 32fe7d1fad..795d648512 100644 - /** - * A pointer to the operation result. - */ +- @UnknownNull - public Pointer resultPointer; - - /** @@ -1002,7 +1008,7 @@ index 32fe7d1fad..795d648512 100644 - * @throws IOException If an IO exception occurs during establishing the connection. - */ - public static VirtualMachine attach(String processId, int timeout, Dispatcher dispatcher) throws IOException { -- File directory = new File(System.getProperty(IBM_TEMPORARY_FOLDER, dispatcher.getTemporaryFolder()), ".com_ibm_tools_attach"); +- File directory = new File(System.getProperty(IBM_TEMPORARY_FOLDER, dispatcher.getTemporaryFolder(processId)), ".com_ibm_tools_attach"); - RandomAccessFile attachLock = new RandomAccessFile(new File(directory, "_attachlock"), "rw"); - try { - FileLock attachLockLock = attachLock.getChannel().lock(); @@ -1187,7 +1193,7 @@ index 32fe7d1fad..795d648512 100644 - /** - * {@inheritDoc} - */ -- public void loadAgent(String jarFile, String argument) throws IOException { +- public void loadAgent(String jarFile, @MaybeNull String argument) throws IOException { - write(socket, ("ATTACH_LOADAGENT(instrument," + jarFile + '=' + (argument == null ? "" : argument) + ')').getBytes("UTF-8")); - String answer = new String(read(socket), "UTF-8"); - if (answer.startsWith("ATTACH_ERR")) { @@ -1200,7 +1206,7 @@ index 32fe7d1fad..795d648512 100644 - /** - * {@inheritDoc} - */ -- public void loadAgentPath(String path, String argument) throws IOException { +- public void loadAgentPath(String path, @MaybeNull String argument) throws IOException { - write(socket, ("ATTACH_LOADAGENTPATH(" + path + (argument == null ? "" : (',' + argument)) + ')').getBytes("UTF-8")); - String answer = new String(read(socket), "UTF-8"); - if (answer.startsWith("ATTACH_ERR")) { @@ -1213,7 +1219,7 @@ index 32fe7d1fad..795d648512 100644 - /** - * {@inheritDoc} - */ -- public void loadAgentLibrary(String library, String argument) throws IOException { +- public void loadAgentLibrary(String library, @MaybeNull String argument) throws IOException { - write(socket, ("ATTACH_LOADAGENTLIBRARY(" + library + (argument == null ? "" : (',' + argument)) + ')').getBytes("UTF-8")); - String answer = new String(read(socket), "UTF-8"); - if (answer.startsWith("ATTACH_ERR")) { @@ -1311,9 +1317,10 @@ index 32fe7d1fad..795d648512 100644 - /** - * Returns this machine's temporary folder. - * +- * @param processId The target process's id. - * @return The temporary folder. - */ -- String getTemporaryFolder(); +- String getTemporaryFolder(String processId); - - /** - * Returns the process id of this process. @@ -1416,7 +1423,13 @@ index 32fe7d1fad..795d648512 100644 - /** - * {@inheritDoc} - */ -- public String getTemporaryFolder() { +- public String getTemporaryFolder(String processId) { +- if (Platform.isLinux()) { +- File file = new File("/proc/" + processId + "/root/tmp"); +- if (file.isDirectory() && file.canRead()) { +- return file.getAbsolutePath(); +- } +- } - String temporaryFolder = System.getenv("TMPDIR"); - return temporaryFolder == null ? "/tmp" : temporaryFolder; - } @@ -1450,8 +1463,10 @@ index 32fe7d1fad..795d648512 100644 - try { - // The binding for 'stat' is very platform dependant. To avoid the complexity of binding the correct method, - // stat is called as a separate command. This is less efficient but more portable. -- String statUserSwitch = Platform.isMac() ? "-f" : "-c"; -- Process process = Runtime.getRuntime().exec("stat " + statUserSwitch + " %u " + file.getAbsolutePath()); +- Process process = Runtime.getRuntime().exec(new String[]{"stat", +- Platform.isMac() ? "-f" : "-c", +- "%u", +- file.getAbsolutePath()}); - int attempts = this.attempts; - boolean exited = false; - String line = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8")).readLine(); @@ -1524,7 +1539,7 @@ index 32fe7d1fad..795d648512 100644 - library.semop(semaphore, target, 1); - } catch (LastErrorException exception) { - if (acceptUnavailable && (Native.getLastError() == PosixLibrary.EAGAIN -- || Native.getLastError() == PosixLibrary.EDEADLK)) { +- || Native.getLastError() == PosixLibrary.EDEADLK)) { - break; - } else { - throw exception; @@ -1699,7 +1714,7 @@ index 32fe7d1fad..795d648512 100644 - /** - * {@inheritDoc} - */ -- public String getTemporaryFolder() { +- public String getTemporaryFolder(String processId) { - WinDef.DWORD length = new WinDef.DWORD(WinDef.MAX_PATH); - char[] path = new char[length.intValue()]; - if (Kernel32.INSTANCE.GetTempPath(length, path).intValue() == 0) { @@ -1883,6 +1898,7 @@ index 32fe7d1fad..795d648512 100644 - * @param name The semaphore's name. - * @return The handle or {@code null} if the handle could not be created. - */ +- @MaybeNull - @SuppressWarnings("checkstyle:methodname") - WinNT.HANDLE OpenSemaphoreW(int access, boolean inheritHandle, String name); - @@ -1895,8 +1911,12 @@ index 32fe7d1fad..795d648512 100644 - * @param name The semaphore's name. - * @return The handle or {@code null} if the handle could not be created. - */ +- @MaybeNull - @SuppressWarnings("checkstyle:methodname") -- WinNT.HANDLE CreateSemaphoreW(WinBase.SECURITY_ATTRIBUTES securityAttributes, long count, long maximumCount, String name); +- WinNT.HANDLE CreateSemaphoreW(@MaybeNull WinBase.SECURITY_ATTRIBUTES securityAttributes, +- long count, +- long maximumCount, +- String name); - - /** - * Releases the semaphore. @@ -1907,7 +1927,7 @@ index 32fe7d1fad..795d648512 100644 - * @return {@code true} if the semaphore was successfully released. - */ - @SuppressWarnings("checkstyle:methodname") -- boolean ReleaseSemaphore(WinNT.HANDLE handle, long count, Long previousCount); +- boolean ReleaseSemaphore(WinNT.HANDLE handle, long count, @MaybeNull Long previousCount); - - /** - * Create or opens a mutex. @@ -1917,6 +1937,7 @@ index 32fe7d1fad..795d648512 100644 - * @param name The mutex name. - * @return The handle to the mutex or {@code null} if the mutex could not be created. - */ +- @MaybeNull - @SuppressWarnings("checkstyle:methodname") - WinNT.HANDLE CreateMutex(SecurityAttributes attributes, boolean owner, String name); - @@ -1949,11 +1970,13 @@ index 32fe7d1fad..795d648512 100644 - /** - * The descriptor's length. - */ +- @MaybeNull - public WinDef.DWORD length; - - /** - * A pointer to the descriptor. - */ +- @MaybeNull - public Pointer securityDescriptor; - - /** @@ -2025,8 +2048,22 @@ index 32fe7d1fad..795d648512 100644 } } } +diff --git a/byte-buddy-dep/src/main/java/net/bytebuddy/description/type/TypeDescription.java b/byte-buddy-dep/src/main/java/net/bytebuddy/description/type/TypeDescription.java +index 2285a75..4266130 100644 +--- a/byte-buddy-dep/src/main/java/net/bytebuddy/description/type/TypeDescription.java ++++ b/byte-buddy-dep/src/main/java/net/bytebuddy/description/type/TypeDescription.java +@@ -4332,9 +4332,6 @@ public interface TypeDescription extends TypeDefinition, ByteCodeElement, TypeVa + } + + @Override +- @SuppressFBWarnings( +- value = {"EQ_CHECK_FOR_OPERAND_NOT_COMPATIBLE_WITH_THIS", "NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE"}, +- justification = "Type check is performed by erasure implementation. Assuming component type for array type.") + public boolean equals(@MaybeNull Object other) { + if (this == other) { + return true; diff --git a/byte-buddy-dep/src/main/java/net/bytebuddy/dynamic/loading/ClassInjector.java b/byte-buddy-dep/src/main/java/net/bytebuddy/dynamic/loading/ClassInjector.java -index 279b6497d2..a63ce63d5c 100644 +index c37c287..cafaeb4 100644 --- a/byte-buddy-dep/src/main/java/net/bytebuddy/dynamic/loading/ClassInjector.java +++ b/byte-buddy-dep/src/main/java/net/bytebuddy/dynamic/loading/ClassInjector.java @@ -15,8 +15,6 @@ @@ -2038,63 +2075,65 @@ index 279b6497d2..a63ce63d5c 100644 import net.bytebuddy.ByteBuddy; import net.bytebuddy.ClassFileVersion; import net.bytebuddy.asm.MemberRemoval; -@@ -507,7 +505,6 @@ public interface ClassInjector { +@@ -516,7 +514,6 @@ public interface ClassInjector { /** * {@inheritDoc} */ -- @SuppressFBWarnings(value = "REC_CATCH_EXCEPTION", justification = "Exception should not be rethrown but trigger a fallback") +- @SuppressFBWarnings(value = "REC_CATCH_EXCEPTION", justification = "Exception should not be rethrown but trigger a fallback.") public Initializable run() { try { if (JavaModule.isSupported()) { -@@ -583,7 +580,6 @@ public interface ClassInjector { +@@ -593,7 +590,6 @@ public interface ClassInjector { * @return A direct dispatcher for class injection. * @throws Exception If the creation is impossible. */ -- @SuppressFBWarnings(value = "DP_DO_INSIDE_DO_PRIVILEGED", justification = "Privilege is explicit caller responsibility") +- @SuppressFBWarnings(value = "DP_DO_INSIDE_DO_PRIVILEGED", justification = "Assuring privilege is explicit user responsibility.") protected static Initializable make() throws Exception { Method getDefinedPackage; if (JavaModule.isSupported()) { // Avoid accidental lookup of method with same name in Java 8 J9 VM. -@@ -888,7 +884,6 @@ public interface ClassInjector { +@@ -902,7 +898,6 @@ public interface ClassInjector { * @return An indirect dispatcher for class creation. * @throws Exception If the dispatcher cannot be created. */ -- @SuppressFBWarnings(value = "DP_DO_INSIDE_DO_PRIVILEGED", justification = "Privilege is explicit caller responsibility") +- @SuppressFBWarnings(value = "DP_DO_INSIDE_DO_PRIVILEGED", justification = "Assuring privilege is explicit user responsibility.") protected static Initializable make() throws Exception { - if (Boolean.getBoolean(UsingUnsafe.SAFE_PROPERTY)) { + if (Boolean.parseBoolean(java.lang.System.getProperty(UsingUnsafe.SAFE_PROPERTY, Boolean.toString(GraalImageCode.getCurrent().isDefined())))) { return new Initializable.Unavailable("Use of Unsafe was disabled by system property"); -@@ -1150,7 +1145,6 @@ public interface ClassInjector { +@@ -1166,7 +1161,6 @@ public interface ClassInjector { * @return An appropriate initializable. * @throws Exception If the injector cannot be created. */ -- @SuppressFBWarnings(value = "DP_DO_INSIDE_DO_PRIVILEGED", justification = "Privilege is explicit caller responsibility") +- @SuppressFBWarnings(value = "DP_DO_INSIDE_DO_PRIVILEGED", justification = "Assuring privilege is explicit user responsibility.") protected static Initializable make() throws Exception { - if (Boolean.getBoolean(UsingUnsafe.SAFE_PROPERTY)) { + if (Boolean.parseBoolean(java.lang.System.getProperty(UsingUnsafe.SAFE_PROPERTY, Boolean.toString(GraalImageCode.getCurrent().isDefined())))) { return new Initializable.Unavailable("Use of Unsafe was disabled by system property"); -@@ -1888,7 +1882,6 @@ public interface ClassInjector { +@@ -1916,7 +1910,6 @@ public interface ClassInjector { /** * {@inheritDoc} */ -- @SuppressFBWarnings(value = "REC_CATCH_EXCEPTION", justification = "Exception should not be rethrown but trigger a fallback") +- @SuppressFBWarnings(value = "REC_CATCH_EXCEPTION", justification = "Exception should not be rethrown but trigger a fallback.") public Initializable run() { - if (Boolean.getBoolean(SAFE_PROPERTY)) { + if (Boolean.parseBoolean(java.lang.System.getProperty(SAFE_PROPERTY, Boolean.toString(GraalImageCode.getCurrent().isDefined())))) { return new Unavailable("Use of Unsafe was disabled by system property"); -@@ -2093,7 +2086,6 @@ public interface ClassInjector { +@@ -2121,7 +2114,6 @@ public interface ClassInjector { * * @param accessResolver The access resolver to use. */ -- @SuppressFBWarnings(value = "REC_CATCH_EXCEPTION", justification = "Exception is captured to trigger lazy error upon use.") +- @SuppressFBWarnings(value = "REC_CATCH_EXCEPTION", justification = "Exception should not be rethrown but trigger a fallback.") public Factory(AccessResolver accessResolver) { Dispatcher.Initializable dispatcher; if (DISPATCHER.isAvailable()) { -@@ -2151,7 +2143,6 @@ public interface ClassInjector { +@@ -2179,9 +2171,6 @@ public interface ClassInjector { * other classes within this class's module. * @return An appropriate injection strategy. */ -- @SuppressFBWarnings(value = "REC_CATCH_EXCEPTION", justification = "Exception intends to trigger disabled injection strategy.") +- @SuppressFBWarnings( +- value = {"REC_CATCH_EXCEPTION", "NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE"}, +- justification = "Exception intends to trigger disabled injection strategy. Modules are assumed if module system is supported.") public static Factory resolve(Instrumentation instrumentation, boolean local) { if (ClassInjector.UsingUnsafe.isAvailable() || !JavaModule.isSupported()) { return new Factory(); -@@ -2733,85 +2724,18 @@ public interface ClassInjector { +@@ -2771,85 +2760,18 @@ public interface ClassInjector { /** * {@inheritDoc} */ @@ -2168,7 +2207,7 @@ index 279b6497d2..a63ce63d5c 100644 - /** - * {@inheritDoc} - */ -- public Class defineClass(ClassLoader classLoader, String name, byte[] binaryRepresentation, ProtectionDomain protectionDomain) { +- public Class defineClass(@MaybeNull ClassLoader classLoader, String name, byte[] binaryRepresentation, @MaybeNull ProtectionDomain protectionDomain) { - return jvm.JVM_DefineClass(JNIEnv.CURRENT, - name.replace('.', '/'), - classLoader, @@ -2181,7 +2220,7 @@ index 279b6497d2..a63ce63d5c 100644 /** * An unavailable dispatcher for JNA-based class injection. */ -@@ -2846,32 +2770,6 @@ public interface ClassInjector { +@@ -2884,32 +2806,6 @@ public interface ClassInjector { throw new UnsupportedOperationException("JNA is not available and JNA-based injection cannot be used: " + error); } } @@ -2206,14 +2245,14 @@ index 279b6497d2..a63ce63d5c 100644 - @SuppressWarnings("checkstyle:methodname") - Class JVM_DefineClass(JNIEnv env, - String name, -- ClassLoader classLoader, +- @MaybeNull ClassLoader classLoader, - byte[] binaryRepresentation, - int length, -- ProtectionDomain protectionDomain) throws LastErrorException; +- @MaybeNull ProtectionDomain protectionDomain) throws LastErrorException; - } } } } -- -2.31.1 +2.35.1 diff --git a/0003-Remove-Java-14-tests.patch b/0003-Remove-Java-14-tests.patch index 2f88379..c1390d9 100644 --- a/0003-Remove-Java-14-tests.patch +++ b/0003-Remove-Java-14-tests.patch @@ -1,7 +1,7 @@ -From 9763d7d30bcbb8bf56a6682bb7362f3de33a0802 Mon Sep 17 00:00:00 2001 +From 4c1537b368b1f293e982d15b478eb4dc88fc1aaf Mon Sep 17 00:00:00 2001 From: Marian Koncek Date: Thu, 4 Feb 2021 15:17:13 +0100 -Subject: [PATCH] Remove Java 14 tests +Subject: [PATCH 3/4] Remove Java 14 tests --- .../test/precompiled/SampleRecord.java | 24 ------------------- @@ -10,7 +10,7 @@ Subject: [PATCH] Remove Java 14 tests diff --git a/byte-buddy-dep/src/precompiled/java/net/bytebuddy/test/precompiled/SampleRecord.java b/byte-buddy-dep/src/precompiled/java/net/bytebuddy/test/precompiled/SampleRecord.java deleted file mode 100644 -index 522eefa..0000000 +index 137ce19..0000000 --- a/byte-buddy-dep/src/precompiled/java/net/bytebuddy/test/precompiled/SampleRecord.java +++ /dev/null @@ -1,24 +0,0 @@ @@ -35,9 +35,9 @@ index 522eefa..0000000 - -import java.util.List; - --public record SampleRecord(@AbstractTypeDescriptionTest.SampleAnnotation @TypeAnnotation(42) List<@TypeAnnotation(84) String> foo) { -- /* empty */ --} +-public record SampleRecord(@AbstractTypeDescriptionTest.SampleAnnotation @TypeAnnotation(42) List<@TypeAnnotation(84) String> foo){ +- /* empty */ +- } -- -2.29.2 +2.35.1 diff --git a/0004-Remove-JDK-15-sealed-classes.patch b/0004-Remove-JDK-15-sealed-classes.patch index f37c67c..9e30682 100644 --- a/0004-Remove-JDK-15-sealed-classes.patch +++ b/0004-Remove-JDK-15-sealed-classes.patch @@ -1,19 +1,19 @@ -From b7b286c16c4aba60ce47e0df3f6e97cfb005b21c Mon Sep 17 00:00:00 2001 +From 88e2f74d1fa33b32feb3f21bdfd30d475682e6fe Mon Sep 17 00:00:00 2001 From: Marian Koncek Date: Tue, 9 Nov 2021 12:23:28 +0100 -Subject: [PATCH] Remove JDK 15 sealed classes +Subject: [PATCH 4/4] Remove JDK 15 sealed classes --- - .../bytebuddy/test/precompiled/Sealed.java | 34 ------------------- - 1 file changed, 34 deletions(-) + .../bytebuddy/test/precompiled/Sealed.java | 40 ------------------- + 1 file changed, 40 deletions(-) delete mode 100644 byte-buddy-dep/src/precompiled/java/net/bytebuddy/test/precompiled/Sealed.java diff --git a/byte-buddy-dep/src/precompiled/java/net/bytebuddy/test/precompiled/Sealed.java b/byte-buddy-dep/src/precompiled/java/net/bytebuddy/test/precompiled/Sealed.java deleted file mode 100644 -index 28d9835..0000000 +index bff4718..0000000 --- a/byte-buddy-dep/src/precompiled/java/net/bytebuddy/test/precompiled/Sealed.java +++ /dev/null -@@ -1,34 +0,0 @@ +@@ -1,40 +0,0 @@ -/* - * Copyright 2014 - Present Rafael Winterhalter - * @@ -31,13 +31,19 @@ index 28d9835..0000000 - */ -package net.bytebuddy.test.precompiled; - --public sealed class Sealed permits Sealed.SubNonSealed, Sealed.SubSealed, Sealed.SubFinal { +-public sealed - -- public static non-sealed class SubNonSealed extends Sealed { +-class Sealed permits Sealed.SubNonSealed, Sealed.SubSealed, Sealed.SubFinal { +- +- public static non-sealed +- +- class SubNonSealed extends Sealed { - /* empty */ - } - -- public static sealed class SubSealed extends Sealed permits SubSealed.SubSubFinal { +- public static sealed +- +- class SubSealed extends Sealed permits SubSealed.SubSubFinal { - - public static final class SubSubFinal extends SubSealed { - /* empty */ @@ -49,5 +55,5 @@ index 28d9835..0000000 - } -} -- -2.31.1 +2.35.1 diff --git a/byte-buddy.spec b/byte-buddy.spec index 88be2e4..0a4bb75 100644 --- a/byte-buddy.spec +++ b/byte-buddy.spec @@ -1,8 +1,8 @@ %bcond_with bootstrap Name: byte-buddy -Version: 1.12.0 -Release: 3%{?dist} +Version: 1.12.10 +Release: 1%{?dist} Summary: Runtime code generation for the Java virtual machine License: ASL 2.0 URL: http://bytebuddy.net/ @@ -91,6 +91,7 @@ mv byte-buddy-dep/src/precompiled/java/net/bytebuddy/build/*.java \ mkdir -p byte-buddy-dep/src/test/java/net/bytebuddy/test/precompiled/ mv byte-buddy-dep/src/precompiled/java/net/bytebuddy/test/precompiled/*.java \ byte-buddy-dep/src/test/java/net/bytebuddy/test/precompiled/ +rm byte-buddy-dep/src/test/java/net/bytebuddy/test/precompiled/GenericRecordSample.java # Don't ship android or benchmark modules %pom_disable_module byte-buddy-android @@ -162,6 +163,9 @@ sed -i -e '/SuppressFBWarnings/d' $(grep -lr SuppressFBWarnings) %license LICENSE NOTICE %changelog +* Mon May 09 2022 Mikolaj Izdebski - 1.12.10-1 +- Update to upstream version 1.12.10 + * Sat Feb 05 2022 Jiri Vanek - 1.12.0-3 - Rebuilt for java-17-openjdk as system jdk diff --git a/sources b/sources index 64abd2b..5ceb24f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (byte-buddy-1.12.0.tar.gz) = a57d983920251f03b7d963d2525d94899d35298ba09a8b698e3f24e78a967b97fd1741f6e8ddda7613fffc4beee4a470e31615b49f9b9cdb12ff0e12391592f3 +SHA512 (byte-buddy-1.12.10.tar.gz) = 765a6052e34bbe7b3431189670cb67b93630bb54a0dae91bea428eabc3caffe142135669289bdff74b9b57998f58634222b0ddea38a7e29125dcd5dd3f6f3ab2