Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package mockito for openSUSE:Factory checked 
in at 2024-04-19 19:14:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mockito (Old)
 and      /work/SRC/openSUSE:Factory/.mockito.new.26366 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "mockito"

Fri Apr 19 19:14:32 2024 rev:8 rq:1169149 version:5.11.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/mockito/mockito.changes  2024-02-22 
20:58:49.299834134 +0100
+++ /work/SRC/openSUSE:Factory/.mockito.new.26366/mockito.changes       
2024-04-19 19:17:44.507249053 +0200
@@ -1,0 +2,54 @@
+Fri Apr 19 07:18:58 UTC 2024 - Fridrich Strba <[email protected]>
+
+- Update to version 5.11.0
+- Changes of the 5.x line
+  * Mockito 5 is making core changes to ensure compatibility with
+    future JDK versions.
+  * Switch the Default MockMaker to mockito-inline (not applicable
+    to mockito-android)
+    + Mockito 2.7.6 introduced the mockito-inline mockmaker based on
+      the "inline bytecode" principle, offering compatibility
+      advantages over the subclass mockmaker.
+    + This change avoids JDK restrictions, such as violating module
+      boundaries and leaking subclass creation.
+  * Legitimate use cases for the subclass mockmaker
+    + scenarios where the inline mockmaker does not function, such
+      as on Graal VM's native image.
+    + Additionally, if avoiding mocking final classes, the subclass
+      mockmaker remains a viable option, although issues may arise
+      on JDK 17+.
+    + Mockito aims to support both mockmakers, allowing users to
+      choose based on their requirements.
+  * Update the Minimum Supported Java Version to 11
+    + Mockito 4 supports Java 8 and above, but Mockito 5 raises the
+      minimum supported Java version to 11.
+    + Community member @reta contributed to this change.
+    + Users still on JDK 8 can continue using Mockito 4, with
+      minimal API differences between versions.
+  * New type() Method on ArgumentMatcher
+    + The ArgumentMatcher interface now includes a new type() method
+      to support varargs methods, addressing previous limitations.
+    + Users can now differentiate between matching calls with any
+      exact number of arguments or match any number of arguments.
+    + Mockito 5 provides a default implementation of the new method,
+      ensuring backward compatibility.
+    + No obligation for users to implement the new method; Mockito 5
+      considers Void.type by default for varargs handling.
+    + ArgumentCaptor is now fully type-aware, enabling capturing
+      specific subclasses on a generic method.
+- Removed patches:
+  * fix-bnd-config.patch
+  * fix-incompatible-types.patch
+  * fixup-ant-script.patch
+  * mockito-matcher.patch
+  * remove-hardcoded-source-target.patch
+  * setting-naming-policy.patch
+    + not needed by this version
+- Added patches:
+  * keep-source-target-8.patch
+    + make the code again buildable with --release 8
+  * use-unbundled-asm.patch
+    + adapt to our change of byte-buddy, where it does not bundle
+      asm, but uses objectweb-asm as external library
+
+-------------------------------------------------------------------

Old:
----
  fix-bnd-config.patch
  fix-incompatible-types.patch
  fixup-ant-script.patch
  mockito-1.10.19.tar.xz
  mockito-matcher.patch
  remove-hardcoded-source-target.patch
  setting-naming-policy.patch

New:
----
  aggregator.pom
  keep-source-target-8.patch
  mockito-5.11.0.tar.xz
  mockito-core-5.11.0.pom
  mockito-junit-jupiter-5.11.0.pom
  use-unbundled-asm.patch

BETA DEBUG BEGIN:
  Old:- Removed patches:
  * fix-bnd-config.patch
  * fix-incompatible-types.patch
  Old:  * fix-bnd-config.patch
  * fix-incompatible-types.patch
  * fixup-ant-script.patch
  Old:  * fix-incompatible-types.patch
  * fixup-ant-script.patch
  * mockito-matcher.patch
  Old:  * fixup-ant-script.patch
  * mockito-matcher.patch
  * remove-hardcoded-source-target.patch
  Old:  * mockito-matcher.patch
  * remove-hardcoded-source-target.patch
  * setting-naming-policy.patch
  Old:  * remove-hardcoded-source-target.patch
  * setting-naming-policy.patch
    + not needed by this version
BETA DEBUG END:

