summaryrefslogtreecommitdiff
path: root/build.sbt
diff options
context:
space:
mode:
authormergify[bot]2022-10-17 22:50:55 +0000
committerGitHub2022-10-17 22:50:55 +0000
commit1957f5ef5c43439144cf779a343707872ca92d6a (patch)
treea13298b8b9fbe0d2130800e25e2faf75e5891487 /build.sbt
parent1e9f4e99167d1bc132a1a1a04e6987c2161c4d0e (diff)
Add opt-in AutoCloneType for Records (backport #2781) (#2785)
* Add opt-in AutoCloneType for Records (#2781) There is a new trait, chisel3.experimental.AutoCloneType that is mixed in to Bundle and can optionally be mixed in to user-defined Records. The compiler plugin prints a deprecation warning on any user-defined implementation of cloneType, telling the user to mix in AutoCloneType before upgrading to 3.6. (cherry picked from commit a234fd48ac8f5942c38fef5797292014e407b586) # Conflicts: # core/src/main/scala/chisel3/Aggregate.scala # plugin/src/main/scala/chisel3/internal/plugin/BundleComponent.scala * Resolve backport conflicts * Do not make MixedVec extend AutoCloneType It is a binary incompatible change that can wait for 3.6. * Waive MiMa false positives Co-authored-by: Jack Koenig <koenig@sifive.com>
Diffstat (limited to 'build.sbt')
-rw-r--r--build.sbt7
1 files changed, 7 insertions, 0 deletions
diff --git a/build.sbt b/build.sbt
index 49643118..b958b19a 100644
--- a/build.sbt
+++ b/build.sbt
@@ -143,6 +143,13 @@ lazy val plugin = (project in file("plugin")).
}
).
settings(
+ // Given that the plugin is 1) a compile-time only dependency and 2) package chisel3.internal,
+ // I'm not really sure why we both checking binary compatbility
+ mimaBinaryIssueFilters ++= Seq(
+ // MyTypingTransformer is private (https://github.com/lightbend/mima/issues/53)
+ ProblemFilters.exclude[DirectMissingMethodProblem]("chisel3.internal.plugin.BundleComponent#MyTypingTransformer.isBundle"),
+ ProblemFilters.exclude[DirectMissingMethodProblem]("chisel3.internal.plugin.BundleComponent#MyTypingTransformer.getConstructorAndParams")
+ ),
mimaPreviousArtifacts := {
// There are not yet artifacts for 2.12.17, 2.13.9, nor 2.13.10; suppress until 3.5.5 is released
val skipVersions = Seq("2.12.17", "2.13.9", "2.13.10")