Port //ledger/ledger-api-client/... to Scala 2.13 (#8478)

* Port //ledger/ledger-api-client/... to Scala 2.13

This pulls in Sandbox next and kvutils as a dependency so those now
build on 2.13 as well.

changelog_begin
changelog_end

* Upgrade scala-colllection-compat

changelog_begin
changelog_end

* Use toVector.sortBy instead of to(LazyList).sortBy

changelog_begin
changelog_end

* Use a view for passing things to varargs

changelog_begin
changelog_end

* avoid symbol literal in CommandClientIT

changelog_begin
changelog_end
This commit is contained in:
Moritz Kiefer 2021-01-13 11:35:46 +01:00 committed by GitHub
parent 51c014b367
commit 290584a378
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
42 changed files with 291 additions and 202 deletions

View File

@ -138,7 +138,7 @@ def install_java_deps():
"org.sangria-graphql:sangria_{}:2.0.1".format(scala_major_version),
"org.sangria-graphql:sangria-spray-json_{}:1.0.2".format(scala_major_version),
"org.scalacheck:scalacheck_{}:1.14.0".format(scala_major_version),
"org.scala-lang.modules:scala-collection-compat_{}:2.1.6".format(scala_major_version),
"org.scala-lang.modules:scala-collection-compat_{}:2.3.2".format(scala_major_version),
"org.scala-lang.modules:scala-java8-compat_{}:0.9.0".format(scala_major_version),
"org.scala-sbt:sbt:1.1.4",
"org.scalactic:scalactic_{}:3.1.2".format(scala_major_version),

View File

@ -179,6 +179,7 @@ jobs:
//ledger/ledger-api-akka/... \
//ledger/ledger-api-auth/... \
//ledger/ledger-api-auth-client/... \
//ledger/ledger-api-client/... \
//ledger/ledger-api-common/... \
-//language-support/scala/examples/... \
-//language-support/scala/codegen-sample-app/...
@ -194,6 +195,7 @@ jobs:
//ledger/ledger-api-akka/... \
//ledger/ledger-api-auth/... \
//ledger/ledger-api-auth-client/... \
//ledger/ledger-api-client/... \
//ledger/ledger-api-common/... \
-//libs-scala/gatling-utils/... \
-//language-support/scala/examples/... \

View File