BETA DEBUG BEGIN:
  New:- Added patches:
  * keep-source-target-8.patch
    + make the code again buildable with --release 8
  New:    + make the code again buildable with --release 8
  * use-unbundled-asm.patch
    + adapt to our change of byte-buddy, where it does not bundle
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ mockito.spec ++++++
--- /var/tmp/diff_new_pack.TWDqYo/_old  2024-04-19 19:17:47.091344061 +0200
+++ /var/tmp/diff_new_pack.TWDqYo/_new  2024-04-19 19:17:47.111344796 +0200
@@ -17,38 +17,43 @@
 
 
 Name:           mockito
-Version:        1.10.19
+Version:        5.11.0
 Release:        0
 Summary:        A Java mocking framework
 License:        MIT
 Group:          Development/Libraries/Java
 URL:            http://%{name}.org
 Source0:        %{name}-%{version}.tar.xz
-Patch0:         fixup-ant-script.patch
-Patch1:         fix-bnd-config.patch
-Patch2:         %{name}-matcher.patch
-# Workaround for NPE in setting NamingPolicy in cglib
-Patch3:         setting-naming-policy.patch
-# because we have old objenesis
-Patch4:         fix-incompatible-types.patch
-Patch5:         remove-hardcoded-source-target.patch
-BuildRequires:  ant
-BuildRequires:  aqute-bnd
-BuildRequires:  cglib
-BuildRequires:  dos2unix
+# build with maven instead of gradle
+Source2:        aggregator.pom
+Source3:        
https://repo1.maven.org/maven2/org/mockito/mockito-core/%{version}/mockito-core-%{version}.pom
+Source4:        
https://repo1.maven.org/maven2/org/mockito/mockito-junit-jupiter/%{version}/mockito-junit-jupiter-%{version}.pom
+Patch0:         use-unbundled-asm.patch
+Patch1:         keep-source-target-8.patch
 BuildRequires:  fdupes
-BuildRequires:  hamcrest
-BuildRequires:  java-devel >= 1.8
-BuildRequires:  javapackages-local >= 6
-BuildRequires:  junit
-BuildRequires:  objenesis
-BuildRequires:  unzip
+BuildRequires:  maven-local
+BuildRequires:  mvn(junit:junit)
+BuildRequires:  mvn(net.bytebuddy:byte-buddy)
+BuildRequires:  mvn(net.bytebuddy:byte-buddy-agent)
+BuildRequires:  mvn(net.bytebuddy:byte-buddy-dep)
+BuildRequires:  mvn(org.apache.maven.plugins:maven-antrun-plugin)
+BuildRequires:  mvn(org.junit.jupiter:junit-jupiter-api)
+BuildRequires:  mvn(org.objenesis:objenesis)
+BuildRequires:  mvn(org.opentest4j:opentest4j)
 BuildArch:      noarch
 
 %description
 Mockito is a mocking framework. It lets you write tests. Tests
 produce clean verification errors.
 
+%package junit-jupiter
+Summary:        Mockito JUnit 5 support
+Group:          Development/Libraries/Java
+Requires:       %{name} = %{version}-%{release}
+
+%description junit-jupiter
+Mockito JUnit 5 support.
+
 %package javadoc
 Summary:        Javadocs for %{name}
 Group:          Documentation/HTML
@@ -57,54 +62,88 @@
 This package contains the API documentation for %{name}.
 
 %prep
-%setup -q
-dos2unix `find -name *.java`
-%patch -P 0
-%patch -P 1
-%patch -P 2 -p1
-%patch -P 3 -p1
-%patch -P 4 -p1
-%patch -P 5 -p1
-
-%pom_add_dep net.sf.cglib:cglib:3.1 maven/mockito-core.pom
-find . -name "*.java" -exec sed -i "s|org\.%{name}\.cglib|net\.sf\.cglib|g" {} 
+
-mkdir -p lib/compile lib/build lib/run lib/repackaged
+%autosetup -p1
 
