diff --git a/sbt-new-ivy.patch b/sbt-new-ivy.patch new file mode 100644 index 0000000000000000000000000000000000000000..01995e608aa2c478cd3aff5e1b4eda201be5e6fa --- /dev/null +++ b/sbt-new-ivy.patch @@ -0,0 +1,38 @@ +diff -Nur a/ivy/src/main/scala/sbt/IvyScala.scala b/ivy/src/main/scala/sbt/IvyScala.scala +--- a/ivy/src/main/scala/sbt/IvyScala.scala 2025-05-26 15:22:06.791068171 +0800 ++++ b/ivy/src/main/scala/sbt/IvyScala.scala 2025-05-26 15:22:32.297068171 +0800 +@@ -109,8 +109,8 @@ + private[sbt] def excludeRule(organization: String, name: String, configurationNames: Iterable[String], excludeTypePattern: String): ExcludeRule = + { + val artifact = new ArtifactId(ModuleId.newInstance(organization, name), "*", excludeTypePattern, "*") +- val rule = new DefaultExcludeRule(artifact, ExactPatternMatcher.INSTANCE, emptyMap[AnyRef,AnyRef]) ++ val rule = new DefaultExcludeRule(artifact, ExactPatternMatcher.INSTANCE, emptyMap[String, String]) + configurationNames.foreach(rule.addConfiguration) + rule + } +-} +\ No newline at end of file ++} +diff -Nur a/launch/src/main/scala/xsbt/boot/Update.scala b/launch/src/main/scala/xsbt/boot/Update.scala +--- a/launch/src/main/scala/xsbt/boot/Update.scala 2025-05-26 15:22:06.794068171 +0800 ++++ b/launch/src/main/scala/xsbt/boot/Update.scala 2025-05-26 15:23:35.721068171 +0800 +@@ -182,7 +182,7 @@ + private def excludeRule(organization: String, name: String): ExcludeRule = + { + val artifact = new ArtifactId(ModuleId.newInstance(organization, name), "*", "*", "*") +- val rule = new DefaultExcludeRule(artifact, ExactPatternMatcher.INSTANCE, java.util.Collections.emptyMap[AnyRef,AnyRef]) ++ val rule = new DefaultExcludeRule(artifact, ExactPatternMatcher.INSTANCE, java.util.Collections.emptyMap[String, String]) + rule.addConfiguration(DefaultIvyConfiguration) + rule + } +@@ -227,8 +227,8 @@ + problem.printStackTrace(logWriter) + } + } +- private final class ArtifactFilter(f: IArtifact => Boolean) extends Filter { +- def accept(o: Any) = o match { case a: IArtifact => f(a); case _ => false } ++ private final class ArtifactFilter(f: IArtifact => Boolean) extends Filter[IArtifact] { ++ def accept(o: IArtifact) = o match { case a: IArtifact => f(a); case _ => false } + } + /** Retrieves resolved dependencies using the given target to determine the location to retrieve to. */ + private def retrieve(eventManager: EventManager, module: ModuleDescriptor, target: UpdateTarget, autoScalaVersion: Option[String]) diff --git a/sbt.spec b/sbt.spec index 699dd2ee9a17e94a800257bd5f39c08ddd5cad4f..273ef5105aa551e29f5327b19911608cb59676b7 100644 --- a/sbt.spec +++ b/sbt.spec @@ -45,7 +45,7 @@ Name: sbt Version: %{sbt_version} -Release: 6 +Release: 7 Summary: The simple build tool for Scala and Java projects BuildArch: noarch @@ -60,6 +60,7 @@ Patch3: sbt-0.13.1-ivy-docs.patch Patch4: sbt-0.13.1-sxr.patch Patch5: sbt-0.13.1-ivy-2.4.0.patch Patch6: CVE-2023-46122.patch +Patch7: sbt-new-ivy.patch # sbt-ghpages plugin Source1: https://github.com/sbt/sbt-ghpages/archive/v%{sbt_ghpages_version}.tar.gz @@ -355,6 +356,7 @@ sbt is the simple build tool for Scala and Java projects. %patch2 -p1 %patch3 -p1 %patch6 -p1 +%patch7 -p1 %if !%{do_proper} %patch4 -p1 @@ -691,6 +693,9 @@ done %doc README.md LICENSE NOTICE %changelog +* Tue May 27 2025 yaoxin <1024769339@qq.com> - 0.13.1-7 +- Fix build failure caused by apache-ivy update to 2.5.1 + * Wed Jun 26 2024 yaoxin - 0.13.1-6 - Fix CVE-2023-46122