@@ -134,7 +134,7 @@ object Build {
134
134
* - `3.M.0` if `P > 0`
135
135
* - `3.(M-1).0` if `P = 0`
136
136
*/
137
- val mimaPreviousDottyVersion = " 3.7.0 "
137
+ val mimaPreviousDottyVersion = " 3.7.3 " // for 3.8.0, we compare against 3.7.3
138
138
139
139
/** LTS version against which we check binary compatibility.
140
140
*
@@ -304,6 +304,7 @@ object Build {
304
304
Test / develocityBuildCacheClient := None ,
305
305
extraDevelocityCacheInputFiles := Seq .empty,
306
306
extraDevelocityCacheInputFiles / outputFileStamper := FileStamper .Hash ,
307
+ resolvers += (" Artifactory" at " https://repo.scala-lang.org/artifactory/fat-jar/" ),
307
308
)
308
309
309
310
// Settings shared globally (scoped in Global). Used in build.sbt
@@ -1636,6 +1637,16 @@ object Build {
1636
1637
publish / skip := false ,
1637
1638
// Project specific target folder. sbt doesn't like having two projects using the same target folder
1638
1639
target := target.value / " scala-library-nonbootstrapped" ,
1640
+ // Add configuration for MiMa
1641
+ mimaCheckDirection := (compatMode match {
1642
+ case CompatMode .BinaryCompatible => " backward"
1643
+ case CompatMode .SourceAndBinaryCompatible => " both"
1644
+ }),
1645
+ mimaExcludeAnnotations += " scala.annotation.experimental" ,
1646
+ mimaPreviousArtifacts += (" org.scala-lang" % " fat-stdlib" % " 3.7.3" ),
1647
+ mimaForwardIssueFilters := MiMaFilters .Scala3Library .ForwardsBreakingChanges ,
1648
+ mimaBackwardIssueFilters := MiMaFilters .Scala3Library .BackwardsBreakingChanges ,
1649
+ customMimaReportBinaryIssues(" MiMaFilters.Scala3Library" ),
1639
1650
)
1640
1651
1641
1652
/* Configuration of the org.scala-lang:scala3-library_3:*.**.**-nonbootstrapped project */
@@ -1748,6 +1759,16 @@ object Build {
1748
1759
scalaCompilerBridgeBinaryJar := {
1749
1760
Some ((`scala3-sbt-bridge-nonbootstrapped` / Compile / packageBin).value)
1750
1761
},
1762
+ // Add configuration for MiMa
1763
+ mimaCheckDirection := (compatMode match {
1764
+ case CompatMode .BinaryCompatible => " backward"
1765
+ case CompatMode .SourceAndBinaryCompatible => " both"
1766
+ }),
1767
+ mimaExcludeAnnotations += " scala.annotation.experimental" ,
1768
+ mimaPreviousArtifacts += (" org.scala-lang" % " fat-stdlib" % " 3.7.3" ),
1769
+ mimaForwardIssueFilters := MiMaFilters .Scala3Library .ForwardsBreakingChanges ,
1770
+ mimaBackwardIssueFilters := MiMaFilters .Scala3Library .BackwardsBreakingChanges ,
1771
+ customMimaReportBinaryIssues(" MiMaFilters.Scala3Library" ),
1751
1772
)
1752
1773
1753
1774
/* Configuration of the org.scala-lang:scala3-library_3:*.**.**-bootstrapped project */
@@ -1952,6 +1973,7 @@ object Build {
1952
1973
/* Configuration of the org.scala-lang:tasty-core_3:*.**.**-nonbootstrapped project */
1953
1974
lazy val `tasty-core-nonbootstrapped` = project.in(file(" tasty" ))
1954
1975
.dependsOn(`scala3-library-nonbootstrapped`)
1976
+ .settings(commonMiMaSettings)
1955
1977
.settings(
1956
1978
name := " tasty-core-nonbootstrapped" ,
1957
1979
moduleName := " tasty-core" ,
@@ -2005,13 +2027,16 @@ object Build {
2005
2027
Test / envVars ++= Map (
2006
2028
" EXPECTED_TASTY_VERSION" -> expectedTastyVersion,
2007
2029
),
2008
-
2030
+ mimaForwardIssueFilters := MiMaFilters .TastyCore .ForwardsBreakingChanges ,
2031
+ mimaBackwardIssueFilters := MiMaFilters .TastyCore .BackwardsBreakingChanges ,
2032
+ customMimaReportBinaryIssues(" MiMaFilters.TastyCore" ),
2009
2033
)
2010
2034
2011
2035
/* Configuration of the org.scala-lang:tasty-core_3:*.**.**-bootstrapped project */
2012
2036
lazy val `tasty-core-bootstrapped-new` = project.in(file(" tasty" ))
2013
2037
.dependsOn(`scala3-library-bootstrapped-new`)
2014
2038
.settings(publishSettings)
2039
+ .settings(commonMiMaSettings)
2015
2040
.settings(
2016
2041
name := " tasty-core-bootstrapped" ,
2017
2042
moduleName := " tasty-core" ,
@@ -2074,6 +2099,9 @@ object Build {
2074
2099
Test / envVars ++= Map (
2075
2100
" EXPECTED_TASTY_VERSION" -> expectedTastyVersion,
2076
2101
),
2102
+ mimaForwardIssueFilters := MiMaFilters .TastyCore .ForwardsBreakingChanges ,
2103
+ mimaBackwardIssueFilters := MiMaFilters .TastyCore .BackwardsBreakingChanges ,
2104
+ customMimaReportBinaryIssues(" MiMaFilters.TastyCore" ),
2077
2105
)
2078
2106
2079
2107
// ==============================================================================================
@@ -3467,18 +3495,6 @@ object Build {
3467
3495
val doWork = (Compile / doc).result.value
3468
3496
(Compile / doc/ target).value
3469
3497
},
3470
- commonMiMaSettings,
3471
- mimaPreviousArtifacts += {
3472
- val thisProjectID = projectID.value
3473
- val crossedName = thisProjectID.crossVersion match {
3474
- case cv : Disabled => thisProjectID.name
3475
- case cv : Binary => s " ${thisProjectID.name}_ ${cv.prefix}3 ${cv.suffix}"
3476
- }
3477
- (thisProjectID.organization % crossedName % mimaPreviousLTSDottyVersion)
3478
- },
3479
- mimaForwardIssueFilters := MiMaFilters .Scala3Library .ForwardsBreakingChanges ,
3480
- mimaBackwardIssueFilters := MiMaFilters .Scala3Library .BackwardsBreakingChanges ,
3481
- customMimaReportBinaryIssues(" MiMaFilters.Scala3Library" ),
3482
3498
)
3483
3499
} else base
3484
3500
}
@@ -3493,14 +3509,6 @@ object Build {
3493
3509
Test / envVars ++= Map (
3494
3510
" EXPECTED_TASTY_VERSION" -> expectedTastyVersion,
3495
3511
),
3496
- if (mode == Bootstrapped ) Def .settings(
3497
- commonMiMaSettings,
3498
- mimaForwardIssueFilters := MiMaFilters .TastyCore .ForwardsBreakingChanges ,
3499
- mimaBackwardIssueFilters := MiMaFilters .TastyCore .BackwardsBreakingChanges ,
3500
- customMimaReportBinaryIssues(" MiMaFilters.TastyCore" ),
3501
- ) else {
3502
- Nil
3503
- }
3504
3512
)
3505
3513
3506
3514
def asTastyCoreScala2 : Project = project
0 commit comments