# #21423 removal of deprecated stages (in 2.5.x)
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.javadsl.Source.transform")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.javadsl.SubSource.transform")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.javadsl.Flow.transform")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.javadsl.SubFlow.transform")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.FlowOpsMat.transformMaterializing")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Flow.transform")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Flow.transformMaterializing")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Flow.andThen")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Source.transform")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Source.transformMaterializing")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Source.andThen")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.FlowOps.transform")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.FlowOps.andThen")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.Directive")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.AsyncDirective")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.TerminationDirective")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.AbstractStage$")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StatefulStage$Become$")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.AbstractStage$PushPullGraphStage")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StatefulStage$EmittingState$")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.AbstractStage")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.AbstractStage$PushPullGraphLogic")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.Context")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.Stage")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StatefulStage$")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.DetachedStage")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StatefulStage$Become")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StageState")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.AbstractStage$PushPullGraphStageWithMaterializedValue")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.DownstreamDirective")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.PushPullStage")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.LifecycleContext")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StatefulStage$EmittingState")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.PushStage")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.DetachedContext")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StatefulStage")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StatefulStage$State")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.UpstreamDirective")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.FreeDirective")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StatefulStage$AndThen")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.SyncDirective")

# deprecated method transform(scala.Function0)akka.stream.scaladsl.FlowOps in class akka.stream.scaladsl.GraphDSL#Implicits#PortOpsImpl does not have a correspondent in current version
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.GraphDSL#Implicits#PortOpsImpl.transform")
# method andThen(akka.stream.impl.Stages#SymbolicStage)akka.stream.scaladsl.FlowOps in class akka.stream.scaladsl.GraphDSL#Implicits#PortOpsImpl does not have a correspondent in current version
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.GraphDSL#Implicits#PortOpsImpl.andThen")
# object akka.stream.stage.StatefulStage#Stay does not have a correspondent in current version
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StatefulStage$Stay$")
# object akka.stream.stage.StatefulStage#Finish does not have a correspondent in current version
ProblemFilters.exclude[MissingClassProblem]("akka.stream.stage.StatefulStage$Finish$")

# implementation classes
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.impl.SubFlowImpl.transform")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.impl.SubFlowImpl.andThen")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.impl.Stages$SymbolicGraphStage$")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.impl.Stages$SymbolicStage")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.impl.Stages$SymbolicGraphStage")

# new materializer changes relating to old module structure
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.BidiShape.copyFromPorts")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.BidiShape.reversed")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.MaterializationContext.stageName")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.SinkShape.copyFromPorts")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.Shape.copyFromPorts")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.ClosedShape.copyFromPorts")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.Fusing$FusedGraph$")
ProblemFilters.exclude[IncompatibleMethTypeProblem]("akka.stream.Attributes.extractName")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.AmorphousShape.copyFromPorts")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.SourceShape.copyFromPorts")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.Fusing$")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.Fusing$FusedGraph")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.Fusing")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.FlowShape.copyFromPorts")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.Graph.module")
ProblemFilters.exclude[ReversedMissingMethodProblem]("akka.stream.Graph.traversalBuilder")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.javadsl.Source.module")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.javadsl.RunnableGraph#RunnableGraphAdapter.module")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.javadsl.BidiFlow.module")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.javadsl.Sink.module")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.javadsl.Flow.module")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Sink.module")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Sink.this")
ProblemFilters.exclude[IncompatibleMethTypeProblem]("akka.stream.scaladsl.RunnableGraph.apply")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.scaladsl.GraphApply$GraphImpl")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.RunnableGraph.module")
ProblemFilters.exclude[IncompatibleMethTypeProblem]("akka.stream.scaladsl.RunnableGraph.copy")
ProblemFilters.exclude[IncompatibleResultTypeProblem]("akka.stream.scaladsl.RunnableGraph.copy$default$1")
ProblemFilters.exclude[IncompatibleMethTypeProblem]("akka.stream.scaladsl.RunnableGraph.this")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.BidiFlow.module")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.BidiFlow.this")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.GraphDSL#Builder.module")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Flow.module")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Flow.this")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.scaladsl.GraphApply$")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Source.module")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.scaladsl.Source.this")
ProblemFilters.exclude[DirectMissingMethodProblem]("akka.stream.stage.GraphStageWithMaterializedValue.module")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.scaladsl.ModuleExtractor")
ProblemFilters.exclude[MissingClassProblem]("akka.stream.scaladsl.ModuleExtractor$")
ProblemFilters.exclude[Problem]("akka.stream.impl.*")
