Skip to content

Fix inferred result types of non private members in stdlib-bootstapped #17975

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
3880eb0
Clone stdlib-bootstrapped/src/scala/collection/mutable/TreeMap.scala
nicolasstucki Jun 14, 2023
58fe14f
Fix result type of mutable.TreeMap.sortedMapFactory
nicolasstucki Jun 14, 2023
450f58e
Clone scala/math/Ordering.scala
nicolasstucki Jun 14, 2023
3c1da56
Fix result type of scala.math.Ordering.tryCompare
nicolasstucki Jun 14, 2023
b561c8d
Clone scala/collection/[im]mutable/BitSet.scala
nicolasstucki Jun 14, 2023
c36bd1f
Fix scala.collection.[im]mutable.BitSet.bitSetFactory
nicolasstucki Jun 14, 2023
a0c8b82
Clone scala/sys/process/ProcessBuilderImpl.scala
nicolasstucki Jun 14, 2023
ed54067
Fix scala.sys.process.ProcessBuilderImpl.{createProcess,toSource,toSink}
nicolasstucki Jun 14, 2023
86c26e2
Clone scala/collection/mutable/LinkedHash{Set,Map}.scala
nicolasstucki Jun 14, 2023
8d7bbfa
Fix scala.collection.mutable.LinkedHash{Set,Map}.newBuilder
nicolasstucki Jun 14, 2023
d82defc
Clone scala/collection/convert/JavaCollectionWrappers.scala
nicolasstucki Jun 14, 2023
53d326a
Fix scala.collection.convert.JavaCollectionWrappers
nicolasstucki Jun 14, 2023
f8f26d9
Clone scala/math/BigDecimal.scala
nicolasstucki Jun 14, 2023
9477213
Fix scala.math.BigDecimal.underlying
nicolasstucki Jun 14, 2023
e271e91
Clone scala/collection/immutable/TreeSet.scala
nicolasstucki Jun 14, 2023
2ec3c25
Fix scala.collection.immutable.TreeSet.sortedIterableFactory
nicolasstucki Jun 14, 2023
0cdf04c
Clone scala/collection/View.scala
nicolasstucki Jun 14, 2023
4fd9343
Fix scala.collection.View#{Left,Right}PartitionMapped.iterator
nicolasstucki Jun 14, 2023
d387ba5
Clone scala/concurrent/duration/Duration.scala
nicolasstucki Jun 15, 2023
66b05b8
Fix scala.concurrent.duration.FiniteDuration.unary_-
nicolasstucki Jun 14, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 1 addition & 15 deletions project/MiMaFilters.scala
Original file line number Diff line number Diff line change
Expand Up @@ -86,14 +86,11 @@ object MiMaFilters {
ProblemFilters.exclude[FinalMethodProblem]("scala.io.Source.NoPositioner"),
ProblemFilters.exclude[FinalMethodProblem]("scala.io.Source.RelaxedPosition"),
ProblemFilters.exclude[FinalMethodProblem]("scala.io.Source.RelaxedPositioner"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.convert.JavaCollectionWrappers#*.empty"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.immutable.RedBlackTree#EqualsIterator.nextResult"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.immutable.SortedMapOps.coll"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.immutable.TreeMap.empty"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.immutable.TreeMap.fromSpecific"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.mutable.ArrayBuilder#ofUnit.addAll"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.mutable.LinkedHashMap.newBuilder"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.mutable.LinkedHashSet.newBuilder"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.mutable.TreeMap.empty"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.mutable.TreeMap.fromSpecific"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.reflect.ManifestFactory#NothingManifest.newArray"),
Expand All @@ -104,28 +101,21 @@ object MiMaFilters {
ProblemFilters.exclude[ReversedMissingMethodProblem]("scala.collection.immutable.SortedMapOps.coll"),
) ++
Seq( // DirectMissingMethodProblem
"scala.collection.convert.JavaCollectionWrappers#*.iterableFactory", "scala.collection.convert.JavaCollectionWrappers#*.mapFactory", "scala.collection.convert.JavaCollectionWrappers#IteratorWrapper.remove",
"scala.collection.immutable.ArraySeq#*.elemTag",
"scala.collection.immutable.BitSet.bitSetFactory",
"scala.collection.immutable.HashCollisionSetNode.copy",
"scala.collection.immutable.MapKeyValueTupleHashIterator.next",
"scala.collection.immutable.TreeSet.sortedIterableFactory",
"scala.collection.LinearSeqIterator#LazyCell.this",
"scala.collection.mutable.AnyRefMap#ToBuildFrom.newBuilder",
"scala.collection.mutable.ArraySeq#*.elemTag",
"scala.collection.mutable.BitSet.bitSetFactory",
"scala.collection.mutable.LinkedHashMap.newBuilder", "scala.collection.mutable.LinkedHashSet.newBuilder",
"scala.collection.mutable.LongMap#ToBuildFrom.newBuilder",
"scala.collection.mutable.PriorityQueue#ResizableArrayAccess.this",
"scala.collection.mutable.TreeMap.sortedMapFactory",
"scala.collection.StringView.andThen", "scala.collection.StringView.compose",
"scala.collection.View#*.iterator",
"scala.concurrent.BatchingExecutor#AbstractBatch.this",
"scala.concurrent.Channel#LinkedList.this",
"scala.concurrent.duration.Deadline.apply", "scala.concurrent.duration.Deadline.copy", "scala.concurrent.duration.Deadline.copy$default$1", "scala.concurrent.duration.FiniteDuration.unary_-",
"scala.concurrent.duration.Deadline.apply", "scala.concurrent.duration.Deadline.copy", "scala.concurrent.duration.Deadline.copy$default$1",
"scala.Enumeration#ValueOrdering.this",
"scala.io.Source#RelaxedPosition.this",
"scala.math.BigDecimal.underlying",
"scala.PartialFunction#OrElse.andThen", "scala.PartialFunction#OrElse.orElse",
"scala.runtime.Rich*.num", "scala.runtime.Rich*.ord",
"scala.ScalaReflectionException.andThen", "scala.ScalaReflectionException.compose",
Expand Down Expand Up @@ -163,9 +153,6 @@ object MiMaFilters {
ProblemFilters.exclude[IncompatibleMethTypeProblem]("scala.collection.mutable.ArrayBuilder#ofUnit.addAll"),

// Non-categorized
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.convert.JavaCollectionWrappers#JConcurrentMapWrapper.empty"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.convert.JavaCollectionWrappers#JMapWrapper.empty"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.convert.JavaCollectionWrappers#JPropertiesWrapper.empty"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.immutable.RedBlackTree#EqualsIterator.nextResult"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.immutable.SortedMapOps.coll"),
ProblemFilters.exclude[IncompatibleResultTypeProblem]("scala.collection.mutable.LinkedHashMap.newBuilder"),
Expand Down Expand Up @@ -218,7 +205,6 @@ object MiMaFilters {
"scala.io.Source#RelaxedPosition.this",
"scala.jdk.Accumulator#AccumulatorFactoryShape.anyAccumulatorFactoryShape", "scala.jdk.Accumulator#AccumulatorFactoryShape.doubleAccumulatorFactoryShape", "scala.jdk.Accumulator#AccumulatorFactoryShape.intAccumulatorFactoryShape", "scala.jdk.Accumulator#AccumulatorFactoryShape.jDoubleAccumulatorFactoryShape", "scala.jdk.Accumulator#AccumulatorFactoryShape.jIntegerAccumulatorFactoryShape", "scala.jdk.Accumulator#AccumulatorFactoryShape.jLongAccumulatorFactoryShape", "scala.jdk.Accumulator#AccumulatorFactoryShape.longAccumulatorFactoryShape",
"scala.jdk.FunctionWrappers#*",
"scala.math.Ordering.tryCompare",
"scala.PartialFunction.unlifted",
"scala.sys.process.BasicIO.connectNoOp", "scala.sys.process.BasicIO.connectToStdIn",
"scala.sys.process.Process.Future",
Expand Down
22 changes: 6 additions & 16 deletions project/TastyMiMaFilters.scala
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@ object TastyMiMaFilters {
ProblemMatcher.make(ProblemKind.MissingTermMember, "scala.*$extension"),
ProblemMatcher.make(ProblemKind.IncompatibleSelfTypeChange, "scala.*"),

// Probably OK: object singleton type
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.collection.mutable.BitSet.bitSetFactory"),

// Probably OK: by-name arguments in signatures
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.App.delayedInit"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.Array.fill"),
Expand Down Expand Up @@ -108,25 +111,12 @@ object TastyMiMaFilters {
// Problem: Case class with varargs
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.StringContext.parts"),

// Problem: Inferred result type of non-private member differs
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.collection.convert.JavaCollectionWrappers.*.iterableFactory"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.collection.convert.JavaCollectionWrappers.*.empty"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.collection.convert.JavaCollectionWrappers.*.mapFactory"),
ProblemMatcher.make(ProblemKind.MissingTermMember, "scala.collection.mutable.LinkedHash*.newBuilder"),
// Problem: ???
ProblemMatcher.make(ProblemKind.MissingTermMember, "scala.math.Big*.underlying"),
ProblemMatcher.make(ProblemKind.MissingTermMember, "scala.math.Ordering.tryCompare"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.collection.immutable.TreeSet.sortedIterableFactory"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.collection.immutable.BitSet.bitSetFactory"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.collection.mutable.BitSet.bitSetFactory"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.collection.View.*PartitionMapped.iterator"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.sys.process.ProcessBuilderImpl.*.toSink"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.sys.process.ProcessBuilderImpl.*.toSource"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.concurrent.duration.FiniteDuration.unary_-"),
ProblemMatcher.make(ProblemKind.MissingTermMember, "scala.collection.convert.JavaCollectionWrappers.IteratorWrapper.remove"),

// Problem: Inferred result type of non-private member differs
ProblemMatcher.make(ProblemKind.MissingTermMember, "scala.collection.convert.JavaCollectionWrappers.IterableWrapperTrait.iterator"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.util.matching.Regex.MatchIterator.replacementData"),
ProblemMatcher.make(ProblemKind.MissingTermMember, "scala.sys.process.ProcessBuilderImpl.*.createProcess"),
ProblemMatcher.make(ProblemKind.IncompatibleTypeChange, "scala.collection.mutable.TreeMap.sortedMapFactory"),

// Problem: implicit class (method should not be final)
ProblemMatcher.make(ProblemKind.FinalMember, "scala.collection.convert.*.*"),
Expand Down
Loading