-%pom_xpath_remove 'target[@name="javadoc"]/copy' build.xml
+cp %{SOURCE2} aggregator.pom
+cp %{SOURCE3} pom.xml
+cp %{SOURCE4} subprojects/junit-jupiter/pom.xml
+
+# Compatibility alias
+%{mvn_alias} org.%{name}:%{name}-core org.%{name}:%{name}-all
+
+%pom_add_dep junit:junit
+%pom_add_dep net.bytebuddy:byte-buddy-dep
+%pom_remove_dep org.objenesis:objenesis
+%pom_add_dep org.objenesis:objenesis
+%pom_add_dep org.opentest4j:opentest4j
+
+%pom_remove_dep org.junit.jupiter:junit-jupiter-api subprojects/junit-jupiter
+%pom_add_dep org.junit.jupiter:junit-jupiter-api subprojects/junit-jupiter
+
+mkdir -p src/main/resources/mockito-extensions
+echo 'member-accessor-module' > 
src/main/resources/mockito-extensions/org.mockito.plugins.MemberAccessor
+echo 'mock-maker-subclass' > 
src/main/resources/mockito-extensions/org.mockito.plugins.MockMaker
+
+# see gradle/mockito-core/inline-mock.gradle
+%pom_xpath_inject 'pom:project' '
+<build>
+  <plugins>
+    <plugin>
+      <groupId>org.apache.maven.plugins</groupId>
+      <artifactId>maven-antrun-plugin</artifactId>
+      <version>any</version>
+      <executions>
+        <execution>
+          <phase>process-classes</phase>
+          <configuration>
+            <target>
+              <copy 
file="${project.build.outputDirectory}/org/mockito/internal/creation/bytebuddy/inject/MockMethodDispatcher.class"
+                    
tofile="${project.build.outputDirectory}/org/mockito/internal/creation/bytebuddy/inject/MockMethodDispatcher.raw"/>
+            </target>
+          </configuration>
+          <goals>
+            <goal>run</goal>
+          </goals>
+        </execution>
+      </executions>
+    </plugin>
+    <plugin>
+      <groupId>org.apache.maven.plugins</groupId>
+      <artifactId>maven-jar-plugin</artifactId>
+      <version>any</version>
+      <configuration>
+        <excludes>
+          
<exclude>org/mockito/internal/creation/bytebuddy/inject/*.class</exclude>
+        </excludes>
+      </configuration>
+    </plugin>
+  </plugins>
+</build>
+'
+
+%{mvn_package} :aggregator __noinstall
 
 %build
-build-jar-repository lib/compile objenesis cglib junit hamcrest/core
-ant -Dant.build.javac.source=1.8 -Dant.build.javac.target=1.8 jar javadoc 
prepare.poms
+%{mvn_build} -f -- \
+    -Dproject.build.outputTimestamp=$(date -u -d @${SOURCE_DATE_EPOCH:-$(date 
+%%s)} +%%Y-%%m-%%dT%%H:%%M:%%SZ) \
+%if %{?pkg_vcmp:%pkg_vcmp java-devel >= 9}%{!?pkg_vcmp:0}
+    -Dmaven.compiler.release=8 \
+%endif
+    -Dmaven.compiler.source=8 -Dmaven.compiler.target=8 -Dsource=8 \
+    -Dproject.build.sourceEncoding=UTF-8 -f aggregator.pom
 
-echo "-reproducible: true" >> conf/%{name}-core.bnd
-echo "-noextraheaders: true" >> conf/%{name}-core.bnd
-echo "-snapshot: SNAPSHOT" >> conf/%{name}-core.bnd
-
-# Convert to OSGi bundle
-bnd wrap \
- --version %{version} \
- --output target/%{name}-core-%{version}.bar \
- --properties conf/%{name}-core.bnd \
- target/%{name}-core-%{version}.jar
-mv target/%{name}-core-%{version}.bar target/%{name}-core-%{version}.jar
+%{mvn_package} org.mockito:mockito-junit-jupiter junit-jupiter
 
 %install
-# jar
-install -dm 0755 %{buildroot}%{_javadir}/%{name}
-install -pm 0644 target/%{name}-core-%{version}.jar 
%{buildroot}%{_javadir}/%{name}/%{name}-core.jar
-# pom
-install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name}
-%{mvn_install_pom} target/%{name}-core.pom 
%{buildroot}%{_mavenpomdir}/%{name}/%{name}-core.pom
-%add_maven_depmap %{name}/%{name}-core.pom %{name}/%{name}-core.jar -a 
org.%{name}:%{name}-all
-# javadoc
-install -dm 0755 %{buildroot}%{_javadocdir}/%{name}
-cp -pr target/javadoc/* %{buildroot}%{_javadocdir}/%{name}/
+%mvn_install
 %fdupes -s %{buildroot}%{_javadocdir}
 
 %files -f .mfiles
-%license LICENSE NOTICE
+%license LICENSE
+%doc README.md doc/design-docs/custom-argument-matching.md
+
+%files junit-jupiter -f .mfiles-junit-jupiter
 
-%files javadoc
-%{_javadocdir}/%{name}
-%license LICENSE NOTICE
+%files javadoc -f .mfiles-javadoc
+%license LICENSE
 

++++++ _service ++++++
--- /var/tmp/diff_new_pack.TWDqYo/_old  2024-04-19 19:17:47.243349649 +0200
+++ /var/tmp/diff_new_pack.TWDqYo/_new  2024-04-19 19:17:47.243349649 +0200
@@ -2,16 +2,13 @@
        <service name="tar_scm" mode="disabled">
                <param name="scm">git</param>
                <param name="url">https://github.com/mockito/mockito.git</param>
-               <param name="revision">v1.10.19</param>
-               <param name="versionformat">1.10.19</param>
-               <param name="exclude">build.gradle</param>
-               <param name="exclude">cglib-and-asm</param>
-               <param name="exclude">lib/*</param>
-               <param name="exclude">doc</param>
-               <param name="exclude">gradle</param>
-               <param name="exclude">gradlew</param>
-               <param name="exclude">gradlew.bat</param>
-               <param name="exclude">javadoc</param>
+               <param name="revision">v5.11.0</param>
+               <param name="match-tag">v*</param>
+               <param name="versionformat">@PARENT_TAG@</param>
+               <param name="versionrewrite-pattern">v(.*)</param>
+               <param name="exclude">*gradle*</param>
+               <param name="exclude">**/*.gradle</param>
+               <param name="exclude">src/javadoc</param>
        </service>
        <service name="recompress" mode="disabled">
                <param name="file">*.tar</param>

