From 6d00a4572bda75de304f3716939a7af5e9adee8e Mon Sep 17 00:00:00 2001 From: Miguel Covarrubias Date: Mon, 10 Jul 2017 15:49:41 -0400 Subject: [PATCH] patvars --- .../callcaching/StandardFileHashingActor.scala | 4 +-- .../RuntimeAttributesValidationSpec.scala | 24 ++++++++-------- .../scala/cromwell/backend/wdl/FileSizeSpec.scala | 6 ++-- core/src/main/scala/cromwell/core/ConfigUtil.scala | 6 ++-- .../core/CromwellUserGuardianStrategy.scala | 2 +- .../main/scala/cromwell/core/WorkflowOptions.scala | 2 +- .../cromwell/core/actor/StreamActorHelper.scala | 6 ++-- .../cromwell/core/simpleton/WdlValueBuilder.scala | 2 +- .../core/simpleton/WdlValueBuilderSpec.scala | 4 +-- .../test/scala/cromwell/util/AkkaTestUtil.scala | 2 +- .../database/migration/WdlTransformation.scala | 2 +- .../metadata/table/symbol/MetadataStatement.scala | 8 +++--- .../table/symbol/SymbolTableMigration.scala | 2 +- .../restart/table/JobStoreSimpletonMigration.scala | 2 +- .../docker/registryv2/flows/FlowUtils.scala | 4 +-- .../registryv2/flows/HttpFlowWithRetry.scala | 4 +-- .../scala/cromwell/docker/DockerHashMocks.scala | 2 +- .../main/scala/cromwell/engine/io/IoActor.scala | 4 +-- .../cromwell/engine/workflow/WorkflowActor.scala | 6 ++-- .../lifecycle/WorkflowFinalizationActor.scala | 2 +- .../lifecycle/execution/ExecutionStore.scala | 2 +- .../workflow/lifecycle/execution/OutputStore.scala | 2 +- .../execution/SubWorkflowExecutionActor.scala | 8 +++--- .../callcaching/CallCacheWriteActor.scala | 6 ++-- .../preparation/JobPreparationActor.scala | 2 +- .../cromwell/jobstore/JobStoreWriterActor.scala | 4 +-- .../EmptySubWorkflowStoreActor.scala | 2 +- .../cromwell/webservice/CromwellApiService.scala | 4 +-- .../cromwell/webservice/LabelsManagerActor.scala | 2 +- .../webservice/metadata/MetadataBuilderActor.scala | 2 +- .../test/scala/cromwell/CromwellTestKitSpec.scala | 2 +- .../scala/cromwell/engine/io/nio/NioFlowSpec.scala | 10 +++---- .../execution/ExecutionStoreBenchmark.scala | 2 +- .../execution/ejea/EjeaUpdatingJobStoreSpec.scala | 2 +- .../workflow/tokens/TestTokenGrabbingActor.scala | 2 +- .../webservice/CromwellApiServiceSpec.scala | 8 +++--- project/Settings.scala | 11 ++++---- .../cromwell/services/ServiceRegistryActor.scala | 2 +- .../keyvalue/impl/SqlKeyValueServiceActor.scala | 2 +- .../services/metadata/MetadataService.scala | 2 +- .../services/metadata/WorkflowQueryKey.scala | 2 +- .../metadata/impl/MetadataServiceActor.scala | 4 +-- .../impl/MetadataSummaryRefreshActor.scala | 4 +-- .../metadata/impl/WriteMetadataActor.scala | 2 +- .../metadata/impl/MetadataDatabaseAccessSpec.scala | 32 +++++++++++----------- .../cromwell/backend/impl/jes/GoogleLabels.scala | 4 +-- .../jes/JesAsyncBackendJobExecutionActor.scala | 4 +-- .../backend/impl/jes/PreviousRetryReasons.scala | 2 +- .../cromwell/backend/impl/spark/SparkProcess.scala | 2 +- 49 files changed, 114 insertions(+), 113 deletions(-) diff --git a/backend/src/main/scala/cromwell/backend/standard/callcaching/StandardFileHashingActor.scala b/backend/src/main/scala/cromwell/backend/standard/callcaching/StandardFileHashingActor.scala index 53a05ae8d..bfccf8361 100644 --- a/backend/src/main/scala/cromwell/backend/standard/callcaching/StandardFileHashingActor.scala +++ b/backend/src/main/scala/cromwell/backend/standard/callcaching/StandardFileHashingActor.scala @@ -72,11 +72,11 @@ abstract class StandardFileHashingActor(standardParams: StandardFileHashingActor } // Hash Success - case (fileHashRequest: SingleFileHashRequest, response @ IoSuccess(_, result: String)) => + case (fileHashRequest: SingleFileHashRequest, IoSuccess(_, result: String)) => context.parent ! FileHashResponse(HashResult(fileHashRequest.hashKey, HashValue(result))) // Hash Failure - case (fileHashRequest: SingleFileHashRequest, response @ IoFailure(_, failure: Throwable)) => + case (fileHashRequest: SingleFileHashRequest, IoFailure(_, failure: Throwable)) => context.parent ! HashingFailedMessage(fileHashRequest.file.value, failure) case other => diff --git a/backend/src/test/scala/cromwell/backend/validation/RuntimeAttributesValidationSpec.scala b/backend/src/test/scala/cromwell/backend/validation/RuntimeAttributesValidationSpec.scala index 4cd60eef7..3b90f5f8b 100644 --- a/backend/src/test/scala/cromwell/backend/validation/RuntimeAttributesValidationSpec.scala +++ b/backend/src/test/scala/cromwell/backend/validation/RuntimeAttributesValidationSpec.scala @@ -37,7 +37,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateDocker(dockerValue, "Failed to get Docker mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Failed to get Docker mandatory key from runtime attributes") } } @@ -47,7 +47,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateDocker(dockerValue, "Failed to get Docker mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Expecting docker runtime attribute to be a String") } } @@ -87,7 +87,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateFailOnStderr(failOnStderrValue, "Failed to get failOnStderr mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Expecting failOnStderr runtime attribute to be a Boolean or a String with values of 'true' or 'false'") } } @@ -146,7 +146,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateContinueOnReturnCode(continueOnReturnCodeValue, "Failed to get continueOnReturnCode mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Expecting continueOnReturnCode runtime attribute to be either a Boolean, a String 'true' or 'false', or an Array[Int]") } @@ -167,7 +167,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateContinueOnReturnCode(continueOnReturnCodeValue, "Failed to get continueOnReturnCode mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Expecting continueOnReturnCode runtime attribute to be either a Boolean, a String 'true' or 'false', or an Array[Int]") } } @@ -197,7 +197,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateMemory(memoryValue, "Failed to get memory mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Expecting memory runtime attribute value greater than 0 but got -1") } } @@ -218,7 +218,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateMemory(memoryValue, "Failed to get memory mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Expecting memory runtime attribute value greater than 0 but got 0.0") } } @@ -228,7 +228,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateMemory(memoryValue, "Failed to get memory mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Expecting memory runtime attribute to be an Integer or String with format '8 GB'. Exception: value should be of the form 'X Unit' where X is a number, e.g. 8 GB") } } @@ -238,7 +238,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateMemory(memoryValue, "Failed to get memory mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Expecting memory runtime attribute to be an Integer or String with format '8 GB'. Exception: Not supported WDL type value") } } @@ -248,7 +248,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateMemory(memoryValue, "Failed to get memory mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Failed to get memory mandatory key from runtime attributes") } } @@ -268,7 +268,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateCpu(cpuValue, "Failed to get cpu mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Expecting cpu runtime attribute value greater than 0") } } @@ -278,7 +278,7 @@ class RuntimeAttributesValidationSpec extends WordSpecLike with Matchers with Be val result = RuntimeAttributesValidation.validateMemory(cpuValue, "Failed to get cpu mandatory key from runtime attributes".invalidNel) result match { - case Valid(x) => fail("A failure was expected.") + case Valid(_) => fail("A failure was expected.") case Invalid(e) => assert(e.head == "Failed to get cpu mandatory key from runtime attributes") } } diff --git a/backend/src/test/scala/cromwell/backend/wdl/FileSizeSpec.scala b/backend/src/test/scala/cromwell/backend/wdl/FileSizeSpec.scala index b0cc1166c..ab34d803f 100644 --- a/backend/src/test/scala/cromwell/backend/wdl/FileSizeSpec.scala +++ b/backend/src/test/scala/cromwell/backend/wdl/FileSizeSpec.scala @@ -73,7 +73,7 @@ class FileSizeSpec extends FlatSpec with Matchers { def testOver() = { testInner(n + 1, { - case Failure(s: FileSizeTooBig) => //success + case Failure(_: FileSizeTooBig) => //success case t => throw new RuntimeException(s"should not have eaten this file that is too big! msg: $t") }) } @@ -81,8 +81,8 @@ class FileSizeSpec extends FlatSpec with Matchers { def testUnder() = { testInner(n - 1, { case Success(_) => - case Failure(nfe: NumberFormatException) => //we're not testing parsing - case Failure(uoe: UnsupportedOperationException) => //we're not testing tsv compatibility + case Failure(_: NumberFormatException) => //we're not testing parsing + case Failure(_: UnsupportedOperationException) => //we're not testing tsv compatibility case Failure(t) => throw t }) } diff --git a/core/src/main/scala/cromwell/core/ConfigUtil.scala b/core/src/main/scala/cromwell/core/ConfigUtil.scala index 4098432c1..40dae4784 100644 --- a/core/src/main/scala/cromwell/core/ConfigUtil.scala +++ b/core/src/main/scala/cromwell/core/ConfigUtil.scala @@ -37,14 +37,14 @@ object ConfigUtil { def validateString(key: String): ValidatedNel[String, String] = try { config.getString(key).validNel } catch { - case e: ConfigException.Missing => s"Could not find key: $key".invalidNel + case _: ConfigException.Missing => s"Could not find key: $key".invalidNel } def validateConfig(key: String): ValidatedNel[String, Config] = try { config.getConfig(key).validNel } catch { - case e: ConfigException.Missing => s"Could not find key: $key".invalidNel - case e: ConfigException.WrongType => s"key $key cannot be parsed to a Config".invalidNel + case _: ConfigException.Missing => s"Could not find key: $key".invalidNel + case _: ConfigException.WrongType => s"key $key cannot be parsed to a Config".invalidNel } } diff --git a/core/src/main/scala/cromwell/core/CromwellUserGuardianStrategy.scala b/core/src/main/scala/cromwell/core/CromwellUserGuardianStrategy.scala index 52af92e5c..79e1621ca 100644 --- a/core/src/main/scala/cromwell/core/CromwellUserGuardianStrategy.scala +++ b/core/src/main/scala/cromwell/core/CromwellUserGuardianStrategy.scala @@ -5,7 +5,7 @@ import akka.actor.{ActorInitializationException, OneForOneStrategy, SupervisorSt class CromwellUserGuardianStrategy extends SupervisorStrategyConfigurator { override def create(): SupervisorStrategy = OneForOneStrategy() { - case aie: ActorInitializationException => Escalate + case _: ActorInitializationException => Escalate case t => akka.actor.SupervisorStrategy.defaultDecider.applyOrElse(t, (_: Any) => Escalate) } } diff --git a/core/src/main/scala/cromwell/core/WorkflowOptions.scala b/core/src/main/scala/cromwell/core/WorkflowOptions.scala index 709e667e1..701ea5428 100644 --- a/core/src/main/scala/cromwell/core/WorkflowOptions.scala +++ b/core/src/main/scala/cromwell/core/WorkflowOptions.scala @@ -152,7 +152,7 @@ case class WorkflowOptions(jsObject: JsObject) { } lazy val defaultRuntimeOptions = jsObject.fields.get(defaultRuntimeOptionKey) match { - case Some(jsObj: JsObject) => TryUtil.sequenceMap(jsObj.fields map { case (k, v) => k -> WorkflowOptions.getAsJson(k, jsObj) }) + case Some(jsObj: JsObject) => TryUtil.sequenceMap(jsObj.fields map { case (k, _) => k -> WorkflowOptions.getAsJson(k, jsObj) }) case Some(jsVal) => Failure(new IllegalArgumentException(s"Unsupported JsValue for $defaultRuntimeOptionKey: $jsVal. Expected a JSON object.")) case None => Failure(OptionNotFoundException(s"Cannot find definition for default runtime attributes")) } diff --git a/core/src/main/scala/cromwell/core/actor/StreamActorHelper.scala b/core/src/main/scala/cromwell/core/actor/StreamActorHelper.scala index 1e87ea59b..a7d43facf 100644 --- a/core/src/main/scala/cromwell/core/actor/StreamActorHelper.scala +++ b/core/src/main/scala/cromwell/core/actor/StreamActorHelper.scala @@ -71,14 +71,14 @@ trait StreamActorHelper[T <: StreamContext] { this: Actor with ActorLogging => } private def streamReceive: Receive = { - case EnqueueResponse(Enqueued, commandContext: T @unchecked) => // Good ! + case EnqueueResponse(Enqueued, _: T @unchecked) => // Good ! case EnqueueResponse(Dropped, commandContext) => backpressure(commandContext) // In any of the cases below, the stream is in a failed state, which will be caught by the watchCompletion hook and the // actor will be restarted case EnqueueResponse(QueueClosed, commandContext) => backpressure(commandContext) - case EnqueueResponse(QueueOfferResult.Failure(failure), commandContext) => backpressure(commandContext) - case FailedToEnqueue(throwable, commandContext) => backpressure(commandContext) + case EnqueueResponse(QueueOfferResult.Failure(_), commandContext) => backpressure(commandContext) + case FailedToEnqueue(_, commandContext) => backpressure(commandContext) // Those 2 cases should never happen, as long as the strategy is Resume, but in case it does... case StreamCompleted => restart(new IllegalStateException("Stream was completed unexpectedly")) diff --git a/core/src/main/scala/cromwell/core/simpleton/WdlValueBuilder.scala b/core/src/main/scala/cromwell/core/simpleton/WdlValueBuilder.scala index 774c1b5ce..cb5264d08 100644 --- a/core/src/main/scala/cromwell/core/simpleton/WdlValueBuilder.scala +++ b/core/src/main/scala/cromwell/core/simpleton/WdlValueBuilder.scala @@ -88,7 +88,7 @@ object WdlValueBuilder { // Group tuples by key using a Map with key type `K`. def group[K](tuples: Traversable[(K, SimpletonComponent)]): Map[K, Traversable[SimpletonComponent]] = { - tuples groupBy { case (i, _) => i } mapValues { _ map { case (i, s) => s} } + tuples groupBy { case (i, _) => i } mapValues { _ map { case (_, s) => s} } } outputType match { diff --git a/core/src/test/scala/cromwell/core/simpleton/WdlValueBuilderSpec.scala b/core/src/test/scala/cromwell/core/simpleton/WdlValueBuilderSpec.scala index 1e558ceb1..1dfd57dc5 100644 --- a/core/src/test/scala/cromwell/core/simpleton/WdlValueBuilderSpec.scala +++ b/core/src/test/scala/cromwell/core/simpleton/WdlValueBuilderSpec.scala @@ -115,9 +115,9 @@ class WdlValueBuilderSpec extends FlatSpec with Matchers with Mockito { it should "round trip everything together with no losses" in { - val wdlValues = (simpletonConversions map { case SimpletonConversion(name, wdlValue, simpletons) => name -> wdlValue }).toMap + val wdlValues = (simpletonConversions map { case SimpletonConversion(name, wdlValue, _) => name -> wdlValue }).toMap val taskOutputs = wdlValues map { case (k, wv) => TaskOutput(k, wv.wdlType, IgnoredExpression, mock[Ast], None) } - val allSimpletons = simpletonConversions flatMap { case SimpletonConversion(name, wdlValue, simpletons) => simpletons } + val allSimpletons = simpletonConversions flatMap { case SimpletonConversion(_, _, simpletons) => simpletons } import WdlValueSimpleton._ diff --git a/core/src/test/scala/cromwell/util/AkkaTestUtil.scala b/core/src/test/scala/cromwell/util/AkkaTestUtil.scala index 10b05dc2b..1633a7d1d 100644 --- a/core/src/test/scala/cromwell/util/AkkaTestUtil.scala +++ b/core/src/test/scala/cromwell/util/AkkaTestUtil.scala @@ -8,7 +8,7 @@ object AkkaTestUtil { implicit class EnhancedTestProbe(probe: TestProbe) { def props = Props(new Actor with ActorLogging { def receive = { - case outbound if sender == probe.ref => + case outbound @ _ if sender == probe.ref => val msg = "Unexpected outbound message from Probe. You're doing something wrong!" log.error(msg) throw new RuntimeException(msg) diff --git a/database/migration/src/main/scala/cromwell/database/migration/WdlTransformation.scala b/database/migration/src/main/scala/cromwell/database/migration/WdlTransformation.scala index 3e9ce3a2d..c5986f135 100644 --- a/database/migration/src/main/scala/cromwell/database/migration/WdlTransformation.scala +++ b/database/migration/src/main/scala/cromwell/database/migration/WdlTransformation.scala @@ -18,7 +18,7 @@ private [migration] object WdlTransformation { case None => null } } recover { - case e: IOException => value + case _: IOException => value } def coerceStringToWdl(wdlString: String, wdlType: WdlType) = wdlType match { diff --git a/database/migration/src/main/scala/cromwell/database/migration/metadata/table/symbol/MetadataStatement.scala b/database/migration/src/main/scala/cromwell/database/migration/metadata/table/symbol/MetadataStatement.scala index 311b364fe..ea1aad74a 100644 --- a/database/migration/src/main/scala/cromwell/database/migration/metadata/table/symbol/MetadataStatement.scala +++ b/database/migration/src/main/scala/cromwell/database/migration/metadata/table/symbol/MetadataStatement.scala @@ -44,10 +44,10 @@ class MetadataStatementForWorkflow(preparedStatement: PreparedStatement, workflo private def metadataType(value: Any) = { value match { - case WdlInteger(i) => "int" - case WdlFloat(f) => "number" - case WdlBoolean(b) => "boolean" - case value: WdlValue => "string" + case WdlInteger(_) => "int" + case WdlFloat(_) => "number" + case WdlBoolean(_) => "boolean" + case _: WdlValue => "string" case _: Int | Long => "int" case _: Double | Float => "number" case _: Boolean => "boolean" diff --git a/database/migration/src/main/scala/cromwell/database/migration/metadata/table/symbol/SymbolTableMigration.scala b/database/migration/src/main/scala/cromwell/database/migration/metadata/table/symbol/SymbolTableMigration.scala index 6b15db07b..af381363c 100644 --- a/database/migration/src/main/scala/cromwell/database/migration/metadata/table/symbol/SymbolTableMigration.scala +++ b/database/migration/src/main/scala/cromwell/database/migration/metadata/table/symbol/SymbolTableMigration.scala @@ -49,7 +49,7 @@ trait SymbolTableMigration extends BatchedTaskChange { wdlType <- Try(WdlType.fromWdlString(row.getString("WDL_TYPE"))) inflated <- row.getString("WDL_VALUE") match { case null => Success("") // Empty Strings are null in the DB - case nonNull => inflate(row.getString("WDL_VALUE")) + case nonNull @ _ => inflate(row.getString("WDL_VALUE")) } } yield WdlTransformation.coerceStringToWdl(inflated, wdlType) diff --git a/database/migration/src/main/scala/cromwell/database/migration/restart/table/JobStoreSimpletonMigration.scala b/database/migration/src/main/scala/cromwell/database/migration/restart/table/JobStoreSimpletonMigration.scala index bd04a4b21..54a2f7c1a 100644 --- a/database/migration/src/main/scala/cromwell/database/migration/restart/table/JobStoreSimpletonMigration.scala +++ b/database/migration/src/main/scala/cromwell/database/migration/restart/table/JobStoreSimpletonMigration.scala @@ -51,7 +51,7 @@ class JobStoreSimpletonMigration extends AbstractRestartMigration { def buildJobStoreSimpletonEntries(name: String, wdlValue: WdlValue, wdlType: WdlType) = Option(wdlValue) match { case None => List(JobStoreSimpletonEntry(name, null, wdlType.toWdlString)) - case Some(v) => wdlValue.simplify(name) map { s => + case Some(_) => wdlValue.simplify(name) map { s => JobStoreSimpletonEntry(s.simpletonKey, s.simpletonValue.valueString, s.simpletonValue.wdlType.toWdlString) } } diff --git a/dockerHashing/src/main/scala/cromwell/docker/registryv2/flows/FlowUtils.scala b/dockerHashing/src/main/scala/cromwell/docker/registryv2/flows/FlowUtils.scala index b98f45949..7fa64a6cc 100644 --- a/dockerHashing/src/main/scala/cromwell/docker/registryv2/flows/FlowUtils.scala +++ b/dockerHashing/src/main/scala/cromwell/docker/registryv2/flows/FlowUtils.scala @@ -17,8 +17,8 @@ object FlowUtils { import GraphDSL.Implicits._ val partition = builder.add(Partition[(Try[T], U)](2, { - case (Success(v), _) => 0 - case (Failure(f), _) => 1 + case (Success(_), _) => 0 + case (Failure(_), _) => 1 })) val successOut: PortOps[(T, U)] = partition.out(0) collect { diff --git a/dockerHashing/src/main/scala/cromwell/docker/registryv2/flows/HttpFlowWithRetry.scala b/dockerHashing/src/main/scala/cromwell/docker/registryv2/flows/HttpFlowWithRetry.scala index d5d1d5776..5aab9a546 100644 --- a/dockerHashing/src/main/scala/cromwell/docker/registryv2/flows/HttpFlowWithRetry.scala +++ b/dockerHashing/src/main/scala/cromwell/docker/registryv2/flows/HttpFlowWithRetry.scala @@ -25,7 +25,7 @@ object HttpFlowWithRetry { case StatusCodes.BadGateway => true case StatusCodes.GatewayTimeout => true case StatusCodes.RequestTimeout => true - case other => isTransient(response) + case other @ _ => isTransient(response) } } @@ -100,7 +100,7 @@ case class HttpFlowWithRetry[T]( // Successful return code case (httpResponse, flowContext) if httpResponse.status.isSuccess() || !shouldRetry(httpResponse, flowContext) => 0 // Failed return code but retryable - case (httpResponse, flowContext) => 1 + case (_, _) => 1 })) // Merges requests coming from 3 input ports: diff --git a/dockerHashing/src/test/scala/cromwell/docker/DockerHashMocks.scala b/dockerHashing/src/test/scala/cromwell/docker/DockerHashMocks.scala index 39d262730..805fe4401 100644 --- a/dockerHashing/src/test/scala/cromwell/docker/DockerHashMocks.scala +++ b/dockerHashing/src/test/scala/cromwell/docker/DockerHashMocks.scala @@ -13,7 +13,7 @@ class HttpMock[T](responses: MockHttpResponse*) { private var responsesLeft = responses.toBuffer private def nextResponse(value: (HttpRequest, ContextWithRequest[T])): (Try[HttpResponse], ContextWithRequest[T]) = value match { - case (request, context) => + case (request @ _, context) => responsesLeft.headOption match { case Some(mockResponse) => if (mockResponse.nb > 1) diff --git a/engine/src/main/scala/cromwell/engine/io/IoActor.scala b/engine/src/main/scala/cromwell/engine/io/IoActor.scala index 79c884c79..36a0c7221 100644 --- a/engine/src/main/scala/cromwell/engine/io/IoActor.scala +++ b/engine/src/main/scala/cromwell/engine/io/IoActor.scala @@ -44,8 +44,8 @@ final class IoActor(queueSize: Int, throttle: Option[Throttle])(implicit val mat // Partitions requests between gcs batch, and single nio requests val batchPartitioner = builder.add(Partition[IoCommandContext[_]](2, { - case gcsBatch: GcsBatchCommandContext[_, _] => 0 - case other => 1 + case _: GcsBatchCommandContext[_, _] => 0 + case other @ _ => 1 })) // Sub flow for batched gcs requests diff --git a/engine/src/main/scala/cromwell/engine/workflow/WorkflowActor.scala b/engine/src/main/scala/cromwell/engine/workflow/WorkflowActor.scala index efe5bade3..8ad67ee99 100644 --- a/engine/src/main/scala/cromwell/engine/workflow/WorkflowActor.scala +++ b/engine/src/main/scala/cromwell/engine/workflow/WorkflowActor.scala @@ -206,7 +206,7 @@ class WorkflowActor(val workflowId: WorkflowId, pushWorkflowStart(workflowId) actor ! MaterializeWorkflowDescriptorCommand(workflowSourceFilesCollection, conf) goto(MaterializingWorkflowDescriptorState) using stateData.copy(currentLifecycleStateActor = Option(actor)) - case Event(AbortWorkflowCommand, stateData) => goto(WorkflowAbortedState) + case Event(AbortWorkflowCommand, _) => goto(WorkflowAbortedState) } when(MaterializingWorkflowDescriptorState) { @@ -217,7 +217,7 @@ class WorkflowActor(val workflowId: WorkflowId, goto(InitializingWorkflowState) using data.copy(currentLifecycleStateActor = Option(initializerActor), workflowDescriptor = Option(workflowDescriptor)) case Event(MaterializeWorkflowDescriptorFailureResponse(reason: Throwable), data) => goto(WorkflowFailedState) using data.copy(lastStateReached = StateCheckpoint(MaterializingWorkflowDescriptorState, Option(List(reason)))) - case Event(AbortWorkflowCommand, stateData) => + case Event(AbortWorkflowCommand, _) => // No lifecycle sub-actors exist yet, so no indirection via WorkflowAbortingState is necessary: goto(WorkflowAbortedState) } @@ -274,7 +274,7 @@ class WorkflowActor(val workflowId: WorkflowId, } when(WorkflowAbortingState) { - case Event(x: EngineLifecycleStateCompleteResponse, data @ WorkflowActorData(_, Some(workflowDescriptor), _, _)) => + case Event(_: EngineLifecycleStateCompleteResponse, data @ WorkflowActorData(_, Some(workflowDescriptor), _, _)) => finalizeWorkflow(data, workflowDescriptor, Map.empty, Map.empty, failures = None) case _ => stay() } diff --git a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/WorkflowFinalizationActor.scala b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/WorkflowFinalizationActor.scala index a4017ce16..a8acc2af7 100644 --- a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/WorkflowFinalizationActor.scala +++ b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/WorkflowFinalizationActor.scala @@ -112,7 +112,7 @@ case class WorkflowFinalizationActor(workflowIdForLogging: WorkflowId, jobExecutionMap map { case (wd, executedKeys) => wd -> (executedKeys filter { jobKey => calls.contains(jobKey.call) }) } filter { - case (wd, keys) => keys.nonEmpty + case (_, keys) => keys.nonEmpty } } diff --git a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/ExecutionStore.scala b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/ExecutionStore.scala index a4ae7c20d..4c78fddcb 100644 --- a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/ExecutionStore.scala +++ b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/ExecutionStore.scala @@ -142,7 +142,7 @@ final case class ExecutionStore(private val statusStore: Map[JobKey, ExecutionSt * NOTE: this algorithm was designed for ONE-LEVEL of scattering and probably does not * work as-is for nested scatter blocks */ - case Some(ancestor: Scatter) => doneKeys.contains(prerequisiteScope.fullyQualifiedName -> entry.index) + case Some(_: Scatter) => doneKeys.contains(prerequisiteScope.fullyQualifiedName -> entry.index) /* * Otherwise, simply refer to the collector entry. This means that 'entry' depends diff --git a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/OutputStore.scala b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/OutputStore.scala index 9223ec1c6..05a33089b 100644 --- a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/OutputStore.scala +++ b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/OutputStore.scala @@ -42,7 +42,7 @@ case class OutputStore(store: Map[OutputCallKey, List[OutputEntry]]) { def declarationOutputs(declaration: Declaration, outputs: List[OutputEntry]) = { outputs match { - case OutputEntry(name, _, Some(value)) :: Nil => Success(value) + case OutputEntry(_, _, Some(value)) :: Nil => Success(value) case _ => Failure(new RuntimeException(s"Could not find value for declaration ${declaration.fullyQualifiedName}")) } } diff --git a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/SubWorkflowExecutionActor.scala b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/SubWorkflowExecutionActor.scala index 88e364bac..353715c40 100644 --- a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/SubWorkflowExecutionActor.scala +++ b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/SubWorkflowExecutionActor.scala @@ -90,7 +90,7 @@ class SubWorkflowExecutionActor(key: SubWorkflowKey, when(SubWorkflowAbortedState) { FSM.NullFunction } whenUnhandled { - case Event(SubWorkflowStoreRegisterSuccess(command), _) => + case Event(SubWorkflowStoreRegisterSuccess(_), _) => // Nothing to do here stay() case Event(SubWorkflowStoreFailure(command, reason), _) => @@ -99,12 +99,12 @@ class SubWorkflowExecutionActor(key: SubWorkflowKey, } onTransition { - case (fromState, toState) => + case (_, toState) => stateData.subWorkflowId foreach { id => pushCurrentStateToMetadataService(id, toState.workflowState) } } onTransition { - case (fromState, subWorkflowTerminalState: SubWorkflowTerminalState) => + case (_, _: SubWorkflowTerminalState) => stateData.subWorkflowId match { case Some(id) => pushWorkflowEnd(id) @@ -115,7 +115,7 @@ class SubWorkflowExecutionActor(key: SubWorkflowKey, } onTransition { - case fromState -> toState => eventList :+= ExecutionEvent(toState.toString) + case _ -> toState => eventList :+= ExecutionEvent(toState.toString) } private def startSubWorkflow(subWorkflowEngineDescriptor: EngineWorkflowDescriptor, inputs: EvaluatedTaskInputs) = { diff --git a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/callcaching/CallCacheWriteActor.scala b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/callcaching/CallCacheWriteActor.scala index d276083dd..af36f8c0c 100644 --- a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/callcaching/CallCacheWriteActor.scala +++ b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/callcaching/CallCacheWriteActor.scala @@ -31,13 +31,13 @@ case class CallCacheWriteActor(callCache: CallCache) extends LoggingFSM[Batching case newData: HasData[_] if newData.length >= dbBatchSize => goto(WritingToDb) using newData case newData => stay() using newData } - case Event(ScheduledFlushToDb, curData) => + case Event(ScheduledFlushToDb, _) => log.debug("Initiating periodic call cache flush to DB") goto(WritingToDb) } when(WritingToDb) { - case Event(ScheduledFlushToDb, curData) => stay + case Event(ScheduledFlushToDb, _) => stay case Event(command: SaveCallCacheHashes, curData) => stay using curData.addData(CommandAndReplyTo(command, sender)) case Event(FlushBatchToDb, NoData) => log.debug("Attempted call cache hash set flush to DB but had nothing to write") @@ -56,7 +56,7 @@ case class CallCacheWriteActor(callCache: CallCache) extends LoggingFSM[Batching } } stay using NoData - case Event(DbWriteComplete, curData) => + case Event(DbWriteComplete, _) => log.debug("Flush of cache data complete") goto(WaitingToWrite) } diff --git a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/preparation/JobPreparationActor.scala b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/preparation/JobPreparationActor.scala index 4d133da9a..b91a21313 100644 --- a/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/preparation/JobPreparationActor.scala +++ b/engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/preparation/JobPreparationActor.scala @@ -66,7 +66,7 @@ class JobPreparationActor(executionData: WorkflowExecutionActorData, case Event(WorkflowDockerLookupFailure(reason, _), data: JobPreparationHashLookupData) => workflowLogger.warn("Docker lookup failed", reason) handleDockerHashFailed(data) - case Event(WorkflowDockerTerminalFailure(reason, _), data: JobPreparationHashLookupData) => + case Event(WorkflowDockerTerminalFailure(reason, _), _: JobPreparationHashLookupData) => sendFailureAndStop(reason) } diff --git a/engine/src/main/scala/cromwell/jobstore/JobStoreWriterActor.scala b/engine/src/main/scala/cromwell/jobstore/JobStoreWriterActor.scala index e219f5a5b..d13bc369e 100644 --- a/engine/src/main/scala/cromwell/jobstore/JobStoreWriterActor.scala +++ b/engine/src/main/scala/cromwell/jobstore/JobStoreWriterActor.scala @@ -35,7 +35,7 @@ case class JobStoreWriterActor(jsd: JobStore, dbBatchSize: Int, flushRate: Finit } when(WritingToDb) { - case Event(ScheduledFlushToDb, curData) => stay + case Event(ScheduledFlushToDb, _) => stay case Event(command: JobStoreWriterCommand, curData) => stay using curData.addData(CommandAndReplyTo(command, sender)) case Event(FlushBatchToDb, NoData) => log.debug("Attempted job store flush to DB but had nothing to write") @@ -62,7 +62,7 @@ case class JobStoreWriterActor(jsd: JobStore, dbBatchSize: Int, flushRate: Finit } } stay using NoData - case Event(DbWriteComplete, curData) => + case Event(DbWriteComplete, _) => log.debug("Flush of job store commands complete") goto(WaitingToWrite) } diff --git a/engine/src/main/scala/cromwell/subworkflowstore/EmptySubWorkflowStoreActor.scala b/engine/src/main/scala/cromwell/subworkflowstore/EmptySubWorkflowStoreActor.scala index 89a7329c2..55e928de6 100644 --- a/engine/src/main/scala/cromwell/subworkflowstore/EmptySubWorkflowStoreActor.scala +++ b/engine/src/main/scala/cromwell/subworkflowstore/EmptySubWorkflowStoreActor.scala @@ -7,7 +7,7 @@ class EmptySubWorkflowStoreActor extends Actor with ActorLogging { override def receive: Receive = { case register: RegisterSubWorkflow => sender() ! SubWorkflowStoreRegisterSuccess(register) case query: QuerySubWorkflow => sender() ! SubWorkflowNotFound(query) - case complete: WorkflowComplete => // No-op! + case _: WorkflowComplete => // No-op! case unknown => log.error(s"SubWorkflowStoreActor received unknown message: $unknown") } } diff --git a/engine/src/main/scala/cromwell/webservice/CromwellApiService.scala b/engine/src/main/scala/cromwell/webservice/CromwellApiService.scala index 34830cd8e..dc89f4d24 100644 --- a/engine/src/main/scala/cromwell/webservice/CromwellApiService.scala +++ b/engine/src/main/scala/cromwell/webservice/CromwellApiService.scala @@ -195,7 +195,7 @@ trait CromwellApiService { case Failure(e) => e.failRequest(StatusCodes.InternalServerError) } // Catches the case where someone has gone through the single submission endpoint w/ more than one workflow - case Success(workflowSourceFiles) if isSingleSubmission => + case Success(_) if isSingleSubmission => val e = new IllegalArgumentException("To submit more than one workflow at a time, use the batch endpoint.") e.failRequest(StatusCodes.BadRequest) case Success(workflowSourceFiles) => @@ -219,7 +219,7 @@ trait CromwellApiService { case UnrecognizedWorkflowId => throw UnrecognizedWorkflowException(s"Unrecognized workflow ID: $w") case FailedToCheckWorkflowId(t) => throw t } - case Failure(t) => Future.failed(InvalidWorkflowException(s"Invalid workflow ID: '$possibleWorkflowId'.")) + case Failure(_) => Future.failed(InvalidWorkflowException(s"Invalid workflow ID: '$possibleWorkflowId'.")) } } diff --git a/engine/src/main/scala/cromwell/webservice/LabelsManagerActor.scala b/engine/src/main/scala/cromwell/webservice/LabelsManagerActor.scala index e8659a04d..7a950ba01 100644 --- a/engine/src/main/scala/cromwell/webservice/LabelsManagerActor.scala +++ b/engine/src/main/scala/cromwell/webservice/LabelsManagerActor.scala @@ -61,7 +61,7 @@ class LabelsManagerActor(serviceRegistryActor: ActorRef) extends Actor with Acto case MetadataWriteSuccess(events) => target ! BuiltLabelsManagerResponse(processLabelsResponse(wfId.get, metadataEventsToLabels(events))) context stop self - case MetadataWriteFailure(failure, events) => + case MetadataWriteFailure(failure, events @ _) => target ! FailedLabelsManagerResponse(new RuntimeException(s"Unable to update labels for ${wfId.get} due to ${failure.getMessage}")) context stop self } diff --git a/engine/src/main/scala/cromwell/webservice/metadata/MetadataBuilderActor.scala b/engine/src/main/scala/cromwell/webservice/metadata/MetadataBuilderActor.scala index 8da17f474..30ec2757a 100644 --- a/engine/src/main/scala/cromwell/webservice/metadata/MetadataBuilderActor.scala +++ b/engine/src/main/scala/cromwell/webservice/metadata/MetadataBuilderActor.scala @@ -170,7 +170,7 @@ class MetadataBuilderActor(serviceRegistryActor: ActorRef) extends LoggingFSM[Me target ! BuiltMetadataResponse(workflowMetadataResponse(w, l, includeCallsIfEmpty = false, Map.empty)) allDone case Event(MetadataLookupResponse(query, metadata), None) => processMetadataResponse(query, metadata) - case Event(failure: ServiceRegistryFailure, _) => + case Event(_: ServiceRegistryFailure, _) => target ! FailedMetadataResponse(new RuntimeException("Can't find metadata service")) allDone case Event(failure: MetadataServiceFailure, _) => diff --git a/engine/src/test/scala/cromwell/CromwellTestKitSpec.scala b/engine/src/test/scala/cromwell/CromwellTestKitSpec.scala index 2a59744c0..daf679163 100644 --- a/engine/src/test/scala/cromwell/CromwellTestKitSpec.scala +++ b/engine/src/test/scala/cromwell/CromwellTestKitSpec.scala @@ -493,7 +493,7 @@ object EmptyCallCacheWriteActor { class EmptyDockerHashActor extends Actor { override def receive: Receive = { - case request @ DockerHashRequest(image, _) => sender ! DockerHashSuccessResponse(DockerHashResult("alg", "hash"), request) + case request: DockerHashRequest => sender ! DockerHashSuccessResponse(DockerHashResult("alg", "hash"), request) } } diff --git a/engine/src/test/scala/cromwell/engine/io/nio/NioFlowSpec.scala b/engine/src/test/scala/cromwell/engine/io/nio/NioFlowSpec.scala index 9646830a4..e88669ef9 100644 --- a/engine/src/test/scala/cromwell/engine/io/nio/NioFlowSpec.scala +++ b/engine/src/test/scala/cromwell/engine/io/nio/NioFlowSpec.scala @@ -100,7 +100,7 @@ class NioFlowSpec extends TestKitSuite with AsyncFlatSpecLike with Matchers with val stream = testSource.via(flow).toMat(readSink)(Keep.right) stream.run() map { - case (success: IoSuccess[_], _) => assert(testCopyPath.exists) + case (_: IoSuccess[_], _) => assert(testCopyPath.exists) case _ => fail("copy returned an unexpected message") } } @@ -119,7 +119,7 @@ class NioFlowSpec extends TestKitSuite with AsyncFlatSpecLike with Matchers with val stream = testSource.via(flow).toMat(readSink)(Keep.right) stream.run() map { - case (success: IoSuccess[_], _) => + case (_: IoSuccess[_], _) => assert(testCopyPath.exists) assert(testCopyPath.contentAsString == "goodbye") case _ => fail("copy returned an unexpected message") @@ -152,7 +152,7 @@ class NioFlowSpec extends TestKitSuite with AsyncFlatSpecLike with Matchers with val stream = testSource.via(flow).toMat(readSink)(Keep.right) stream.run() map { - case (success: IoSuccess[_], _) => assert(!testPath.exists) + case (_: IoSuccess[_], _) => assert(!testPath.exists) case _ => fail("delete returned an unexpected message") } } @@ -167,7 +167,7 @@ class NioFlowSpec extends TestKitSuite with AsyncFlatSpecLike with Matchers with val stream = testSource.via(flow).toMat(readSink)(Keep.right) stream.run() map { - case (success: IoSuccess[_], _) => assert(!testPath.exists) + case (_: IoSuccess[_], _) => assert(!testPath.exists) case _ => fail("delete returned an unexpected message") } } @@ -185,7 +185,7 @@ class NioFlowSpec extends TestKitSuite with AsyncFlatSpecLike with Matchers with case (failure: IoFailure[_], _) => assert(failure.failure.isInstanceOf[CromwellFatalException]) assert(failure.failure.getCause.isInstanceOf[NoSuchFileException]) - case other => fail(s"delete returned an unexpected message") + case other @ _ => fail(s"delete returned an unexpected message") } } diff --git a/engine/src/test/scala/cromwell/engine/workflow/lifecycle/execution/ExecutionStoreBenchmark.scala b/engine/src/test/scala/cromwell/engine/workflow/lifecycle/execution/ExecutionStoreBenchmark.scala index bf5922dcb..17063198a 100644 --- a/engine/src/test/scala/cromwell/engine/workflow/lifecycle/execution/ExecutionStoreBenchmark.scala +++ b/engine/src/test/scala/cromwell/engine/workflow/lifecycle/execution/ExecutionStoreBenchmark.scala @@ -44,7 +44,7 @@ object ExecutionStoreBenchmark extends Bench[Double] { size <- sizes doneMap = (0 until size map makeKey(prepareCall, ExecutionStatus.Done)).toMap collectorKey = Map(CollectorKey(scatterCall, scatter, size) -> ExecutionStatus.NotStarted) - notStartedMap: Map[JobKey, ExecutionStatus] = (0 until size map makeKey(scatterCall, ExecutionStatus.NotStarted)).toMap ++ collectorKey + notStartedMap = (0 until size map makeKey(scatterCall, ExecutionStatus.NotStarted)).toMap ++ collectorKey finalMap: Map[JobKey, ExecutionStatus] = doneMap ++ notStartedMap } yield new ExecutionStore(finalMap, true) diff --git a/engine/src/test/scala/cromwell/engine/workflow/lifecycle/execution/ejea/EjeaUpdatingJobStoreSpec.scala b/engine/src/test/scala/cromwell/engine/workflow/lifecycle/execution/ejea/EjeaUpdatingJobStoreSpec.scala index 73a224a00..41e3f548e 100644 --- a/engine/src/test/scala/cromwell/engine/workflow/lifecycle/execution/ejea/EjeaUpdatingJobStoreSpec.scala +++ b/engine/src/test/scala/cromwell/engine/workflow/lifecycle/execution/ejea/EjeaUpdatingJobStoreSpec.scala @@ -17,7 +17,7 @@ class EjeaUpdatingJobStoreSpec extends EngineJobExecutionActorSpec with HasJobSu ("SucceededResponse", successResponse _, true), ("FailedRetryableResponse", failureRetryableResponse _, true), ("FailedNonRetryableResponse", failureNonRetryableResponse _, false) - ) foreach { case (name, responseMaker, retryable) => + ) foreach { case (name, responseMaker, retryable @ _) => s"Forward a saved $name response on and shut down, if the JobStore write is successful" in { val response = responseMaker.apply ejea = ejeaInUpdatingJobStoreState(response) diff --git a/engine/src/test/scala/cromwell/engine/workflow/tokens/TestTokenGrabbingActor.scala b/engine/src/test/scala/cromwell/engine/workflow/tokens/TestTokenGrabbingActor.scala index 669e6783f..5677a3eb6 100644 --- a/engine/src/test/scala/cromwell/engine/workflow/tokens/TestTokenGrabbingActor.scala +++ b/engine/src/test/scala/cromwell/engine/workflow/tokens/TestTokenGrabbingActor.scala @@ -16,7 +16,7 @@ class TestTokenGrabbingActor(tokenDispenser: ActorRef, tokenType: JobExecutionTo def receive = { case JobExecutionTokenDispensed(dispensedToken) => token = Option(dispensedToken) - case JobExecutionTokenDenied(positionInQueue) => rejections += 1 + case JobExecutionTokenDenied(_) => rejections += 1 case AkkaTestUtil.ThrowException => throw new RuntimeException("Test exception (don't be scared by the stack trace, it's deliberate!)") case AkkaTestUtil.InternalStop => context.stop(self) } diff --git a/engine/src/test/scala/cromwell/webservice/CromwellApiServiceSpec.scala b/engine/src/test/scala/cromwell/webservice/CromwellApiServiceSpec.scala index 5537e64e0..f19134562 100644 --- a/engine/src/test/scala/cromwell/webservice/CromwellApiServiceSpec.scala +++ b/engine/src/test/scala/cromwell/webservice/CromwellApiServiceSpec.scala @@ -506,7 +506,7 @@ object CromwellApiServiceSpec { class MockServiceRegistryActor extends Actor { import MockServiceRegistryActor._ override def receive = { - case WorkflowQuery(params) => + case WorkflowQuery(_) => val response = WorkflowQuerySuccess(WorkflowQueryResponse(List(WorkflowQueryResult(ExistingWorkflowId.toString, None, Some(WorkflowSucceeded.toString), None, None))), None) sender ! response @@ -519,7 +519,7 @@ object CromwellApiServiceSpec { sender ! WorkflowOutputsResponse(id, event) case GetLogs(id) => sender ! LogsResponse(id, logsEvents(id)) case GetSingleWorkflowMetadataAction(id, None, None, _) => sender ! MetadataLookupResponse(metadataQuery(id), fullMetadataResponse(id)) - case GetSingleWorkflowMetadataAction(id, Some(i), None, _) => sender ! MetadataLookupResponse(metadataQuery(id), filteredMetadataResponse(id)) + case GetSingleWorkflowMetadataAction(id, Some(_), None, _) => sender ! MetadataLookupResponse(metadataQuery(id), filteredMetadataResponse(id)) case GetSingleWorkflowMetadataAction(id, None, Some(_), _) => sender ! MetadataLookupResponse(metadataQuery(id), filteredMetadataResponse(id)) case PutMetadataActionAndRespond(events, _) => events.head.key.workflowId match { @@ -532,11 +532,11 @@ object CromwellApiServiceSpec { class MockWorkflowStoreActor extends Actor { override def receive = { - case SubmitWorkflow(source) => sender ! WorkflowSubmittedToStore(ExistingWorkflowId) + case SubmitWorkflow(_) => sender ! WorkflowSubmittedToStore(ExistingWorkflowId) case BatchSubmitWorkflows(sources) => val response = WorkflowsBatchSubmittedToStore(sources map { _ => ExistingWorkflowId }) sender ! response - case AbortWorkflow(id, manager) => + case AbortWorkflow(id, manager @ _) => val message = id match { case ExistingWorkflowId => WorkflowStoreEngineActor.WorkflowAborted(id) case AbortedWorkflowId => diff --git a/project/Settings.scala b/project/Settings.scala index b59c23041..736fd90fc 100644 --- a/project/Settings.scala +++ b/project/Settings.scala @@ -27,11 +27,11 @@ object Settings { Other fancy flags from https://tpolecat.github.io/2017/04/25/scalac-flags.html. - The following aren't used (yet), and in general are an exercise in pain for 2.12 with Cromwell. They'd - certainly be nice to have, but params causes a world of hurt and patvars is just going to be a big time sink. - Interested parties are encouraged to take a stab at it. - "-Ywarn-unused:params", // Warn if a value parameter is unused. - "-Ywarn-unused:patvars", // Warn if a variable bound in a pattern is unused. + The following isn't used (yet), and in general is an exercise in pain for 2.12 with Cromwell. + It'd certainly be nice to have, but params causes a world of hurt. Interested parties are encouraged + to take a stab at it. + + "-Ywarn-unused:params" // Warn if a value parameter is unused. */ val compilerSettings = List( "-explaintypes", @@ -68,6 +68,7 @@ object Settings { "-Ywarn-unused:imports", "-Ywarn-unused:privates", "-Ywarn-unused:locals", + "-Ywarn-unused:patvars", "-Xfatal-warnings" ) diff --git a/services/src/main/scala/cromwell/services/ServiceRegistryActor.scala b/services/src/main/scala/cromwell/services/ServiceRegistryActor.scala index c4ff1e476..adb23565e 100644 --- a/services/src/main/scala/cromwell/services/ServiceRegistryActor.scala +++ b/services/src/main/scala/cromwell/services/ServiceRegistryActor.scala @@ -70,7 +70,7 @@ class ServiceRegistryActor(serviceProps: Map[String, Props]) extends Actor with * the error up the chain */ override val supervisorStrategy = OneForOneStrategy() { - case aie: ActorInitializationException => Escalate + case _: ActorInitializationException => Escalate case t => super.supervisorStrategy.decider.applyOrElse(t, (_: Any) => Escalate) } } diff --git a/services/src/main/scala/cromwell/services/keyvalue/impl/SqlKeyValueServiceActor.scala b/services/src/main/scala/cromwell/services/keyvalue/impl/SqlKeyValueServiceActor.scala index e6d067ec7..3ea62743d 100644 --- a/services/src/main/scala/cromwell/services/keyvalue/impl/SqlKeyValueServiceActor.scala +++ b/services/src/main/scala/cromwell/services/keyvalue/impl/SqlKeyValueServiceActor.scala @@ -20,7 +20,7 @@ final case class SqlKeyValueServiceActor(serviceConfig: Config, globalConfig: Co override def doPut(put: KvPut): Future[KvResponse] = { put.pair.value match { - case Some(backendVal) => updateBackendKeyValuePair(put.pair.key.workflowId, + case Some(_) => updateBackendKeyValuePair(put.pair.key.workflowId, put.pair.key.jobKey, put.pair.key.key, put.pair.value.get).map(_ => KvPutSuccess(put)) diff --git a/services/src/main/scala/cromwell/services/metadata/MetadataService.scala b/services/src/main/scala/cromwell/services/metadata/MetadataService.scala index be5f5dc42..766401c02 100644 --- a/services/src/main/scala/cromwell/services/metadata/MetadataService.scala +++ b/services/src/main/scala/cromwell/services/metadata/MetadataService.scala @@ -169,7 +169,7 @@ object MetadataService { } message ++ indexedCauseEvents - case other => + case other @ _ => val message = List(MetadataEvent(metadataKey.copy(key = s"$metadataKeyAndFailureIndex:message"), MetadataValue(t.getMessage))) val causeKey = metadataKey.copy(key = s"$metadataKeyAndFailureIndex:causedBy") val cause = Option(t.getCause) map { cause => throwableToMetadataEvents(causeKey, cause, 0) } getOrElse emptyCauseList diff --git a/services/src/main/scala/cromwell/services/metadata/WorkflowQueryKey.scala b/services/src/main/scala/cromwell/services/metadata/WorkflowQueryKey.scala index 7db9224d8..1e3847712 100644 --- a/services/src/main/scala/cromwell/services/metadata/WorkflowQueryKey.scala +++ b/services/src/main/scala/cromwell/services/metadata/WorkflowQueryKey.scala @@ -58,7 +58,7 @@ object WorkflowQueryKey { def validateLabelRegex(labelKeyValue: String): ErrorOr[Label] = { labelKeyValue.split("\\:", 2) match { case Array(k, v) => Label.validateLabel(k, v) - case other => s"$labelKeyValue".invalidNel + case other @ _ => s"$labelKeyValue".invalidNel } } val nels: List[ErrorOr[Label]] = values map validateLabelRegex diff --git a/services/src/main/scala/cromwell/services/metadata/impl/MetadataServiceActor.scala b/services/src/main/scala/cromwell/services/metadata/impl/MetadataServiceActor.scala index 6541a51ff..1ee313d9c 100644 --- a/services/src/main/scala/cromwell/services/metadata/impl/MetadataServiceActor.scala +++ b/services/src/main/scala/cromwell/services/metadata/impl/MetadataServiceActor.scala @@ -78,8 +78,8 @@ case class MetadataServiceActor(serviceConfig: Config, globalConfig: Config) } def receive = { - case action@PutMetadataAction(events) => writeActor forward action - case action@PutMetadataActionAndRespond(events, replyTo) => writeActor forward action + case action: PutMetadataAction => writeActor forward action + case action: PutMetadataActionAndRespond => writeActor forward action case CheckPendingWrites => writeActor forward CheckPendingWrites case v: ValidateWorkflowId => validateWorkflowId(v.possibleWorkflowId, sender()) case action: ReadAction => readActor forward action diff --git a/services/src/main/scala/cromwell/services/metadata/impl/MetadataSummaryRefreshActor.scala b/services/src/main/scala/cromwell/services/metadata/impl/MetadataSummaryRefreshActor.scala index ef16bdb89..172d0012b 100644 --- a/services/src/main/scala/cromwell/services/metadata/impl/MetadataSummaryRefreshActor.scala +++ b/services/src/main/scala/cromwell/services/metadata/impl/MetadataSummaryRefreshActor.scala @@ -41,9 +41,9 @@ class MetadataSummaryRefreshActor() startWith(WaitingForRequest, SummaryRefreshData) when (WaitingForRequest) { - case (Event(SummarizeMetadata(respondTo), data)) => + case (Event(SummarizeMetadata(respondTo), _)) => refreshWorkflowMetadataSummaries() onComplete { - case Success(id) => + case Success(_) => respondTo ! MetadataSummarySuccess self ! MetadataSummaryComplete case Failure(t) => diff --git a/services/src/main/scala/cromwell/services/metadata/impl/WriteMetadataActor.scala b/services/src/main/scala/cromwell/services/metadata/impl/WriteMetadataActor.scala index 5ad4889c3..b7b7881b1 100644 --- a/services/src/main/scala/cromwell/services/metadata/impl/WriteMetadataActor.scala +++ b/services/src/main/scala/cromwell/services/metadata/impl/WriteMetadataActor.scala @@ -43,7 +43,7 @@ class WriteMetadataActor(batchSize: Int, flushRate: FiniteDuration) case Event(CheckPendingWrites, _: HasData[_]) => sender() ! HasPendingWrites stay() - case Event(e @ PutMetadataActionAndRespond(events, replyTo), curData) => + case Event(e: PutMetadataActionAndRespond, curData) => curData.addData(e) match { case newData: HasData[_] if newData.length > batchSize => goto(WritingToDb) using newData case newData => stay using newData diff --git a/services/src/test/scala/cromwell/services/metadata/impl/MetadataDatabaseAccessSpec.scala b/services/src/test/scala/cromwell/services/metadata/impl/MetadataDatabaseAccessSpec.scala index e0c79599e..85e077652 100644 --- a/services/src/test/scala/cromwell/services/metadata/impl/MetadataDatabaseAccessSpec.scala +++ b/services/src/test/scala/cromwell/services/metadata/impl/MetadataDatabaseAccessSpec.scala @@ -71,17 +71,17 @@ class MetadataDatabaseAccessSpec extends FlatSpec with Matchers with ScalaFuture workflow1Id <- baseWorkflowMetadata(Workflow1Name) //get metadata when page and pagesize are specified _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq( - WorkflowQueryKey.Page.name -> "1", WorkflowQueryKey.PageSize.name -> "50"))) map { case (response, meta) => + WorkflowQueryKey.Page.name -> "1", WorkflowQueryKey.PageSize.name -> "50"))) map { case (response @ _, meta) => meta match { - case Some(metadata) => + case Some(_) => case None => fail("Should have metadata when page and pagesize are specified.") } } //don't get metadata when page and pagesize are not specified _ <- dataAccess.queryWorkflowSummaries( - WorkflowQueryParameters(Seq())) map { case(response, meta) => + WorkflowQueryParameters(Seq())) map { case(response @ _, meta) => meta match { - case Some(metadata) => fail("Should not have metadata when page and pagesize are not specified") + case Some(_) => fail("Should not have metadata when page and pagesize are not specified") case None => } } @@ -146,7 +146,7 @@ class MetadataDatabaseAccessSpec extends FlatSpec with Matchers with ScalaFuture // Query with no filters (workflowQueryResult, workflowQueryResult2) <- - dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq.empty)) map { case (response, meta) => + dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq.empty)) map { case (response, meta @ _) => val result = response.results find { r => r.name.contains(Workflow1Name) && r.end.isDefined } getOrElse fail(s"$Workflow1Name with an end not found in ${response.results}") val result2 = response.results find { @@ -155,14 +155,14 @@ class MetadataDatabaseAccessSpec extends FlatSpec with Matchers with ScalaFuture (result, result2) } // Filter by name - _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq(WorkflowQueryKey.Name.name -> Workflow1Name))) map { case (response, meta) => + _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq(WorkflowQueryKey.Name.name -> Workflow1Name))) map { case (response, meta @ _) => val resultsByName = response.results groupBy { _.name } resultsByName.keys.toSet.flatten should equal(Set(Workflow1Name)) } // Filter by multiple names - _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq(WorkflowQueryKey.Name.name -> Workflow1Name, WorkflowQueryKey.Name.name -> Workflow2Name))) map { case (response, meta) => + _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq(WorkflowQueryKey.Name.name -> Workflow1Name, WorkflowQueryKey.Name.name -> Workflow2Name))) map { case (response, meta @ _) => val resultsByName = response.results groupBy { _.name } @@ -170,7 +170,7 @@ class MetadataDatabaseAccessSpec extends FlatSpec with Matchers with ScalaFuture } // Filter by workflow id _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters( - Seq(WorkflowQueryKey.Id.name -> workflow1Id.toString))) map { case (response, meta) => + Seq(WorkflowQueryKey.Id.name -> workflow1Id.toString))) map { case (response, meta @ _) => val resultsById = response.results groupBy { _.name } @@ -178,7 +178,7 @@ class MetadataDatabaseAccessSpec extends FlatSpec with Matchers with ScalaFuture } // Filter by multiple workflow ids _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters( - Seq(workflow1Id, workflow2Id).map(id => WorkflowQueryKey.Id.name -> id.toString))) map { case (response, meta) => + Seq(workflow1Id, workflow2Id).map(id => WorkflowQueryKey.Id.name -> id.toString))) map { case (response, meta @ _) => val resultsById = response.results groupBy { _.name } @@ -186,36 +186,36 @@ class MetadataDatabaseAccessSpec extends FlatSpec with Matchers with ScalaFuture } // Filter by workflow id within random Ids _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters( - (randomIds :+ workflow1Id).map(id => WorkflowQueryKey.Id.name -> id.toString))) map { case (response, meta) => + (randomIds :+ workflow1Id).map(id => WorkflowQueryKey.Id.name -> id.toString))) map { case (response, meta @ _) => val resultsById = response.results groupBy { _.name } resultsById.keys.toSet.flatten should equal(Set(Workflow1Name)) } // Filter by status - _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq(WorkflowQueryKey.Status.name -> "Submitted"))) map { case (response, meta) => + _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq(WorkflowQueryKey.Status.name -> "Submitted"))) map { case (response, meta @ _) => val resultsByStatus = response.results groupBy (_.status) resultsByStatus.keys.toSet.flatten should equal(Set("Submitted")) } // Filter by multiple statuses - _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq(WorkflowQueryKey.Status.name -> "Submitted", WorkflowQueryKey.Status.name -> "Succeeded"))) map { case (response, meta) => + _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq(WorkflowQueryKey.Status.name -> "Submitted", WorkflowQueryKey.Status.name -> "Succeeded"))) map { case (response, meta @ _) => val resultsByStatus = response.results groupBy (_.status) resultsByStatus.keys.toSet.flatten should equal(Set("Submitted", "Succeeded")) } // Filter by label - _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq(WorkflowQueryKey.LabelKeyValue.name -> s"${testLabel2.key}:${testLabel2.value}"))) map { case (response, meta) => + _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq(WorkflowQueryKey.LabelKeyValue.name -> s"${testLabel2.key}:${testLabel2.value}"))) map { case (response, meta @ _) => val resultByName = response.results groupBy (_.name) resultByName.keys.toSet.flatten should equal(Set(Workflow1Name, Workflow2Name)) } // Filter by multiple labels _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters( - Seq(testLabel2, testLabel3).map(label => WorkflowQueryKey.LabelKeyValue.name -> s"${label.key}:${label.value}"))) map { case (response, meta) => + Seq(testLabel2, testLabel3).map(label => WorkflowQueryKey.LabelKeyValue.name -> s"${label.key}:${label.value}"))) map { case (response, meta @ _) => val resultByName = response.results groupBy (_.name) resultByName.keys.toSet.flatten should equal(Set(Workflow2Name)) } // Filter by start date _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq( - WorkflowQueryKey.StartDate.name -> workflowQueryResult2.start.get.toString))) map { case (response, meta) => + WorkflowQueryKey.StartDate.name -> workflowQueryResult2.start.get.toString))) map { case (response, meta @ _) => response.results partition { r => r.start.isDefined && r.start.get.compareTo(workflowQueryResult.start.get) >= 0 } match { case (y, n) if y.nonEmpty && n.isEmpty => // good case (y, n) => fail(s"Found ${y.size} later workflows and ${n.size} earlier") @@ -223,7 +223,7 @@ class MetadataDatabaseAccessSpec extends FlatSpec with Matchers with ScalaFuture } // Filter by end date _ <- dataAccess.queryWorkflowSummaries(WorkflowQueryParameters(Seq( - WorkflowQueryKey.EndDate.name -> workflowQueryResult.end.get.toString))) map { case (response, meta) => + WorkflowQueryKey.EndDate.name -> workflowQueryResult.end.get.toString))) map { case (response, meta @ _) => response.results partition { r => r.end.isDefined && r.end.get.compareTo(workflowQueryResult.end.get) <= 0 } match { case (y, n) if y.nonEmpty && n.isEmpty => // good case (y, n) => fail(s"Found ${y.size} earlier workflows and ${n.size} later") diff --git a/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/GoogleLabels.scala b/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/GoogleLabels.scala index ae2055cb9..a2bcbddf8 100644 --- a/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/GoogleLabels.scala +++ b/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/GoogleLabels.scala @@ -14,8 +14,8 @@ object GoogleLabels { Label.validateLabelRegex(mainText, GoogleLabelsRegexPattern.r) match { case Valid(labelText) => labelText - case invalid if mainText.equals("") && emptyAllowed => mainText - case invalid => + case invalid @ _ if mainText.equals("") && emptyAllowed => mainText + case invalid @ _ => def appendSafe(current: String, nextChar: Char): String = { nextChar match { case c if c.isLetterOrDigit || c == '-' => current + c.toLower diff --git a/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/JesAsyncBackendJobExecutionActor.scala b/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/JesAsyncBackendJobExecutionActor.scala index 5e4869854..16a1224f1 100644 --- a/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/JesAsyncBackendJobExecutionActor.scala +++ b/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/JesAsyncBackendJobExecutionActor.scala @@ -105,7 +105,7 @@ class JesAsyncBackendJobExecutionActor(override val standardParams: StandardAsyn override lazy val dockerImageUsed: Option[String] = Option(jobDockerImage) override val preemptible: Boolean = previousRetryReasons match { - case Valid(PreviousRetryReasons(p, ur)) => p < maxPreemption + case Valid(PreviousRetryReasons(p, _)) => p < maxPreemption case _ => false } @@ -459,7 +459,7 @@ class JesAsyncBackendJobExecutionActor(override val standardParams: StandardAsyn FailedRetryableExecutionHandle(StandardException(errorCode, msg, jobTag), jobReturnCode) } } - case Invalid(e) => + case Invalid(_) => Future.successful(FailedNonRetryableExecutionHandle(StandardException(errorCode, errorMessage, jobTag), jobReturnCode)) } } diff --git a/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/PreviousRetryReasons.scala b/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/PreviousRetryReasons.scala index b920e3c1b..1d3eba07e 100644 --- a/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/PreviousRetryReasons.scala +++ b/supportedBackends/jes/src/main/scala/cromwell/backend/impl/jes/PreviousRetryReasons.scala @@ -28,7 +28,7 @@ object PreviousRetryReasons { } private def validatedKvResponse(r: Option[KvResponse], fromKey: String): ErrorOr[Int] = r match { - case Some(KvPair(scopedKey, v)) => validatedIntOption(v, fromKey) + case Some(KvPair(_, v)) => validatedIntOption(v, fromKey) case Some(_: KvKeyLookupFailed) => 0.validNel case Some(KvFailure(_, failure)) => s"Failed to get key $fromKey: ${failure.getMessage}".invalidNel case Some(_: KvPutSuccess) => s"Programmer Error: Got a KvPutSuccess from a Get request...".invalidNel diff --git a/supportedBackends/spark/src/main/scala/cromwell/backend/impl/spark/SparkProcess.scala b/supportedBackends/spark/src/main/scala/cromwell/backend/impl/spark/SparkProcess.scala index 74ac26560..a3576ea83 100644 --- a/supportedBackends/spark/src/main/scala/cromwell/backend/impl/spark/SparkProcess.scala +++ b/supportedBackends/spark/src/main/scala/cromwell/backend/impl/spark/SparkProcess.scala @@ -42,7 +42,7 @@ echo $$? > rc def sparkSubmitCommand(attributes: Map[String, Any]): String = { val sparkHome = Try(sys.env("SPARK_HOME")) match { case Success(s) => Option(s) - case Failure(ex) => + case Failure(_) => logger.warn(s"Spark home does not exist picking up default command") None }