@ -7,6 +7,7 @@ load(
"da_scala_test_suite",
"silencer_plugin",
)
load("@scala_version//:index.bzl", "scala_major_version")
da_scala_library(
name = "ledger-api-client",
@ -46,23 +47,42 @@ da_scala_library(
],
)
da_scala_library(
name = "ledger-api-client-tests-lib",
srcs = glob(["src/test/{}/**/*.scala".format(scala_major_version)]),
versioned_scala_deps = {
"2.12": [
"@maven//:org_scalatest_scalatest",
"@maven//:org_scalactic_scalactic",
],
},
deps = [
],
)
da_scala_test_suite(
name = "ledger-api-client-tests",
srcs = glob(["src/test/suite/**/*.scala"]),
scala_deps = [
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
"@maven//:com_typesafe_akka_akka_stream_testkit",
"@maven//:org_scalatest_scalatest",
],
scalacopts = [
"-P:silencer:lineContentFilters=import Compat._",
],
silent_annotations = True,
deps = [
":ledger-api-client",
":ledger-api-client-tests-lib",
"//language-support/scala/bindings",
"//ledger-api/rs-grpc-bridge",
"//ledger-api/testing-utils",
"//ledger/caching",
"//libs-scala/concurrent",
"@maven//:com_typesafe_akka_akka_actor_2_12",
"@maven//:com_typesafe_akka_akka_stream_2_12",
"@maven//:com_typesafe_akka_akka_stream_testkit_2_12",
"@maven//:io_dropwizard_metrics_metrics_core",
"@maven//:org_reactivestreams_reactive_streams",
"@maven//:org_scalatest_scalatest_2_12",
],
)
@ -75,6 +95,10 @@ da_scala_test_suite(
resources = [
"src/it/resources/logback-test.xml",
],
scala_deps = [
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
],
deps = [
":ledger-api-client",
"//language-support/scala/bindings",
@ -99,8 +123,6 @@ da_scala_test_suite(
"//libs-scala/ports",
"//libs-scala/resources",
"@maven//:ch_qos_logback_logback_classic",
"@maven//:com_typesafe_akka_akka_actor_2_12",
"@maven//:com_typesafe_akka_akka_stream_2_12",
"@maven//:io_netty_netty_handler",
],
)

View File

@ -153,7 +153,7 @@ final class CommandClientIT
expectedMessageSubString: String,
): Future[Assertion] =
submitCommand(submitRequest).map { completion =>
completion.getStatus should have('code (expectedErrorCode.value))
completion.getStatus.code should be(expectedErrorCode.value)
completion.getStatus.message should include(expectedMessageSubString)
}(DirectExecutionContext)

View File

@ -0,0 +1,14 @@
// Copyright (c) 2021 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
// SPDX-License-Identifier: Apache-2.0
package com.daml.ledger.client.services.commands
object Compat {
// XXX SC remove in Scala 2.13; see notes in ConfSpec
import scala.collection.GenTraversable, org.scalatest.enablers.Containing
private[commands] implicit def `fixed sig containingNatureOfGenTraversable`[
E: org.scalactic.Equality,
TRAV,
]: Containing[TRAV with GenTraversable[E]] =
Containing.containingNatureOfGenTraversable[E, GenTraversable]
}

View File

@ -0,0 +1,6 @@
// Copyright (c) 2021 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
// SPDX-License-Identifier: Apache-2.0
package com.daml.ledger.client.services.commands
object Compat {}

View File

@ -109,13 +109,7 @@ class CommandTrackerFlowTest
}
// XXX SC remove in Scala 2.13; see notes in ConfSpec
import scala.collection.GenTraversable, org.scalatest.enablers.Containing
private[this] implicit def `fixed sig containingNatureOfGenTraversable`[
E: org.scalactic.Equality,
TRAV,
]: Containing[TRAV with GenTraversable[E]] =
Containing.containingNatureOfGenTraversable[E, GenTraversable]
import Compat._
"Command tracking flow" when {

View File

@ -6,6 +6,7 @@ load(
"da_scala_binary",
"da_scala_library",
"da_scala_test_suite",
"silencer_plugin",
)
load("//ledger/ledger-api-test-tool:conformance.bzl", "conformance_test")
@ -76,7 +77,18 @@ all_database_runtime_deps = {dep: None for db in supported_databases for dep in
da_scala_library(
name = "ledger-on-sql",
srcs = glob(["src/main/scala/**/*.scala"]),
plugins = [silencer_plugin],
resources = glob(["src/main/resources/**/*"]),
scala_deps = [
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
"@maven//:org_playframework_anorm_anorm",
"@maven//:org_playframework_anorm_anorm_tokenizer",
"@maven//:org_scalaz_scalaz_core",
],
scalacopts = [
"-P:silencer:lineContentFilters=import scala.collection.compat",
],
tags = ["maven_coordinates=com.daml:ledger-on-sql:__VERSION__"],
visibility = [
"//visibility:public",
@ -99,14 +111,9 @@ da_scala_library(
"//libs-scala/resources",
"//libs-scala/resources-akka",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_typesafe_akka_akka_actor_2_12",
"@maven//:com_typesafe_akka_akka_stream_2_12",
"@maven//:com_zaxxer_HikariCP",
"@maven//:io_dropwizard_metrics_metrics_core",
"@maven//:org_flywaydb_flyway_core",
"@maven//:org_playframework_anorm_anorm_2_12",
"@maven//:org_playframework_anorm_anorm_tokenizer_2_12",
"@maven//:org_scalaz_scalaz_core_2_12",
],
)

View File

@ -19,7 +19,7 @@ import javax.sql.DataSource
import org.flywaydb.core.Flyway
import scalaz.syntax.bind._
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
import scala.util.{Failure, Success}
final class Database(

View File

@ -12,7 +12,8 @@ import com.daml.ledger.on.sql.queries.Queries._
import com.daml.ledger.participant.state.kvutils.api.LedgerRecord
import com.daml.ledger.participant.state.kvutils.{OffsetBuilder, Raw}
import scala.collection.{breakOut, immutable}
import scala.collection.compat._
import scala.collection.immutable
import scala.util.Try
trait CommonQueries extends Queries {
@ -45,7 +46,7 @@ trait CommonQueries extends Queries {
builder += row("key")(columnToRawKey) -> row("value")(columnToRawValue)
}
.fold(exceptions => throw exceptions.head, _.result())
keys.map(results.get)(breakOut)
keys.view.map(results.get).to(immutable.Seq)
}
override final def updateState(stateUpdates: Iterable[Raw.KeyValuePair]): Try[Unit] = Try {

View File

@ -37,7 +37,7 @@ object Queries {
params: Iterable[Seq[NamedParameter]],
)(implicit connection: Connection): Unit = {
if (params.nonEmpty)
BatchSql(query, params.head, params.drop(1).toArray: _*).execute()
BatchSql(query, params.head, params.view.drop(1).toSeq: _*).execute()
()
}

View File

@ -126,6 +126,7 @@ da_scala_library(
da_scala_library(
name = "participant-integration-api-tests-lib",
srcs = glob(["src/test/lib/**/*.scala"]),
plugins = [silencer_plugin],
scala_deps = [
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
@ -136,6 +137,9 @@ da_scala_library(
scala_runtime_deps = [
"@maven//:com_typesafe_akka_akka_slf4j",
],
scalacopts = [
"-P:silencer:lineContentFilters=import scala.collection.compat._",
],
visibility = ["//visibility:public"],
runtime_deps = [
"@maven//:com_h2database_h2",

View File

@ -149,7 +149,7 @@ private[dao] trait JdbcLedgerDaoPartiesSpec {
_ = response should be(PersistenceResponse.Ok)
parties <- ledgerDao.listKnownParties()
} yield {
parties should contain allOf (aliceDetails, bobDetails)
parties should contain.allOf(aliceDetails, bobDetails)
}
}

View File

@ -45,10 +45,13 @@ da_scala_test_suite(
size = "small",
srcs = glob(["src/test/suite/scala/**/*.scala"]),
resources = glob(["src/test/resources/*"]),
scala_deps = [
"@maven//:org_scalatest_scalatest",
"@maven//:org_scalaz_scalaz_core",
"@maven//:org_scala_lang_modules_scala_collection_compat",
],
deps = [
":participant-state",
"//daml-lf/transaction",
"@maven//:org_scalatest_scalatest_2_12",
"@maven//:org_scalaz_scalaz_core_2_12",
],
)

View File

@ -6,6 +6,7 @@ load(
"//bazel_tools:scala.bzl",
"da_scala_library",
"da_scala_test_suite",
"silencer_plugin",
)
load(
"//bazel_tools/client_server:client_server_build.bzl",
@ -21,6 +22,16 @@ load("@os_info//:os_info.bzl", "is_windows")
da_scala_library(
name = "kvutils",
srcs = glob(["src/main/scala/**/*.scala"]),
scala_deps = [
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
"@maven//:org_scala_lang_modules_scala_java8_compat",
"@maven//:org_scalaz_scalaz_core",
"@maven//:org_scala_lang_modules_scala_collection_compat",
],
scalacopts = [
"-P:silencer:lineContentFilters=import scala.collection.compat",
],
silent_annotations = True,
tags = ["maven_coordinates=com.daml:participant-state-kvutils:__VERSION__"],
visibility = [
@ -52,11 +63,7 @@ da_scala_library(
"//libs-scala/timer-utils",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_typesafe_akka_akka_actor_2_12",
"@maven//:com_typesafe_akka_akka_stream_2_12",
"@maven//:io_dropwizard_metrics_metrics_core",
"@maven//:org_scala_lang_modules_scala_java8_compat_2_12",
"@maven//:org_scalaz_scalaz_core_2_12",
"@maven//:org_slf4j_slf4j_api",
],
)
@ -64,6 +71,16 @@ da_scala_library(
da_scala_library(
name = "kvutils-tests-lib",
srcs = glob(["src/test/lib/scala/**/*.scala"]),
scala_deps = [
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
"@maven//:org_mockito_mockito_scala",
"@maven//:org_scala_lang_modules_scala_java8_compat",
"@maven//:org_scalactic_scalactic",
"@maven//:org_scalatest_scalatest",
"@maven//:org_scalaz_scalaz_core",
"@maven//:org_scala_lang_modules_scala_collection_compat",
],
visibility = [
"//visibility:public",
],
@ -94,15 +111,8 @@ da_scala_library(
"//libs-scala/contextualized-logging",
"//libs-scala/resources",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_typesafe_akka_akka_actor_2_12",
"@maven//:com_typesafe_akka_akka_stream_2_12",
"@maven//:io_dropwizard_metrics_metrics_core",
"@maven//:org_mockito_mockito_core",
"@maven//:org_mockito_mockito_scala_2_12",
"@maven//:org_scala_lang_modules_scala_java8_compat_2_12",
"@maven//:org_scalactic_scalactic_2_12",
"@maven//:org_scalatest_scalatest_2_12",
"@maven//:org_scalaz_scalaz_core_2_12",
"@maven//:org_slf4j_slf4j_api",
],
)
@ -116,6 +126,15 @@ da_scala_test_suite(
"//ledger/test-common:model-tests.dar",
],
resources = glob(["src/test/resources/*"]),
scala_deps = [
"@maven//:org_scala_lang_modules_scala_collection_compat",
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
"@maven//:org_mockito_mockito_scala",
"@maven//:org_scalactic_scalactic",
"@maven//:org_scalatest_scalatest",
"@maven//:org_scalaz_scalaz_core",
],
silent_annotations = True,
deps = [
":daml_kvutils_proto_java",
@ -145,14 +164,8 @@ da_scala_test_suite(
"//libs-scala/contextualized-logging",
"@maven//:com_google_guava_guava",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_typesafe_akka_akka_actor_2_12",
"@maven//:com_typesafe_akka_akka_stream_2_12",
"@maven//:io_dropwizard_metrics_metrics_core",
"@maven//:org_mockito_mockito_core",
"@maven//:org_mockito_mockito_scala_2_12",
"@maven//:org_scalactic_scalactic_2_12",
"@maven//:org_scalatest_scalatest_2_12",
"@maven//:org_scalaz_scalaz_core_2_12",
"@maven//:org_slf4j_slf4j_api",
],
)

View File

@ -20,7 +20,7 @@ import com.daml.lf.value.{Value, ValueCoder, ValueOuterClass}
import com.daml.lf.{crypto, data}
import com.google.protobuf.Empty
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
/** Utilities for converting between protobuf messages and our scala
* data structures.

View File

@ -6,10 +6,10 @@ package com.daml.ledger.participant.state.kvutils
import java.io.DataOutputStream
import java.nio.file.{Files, Paths}
import com.daml.ledger.participant.state.kvutils.DamlKvutils._
import com.daml.ledger.participant.state.kvutils.DamlKvutils.{Envelope => _, _}
import org.slf4j.LoggerFactory
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
/** Utilities for debugging kvutils. */
object Debug {

View File

@ -93,16 +93,16 @@ object Envelope {
}
message <- envelope.getKind match {
case Proto.Envelope.MessageKind.LOG_ENTRY =>
parseMessageSafe(() => Proto.DamlLogEntry.parseFrom(uncompressedMessage)).right
parseMessageSafe(() => Proto.DamlLogEntry.parseFrom(uncompressedMessage))
.map(LogEntryMessage)
case Proto.Envelope.MessageKind.SUBMISSION =>
parseMessageSafe(() => Proto.DamlSubmission.parseFrom(uncompressedMessage)).right
parseMessageSafe(() => Proto.DamlSubmission.parseFrom(uncompressedMessage))
.map(SubmissionMessage)
case Proto.Envelope.MessageKind.STATE_VALUE =>
parseMessageSafe(() => Proto.DamlStateValue.parseFrom(uncompressedMessage)).right
parseMessageSafe(() => Proto.DamlStateValue.parseFrom(uncompressedMessage))
.map(StateValueMessage)
case Proto.Envelope.MessageKind.SUBMISSION_BATCH =>
parseMessageSafe(() => Proto.DamlSubmissionBatch.parseFrom(uncompressedMessage)).right
parseMessageSafe(() => Proto.DamlSubmissionBatch.parseFrom(uncompressedMessage))
.map(SubmissionBatchMessage)
case Proto.Envelope.MessageKind.UNRECOGNIZED =>
Left(s"Unrecognized message kind: ${envelope.getKind}")

View File

@ -23,7 +23,7 @@ import com.daml.lf.value.ValueOuterClass
import com.daml.metrics.Metrics
import org.slf4j.LoggerFactory
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
// Added inStaticTimeMode to indicate whether the ledger uses static time mode or not.
// This has an impact on command deduplication and needs to be threaded through ProcessTransactionSubmission.

View File

@ -13,7 +13,7 @@ import com.google.common.io.BaseEncoding
import com.google.protobuf.ByteString
import org.slf4j.LoggerFactory
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
/** Utilities for producing [[Update]] events from [[DamlLogEntry]]'s committed to a
* key-value based ledger.
@ -341,7 +341,7 @@ object KeyValueConsumption {
recordTime,
SubmissionId.assertFromString(configurationRejectionEntry.getSubmissionId),
ParticipantId.assertFromString(configurationRejectionEntry.getParticipantId),
Configuration.decode(configurationRejectionEntry.getConfiguration).right.get,
Configuration.decode(configurationRejectionEntry.getConfiguration).toOption.get,
reason,
)
)

View File

@ -11,7 +11,7 @@ import com.daml.lf.data.Time.Timestamp
import com.daml.metrics.Metrics
import com.google.protobuf.ByteString
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
/** Methods to produce the [[DamlSubmission]] message.
*

View File

@ -14,9 +14,9 @@ import com.daml.ledger.participant.state.v1.{ParticipantId, SubmissionResult}
import com.daml.logging.LoggingContext.newLoggingContext
import com.daml.logging.{ContextualizedLogger, LoggingContext}
import scala.collection.JavaConverters._
import scala.concurrent.duration.{Duration, MILLISECONDS}
import scala.concurrent.{ExecutionContext, Future}
import scala.jdk.CollectionConverters._
/** A batching ledger writer that collects submissions into a batch and commits
* the batch once a set time or byte limit has been reached.

View File

@ -7,7 +7,7 @@ import com.daml.ledger.participant.state.kvutils.DamlKvutils.DamlSubmission
import com.daml.ledger.participant.state.kvutils.{KeyValueCommitting, Raw}
import com.daml.ledger.validator.StateKeySerializationStrategy
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
/** Exposes metadata about the commit.
* The methods may lazily evaluate.

View File

@ -15,7 +15,7 @@ import com.daml.ledger.participant.state.v1.ParticipantId
import com.daml.lf.data.Time.Timestamp
import org.slf4j.LoggerFactory
import scala.collection.generic.CanBuildFrom
import scala.collection.compat._
import scala.collection.mutable
/** Commit context provides access to state inputs, commit parameters (e.g. record time) and
@ -70,10 +70,11 @@ private[kvutils] case class CommitContext(
*/
def collectInputs[B, That](
partialFunction: PartialFunction[(DamlStateKey, Option[DamlStateValue]), B]
)(implicit bf: CanBuildFrom[Map[DamlStateKey, Option[DamlStateValue]], B, That]): That = {
val result = inputs.collect(partialFunction)
)(implicit bf: BuildFrom[Map[DamlStateKey, Option[DamlStateValue]], B, That]): That = {
val builder = bf.newBuilder(inputs)
builder ++= inputs.view.collect(partialFunction)
inputs.keys.foreach(accessedInputKeys.add)
result
builder.result()
}
/** Set a value in the output state. */

View File

@ -22,7 +22,7 @@ import com.daml.lf.language.Ast
import com.daml.metrics.Metrics
import com.google.protobuf.ByteString
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
import scala.util.control.NonFatal
object PackageCommitter {}
@ -157,7 +157,7 @@ final private[kvutils] class PackageCommitter(
}
private[this] def decodePackages(
archives: Traversable[DamlLf.Archive]
archives: Iterable[DamlLf.Archive]
): Either[String, Map[Ref.PackageId, Ast.Package]] =
metrics.daml.kvutils.committer.packageUpload.decodeTimer.time { () =>
type Result = Either[List[String], Map[Ref.PackageId, Ast.Package]]
@ -187,7 +187,7 @@ final private[kvutils] class PackageCommitter(
private[this] def decodePackagesIfNeeded(
pkgsCache: Map[Ref.PackageId, Ast.Package],
archives: Traversable[DamlLf.Archive],
archives: Iterable[DamlLf.Archive],
): Either[String, Map[PackageId, Ast.Package]] =
if (pkgsCache.isEmpty)
decodePackages(archives)

View File

@ -36,7 +36,7 @@ import com.daml.lf.value.Value.ContractId
import com.daml.metrics.Metrics
import com.google.protobuf.{Timestamp => ProtoTimestamp}
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
// The parameter inStaticTimeMode indicates that the ledger is running in static time mode.
//

View File

@ -3,6 +3,8 @@
package com.daml.ledger.participant.state.kvutils.export
import scala.collection.compat.immutable.LazyList
trait LedgerDataImporter {
def read(): Stream[(SubmissionInfo, WriteSet)]
def read(): LazyList[(SubmissionInfo, WriteSet)]
}

View File

@ -9,7 +9,7 @@ import java.nio.file.{Files, Path}
import com.daml.ledger.participant.state.kvutils.Conversions
import com.daml.ledger.participant.state.kvutils.DamlKvutils.LedgerExportEntry
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
final class ProtobufBasedLedgerDataExporter private (output: OutputStream)
extends LedgerDataExporter

View File

@ -10,20 +10,21 @@ import com.daml.ledger.participant.state.kvutils.DamlKvutils.LedgerExportEntry
import com.daml.ledger.participant.state.kvutils.{Conversions, Raw}
import com.daml.ledger.participant.state.v1.ParticipantId
import scala.collection.JavaConverters._
import scala.collection.compat.immutable.LazyList
import scala.jdk.CollectionConverters._
final class ProtobufBasedLedgerDataImporter(input: InputStream)
extends LedgerDataImporter
with Closeable {
override def read(): Stream[(SubmissionInfo, WriteSet)] = {
override def read(): LazyList[(SubmissionInfo, WriteSet)] = {
header.consumeAndVerify(input)
readEntries()
}
override def close(): Unit = input.close()
private def readEntries(): Stream[(SubmissionInfo, WriteSet)] = {
private def readEntries(): LazyList[(SubmissionInfo, WriteSet)] = {
val builder = LedgerExportEntry.newBuilder
if (input.synchronized(builder.mergeDelimitedFrom(input))) {
val entry = builder.build()
@ -32,7 +33,7 @@ final class ProtobufBasedLedgerDataImporter(input: InputStream)
(submissionInfo -> writeSet) #:: readEntries()
} else {
close()
Stream.empty
LazyList.empty
}
}

View File

@ -9,6 +9,6 @@ package object export {
type WriteItem = Raw.KeyValuePair
type WriteSet = Seq[WriteItem]
type WriteSet = collection.Seq[WriteItem]
}

View File

@ -6,7 +6,8 @@ package com.daml.ledger.validator
import com.daml.ledger.participant.state.kvutils.DamlKvutils.{DamlStateKey, DamlStateValue}
import com.daml.ledger.participant.state.kvutils.{Envelope, Raw}
import scala.collection.{SortedMap, breakOut}
import scala.collection.compat._
import scala.collection.SortedMap
final class StateSerializationStrategy(keyStrategy: StateKeySerializationStrategy) {
def serializeState(key: DamlStateKey, value: DamlStateValue): Raw.KeyValuePair =
@ -15,7 +16,8 @@ final class StateSerializationStrategy(keyStrategy: StateKeySerializationStrateg
def serializeStateUpdates(
state: Map[DamlStateKey, DamlStateValue]
): SortedMap[Raw.Key, Raw.Value] =
state.map { case (key, value) =>
serializeState(key, value)
}(breakOut)
implicitly[Factory[Raw.KeyValuePair, SortedMap[Raw.Key, Raw.Value]]]
.fromSpecific(state.view.map { case (key, value) =>
serializeState(key, value)
})
}

View File

@ -23,8 +23,8 @@ import com.github.ghik.silencer.silent
import com.google.protobuf.ByteString
import scala.annotation.tailrec
import scala.collection.JavaConverters._
import scala.concurrent.{ExecutionContext, Future}
import scala.jdk.CollectionConverters._
import scala.util.{Failure, Success, Try}
/** Orchestrates validating, transforming or committing submissions for key-value ledgers.
@ -244,7 +244,7 @@ class SubmissionValidator[LogResult] private[validator] (
}
private def verifyAllInputsArePresent[T](
declaredInputs: Seq[DamlStateKey],
declaredInputs: collection.Seq[DamlStateKey],
readInputs: DamlStateMap,
): Future[Unit] = {
if (checkForMissingInputs) {

View File

@ -11,7 +11,7 @@ import com.daml.ledger.validator.ValidationFailed.{MissingInputState, Validation
import com.daml.lf.data.Time.Timestamp
import com.daml.logging.LoggingContext.newLoggingContext
import scala.collection.JavaConverters._
import scala.jdk.CollectionConverters._
import scala.concurrent.{ExecutionContext, Future}
/** Orchestrates committing to a ledger after validating the submission.

View File

@ -29,9 +29,9 @@ import com.daml.logging.{ContextualizedLogger, LoggingContext}
import com.daml.metrics.{Metrics, Timed}
import com.google.protobuf.ByteString
import scala.collection.JavaConverters._
import scala.collection.mutable
import scala.concurrent.{ExecutionContext, Future}
import scala.jdk.CollectionConverters._
import scala.util.{Failure, Success}
object BatchedSubmissionValidator {
@ -193,7 +193,6 @@ class BatchedSubmissionValidator[CommitResult] private[validator] (
batch.getSubmissionsList.asScala
.map(cs => cs.getCorrelationId -> cs.getSubmission)
)
.to
)
.mapAsyncUnordered(params.cpuParallelism) {
_.mapFuture { case (correlationId, submissionEnvelope) =>

View File

@ -99,7 +99,7 @@ class ConflictDetection(val damlMetrics: Metrics) {
// Attempt to produce a useful message by collecting the first conflicting
// contract id or contract key.
private def explainConflict(conflictingKeys: Iterable[DamlStateKey]): String =
conflictingKeys.toStream
conflictingKeys.toVector
.sortBy(_.toByteString.asReadOnlyByteBuffer())
.collectFirst {
case key if key.hasContractKey =>

View File

@ -21,6 +21,6 @@ private[batch] case class Indexed[T](value: T, index: Long) {
}
private[batch] object Indexed {
def fromSeq[T](seq: Seq[T]): Seq[Indexed[T]] =
seq.zipWithIndex.map { case (value, index) => Indexed(value, index.toLong) }
def fromSeq[T](seq: collection.Seq[T]): collection.immutable.Seq[Indexed[T]] =
seq.view.zipWithIndex.map { case (value, index) => Indexed(value, index.toLong) }.toIndexedSeq
}

View File

@ -13,8 +13,9 @@ import com.daml.ledger.validator.{HasDamlStateValue, ValidationFailed}
import com.daml.logging.{ContextualizedLogger, LoggingContext}
import com.daml.metrics.{Metrics, Timed}
import scala.collection.JavaConverters._
import scala.collection.compat._
import scala.concurrent.{ExecutionContext, Future}
import scala.jdk.CollectionConverters._
/** Validator for pre-executing submissions.
*
@ -52,7 +53,7 @@ class PreExecutingSubmissionValidator[StateValue, ReadSet, WriteSet](
for {
decodedSubmission <- decodeSubmission(submissionEnvelope)
fetchedInputs <- fetchSubmissionInputs(decodedSubmission, ledgerStateReader)
inputState = fetchedInputs.mapValues(hasDamlStateValue.damlStateValue)
inputState = fetchedInputs.view.mapValues(hasDamlStateValue.damlStateValue).toMap
preExecutionResult = committer.preExecuteSubmission(
LedgerReader.DefaultConfiguration,
decodedSubmission,
@ -124,7 +125,7 @@ class PreExecutingSubmissionValidator[StateValue, ReadSet, WriteSet](
inputValues <- ledgerStateReader.read(inputKeys)
} yield {
assert(inputKeys.size == inputValues.size)
val inputPairs = inputKeys.toIterator zip inputValues.toIterator
val inputPairs = inputKeys.iterator zip inputValues.iterator
inputPairs.toMap
},
)

View File

@ -15,6 +15,12 @@ da_scala_library(
name = "tools",
srcs = glob(["src/main/scala/**/*.scala"]),
resources = glob(["src/main/resources/**/*"]),
scala_deps = [
"@maven//:com_github_scopt_scopt",
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
"@maven//:org_scala_lang_modules_scala_collection_compat",
],
tags = ["maven_coordinates=com.daml:participant-state-kvutils-tools:__VERSION__"],
visibility = [
"//visibility:public",
@ -33,10 +39,7 @@ da_scala_library(
"//libs-scala/contextualized-logging",
"//libs-scala/resources",
"//libs-scala/resources-akka",
"@maven//:com_github_scopt_scopt_2_12",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:com_typesafe_akka_akka_actor_2_12",
"@maven//:com_typesafe_akka_akka_stream_2_12",
"@maven//:io_dropwizard_metrics_metrics_core",
],
)
@ -108,6 +111,10 @@ da_scala_benchmark_jmh(
name = "benchmark-replay",
srcs = glob(["engine-benchmark/src/benchmark/scala/**/*"]),
max_heap_size = "4g",
scala_deps = [
"@maven//:org_scala_lang_modules_scala_collection_compat",
"@maven//:org_scalaz_scalaz_core",
],
scalacopts = lf_scalacopts,
deps = [
"//daml-lf/archive:daml_lf_archive_reader",
@ -123,7 +130,6 @@ da_scala_benchmark_jmh(
"//ledger/participant-state/kvutils",
"//ledger/participant-state/kvutils:daml_kvutils_proto_java",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:org_scalaz_scalaz_core_2_12",
],
)
@ -134,6 +140,10 @@ da_scala_benchmark_jmh(
"//ledger/participant-state/kvutils:reference-ledger-export.out",
] if not is_windows else [],
max_heap_size = "4g",
scala_deps = [
"@maven//:org_scalaz_scalaz_core",
"@maven//:org_scala_lang_modules_scala_collection_compat",
],
scalacopts = lf_scalacopts,
tags = [
"manual",
@ -151,6 +161,5 @@ da_scala_benchmark_jmh(
"//daml-lf/transaction:value_proto_java",
"//ledger/participant-state/kvutils",
"@maven//:com_google_protobuf_protobuf_java",
"@maven//:org_scalaz_scalaz_core_2_12",
],
)

View File

@ -12,6 +12,13 @@ da_scala_library(
# Do not include logback.xml into the library: let the user
# of the sandbox-as-a-library decide how to log.
resources = ["//ledger/sandbox-common:src/main/resources/banner.txt"],
scala_deps = [
"@maven//:com_github_scopt_scopt",
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
"@maven//:org_scala_lang_modules_scala_java8_compat",
"@maven//:org_scalaz_scalaz_core",
],
tags = ["maven_coordinates=com.daml:sandbox:__VERSION__"],
visibility = [
"//visibility:public",
@ -49,12 +56,7 @@ da_scala_library(
"//libs-scala/resources",
"//libs-scala/resources-akka",
"@maven//:ch_qos_logback_logback_classic",
"@maven//:com_github_scopt_scopt_2_12",
"@maven//:com_typesafe_akka_akka_actor_2_12",
"@maven//:com_typesafe_akka_akka_stream_2_12",
"@maven//:com_typesafe_config",
"@maven//:org_scala_lang_modules_scala_java8_compat_2_12",
"@maven//:org_scalaz_scalaz_core_2_12",
"@maven//:org_slf4j_slf4j_api",
],
)
@ -98,10 +100,19 @@ genrule(
da_scala_library(
name = "sandbox-scala-tests-lib",
srcs = glob(["src/test/lib/**/*.scala"]),
scala_deps = [
"@maven//:com_typesafe_akka_akka_actor",
"@maven//:com_typesafe_akka_akka_stream",
"@maven//:org_scalactic_scalactic",
"@maven//:org_scalatest_scalatest",
"@maven//:org_scalaz_scalaz_core",
],
scala_runtime_deps = [
"@maven//:com_typesafe_akka_akka_slf4j",
],
visibility = ["//visibility:public"],
runtime_deps = [
"@maven//:com_h2database_h2",
"@maven//:com_typesafe_akka_akka_slf4j_2_12",
"@maven//:org_postgresql_postgresql",
],
deps = [
@ -124,12 +135,7 @@ da_scala_library(
"//libs-scala/postgresql-testing",
"//libs-scala/resources",
"@maven//:ch_qos_logback_logback_classic",
"@maven//:com_typesafe_akka_akka_actor_2_12",
"@maven//:com_typesafe_akka_akka_stream_2_12",
"@maven//:io_netty_netty_handler",
"@maven//:org_scalactic_scalactic_2_12",
"@maven//:org_scalatest_scalatest_2_12",
"@maven//:org_scalaz_scalaz_core_2_12",
"@maven//:org_slf4j_slf4j_api",
],
)

View File

@ -195,7 +195,7 @@ class Runner(config: SandboxConfig) extends ResourceOwner[Port] {
lfValueTranslationCache = lfValueTranslationCache,
)
authService = config.authService.getOrElse(AuthServiceWildcard)
promise = Promise[Unit]
promise = Promise[Unit]()
resetService = {
val clock = Clock.systemUTC()
val authorizer =
@ -283,7 +283,9 @@ class Runner(config: SandboxConfig) extends ResourceOwner[Port] {
val submissionId = v1.SubmissionId.assertFromString(UUID.randomUUID().toString)
for {
dar <- Future(
DarReader { case (_, x) => Try(Archive.parseFrom(x)) }.readArchiveFromFile(from).get
DarReader[Archive] { case (_, x) => Try(Archive.parseFrom(x)) }
.readArchiveFromFile(from)
.get
)
_ <- to.uploadPackages(submissionId, dar.all, None).toScala
} yield ()

View File

@ -1,6 +1,6 @@
{
"dependency_tree": {
"__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": -373387421,
"__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": 55926359,
"conflict_resolution": {},
"dependencies": [
{
@ -1717,10 +1717,10 @@
"com.github.scopt:scopt_2.12:4.0.0",
"com.lihaoyi:os-lib_2.12:0.7.1",
"com.lihaoyi:scalatags_2.12:0.9.1",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"org.tukaani:xz:1.8",
"com.lihaoyi:geny_2.12:0.6.2",
"com.lihaoyi:upickle-core_2.12:1.2.0",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"org.scala-lang:scala-library:2.12.12",
"com.lihaoyi:fansi_2.12:0.2.9",
"com.lihaoyi:pprint_2.12:0.6.0"
@ -1731,8 +1731,8 @@
"com.github.scopt:scopt_2.12:4.0.0",
"com.lihaoyi:os-lib_2.12:0.7.1",
"com.lihaoyi:scalatags_2.12:0.9.1",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"org.tukaani:xz:1.8",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"com.lihaoyi:pprint_2.12:0.6.0"
],
"file": "v1/https/repo1.maven.org/maven2/com/lihaoyi/sjsonnet_2.12/0.3.0/sjsonnet_2.12-0.3.0.jar",
@ -1750,24 +1750,24 @@
"com.lihaoyi:upickle-core_2.12:jar:sources:1.2.0",
"com.github.scopt:scopt_2.12:jar:sources:4.0.0",
"com.lihaoyi:ujson_2.12:jar:sources:1.2.0",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"com.lihaoyi:sourcecode_2.12:jar:sources:0.2.1",
"com.lihaoyi:pprint_2.12:jar:sources:0.6.0",
"com.lihaoyi:geny_2.12:jar:sources:0.6.2",
"org.scala-lang:scala-library:jar:sources:2.12.12",
"com.lihaoyi:fastparse_2.12:jar:sources:2.3.0",
"com.lihaoyi:scalatags_2.12:jar:sources:0.9.1",
"com.lihaoyi:fansi_2.12:jar:sources:0.2.9"
"com.lihaoyi:fansi_2.12:jar:sources:0.2.9",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2"
],
"directDependencies": [
"com.lihaoyi:os-lib_2.12:jar:sources:0.7.1",
"org.tukaani:xz:jar:sources:1.8",
"com.github.scopt:scopt_2.12:jar:sources:4.0.0",
"com.lihaoyi:ujson_2.12:jar:sources:1.2.0",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"com.lihaoyi:pprint_2.12:jar:sources:0.6.0",
"com.lihaoyi:fastparse_2.12:jar:sources:2.3.0",
"com.lihaoyi:scalatags_2.12:jar:sources:0.9.1"
"com.lihaoyi:scalatags_2.12:jar:sources:0.9.1",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/com/lihaoyi/sjsonnet_2.12/0.3.0/sjsonnet_2.12-0.3.0-sources.jar",
"mirror_urls": [
@ -1801,10 +1801,10 @@
{
"coord": "com.lihaoyi:ujson_2.12:1.2.0",
"dependencies": [
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"com.lihaoyi:geny_2.12:0.6.2",
"org.scala-lang:scala-library:2.12.12",
"com.lihaoyi:upickle-core_2.12:1.2.0",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6"
"com.lihaoyi:upickle-core_2.12:1.2.0"
],
"directDependencies": [
"com.lihaoyi:upickle-core_2.12:1.2.0"
@ -1822,7 +1822,7 @@
"com.lihaoyi:geny_2.12:jar:sources:0.6.2",
"com.lihaoyi:upickle-core_2.12:jar:sources:1.2.0",
"org.scala-lang:scala-library:jar:sources:2.12.12",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6"
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2"
],
"directDependencies": [
"com.lihaoyi:upickle-core_2.12:jar:sources:1.2.0"
@ -1837,13 +1837,13 @@
{
"coord": "com.lihaoyi:upickle-core_2.12:1.2.0",
"dependencies": [
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"com.lihaoyi:geny_2.12:0.6.2",
"org.scala-lang:scala-library:2.12.12",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6"
"org.scala-lang:scala-library:2.12.12"
],
"directDependencies": [
"com.lihaoyi:geny_2.12:0.6.2",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6"
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/com/lihaoyi/upickle-core_2.12/1.2.0/upickle-core_2.12-1.2.0.jar",
"mirror_urls": [
@ -1857,11 +1857,11 @@
"dependencies": [
"com.lihaoyi:geny_2.12:jar:sources:0.6.2",
"org.scala-lang:scala-library:jar:sources:2.12.12",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6"
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2"
],
"directDependencies": [
"com.lihaoyi:geny_2.12:jar:sources:0.6.2",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6"
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/com/lihaoyi/upickle-core_2.12/1.2.0/upickle-core_2.12-1.2.0-sources.jar",
"mirror_urls": [
@ -2135,7 +2135,7 @@
"dependencies": [
"org.ow2.asm:asm:5.0.4",
"org.jline:jline:3.7.1",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"org.scala-lang.modules:scala-parser-combinators_2.12:1.1.2",
"org.scala-lang:scala-library:2.12.12",
"org.apache.commons:commons-math3:3.2",
@ -2145,7 +2145,7 @@
"directDependencies": [
"org.ow2.asm:asm:5.0.4",
"org.jline:jline:3.7.1",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"org.scala-lang.modules:scala-parser-combinators_2.12:1.1.2",
"org.scala-lang:scala-library:2.12.12",
"org.apache.commons:commons-math3:3.2",
@ -2164,21 +2164,21 @@
"dependencies": [
"org.jline:jline:jar:sources:3.7.1",
"org.apache.commons:commons-lang3:jar:sources:3.9",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"org.apache.commons:commons-math3:jar:sources:3.2",
"org.scala-lang.modules:scala-xml_2.12:jar:sources:1.2.0",
"org.scala-lang:scala-library:jar:sources:2.12.12",
"org.ow2.asm:asm:jar:sources:5.0.4",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2",
"org.scala-lang.modules:scala-parser-combinators_2.12:jar:sources:1.1.2"
],
"directDependencies": [
"org.jline:jline:jar:sources:3.7.1",
"org.apache.commons:commons-lang3:jar:sources:3.9",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"org.apache.commons:commons-math3:jar:sources:3.2",
"org.scala-lang.modules:scala-xml_2.12:jar:sources:1.2.0",
"org.scala-lang:scala-library:jar:sources:2.12.12",
"org.ow2.asm:asm:jar:sources:5.0.4",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2",
"org.scala-lang.modules:scala-parser-combinators_2.12:jar:sources:1.1.2"
],
"file": "v1/https/repo1.maven.org/maven2/com/storm-enroute/scalameter-core_2.12/0.19/scalameter-core_2.12-0.19-sources.jar",
@ -2200,7 +2200,6 @@
"commons-io:commons-io:2.5",
"org.mongodb.scala:mongo-scala-bson_2.12:2.2.0",
"org.scala-sbt:test-interface:1.0",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"io.spray:spray-json_2.12:1.3.5",
"com.fasterxml.jackson.core:jackson-databind:2.12.0",
"com.fasterxml.jackson.module:jackson-module-paranamer:2.9.9",
@ -2208,6 +2207,7 @@
"org.scala-lang:scala-reflect:2.12.12",
"com.fasterxml.jackson.module:jackson-module-scala_2.12:2.9.9",
"com.fasterxml.jackson.core:jackson-annotations:2.12.0",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"org.scala-lang.modules:scala-parser-combinators_2.12:1.1.2",
"org.scala-lang:scala-library:2.12.12",
"org.apache.commons:commons-math3:3.2",
@ -2246,7 +2246,6 @@
"io.spray:spray-json_2.12:jar:sources:1.3.5",
"org.apache.commons:commons-lang3:jar:sources:3.9",
"com.thoughtworks.paranamer:paranamer:jar:sources:2.8",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"com.storm-enroute:scalameter-core_2.12:jar:sources:0.19",
"com.fasterxml.jackson.module:jackson-module-paranamer:jar:sources:2.9.9",
"commons-io:commons-io:jar:sources:2.5",
@ -2262,6 +2261,7 @@
"org.scala-lang:scala-library:jar:sources:2.12.12",
"com.fasterxml.jackson.core:jackson-databind:jar:sources:2.12.0",
"org.ow2.asm:asm:jar:sources:5.0.4",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2",
"org.scala-lang.modules:scala-parser-combinators_2.12:jar:sources:1.1.2"
],
"directDependencies": [
@ -9924,34 +9924,34 @@
"url": "https://repo1.maven.org/maven2/org/sangria-graphql/sangria_2.12/2.0.1/sangria_2.12-2.0.1-sources.jar"
},
{
"coord": "org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"coord": "org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"dependencies": [
"org.scala-lang:scala-library:2.12.12"
],
"directDependencies": [
"org.scala-lang:scala-library:2.12.12"
],
"file": "v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.1.6/scala-collection-compat_2.12-2.1.6.jar",
"file": "v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.3.2/scala-collection-compat_2.12-2.3.2.jar",
"mirror_urls": [
"https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.1.6/scala-collection-compat_2.12-2.1.6.jar"
"https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.3.2/scala-collection-compat_2.12-2.3.2.jar"
],
"sha256": "0abad435516d3ab62eff012fc1169e7a4df3614f36ac130b61c1bae4283c3548",
"url": "https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.1.6/scala-collection-compat_2.12-2.1.6.jar"
"sha256": "f8c71f6d73527a4f5364d3a4271787ccfdac93a2e5cd5ead7d24d2025d8fa6c0",
"url": "https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.3.2/scala-collection-compat_2.12-2.3.2.jar"
},
{
"coord": "org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"coord": "org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2",
"dependencies": [
"org.scala-lang:scala-library:jar:sources:2.12.12"
],
"directDependencies": [
"org.scala-lang:scala-library:jar:sources:2.12.12"
],
"file": "v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.1.6/scala-collection-compat_2.12-2.1.6-sources.jar",
"file": "v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.3.2/scala-collection-compat_2.12-2.3.2-sources.jar",
"mirror_urls": [
"https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.1.6/scala-collection-compat_2.12-2.1.6-sources.jar"
"https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.3.2/scala-collection-compat_2.12-2.3.2-sources.jar"
],
"sha256": "c89ea5d35f67ce2ec5699bc1aa4ccbeac6ed4c7e441c5caf245a29deb162cb4c",
"url": "https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.1.6/scala-collection-compat_2.12-2.1.6-sources.jar"
"sha256": "1bffc60081b9bfddceb4d69e3504208470ab7bd8428daf6d13131605fabaa9fd",
"url": "https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.12/2.3.2/scala-collection-compat_2.12-2.3.2-sources.jar"
},
{
"coord": "org.scala-lang.modules:scala-java8-compat_2.12:0.9.0",
@ -14865,8 +14865,8 @@
"org.scodec:scodec-bits_2.12:1.1.16",
"org.typelevel:cats-effect_2.12:2.1.4",
"org.typelevel:macro-compat_2.12:1.1.1",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"org.scala-lang:scala-reflect:2.12.12",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"org.scala-lang:scala-library:2.12.12",
"org.typelevel:cats-macros_2.12:2.1.1",
"co.fs2:fs2-core_2.12:2.4.2",
@ -14877,8 +14877,8 @@
"org.tpolecat:doobie-free_2.12:0.9.2",
"com.lihaoyi:sourcecode_2.12:0.2.1",
"com.chuusai:shapeless_2.12:2.3.3",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"org.scala-lang:scala-reflect:2.12.12",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"org.scala-lang:scala-library:2.12.12"
],
"file": "v1/https/repo1.maven.org/maven2/org/tpolecat/doobie-core_2.12/0.9.2/doobie-core_2.12-0.9.2.jar",
@ -14894,7 +14894,6 @@
"com.chuusai:shapeless_2.12:jar:sources:2.3.3",
"org.scala-lang:scala-reflect:jar:sources:2.12.12",
"org.scodec:scodec-bits_2.12:jar:sources:1.1.16",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"com.lihaoyi:sourcecode_2.12:jar:sources:0.2.1",
"org.typelevel:cats-effect_2.12:jar:sources:2.1.4",
"org.typelevel:cats-core_2.12:jar:sources:2.1.1",
@ -14904,15 +14903,16 @@
"org.typelevel:cats-kernel_2.12:jar:sources:2.1.1",
"org.scala-lang:scala-library:jar:sources:2.12.12",
"org.tpolecat:doobie-free_2.12:jar:sources:0.9.2",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2",
"org.typelevel:macro-compat_2.12:jar:sources:1.1.1"
],
"directDependencies": [
"com.chuusai:shapeless_2.12:jar:sources:2.3.3",
"org.scala-lang:scala-reflect:jar:sources:2.12.12",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"com.lihaoyi:sourcecode_2.12:jar:sources:0.2.1",
"org.scala-lang:scala-library:jar:sources:2.12.12",
"org.tpolecat:doobie-free_2.12:jar:sources:0.9.2"
"org.tpolecat:doobie-free_2.12:jar:sources:0.9.2",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/org/tpolecat/doobie-core_2.12/0.9.2/doobie-core_2.12-0.9.2-sources.jar",
"mirror_urls": [
@ -14927,7 +14927,7 @@
"org.typelevel:cats-kernel_2.12:2.1.1",
"org.scodec:scodec-bits_2.12:1.1.16",
"org.typelevel:cats-effect_2.12:2.1.4",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"org.scala-lang:scala-library:2.12.12",
"org.typelevel:cats-macros_2.12:2.1.1",
"co.fs2:fs2-core_2.12:2.4.2",
@ -14936,7 +14936,7 @@
],
"directDependencies": [
"org.typelevel:cats-effect_2.12:2.1.4",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"org.scala-lang:scala-library:2.12.12",
"co.fs2:fs2-core_2.12:2.4.2",
"org.typelevel:cats-core_2.12:2.1.1",
@ -14953,22 +14953,22 @@
"coord": "org.tpolecat:doobie-free_2.12:jar:sources:0.9.2",
"dependencies": [
"org.scodec:scodec-bits_2.12:jar:sources:1.1.16",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"org.typelevel:cats-effect_2.12:jar:sources:2.1.4",
"org.typelevel:cats-core_2.12:jar:sources:2.1.1",
"org.typelevel:cats-macros_2.12:jar:sources:2.1.1",
"org.typelevel:cats-free_2.12:jar:sources:2.1.1",
"co.fs2:fs2-core_2.12:jar:sources:2.4.2",
"org.typelevel:cats-kernel_2.12:jar:sources:2.1.1",
"org.scala-lang:scala-library:jar:sources:2.12.12"
"org.scala-lang:scala-library:jar:sources:2.12.12",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2"
],
"directDependencies": [
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"org.typelevel:cats-effect_2.12:jar:sources:2.1.4",
"org.typelevel:cats-core_2.12:jar:sources:2.1.1",
"org.typelevel:cats-free_2.12:jar:sources:2.1.1",
"co.fs2:fs2-core_2.12:jar:sources:2.4.2",
"org.scala-lang:scala-library:jar:sources:2.12.12"
"org.scala-lang:scala-library:jar:sources:2.12.12",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/org/tpolecat/doobie-free_2.12/0.9.2/doobie-free_2.12-0.9.2-sources.jar",
"mirror_urls": [
@ -14990,9 +14990,9 @@
"org.typelevel:cats-effect_2.12:2.1.4",
"org.typelevel:macro-compat_2.12:1.1.1",
"org.checkerframework:checker-qual:3.5.0",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"org.scala-lang:scala-reflect:2.12.12",
"co.fs2:fs2-io_2.12:2.4.2",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"org.scala-lang:scala-library:2.12.12",
"org.typelevel:cats-macros_2.12:2.1.1",
"co.fs2:fs2-core_2.12:2.4.2",
@ -15002,8 +15002,8 @@
"directDependencies": [
"org.postgresql:postgresql:42.2.18",
"org.tpolecat:doobie-core_2.12:0.9.2",
"org.scala-lang.modules:scala-collection-compat_2.12:2.1.6",
"co.fs2:fs2-io_2.12:2.4.2",
"org.scala-lang.modules:scala-collection-compat_2.12:2.3.2",
"org.scala-lang:scala-library:2.12.12"
],
"file": "v1/https/repo1.maven.org/maven2/org/tpolecat/doobie-postgres_2.12/0.9.2/doobie-postgres_2.12-0.9.2.jar",
@ -15020,7 +15020,6 @@
"com.chuusai:shapeless_2.12:jar:sources:2.3.3",
"org.scala-lang:scala-reflect:jar:sources:2.12.12",
"org.scodec:scodec-bits_2.12:jar:sources:1.1.16",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"org.tpolecat:doobie-core_2.12:jar:sources:0.9.2",
"com.lihaoyi:sourcecode_2.12:jar:sources:0.2.1",
"org.typelevel:cats-effect_2.12:jar:sources:2.1.4",
@ -15033,14 +15032,15 @@
"org.typelevel:cats-kernel_2.12:jar:sources:2.1.1",
"org.scala-lang:scala-library:jar:sources:2.12.12",
"org.tpolecat:doobie-free_2.12:jar:sources:0.9.2",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2",
"org.typelevel:macro-compat_2.12:jar:sources:1.1.1"
],
"directDependencies": [
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.1.6",
"org.tpolecat:doobie-core_2.12:jar:sources:0.9.2",
"org.postgresql:postgresql:jar:sources:42.2.18",
"co.fs2:fs2-io_2.12:jar:sources:2.4.2",
"org.scala-lang:scala-library:jar:sources:2.12.12"
"org.scala-lang:scala-library:jar:sources:2.12.12",
"org.scala-lang.modules:scala-collection-compat_2.12:jar:sources:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/org/tpolecat/doobie-postgres_2.12/0.9.2/doobie-postgres_2.12-0.9.2-sources.jar",
"mirror_urls": [

View File

@ -1,6 +1,6 @@
{
"dependency_tree": {
"__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": -1580523458,
"__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": -129339155,
"conflict_resolution": {},
"dependencies": [
{
@ -1796,24 +1796,24 @@
"com.lihaoyi:sourcecode_2.13:0.2.1",
"com.lihaoyi:fansi_2.13:0.2.9",
"com.github.scopt:scopt_2.13:4.0.0",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"com.lihaoyi:os-lib_2.13:0.7.1",
"org.tukaani:xz:1.8",
"com.lihaoyi:fastparse_2.13:2.3.0",
"com.lihaoyi:upickle-core_2.13:1.2.0",
"com.lihaoyi:ujson_2.13:1.2.0",
"com.lihaoyi:scalatags_2.13:0.9.1",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2",
"com.lihaoyi:geny_2.13:0.6.2"
],
"directDependencies": [
"com.lihaoyi:pprint_2.13:0.6.0",
"com.github.scopt:scopt_2.13:4.0.0",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"com.lihaoyi:os-lib_2.13:0.7.1",
"org.tukaani:xz:1.8",
"com.lihaoyi:fastparse_2.13:2.3.0",
"com.lihaoyi:ujson_2.13:1.2.0",
"com.lihaoyi:scalatags_2.13:0.9.1"
"com.lihaoyi:scalatags_2.13:0.9.1",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/com/lihaoyi/sjsonnet_2.13/0.3.0/sjsonnet_2.13-0.3.0.jar",
"mirror_urls": [
@ -1831,7 +1831,7 @@
"org.tukaani:xz:jar:sources:1.8",
"com.lihaoyi:os-lib_2.13:jar:sources:0.7.1",
"com.github.scopt:scopt_2.13:jar:sources:4.0.0",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"com.lihaoyi:pprint_2.13:jar:sources:0.6.0",
"org.scala-lang:scala-library:jar:sources:2.13.3",
"com.lihaoyi:ujson_2.13:jar:sources:1.2.0",
@ -1845,7 +1845,7 @@
"org.tukaani:xz:jar:sources:1.8",
"com.lihaoyi:os-lib_2.13:jar:sources:0.7.1",
"com.github.scopt:scopt_2.13:jar:sources:4.0.0",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"com.lihaoyi:pprint_2.13:jar:sources:0.6.0",
"com.lihaoyi:ujson_2.13:jar:sources:1.2.0"
],
@ -1911,8 +1911,8 @@
{
"coord": "com.lihaoyi:ujson_2.13:1.2.0",
"dependencies": [
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2",
"org.scala-lang:scala-library:2.13.3",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"com.lihaoyi:geny_2.13:0.6.2",
"com.lihaoyi:upickle-core_2.13:1.2.0"
],
@ -1931,8 +1931,8 @@
"dependencies": [
"com.lihaoyi:geny_2.13:jar:sources:0.6.2",
"org.scala-lang:scala-library:jar:sources:2.13.3",
"com.lihaoyi:upickle-core_2.13:jar:sources:1.2.0",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6"
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"com.lihaoyi:upickle-core_2.13:jar:sources:1.2.0"
],
"directDependencies": [
"com.lihaoyi:upickle-core_2.13:jar:sources:1.2.0"
@ -1947,13 +1947,13 @@
{
"coord": "com.lihaoyi:upickle-core_2.13:1.2.0",
"dependencies": [
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2",
"org.scala-lang:scala-library:2.13.3",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"com.lihaoyi:geny_2.13:0.6.2"
],
"directDependencies": [
"com.lihaoyi:geny_2.13:0.6.2",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6"
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/com/lihaoyi/upickle-core_2.13/1.2.0/upickle-core_2.13-1.2.0.jar",
"mirror_urls": [
@ -1967,11 +1967,11 @@
"dependencies": [
"com.lihaoyi:geny_2.13:jar:sources:0.6.2",
"org.scala-lang:scala-library:jar:sources:2.13.3",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6"
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2"
],
"directDependencies": [
"com.lihaoyi:geny_2.13:jar:sources:0.6.2",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6"
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/com/lihaoyi/upickle-core_2.13/1.2.0/upickle-core_2.13-1.2.0-sources.jar",
"mirror_urls": [
@ -2247,20 +2247,20 @@
"org.ow2.asm:asm:5.0.4",
"org.scala-lang:scala-library:2.13.3",
"org.jline:jline:3.7.1",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"org.scala-lang.modules:scala-xml_2.13:1.2.0",
"org.apache.commons:commons-math3:3.2",
"org.apache.commons:commons-lang3:3.9"
"org.apache.commons:commons-lang3:3.9",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"directDependencies": [
"org.scala-lang.modules:scala-parser-combinators_2.13:1.1.2",
"org.ow2.asm:asm:5.0.4",
"org.scala-lang:scala-library:2.13.3",
"org.jline:jline:3.7.1",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"org.scala-lang.modules:scala-xml_2.13:1.2.0",
"org.apache.commons:commons-math3:3.2",
"org.apache.commons:commons-lang3:3.9"
"org.apache.commons:commons-lang3:3.9",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/com/storm-enroute/scalameter-core_2.13/0.19/scalameter-core_2.13-0.19.jar",
"mirror_urls": [
@ -2275,9 +2275,9 @@
"org.jline:jline:jar:sources:3.7.1",
"org.scala-lang.modules:scala-parser-combinators_2.13:jar:sources:1.1.2",
"org.apache.commons:commons-lang3:jar:sources:3.9",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.scala-lang.modules:scala-xml_2.13:jar:sources:1.2.0",
"org.apache.commons:commons-math3:jar:sources:3.2",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"org.scala-lang:scala-library:jar:sources:2.13.3",
"org.ow2.asm:asm:jar:sources:5.0.4"
],
@ -2285,9 +2285,9 @@
"org.jline:jline:jar:sources:3.7.1",
"org.scala-lang.modules:scala-parser-combinators_2.13:jar:sources:1.1.2",
"org.apache.commons:commons-lang3:jar:sources:3.9",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.scala-lang.modules:scala-xml_2.13:jar:sources:1.2.0",
"org.apache.commons:commons-math3:jar:sources:3.2",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"org.scala-lang:scala-library:jar:sources:2.13.3",
"org.ow2.asm:asm:jar:sources:5.0.4"
],
@ -2307,7 +2307,6 @@
"org.scala-lang:scala-library:2.13.3",
"org.jline:jline:3.7.1",
"com.fasterxml.jackson.core:jackson-core:2.12.0",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"commons-io:commons-io:2.5",
"com.fasterxml.jackson.module:jackson-module-scala_2.13:2.9.9",
"org.scala-sbt:test-interface:1.0",
@ -2318,7 +2317,8 @@
"com.fasterxml.jackson.core:jackson-annotations:2.12.0",
"org.apache.commons:commons-math3:3.2",
"org.apache.commons:commons-lang3:3.9",
"com.storm-enroute:scalameter-core_2.13:0.19"
"com.storm-enroute:scalameter-core_2.13:0.19",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"directDependencies": [
"org.scala-lang.modules:scala-parser-combinators_2.13:1.1.2",
@ -2346,13 +2346,13 @@
"org.scala-lang.modules:scala-parser-combinators_2.13:jar:sources:1.1.2",
"org.apache.commons:commons-lang3:jar:sources:3.9",
"com.thoughtworks.paranamer:paranamer:jar:sources:2.8",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.scala-lang.modules:scala-xml_2.13:jar:sources:1.2.0",
"com.fasterxml.jackson.module:jackson-module-paranamer:jar:sources:2.9.9",
"com.fasterxml.jackson.module:jackson-module-scala_2.13:jar:sources:2.9.9",
"commons-io:commons-io:jar:sources:2.5",
"org.apache.commons:commons-math3:jar:sources:3.2",
"com.storm-enroute:scalameter-core_2.13:jar:sources:0.19",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"org.scala-sbt:test-interface:jar:sources:1.0",
"com.fasterxml.jackson.core:jackson-core:jar:sources:2.12.0",
"org.scala-lang:scala-library:jar:sources:2.13.3",
@ -9970,34 +9970,34 @@
"url": "https://repo1.maven.org/maven2/org/sangria-graphql/sangria_2.13/2.0.1/sangria_2.13-2.0.1-sources.jar"
},
{
"coord": "org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"coord": "org.scala-lang.modules:scala-collection-compat_2.13:2.3.2",
"dependencies": [
"org.scala-lang:scala-library:2.13.3"
],
"directDependencies": [
"org.scala-lang:scala-library:2.13.3"
],
"file": "v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.1.6/scala-collection-compat_2.13-2.1.6.jar",
"file": "v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.3.2/scala-collection-compat_2.13-2.3.2.jar",
"mirror_urls": [
"https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.1.6/scala-collection-compat_2.13-2.1.6.jar"
"https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.3.2/scala-collection-compat_2.13-2.3.2.jar"
],
"sha256": "e10eb467c345cef91b904fd17ab417dd9335087499d6f7d0875d3b52553dcceb",
"url": "https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.1.6/scala-collection-compat_2.13-2.1.6.jar"
"sha256": "12a31f2a163941a8410db009b28891ef2c571cda29fd3485c9e7736c9f1c75ee",
"url": "https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.3.2/scala-collection-compat_2.13-2.3.2.jar"
},
{
"coord": "org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"coord": "org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"dependencies": [
"org.scala-lang:scala-library:jar:sources:2.13.3"
],
"directDependencies": [
"org.scala-lang:scala-library:jar:sources:2.13.3"
],
"file": "v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.1.6/scala-collection-compat_2.13-2.1.6-sources.jar",
"file": "v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.3.2/scala-collection-compat_2.13-2.3.2-sources.jar",
"mirror_urls": [
"https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.1.6/scala-collection-compat_2.13-2.1.6-sources.jar"
"https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.3.2/scala-collection-compat_2.13-2.3.2-sources.jar"
],
"sha256": "45293572ff4515d37c155f191ebdd5bb4d0a6b8b6a2a074ec9857301c718f154",
"url": "https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.1.6/scala-collection-compat_2.13-2.1.6-sources.jar"
"sha256": "a3ff8b333e0def7a80b0e0a94990775dc58cad28c16f0257e2ce9f64d99fae24",
"url": "https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.3.2/scala-collection-compat_2.13-2.3.2-sources.jar"
},
{
"coord": "org.scala-lang.modules:scala-java8-compat_2.12:0.9.0",
@ -15055,22 +15055,22 @@
"org.typelevel:cats-core_2.13:2.1.1",
"org.scala-lang:scala-library:2.13.3",
"com.lihaoyi:sourcecode_2.13:0.2.1",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"org.tpolecat:doobie-free_2.13:0.9.2",
"org.typelevel:cats-kernel_2.13:2.1.1",
"org.typelevel:cats-macros_2.13:2.1.1",
"org.typelevel:cats-effect_2.13:2.1.4",
"org.typelevel:cats-free_2.13:2.1.1",
"com.chuusai:shapeless_2.13:2.3.3",
"co.fs2:fs2-core_2.13:2.4.2"
"co.fs2:fs2-core_2.13:2.4.2",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"directDependencies": [
"org.scala-lang:scala-reflect:2.13.3",
"org.scala-lang:scala-library:2.13.3",
"com.lihaoyi:sourcecode_2.13:0.2.1",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"org.tpolecat:doobie-free_2.13:0.9.2",
"com.chuusai:shapeless_2.13:2.3.3"
"com.chuusai:shapeless_2.13:2.3.3",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/org/tpolecat/doobie-core_2.13/0.9.2/doobie-core_2.13-0.9.2.jar",
"mirror_urls": [
@ -15087,9 +15087,9 @@
"org.typelevel:cats-kernel_2.13:jar:sources:2.1.1",
"org.scodec:scodec-bits_2.13:jar:sources:1.1.16",
"com.chuusai:shapeless_2.13:jar:sources:2.3.3",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.typelevel:cats-free_2.13:jar:sources:2.1.1",
"org.typelevel:cats-effect_2.13:jar:sources:2.1.4",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"org.typelevel:cats-core_2.13:jar:sources:2.1.1",
"org.scala-lang:scala-library:jar:sources:2.13.3",
"com.lihaoyi:sourcecode_2.13:jar:sources:0.2.1",
@ -15098,7 +15098,7 @@
],
"directDependencies": [
"com.chuusai:shapeless_2.13:jar:sources:2.3.3",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"org.scala-lang:scala-library:jar:sources:2.13.3",
"com.lihaoyi:sourcecode_2.13:jar:sources:0.2.1",
"org.tpolecat:doobie-free_2.13:jar:sources:0.9.2",
@ -15117,20 +15117,20 @@
"org.scodec:scodec-bits_2.13:1.1.16",
"org.typelevel:cats-core_2.13:2.1.1",
"org.scala-lang:scala-library:2.13.3",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"org.typelevel:cats-kernel_2.13:2.1.1",
"org.typelevel:cats-macros_2.13:2.1.1",
"org.typelevel:cats-effect_2.13:2.1.4",
"org.typelevel:cats-free_2.13:2.1.1",
"co.fs2:fs2-core_2.13:2.4.2"
"co.fs2:fs2-core_2.13:2.4.2",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"directDependencies": [
"org.typelevel:cats-core_2.13:2.1.1",
"org.scala-lang:scala-library:2.13.3",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"org.typelevel:cats-effect_2.13:2.1.4",
"org.typelevel:cats-free_2.13:2.1.1",
"co.fs2:fs2-core_2.13:2.4.2"
"co.fs2:fs2-core_2.13:2.4.2",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/org/tpolecat/doobie-free_2.13/0.9.2/doobie-free_2.13-0.9.2.jar",
"mirror_urls": [
@ -15146,17 +15146,17 @@
"co.fs2:fs2-core_2.13:jar:sources:2.4.2",
"org.typelevel:cats-kernel_2.13:jar:sources:2.1.1",
"org.scodec:scodec-bits_2.13:jar:sources:1.1.16",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.typelevel:cats-free_2.13:jar:sources:2.1.1",
"org.typelevel:cats-effect_2.13:jar:sources:2.1.4",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"org.typelevel:cats-core_2.13:jar:sources:2.1.1",
"org.scala-lang:scala-library:jar:sources:2.13.3"
],
"directDependencies": [
"co.fs2:fs2-core_2.13:jar:sources:2.4.2",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.typelevel:cats-free_2.13:jar:sources:2.1.1",
"org.typelevel:cats-effect_2.13:jar:sources:2.1.4",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"org.typelevel:cats-core_2.13:jar:sources:2.1.1",
"org.scala-lang:scala-library:jar:sources:2.13.3"
],
@ -15176,7 +15176,6 @@
"org.typelevel:cats-core_2.13:2.1.1",
"org.scala-lang:scala-library:2.13.3",
"com.lihaoyi:sourcecode_2.13:0.2.1",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"org.tpolecat:doobie-free_2.13:0.9.2",
"org.checkerframework:checker-qual:3.5.0",
"org.typelevel:cats-kernel_2.13:2.1.1",
@ -15186,14 +15185,15 @@
"org.tpolecat:doobie-core_2.13:0.9.2",
"co.fs2:fs2-io_2.13:2.4.2",
"com.chuusai:shapeless_2.13:2.3.3",
"co.fs2:fs2-core_2.13:2.4.2"
"co.fs2:fs2-core_2.13:2.4.2",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"directDependencies": [
"org.postgresql:postgresql:42.2.18",
"org.scala-lang:scala-library:2.13.3",
"org.scala-lang.modules:scala-collection-compat_2.13:2.1.6",
"org.tpolecat:doobie-core_2.13:0.9.2",
"co.fs2:fs2-io_2.13:2.4.2"
"co.fs2:fs2-io_2.13:2.4.2",
"org.scala-lang.modules:scala-collection-compat_2.13:2.3.2"
],
"file": "v1/https/repo1.maven.org/maven2/org/tpolecat/doobie-postgres_2.13/0.9.2/doobie-postgres_2.13-0.9.2.jar",
"mirror_urls": [
@ -15211,9 +15211,9 @@
"org.typelevel:cats-kernel_2.13:jar:sources:2.1.1",
"org.scodec:scodec-bits_2.13:jar:sources:1.1.16",
"com.chuusai:shapeless_2.13:jar:sources:2.3.3",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.typelevel:cats-free_2.13:jar:sources:2.1.1",
"org.typelevel:cats-effect_2.13:jar:sources:2.1.4",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"org.postgresql:postgresql:jar:sources:42.2.18",
"org.typelevel:cats-core_2.13:jar:sources:2.1.1",
"org.scala-lang:scala-library:jar:sources:2.13.3",
@ -15224,7 +15224,7 @@
"co.fs2:fs2-io_2.13:jar:sources:2.4.2"
],
"directDependencies": [
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.1.6",
"org.scala-lang.modules:scala-collection-compat_2.13:jar:sources:2.3.2",
"org.postgresql:postgresql:jar:sources:42.2.18",
"org.scala-lang:scala-library:jar:sources:2.13.3",
"org.tpolecat:doobie-core_2.13:jar:sources:0.9.2",