++++++ aggregator.pom ++++++
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns='http://maven.apache.org/POM/4.0.0' 
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
  xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd'>
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.fedoraproject.xmvn.mockito</groupId>
  <artifactId>aggregator</artifactId>
  <version>any</version>
  <packaging>pom</packaging>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <modules>
    <module>.</module>
    <module>subprojects/junit-jupiter</module>
  </modules>
</project>

++++++ keep-source-target-8.patch ++++++
--- a/src/main/java/org/mockito/internal/debugging/LocationImpl.java
+++ b/src/main/java/org/mockito/internal/debugging/LocationImpl.java
@@ -12,14 +12,12 @@ import 
org.mockito.internal.exceptions.stacktrace.DefaultStackTraceCleaner;
 import org.mockito.invocation.Location;
 
 import java.io.Serializable;
-import java.lang.StackWalker.Option;
-import java.lang.StackWalker.StackFrame;
 import java.util.Collections;
+import java.util.Arrays;
 import java.util.List;
 import java.util.function.Function;
 import java.util.function.Predicate;
 import java.util.stream.Collectors;
-import java.util.stream.Stream;
 
 class LocationImpl implements Location, Serializable {
     private static final long serialVersionUID = 2954388321980069195L;
@@ -37,8 +35,6 @@ class LocationImpl implements Location, Serializable {
      */
     private static final int BUFFER_SIZE = 16;
 
-    private static final StackWalker STACK_WALKER = stackWalker();
-
     private static final String PREFIX = "-> at ";
 
     private static final StackTraceCleaner CLEANER =
@@ -51,7 +47,7 @@ class LocationImpl implements Location, Serializable {
      * per element). By assigning these Functions and Predicates to variables, 
we can
      * avoid the memory allocation.
      */
-    private static final Function<StackFrame, StackFrameMetadata> 
toStackFrameMetadata =
+    private static final Function<StackTraceElement, StackFrameMetadata> 
toStackFrameMetadata =
             MetadataShim::new;
 
     private static final Predicate<StackFrameMetadata> cleanerIsIn = 
CLEANER::isIn;
@@ -87,15 +83,14 @@ class LocationImpl implements Location, Serializable {
     }
 
     private static StackFrameMetadata getStackFrame(boolean isInline) {
-        return stackWalk(
-                stream ->
-                        stream.map(toStackFrameMetadata)
-                                .skip(FRAMES_TO_SKIP)
-                                .filter(cleanerIsIn)
-                                .skip(isInline ? 1 : 0)
-                                .findFirst()
-                                .orElseThrow(
-                                        () -> new 
MockitoException(noStackTraceFailureMessage())));
+        StackTraceElement[] stackTraceElements = 
Thread.currentThread().getStackTrace();
+        return Arrays.stream(stackTraceElements)
+                .skip(FRAMES_TO_SKIP)
+                .map(toStackFrameMetadata)
+                .filter(cleanerIsIn)
+                .skip(isInline ? 1 : 0)
+                .findFirst()
+                .orElseThrow(() -> new 
MockitoException(noStackTraceFailureMessage()));
     }
 
     private static boolean usingDefaultStackTraceCleaner() {
@@ -120,63 +115,48 @@ class LocationImpl implements Location, Serializable {
      * ensure there are no non-Mockito frames at the top of the stack trace.
      */
     private static int framesToSkip() {
-        return stackWalk(
-                stream -> {
-                    List<String> metadata =
-                            stream.map(toStackFrameMetadata)
-                                    .map(StackFrameMetadata::getClassName)
-                                    .collect(Collectors.toList());
-                    return metadata.indexOf(LocationImpl.class.getName());
-                });
-    }
-
-    private static <T> T stackWalk(Function<Stream<StackFrame>, T> function) {
-        return (T) STACK_WALKER.walk(function);
-    }
-
-    private static StackWalker stackWalker() {
-        return StackWalker.getInstance(
-                Collections.singleton(Option.SHOW_REFLECT_FRAMES), 
BUFFER_SIZE);
+        List<String> stackTraceElements = 
Arrays.asList(Thread.currentThread().getStackTrace()).stream().map(x -> 
x.getClassName()).collect(Collectors.toList());
+        return stackTraceElements.indexOf(LocationImpl.class.getName()) + 1;
     }
 
     private static final class MetadataShim implements StackFrameMetadata, 
Serializable {
         private static final long serialVersionUID = 8491903719411428648L;
-        private final StackFrame stackFrame;
+        private final StackTraceElement ste;
 
-        private MetadataShim(StackFrame stackFrame) {
-            this.stackFrame = stackFrame;
+        private MetadataShim(StackTraceElement ste) {
+            this.ste = ste;
         }
 
         @Override
         public String getClassName() {
-            return stackFrame.getClassName();
+            return ste.getClassName();
         }
 
         @Override
         public String getMethodName() {
-            return stackFrame.getMethodName();
+            return ste.getMethodName();
         }
 
         @Override
         public String getFileName() {
-            return stackFrame.getFileName();
+            return ste.getFileName();
         }
 
         @Override
         public int getLineNumber() {
-            return stackFrame.getLineNumber();
+            return ste.getLineNumber();
         }
 
         @Override
         public String toString() {
-            return stackFrame.toString();
+            return ste.toString();
         }
 
         /**
          * Ensure that this type remains serializable.
          */
         private Object writeReplace() {
-            return new SerializableShim(stackFrame.toStackTraceElement());
+            return new SerializableShim(ste);
         }
     }
 
--- 
a/src/main/java/org/mockito/internal/stubbing/defaultanswers/ReturnsDeepStubs.java
+++ 
b/src/main/java/org/mockito/internal/stubbing/defaultanswers/ReturnsDeepStubs.java
@@ -54,7 +54,7 @@ public class ReturnsDeepStubs implements Answer<Object>, 
Serializable {
         MockCreationSettings<?> mockSettings = 
MockUtil.getMockSettings(invocation.getMock());
 
         Class<?> rawType = returnTypeGenericMetadata.rawType();
-        final var emptyValue = 
ReturnsEmptyValues.returnCommonEmptyValueFor(rawType);
+        final Object emptyValue = 
ReturnsEmptyValues.returnCommonEmptyValueFor(rawType);
         if (emptyValue != null) {
             return emptyValue;
         }
--- a/src/main/java/org/mockito/plugins/DoNotMockEnforcer.java
+++ b/src/main/java/org/mockito/plugins/DoNotMockEnforcer.java
@@ -57,7 +57,7 @@ public interface DoNotMockEnforcer extends 
DoNotMockEnforcerWithType {
         return null;
     }
 
-    private String recursiveCheckDoNotMockAnnotationForType(Class<?> type) {
+    default String recursiveCheckDoNotMockAnnotationForType(Class<?> type) {
         // Object and interfaces do not have a super class
         if (type == null) {
             return null;
--- a/src/main/java/org/mockito/plugins/MockitoPlugins.java
+++ b/src/main/java/org/mockito/plugins/MockitoPlugins.java
@@ -43,7 +43,7 @@ public interface MockitoPlugins {
      * @since 2.10.0
      * @deprecated Please use {@link #getMockMaker(String)} with {@link 
org.mockito.MockMakers#INLINE} instead.
      */
-    @Deprecated(since = "5.6.0", forRemoval = true)
+    @Deprecated
     MockMaker getInlineMockMaker();
 
     /**
--- 
a/subprojects/junit-jupiter/src/main/java/org/mockito/junit/jupiter/MockitoExtension.java
+++ 
b/subprojects/junit-jupiter/src/main/java/org/mockito/junit/jupiter/MockitoExtension.java
@@ -171,12 +171,12 @@ public class MockitoExtension implements 
BeforeEachCallback, AfterEachCallback,
         do {
             annotation = findAnnotation(currentContext.getElement(), 
MockitoSettings.class);
 
-            if (currentContext.getParent().isEmpty()) {
+            if (currentContext.getParent() == null || 
!currentContext.getParent().isPresent()) {
                 break;
             }
 
             currentContext = currentContext.getParent().get();
-        } while (annotation.isEmpty() && currentContext != context.getRoot());
+        } while ((annotation == null || !annotation.isPresent()) && 
currentContext != context.getRoot());
 
         return annotation;
     }
--- 
a/subprojects/junit-jupiter/src/main/java/org/mockito/junit/jupiter/resolver/CompositeParameterResolver.java
+++ 
b/subprojects/junit-jupiter/src/main/java/org/mockito/junit/jupiter/resolver/CompositeParameterResolver.java
@@ -9,6 +9,7 @@ import org.junit.jupiter.api.extension.ParameterContext;
 import org.junit.jupiter.api.extension.ParameterResolutionException;
 import org.junit.jupiter.api.extension.ParameterResolver;
 
+import java.util.Arrays;
 import java.util.List;
 import java.util.Optional;
 
@@ -17,7 +18,7 @@ public class CompositeParameterResolver implements 
ParameterResolver {
     private final List<ParameterResolver> delegates;
 
     public CompositeParameterResolver(final ParameterResolver... delegates) {
-        this.delegates = List.of(delegates);
+        this.delegates = Arrays.asList(delegates);
     }
 
     @Override

++++++ mockito-1.10.19.tar.xz -> mockito-5.11.0.tar.xz ++++++
++++ 167804 lines of diff (skipped)

++++++ mockito-core-5.11.0.pom ++++++
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
https://maven.apache.org/xsd/maven-4.0.0.xsd"; 
xmlns="http://maven.apache.org/POM/4.0.0";
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.mockito</groupId>
  <artifactId>mockito-core</artifactId>
  <version>5.11.0</version>
  <name>mockito-core</name>
  <description>Mockito mock objects library core API and 
implementation</description>
  <url>https://github.com/mockito/mockito</url>
  <licenses>
    <license>
      <name>MIT</name>
      <url>https://opensource.org/licenses/MIT</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  <developers>
    <developer>
      <id>mockitoguy</id>
      <name>Szczepan Faber</name>
      <url>https://github.com/mockitoguy</url>
      <roles>
        <role>Core developer</role>
      </roles>
    </developer>
    <developer>
      <id>bric3</id>
      <name>Brice Dutheil</name>
      <url>https://github.com/bric3</url>
      <roles>
        <role>Core developer</role>
      </roles>
    </developer>
    <developer>
      <id>raphw</id>
      <name>Rafael Winterhalter</name>
      <url>https://github.com/raphw</url>
      <roles>
        <role>Core developer</role>
      </roles>
    </developer>
    <developer>
      <id>TimvdLippe</id>
      <name>Tim van der Lippe</name>
      <url>https://github.com/TimvdLippe</url>
      <roles>
        <role>Core developer</role>
      </roles>
    </developer>
  </developers>
  <scm>
    <url>https://github.com/mockito/mockito.git</url>
  </scm>
  <issueManagement>
    <system>GitHub issues</system>
    <url>https://github.com/mockito/mockito/issues</url>
  </issueManagement>
  <ciManagement>
    <system>GH Actions</system>
    <url>https://github.com/mockito/mockito/actions</url>
  </ciManagement>
  <dependencies>
    <dependency>
      <groupId>net.bytebuddy</groupId>
      <artifactId>byte-buddy</artifactId>
      <version>1.14.12</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>net.bytebuddy</groupId>
      <artifactId>byte-buddy-agent</artifactId>
      <version>1.14.12</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.objenesis</groupId>
      <artifactId>objenesis</artifactId>
      <version>3.3</version>
      <scope>runtime</scope>
    </dependency>
  </dependencies>
</project>

++++++ mockito-junit-jupiter-5.11.0.pom ++++++
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
https://maven.apache.org/xsd/maven-4.0.0.xsd"; 
xmlns="http://maven.apache.org/POM/4.0.0";
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.mockito</groupId>
  <artifactId>mockito-junit-jupiter</artifactId>
  <version>5.11.0</version>
  <name>mockito-junit-jupiter</name>
  <description>Mockito JUnit 5 support</description>
  <url>https://github.com/mockito/mockito</url>
  <licenses>
    <license>
      <name>MIT</name>
      <url>https://opensource.org/licenses/MIT</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  <developers>
    <developer>
      <id>mockitoguy</id>
      <name>Szczepan Faber</name>
      <url>https://github.com/mockitoguy</url>
      <roles>
        <role>Core developer</role>
      </roles>
    </developer>
    <developer>
      <id>bric3</id>
      <name>Brice Dutheil</name>
      <url>https://github.com/bric3</url>
      <roles>
        <role>Core developer</role>
      </roles>
    </developer>
    <developer>
      <id>raphw</id>
      <name>Rafael Winterhalter</name>
      <url>https://github.com/raphw</url>
      <roles>
        <role>Core developer</role>
      </roles>
    </developer>
    <developer>
      <id>TimvdLippe</id>
      <name>Tim van der Lippe</name>
      <url>https://github.com/TimvdLippe</url>
      <roles>
        <role>Core developer</role>
      </roles>
    </developer>
  </developers>
  <scm>
    <url>https://github.com/mockito/mockito.git</url>
  </scm>
  <issueManagement>
    <system>GitHub issues</system>
    <url>https://github.com/mockito/mockito/issues</url>
  </issueManagement>
  <ciManagement>
    <system>GH Actions</system>
    <url>https://github.com/mockito/mockito/actions</url>
  </ciManagement>
  <dependencies>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-core</artifactId>
      <version>5.11.0</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-api</artifactId>
      <version>5.10.2</version>
      <scope>runtime</scope>
    </dependency>
  </dependencies>
</project>

++++++ use-unbundled-asm.patch ++++++
diff --git 
a/src/main/java/org/mockito/internal/creation/bytebuddy/InlineBytecodeGenerator.java
 
b/src/main/java/org/mockito/internal/creation/bytebuddy/InlineBytecodeGenerator.java
index 10b73c81a..5e2d8d2dc 100644
--- 
a/src/main/java/org/mockito/internal/creation/bytebuddy/InlineBytecodeGenerator.java
+++ 
b/src/main/java/org/mockito/internal/creation/bytebuddy/InlineBytecodeGenerator.java
@@ -18,8 +18,8 @@ import net.bytebuddy.dynamic.ClassFileLocator;
 import net.bytebuddy.dynamic.scaffold.MethodGraph;
 import net.bytebuddy.dynamic.scaffold.TypeValidation;
 import net.bytebuddy.implementation.Implementation;
-import net.bytebuddy.jar.asm.ClassVisitor;
-import net.bytebuddy.jar.asm.MethodVisitor;
+import org.objectweb.asm.ClassVisitor;
+import org.objectweb.asm.MethodVisitor;
 import net.bytebuddy.matcher.ElementMatchers;
 import net.bytebuddy.pool.TypePool;
 import net.bytebuddy.utility.OpenedClassReader;
diff --git 
a/src/main/java/org/mockito/internal/creation/bytebuddy/MockMethodAdvice.java 
b/src/main/java/org/mockito/internal/creation/bytebuddy/MockMethodAdvice.java
index 1490501ea..743a04f36 100644
--- 
a/src/main/java/org/mockito/internal/creation/bytebuddy/MockMethodAdvice.java
+++ 
b/src/main/java/org/mockito/internal/creation/bytebuddy/MockMethodAdvice.java
@@ -37,10 +37,10 @@ import 
net.bytebuddy.implementation.bind.annotation.Argument;
 import net.bytebuddy.implementation.bind.annotation.This;
 import net.bytebuddy.implementation.bytecode.StackSize;
 import net.bytebuddy.implementation.bytecode.assign.Assigner;
-import net.bytebuddy.jar.asm.Label;
-import net.bytebuddy.jar.asm.MethodVisitor;
-import net.bytebuddy.jar.asm.Opcodes;
-import net.bytebuddy.jar.asm.Type;
+import org.objectweb.asm.Label;
+import org.objectweb.asm.MethodVisitor;
+import org.objectweb.asm.Opcodes;
+import org.objectweb.asm.Type;
 import net.bytebuddy.pool.TypePool;
 import net.bytebuddy.utility.OpenedClassReader;
 
diff --git 
a/src/test/java/org/mockito/internal/creation/bytebuddy/AbstractByteBuddyMockMakerTest.java
 
b/src/test/java/org/mockito/internal/creation/bytebuddy/AbstractByteBuddyMockMakerTest.java
index 93c8913ac..972753e78 100644
--- 
a/src/test/java/org/mockito/internal/creation/bytebuddy/AbstractByteBuddyMockMakerTest.java
+++ 
b/src/test/java/org/mockito/internal/creation/bytebuddy/AbstractByteBuddyMockMakerTest.java
@@ -21,6 +21,7 @@ import org.mockito.mock.SerializableMode;
 import org.mockito.plugins.MockMaker;
 import org.mockitoutil.ClassLoaders;
 import org.mockitoutil.SimpleSerializationUtil;
+import org.objectweb.asm.ClassVisitor;
 import org.objenesis.ObjenesisStd;
 
 public abstract class AbstractByteBuddyMockMakerTest<MM extends MockMaker>
@@ -126,7 +127,7 @@ public abstract class AbstractByteBuddyMockMakerTest<MM 
extends MockMaker>
         // given
         ClassLoader classpath_with_objenesis =
                 ClassLoaders.excludingClassLoader()
-                        .withCodeSourceUrlOf(Mockito.class, ByteBuddy.class, 
ObjenesisStd.class)
+                        .withCodeSourceUrlOf(Mockito.class, ByteBuddy.class, 
ObjenesisStd.class, ClassVisitor.class)
                         .withCodeSourceUrlOf(coverageTool())
                         .build();
 
diff --git a/src/test/java/org/mockito/internal/junit/JUnitRuleTest.java 
b/src/test/java/org/mockito/internal/junit/JUnitRuleTest.java
index f971893e4..63af9cd52 100644
--- a/src/test/java/org/mockito/internal/junit/JUnitRuleTest.java
+++ b/src/test/java/org/mockito/internal/junit/JUnitRuleTest.java
@@ -8,6 +8,7 @@ import static org.junit.Assert.assertTrue;
 import static org.mockito.Mockito.mockingDetails;
 import static org.mockito.Mockito.when;
 
+import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.mockito.Mock;
@@ -42,6 +43,7 @@ public class JUnitRuleTest {
 
     @SuppressWarnings({"CheckReturnValue", "MockitoUsage"})
     @Test
+    @Ignore
     public void does_not_check_invalid_mockito_usage_on_failure() throws 
Throwable {
         // This intended behavior is questionable
         // However, it was like that since the beginning of JUnit rule support
diff --git a/src/test/java/org/mockitointegration/NoJUnitDependenciesTest.java 
b/src/test/java/org/mockitointegration/NoJUnitDependenciesTest.java
index 7b156f0aa..d488e9628 100644
--- a/src/test/java/org/mockitointegration/NoJUnitDependenciesTest.java
+++ b/src/test/java/org/mockitointegration/NoJUnitDependenciesTest.java
@@ -16,6 +16,7 @@ import org.junit.Test;
 import org.mockito.Mockito;
 import org.mockito.internal.configuration.plugins.Plugins;
 import org.mockitoutil.ClassLoaders;
+import org.objectweb.asm.ClassVisitor;
 import org.objenesis.Objenesis;
 
 public class NoJUnitDependenciesTest {
@@ -32,6 +33,7 @@ public class NoJUnitDependenciesTest {
                                 Matcher.class,
                                 ByteBuddy.class,
                                 ByteBuddyAgent.class,
+                                ClassVisitor.class,
                                 Objenesis.class)
                         .withCodeSourceUrlOf(coverageTool())
                         .without("junit", "org.junit", "org.opentest4j")

Reply via email to