diff --git a/core/src/main/scala/com/typesafe/tools/mima/core/Problems.scala b/core/src/main/scala/com/typesafe/tools/mima/core/Problems.scala index 76cc1801..e4195805 100644 --- a/core/src/main/scala/com/typesafe/tools/mima/core/Problems.scala +++ b/core/src/main/scala/com/typesafe/tools/mima/core/Problems.scala @@ -41,7 +41,7 @@ sealed abstract class Problem extends ProblemRef { case ReversedMissingMethodProblem(ref) => s"${ref.memberString} is present only in $affectedVersion version" case FinalMethodProblem(ref) => s"${ref.methodString} is declared final in $affectedVersion version" case IncompatibleResultTypeProblem(ref, newmeth) => s"${ref.methodString} has a different result type in $affectedVersion version, where it is ${newmeth.tpe.resultType} rather than ${ref.tpe.resultType}" - case IncompatibleSignatureProblem(ref, newmeth) => s"${ref.methodString} has a different signature in $affectedVersion version, where it is ${orMIA(newmeth.signature)} rather than ${orMIA(ref.signature)}" + case IncompatibleSignatureProblem(ref, newmeth) => s"${ref.methodString} has a different generic signature in $affectedVersion version, where it is ${orMIA(newmeth.signature)} rather than ${orMIA(ref.signature)}. See https://github.com/lightbend/mima#incompatiblesignatureproblem" case DirectAbstractMethodProblem(ref) => s"${ref.methodString} does not have a correspondent in $affectedVersion version" case ReversedAbstractMethodProblem(ref) => s"in $affectedVersion version there is ${ref.methodString}, which does not have a correspondent" case UpdateForwarderBodyProblem(ref) => s"in $affectedVersion version, classes mixing ${ref.owner.fullName} needs to update body of ${ref.shortMethodString}" diff --git a/functional-tests/src/test/class-constructor-generics-nok/problems.txt b/functional-tests/src/test/class-constructor-generics-nok/problems.txt index 5924b197..f5f5fb83 100644 --- a/functional-tests/src/test/class-constructor-generics-nok/problems.txt +++ b/functional-tests/src/test/class-constructor-generics-nok/problems.txt @@ -1,3 +1,3 @@ -method source()scala.Tuple2 in class OptionPane has a different signature in new version, where it is ()Lscala/Tuple2;Ljava/lang/String;>; rather than ()Lscala/Tuple2; -method show()java.lang.Object in class OptionPane has a different signature in new version, where it is ()TA; rather than -method this(scala.Tuple2)Unit in class OptionPane has a different signature in new version, where it is (Lscala/Tuple2;Ljava/lang/String;>;)V rather than (Lscala/Tuple2;)V +method source()scala.Tuple2 in class OptionPane has a different generic signature in new version, where it is ()Lscala/Tuple2;Ljava/lang/String;>; rather than ()Lscala/Tuple2;. See https://github.com/lightbend/mima#incompatiblesignatureproblem +method show()java.lang.Object in class OptionPane has a different generic signature in new version, where it is ()TA; rather than . See https://github.com/lightbend/mima#incompatiblesignatureproblem +method this(scala.Tuple2)Unit in class OptionPane has a different generic signature in new version, where it is (Lscala/Tuple2;Ljava/lang/String;>;)V rather than (Lscala/Tuple2;)V. See https://github.com/lightbend/mima#incompatiblesignatureproblem diff --git a/functional-tests/src/test/class-method-generics-nok/problems.txt b/functional-tests/src/test/class-method-generics-nok/problems.txt index 6cdd1a85..2c9b1ca7 100644 --- a/functional-tests/src/test/class-method-generics-nok/problems.txt +++ b/functional-tests/src/test/class-method-generics-nok/problems.txt @@ -1,12 +1,12 @@ -method genericWithChangingName()scala.Option in class A has a different signature in new version, where it is ()Lscala/Option; rather than ()Lscala/Option; -method backwardsCompatibleNarrowing()scala.Option in class A has a different signature in new version, where it is ()Lscala/Option; rather than ()Lscala/Option; +method genericWithChangingName()scala.Option in class A has a different generic signature in new version, where it is ()Lscala/Option; rather than ()Lscala/Option;. See https://github.com/lightbend/mima#incompatiblesignatureproblem +method backwardsCompatibleNarrowing()scala.Option in class A has a different generic signature in new version, where it is ()Lscala/Option; rather than ()Lscala/Option;. See https://github.com/lightbend/mima#incompatiblesignatureproblem # -method cov1()java.lang.Object in class Api has a different signature in new version, where it is ()TA; rather than -method cov2()java.lang.Object in class Api has a different signature in new version, where it is rather than ()TT; -method con1(java.lang.Object)Unit in class Api has a different signature in new version, where it is (TA;)V rather than -method con2(java.lang.Object)Unit in class Api has a different signature in new version, where it is rather than (TT;)V +method cov1()java.lang.Object in class Api has a different generic signature in new version, where it is ()TA; rather than . See https://github.com/lightbend/mima#incompatiblesignatureproblem +method cov2()java.lang.Object in class Api has a different generic signature in new version, where it is rather than ()TT;. See https://github.com/lightbend/mima#incompatiblesignatureproblem +method con1(java.lang.Object)Unit in class Api has a different generic signature in new version, where it is (TA;)V rather than . See https://github.com/lightbend/mima#incompatiblesignatureproblem +method con2(java.lang.Object)Unit in class Api has a different generic signature in new version, where it is rather than (TT;)V. See https://github.com/lightbend/mima#incompatiblesignatureproblem # -abstract method cov1()java.lang.Object in class Abi has a different signature in new version, where it is ()TA; rather than -abstract method cov2()java.lang.Object in class Abi has a different signature in new version, where it is rather than ()TT; -abstract method con1(java.lang.Object)Unit in class Abi has a different signature in new version, where it is (TA;)V rather than -abstract method con2(java.lang.Object)Unit in class Abi has a different signature in new version, where it is rather than (TT;)V +abstract method cov1()java.lang.Object in class Abi has a different generic signature in new version, where it is ()TA; rather than . See https://github.com/lightbend/mima#incompatiblesignatureproblem +abstract method cov2()java.lang.Object in class Abi has a different generic signature in new version, where it is rather than ()TT;. See https://github.com/lightbend/mima#incompatiblesignatureproblem +abstract method con1(java.lang.Object)Unit in class Abi has a different generic signature in new version, where it is (TA;)V rather than . See https://github.com/lightbend/mima#incompatiblesignatureproblem +abstract method con2(java.lang.Object)Unit in class Abi has a different generic signature in new version, where it is rather than (TT;)V. See https://github.com/lightbend/mima#incompatiblesignatureproblem diff --git a/functional-tests/src/test/tuple-parametric-type-change-nok/problems.txt b/functional-tests/src/test/tuple-parametric-type-change-nok/problems.txt index 7f0da347..3ff3fb18 100644 --- a/functional-tests/src/test/tuple-parametric-type-change-nok/problems.txt +++ b/functional-tests/src/test/tuple-parametric-type-change-nok/problems.txt @@ -1 +1 @@ -method foo()scala.Tuple2 in class A has a different signature in new version, where it is ()Lscala/Tuple2; rather than ()Lscala/Tuple2; \ No newline at end of file +method foo()scala.Tuple2 in class A has a different generic signature in new version, where it is ()Lscala/Tuple2; rather than ()Lscala/Tuple2;. See https://github.com/lightbend/mima#incompatiblesignatureproblem diff --git a/functional-tests/src/test/value-class-generic-replacement-nok/problems.txt b/functional-tests/src/test/value-class-generic-replacement-nok/problems.txt index c1bb83a7..5f0e427b 100644 --- a/functional-tests/src/test/value-class-generic-replacement-nok/problems.txt +++ b/functional-tests/src/test/value-class-generic-replacement-nok/problems.txt @@ -1 +1 @@ -method boxedStringy()scala.Option in class Bar has a different signature in new version, where it is ()Lscala/Option; rather than ()Lscala/Option; +method boxedStringy()scala.Option in class Bar has a different generic signature in new version, where it is ()Lscala/Option; rather than ()Lscala/Option;. See https://github.com/lightbend/mima#incompatiblesignatureproblem