From 66510002e192a65f4228152af90d40dd060f276f Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski Date: Mon, 3 Mar 2025 11:57:13 +0100 Subject: [PATCH 1/7] Remove javadoc subpackage --- easymock.spec | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/easymock.spec b/easymock.spec index ece6ca1..fb5d195 100644 --- a/easymock.spec +++ b/easymock.spec @@ -40,6 +40,8 @@ BuildRequires: mvn(org.testng:testng) # xmvn-builddep misses this: BuildRequires: mvn(org.apache:apache-jar-resource-bundle) %endif +# TODO Remove in Fedora 46 +Obsoletes: %{name}-javadoc < 4.3-23 Provides: %{name}3 = %{version}-%{release} %description @@ -48,12 +50,6 @@ them on the fly using Java's proxy mechanism. Due to EasyMock's unique style of recording expectations, most refactorings will not affect the Mock Objects. So EasyMock is a perfect fit for Test-Driven Development. -%package javadoc -Summary: API documentation for %{name} - -%description javadoc -API documentation for %{name}. - %prep %autosetup -p1 -C @@ -109,7 +105,7 @@ rm core/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java --add-opens=java.base/java.lang=ALL-UNNAMED" %build -%mvn_build +%mvn_build -j %install %mvn_install @@ -117,8 +113,5 @@ rm core/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java %files -f .mfiles %license core/LICENSE.txt -%files javadoc -f .mfiles-javadoc -%license core/LICENSE.txt - %changelog %autochangelog From a83653b270b9ed5ceec97f979fc9ee83231e1673 Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski Date: Wed, 26 Mar 2025 08:43:19 +0100 Subject: [PATCH 2/7] Switch to javapackages tests from CentOS Stream GitLab --- plans/javapackages.fmf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plans/javapackages.fmf b/plans/javapackages.fmf index 86bfcea..e39d47c 100644 --- a/plans/javapackages.fmf +++ b/plans/javapackages.fmf @@ -1,7 +1,7 @@ summary: Run javapackages-specific tests discover: how: fmf - url: https://src.fedoraproject.org/tests/javapackages + url: https://gitlab.com/redhat/centos-stream/tests/javapackages.git ref: f42 execute: how: tmt From fed37692862a3e935094d4d0ab173d9a5f4272cd Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski Date: Thu, 22 May 2025 13:35:31 +0200 Subject: [PATCH 3/7] Switch javapackages test plan to f43 ref --- plans/javapackages.fmf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plans/javapackages.fmf b/plans/javapackages.fmf index e39d47c..ae17c0c 100644 --- a/plans/javapackages.fmf +++ b/plans/javapackages.fmf @@ -2,6 +2,6 @@ summary: Run javapackages-specific tests discover: how: fmf url: https://gitlab.com/redhat/centos-stream/tests/javapackages.git - ref: f42 + ref: f43 execute: how: tmt From cfacf1236ae2e531078c1069ceb3e21e7edabbc2 Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski Date: Sun, 13 Jul 2025 09:22:51 +0200 Subject: [PATCH 4/7] Build with OpenJDK 25 --- easymock.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easymock.spec b/easymock.spec index fb5d195..eadbda3 100644 --- a/easymock.spec +++ b/easymock.spec @@ -22,7 +22,7 @@ Patch: 0004-Port-to-hamcrest-2.1.patch %if %{with bootstrap} BuildRequires: javapackages-bootstrap %else -BuildRequires: maven-local +BuildRequires: maven-local-openjdk25 BuildRequires: mvn(cglib:cglib) BuildRequires: mvn(junit:junit) BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) From ee8f8637d4b0f367cd6c1751a64535fcf475df3d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 19:40:19 +0000 Subject: [PATCH 5/7] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 17eb67e965875beea1f49e3dc6dfdb4687fde11d Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Tue, 29 Jul 2025 20:09:13 +0200 Subject: [PATCH 6/7] Rebuilt for java-25-openjdk as preffered jdk https://fedoraproject.org/wiki/Changes/Java25AndNoMoreSystemJdk Note, that since f43, you should be always explicit on what jdk to use. This commit should do exactly that. From 368a7189b3cc094775b9ac7fec7045b36964f33e Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski Date: Tue, 23 Sep 2025 09:09:05 +0200 Subject: [PATCH 7/7] Update to upstream version 5.6.0 --- .gitignore | 1 + 0001-Disable-android-support.patch | 10 +- ...e-from-deprecated-Hamcrest-is-to-isA.patch | 94 +++++++++++++++++++ 0002-Unshade-cglib-and-asm.patch | 27 ------ 0003-Fix-OSGi-manifest.patch | 28 ------ 0004-Port-to-hamcrest-2.1.patch | 75 --------------- easymock.spec | 15 ++- sources | 2 +- 8 files changed, 107 insertions(+), 145 deletions(-) create mode 100644 0002-Migrate-from-deprecated-Hamcrest-is-to-isA.patch delete mode 100644 0002-Unshade-cglib-and-asm.patch delete mode 100644 0003-Fix-OSGi-manifest.patch delete mode 100644 0004-Port-to-hamcrest-2.1.patch diff --git a/.gitignore b/.gitignore index d66b93d..7d16d25 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ /easymock-4.0.2.tar.gz /easymock-4.2.tar.gz /easymock-4.3.tar.gz +/easymock-5.6.0.tar.gz diff --git a/0001-Disable-android-support.patch b/0001-Disable-android-support.patch index 208e85b..fddb078 100644 --- a/0001-Disable-android-support.patch +++ b/0001-Disable-android-support.patch @@ -1,17 +1,17 @@ -From 57501046dc32012210433444543c513b20c5d517 Mon Sep 17 00:00:00 2001 +From 3458c2cd3d453dbb866c9515568b288529af05a5 Mon Sep 17 00:00:00 2001 From: Michael Simacek Date: Mon, 30 May 2016 14:24:43 +0200 -Subject: [PATCH 1/3] Disable android support +Subject: [PATCH 1/2] Disable android support --- core/src/main/java/org/easymock/internal/MocksControl.java | 6 ------ 1 file changed, 6 deletions(-) diff --git a/core/src/main/java/org/easymock/internal/MocksControl.java b/core/src/main/java/org/easymock/internal/MocksControl.java -index fb2a5dc..356b1c4 100644 +index b86f1a1..cfa0fa1 100644 --- a/core/src/main/java/org/easymock/internal/MocksControl.java +++ b/core/src/main/java/org/easymock/internal/MocksControl.java -@@ -147,12 +147,6 @@ public class MocksControl implements IMocksControl, IExpectationSetters, +@@ -154,12 +154,6 @@ public class MocksControl implements IMocksControl, IExpectationSetters, return cached; } @@ -25,5 +25,5 @@ index fb2a5dc..356b1c4 100644 } -- -2.13.5 +2.51.0 diff --git a/0002-Migrate-from-deprecated-Hamcrest-is-to-isA.patch b/0002-Migrate-from-deprecated-Hamcrest-is-to-isA.patch new file mode 100644 index 0000000..0a1e070 --- /dev/null +++ b/0002-Migrate-from-deprecated-Hamcrest-is-to-isA.patch @@ -0,0 +1,94 @@ +From 9c100b4d67397bd096de6caaef58cd8c9f49c692 Mon Sep 17 00:00:00 2001 +From: Mikolaj Izdebski +Date: Tue, 23 Sep 2025 12:03:42 +0200 +Subject: [PATCH 2/2] Migrate from deprecated Hamcrest `is` to `isA` + +Replace usages of `is(Class)` with `isA(Class)` in +`EasyMockSupportClassTest` to avoid relying on the deprecated +`org.hamcrest.core.Is.is` method. This removes the need for +`@SuppressWarnings("deprecation")` and keeps the tests aligned with +current Hamcrest best practices. +--- + .../tests2/EasyMockSupportClassTest.java | 21 +++++++++---------- + 1 file changed, 10 insertions(+), 11 deletions(-) + +diff --git a/core/src/test/java/org/easymock/tests2/EasyMockSupportClassTest.java b/core/src/test/java/org/easymock/tests2/EasyMockSupportClassTest.java +index cbe9e01..9b89ed5 100644 +--- a/core/src/test/java/org/easymock/tests2/EasyMockSupportClassTest.java ++++ b/core/src/test/java/org/easymock/tests2/EasyMockSupportClassTest.java +@@ -25,12 +25,11 @@ import org.junit.jupiter.api.Test; + import java.lang.reflect.Method; + + import static org.easymock.EasyMock.*; +-import static org.hamcrest.core.Is.*; ++import static org.hamcrest.core.Is.isA; + + /** + * @author Henri Tremblay + */ +-@SuppressWarnings("deprecation") + class EasyMockSupportClassTest extends EasyMockSupport { + + public static class ToMock { +@@ -49,49 +48,49 @@ class EasyMockSupportClassTest extends EasyMockSupport { + @Test + void testCreateStrictControl() { + IMocksControl ctrl = createStrictControl(); +- MatcherAssert.assertThat(ctrl.createMock(ToMock.class), is(ToMock.class)); ++ MatcherAssert.assertThat(ctrl.createMock(ToMock.class), isA(ToMock.class)); + } + + @Test + void testCreateControl() { + IMocksControl ctrl = createControl(); +- MatcherAssert.assertThat(ctrl.createMock(ToMock.class), is(ToMock.class)); ++ MatcherAssert.assertThat(ctrl.createMock(ToMock.class), isA(ToMock.class)); + } + + @Test + void testCreateNiceControl() { + IMocksControl ctrl = createNiceControl(); +- MatcherAssert.assertThat(ctrl.createMock(ToMock.class), is(ToMock.class)); ++ MatcherAssert.assertThat(ctrl.createMock(ToMock.class), isA(ToMock.class)); + } + + @Test + void testCreateStrictMockClassOfT() { +- MatcherAssert.assertThat(createStrictMock(ToMock.class), is(ToMock.class)); ++ MatcherAssert.assertThat(createStrictMock(ToMock.class), isA(ToMock.class)); + } + + @Test + void testCreateStrictMockStringClassOfT() { +- MatcherAssert.assertThat(createStrictMock("myMock", ToMock.class), is(ToMock.class)); ++ MatcherAssert.assertThat(createStrictMock("myMock", ToMock.class), isA(ToMock.class)); + } + + @Test + void testCreateMockClassOfT() { +- MatcherAssert.assertThat(createMock(ToMock.class), is(ToMock.class)); ++ MatcherAssert.assertThat(createMock(ToMock.class), isA(ToMock.class)); + } + + @Test + void testCreateMockStringClassOfT() { +- MatcherAssert.assertThat(createMock("myMock", ToMock.class), is(ToMock.class)); ++ MatcherAssert.assertThat(createMock("myMock", ToMock.class), isA(ToMock.class)); + } + + @Test + void testCreateNiceMockClassOfT() { +- MatcherAssert.assertThat(createNiceMock(ToMock.class), is(ToMock.class)); ++ MatcherAssert.assertThat(createNiceMock(ToMock.class), isA(ToMock.class)); + } + + @Test + void testCreateNiceMockStringClassOfT() { +- MatcherAssert.assertThat(createNiceMock("myMock", ToMock.class), is(ToMock.class)); ++ MatcherAssert.assertThat(createNiceMock("myMock", ToMock.class), isA(ToMock.class)); + } + + @Test +-- +2.51.0 + diff --git a/0002-Unshade-cglib-and-asm.patch b/0002-Unshade-cglib-and-asm.patch deleted file mode 100644 index 93d3367..0000000 --- a/0002-Unshade-cglib-and-asm.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 2ad2e79989f64072d8437ada55b12eaa8c23834d Mon Sep 17 00:00:00 2001 -From: Michael Simacek -Date: Mon, 30 May 2016 15:14:40 +0200 -Subject: [PATCH 2/3] Unshade cglib and asm - ---- - core/pom.xml | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/core/pom.xml b/core/pom.xml -index 1ca847a..5ed6adb 100644 ---- a/core/pom.xml -+++ b/core/pom.xml -@@ -100,8 +100,8 @@ - true - - -- org.easymock.internal.*;poweruser=true;mandatory:=poweruser,org.easymock,org.easymock.cglib.core,org.easymock.cglib.proxy,org.easymock.cglib.reflect,org.easymock.asm -- org.easymock,org.easymock.internal;poweruser=true,org.easymock.cglib.core,org.easymock.cglib.proxy,org.easymock.cglib.reflect,org.easymock.asm,org.objenesis;resolution:=optional -+ org.easymock.internal.*;poweruser=true;mandatory:=poweruser -+ org.easymock,org.easymock.internal;poweruser=true,net.sf.cglib.core,net.sf.cglib.proxy,net.sf.cglib.reflect,org.objectweb.asm,org.objenesis;resolution:=optional - - - --- -2.13.5 - diff --git a/0003-Fix-OSGi-manifest.patch b/0003-Fix-OSGi-manifest.patch deleted file mode 100644 index d4b3263..0000000 --- a/0003-Fix-OSGi-manifest.patch +++ /dev/null @@ -1,28 +0,0 @@ -From fa908a1748cb3090d677a63db4986ffc57acbf1e Mon Sep 17 00:00:00 2001 -From: Mikolaj Izdebski -Date: Wed, 1 Jun 2016 09:31:44 +0200 -Subject: [PATCH 3/3] Fix OSGi manifest - -Resolves: rhbz#1341052 ---- - core/pom.xml | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/core/pom.xml b/core/pom.xml -index 5ed6adb..ea6d015 100644 ---- a/core/pom.xml -+++ b/core/pom.xml -@@ -100,8 +100,9 @@ - true - - -- org.easymock.internal.*;poweruser=true;mandatory:=poweruser -+ org.easymock,org.easymock.internal.*;poweruser=true;mandatory:=poweruser - org.easymock,org.easymock.internal;poweruser=true,net.sf.cglib.core,net.sf.cglib.proxy,net.sf.cglib.reflect,org.objectweb.asm,org.objenesis;resolution:=optional -+ <_nouses>true - - - --- -2.13.5 - diff --git a/0004-Port-to-hamcrest-2.1.patch b/0004-Port-to-hamcrest-2.1.patch deleted file mode 100644 index 542db7e..0000000 --- a/0004-Port-to-hamcrest-2.1.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 5393d71f7bf9de06efd763c501486bf14413ab4a Mon Sep 17 00:00:00 2001 -From: Marian Koncek -Date: Thu, 29 Aug 2019 15:18:53 +0200 -Subject: [PATCH] Port to hamcrest 2.1 - ---- - .../tests2/EasyMockSupportClassTest.java | 18 +++++++++--------- - 1 file changed, 9 insertions(+), 9 deletions(-) - -diff --git a/core/src/test/java/org/easymock/tests2/EasyMockSupportClassTest.java b/core/src/test/java/org/easymock/tests2/EasyMockSupportClassTest.java -index c5dd63b..b8be307 100644 ---- a/core/src/test/java/org/easymock/tests2/EasyMockSupportClassTest.java -+++ b/core/src/test/java/org/easymock/tests2/EasyMockSupportClassTest.java -@@ -48,49 +48,49 @@ public class EasyMockSupportClassTest extends EasyMockSupport { - @Test - public void testCreateStrictControl() { - IMocksControl ctrl = createStrictControl(); -- assertThat(ctrl.createMock(ToMock.class), is(ToMock.class)); -+ assertThat(ctrl.createMock(ToMock.class), org.hamcrest.core.Is.isA(ToMock.class)); - } - - @Test - public void testCreateControl() { - IMocksControl ctrl = createControl(); -- assertThat(ctrl.createMock(ToMock.class), is(ToMock.class)); -+ assertThat(ctrl.createMock(ToMock.class), org.hamcrest.core.Is.isA(ToMock.class)); - } - - @Test - public void testCreateNiceControl() { - IMocksControl ctrl = createNiceControl(); -- assertThat(ctrl.createMock(ToMock.class), is(ToMock.class)); -+ assertThat(ctrl.createMock(ToMock.class), org.hamcrest.core.Is.isA(ToMock.class)); - } - - @Test - public void testCreateStrictMockClassOfT() { -- assertThat(createStrictMock(ToMock.class), is(ToMock.class)); -+ assertThat(createStrictMock(ToMock.class), org.hamcrest.core.Is.isA(ToMock.class)); - } - - @Test - public void testCreateStrictMockStringClassOfT() { -- assertThat(createStrictMock("myMock", ToMock.class), is(ToMock.class)); -+ assertThat(createStrictMock("myMock", ToMock.class), org.hamcrest.core.Is.isA(ToMock.class)); - } - - @Test - public void testCreateMockClassOfT() { -- assertThat(createMock(ToMock.class), is(ToMock.class)); -+ assertThat(createMock(ToMock.class), org.hamcrest.core.Is.isA(ToMock.class)); - } - - @Test - public void testCreateMockStringClassOfT() { -- assertThat(createMock("myMock", ToMock.class), is(ToMock.class)); -+ assertThat(createMock("myMock", ToMock.class), org.hamcrest.core.Is.isA(ToMock.class)); - } - - @Test - public void testCreateNiceMockClassOfT() { -- assertThat(createNiceMock(ToMock.class), is(ToMock.class)); -+ assertThat(createNiceMock(ToMock.class), org.hamcrest.core.Is.isA(ToMock.class)); - } - - @Test - public void testCreateNiceMockStringClassOfT() { -- assertThat(createNiceMock("myMock", ToMock.class), is(ToMock.class)); -+ assertThat(createNiceMock("myMock", ToMock.class), org.hamcrest.core.Is.isA(ToMock.class)); - } - - @Test --- -2.21.0 - diff --git a/easymock.spec b/easymock.spec index eadbda3..20ee9a9 100644 --- a/easymock.spec +++ b/easymock.spec @@ -1,7 +1,7 @@ %bcond_with bootstrap Name: easymock -Version: 4.3 +Version: 5.6.0 Release: %autorelease Summary: Easy mock objects License: Apache-2.0 @@ -15,16 +15,15 @@ Source0: %{name}-%{version}.tar.gz Source1: generate-tarball.sh Patch: 0001-Disable-android-support.patch -Patch: 0002-Unshade-cglib-and-asm.patch -Patch: 0003-Fix-OSGi-manifest.patch -Patch: 0004-Port-to-hamcrest-2.1.patch +# Forwarded: https://github.com/easymock/easymock/pull/807 +Patch: 0002-Migrate-from-deprecated-Hamcrest-is-to-isA.patch %if %{with bootstrap} BuildRequires: javapackages-bootstrap %else BuildRequires: maven-local-openjdk25 -BuildRequires: mvn(cglib:cglib) BuildRequires: mvn(junit:junit) +BuildRequires: mvn(net.bytebuddy:byte-buddy) BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) BuildRequires: mvn(org.apache.maven.plugins:maven-remote-resources-plugin) BuildRequires: mvn(org.apache.maven.surefire:surefire-junit-platform) @@ -54,6 +53,8 @@ So EasyMock is a perfect fit for Test-Driven Development. %autosetup -p1 -C +%pom_remove_plugin -r :maven-javadoc-plugin +%pom_remove_plugin -r :maven-source-plugin %pom_remove_plugin :license-maven-plugin %pom_remove_plugin :maven-enforcer-plugin %pom_remove_plugin :animal-sniffer-maven-plugin @@ -71,7 +72,6 @@ rm core/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java # unbundle asm and cglib %pom_disable_module test-nodeps -%pom_remove_plugin :maven-shade-plugin core # missing test deps %pom_disable_module test-integration @@ -80,9 +80,6 @@ rm core/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java # remove some warning caused by unavailable plugin %pom_remove_plugin org.codehaus.mojo:versions-maven-plugin -# retired -%pom_remove_plugin :maven-timestamp-plugin - # For compatibility reasons %mvn_file ":easymock{*}" easymock@1 easymock3@1 diff --git a/sources b/sources index 5f72e52..65a1be4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (easymock-4.3.tar.gz) = 694219c948e3db85d75bd368440d24ddb575cc8bf7b436a2ef8cd7eeb8c9d173edfd2bf28bde2aea38587f7df4e50b290003b03e50f069520e5f474dec574fa7 +SHA512 (easymock-5.6.0.tar.gz) = a285cbfbd80eb6dad50f92a6bce7a494a06f8da33350bca41d5e7ead5a76219f5bbcf579e89be34525628bdc6c81b266db697ea2b1d6bf023759c294fd375329