working on backend
continuous-integration/drone/push Build is failing
Details
continuous-integration/drone/push Build is failing
Details
parent
8c6eac8d94
commit
b294037d6b
@ -0,0 +1,27 @@
|
|||||||
|
version = "3.6.1"
|
||||||
|
runner.dialect = "scala3"
|
||||||
|
|
||||||
|
assumeStandardLibraryStripMargin = true
|
||||||
|
newlines.source = keep
|
||||||
|
|
||||||
|
rewrite.scala3 {
|
||||||
|
convertToNewSyntax = yes
|
||||||
|
removeOptionalBraces = yes
|
||||||
|
}
|
||||||
|
|
||||||
|
align {
|
||||||
|
preset = some
|
||||||
|
openParenCallSite = false
|
||||||
|
stripMargin = true
|
||||||
|
}
|
||||||
|
|
||||||
|
continuationIndent {
|
||||||
|
callSite = 2
|
||||||
|
defnSite = 4
|
||||||
|
}
|
||||||
|
|
||||||
|
docstrings {
|
||||||
|
style = Asterisk
|
||||||
|
oneline = keep
|
||||||
|
wrap = no
|
||||||
|
}
|
@ -1,13 +0,0 @@
|
|||||||
package org.tbasket.api.compute
|
|
||||||
|
|
||||||
import zio.ZIO
|
|
||||||
import zio.http.model.Status
|
|
||||||
import zio.http.{Request, Response}
|
|
||||||
|
|
||||||
trait APIRequestHandler {
|
|
||||||
|
|
||||||
def get: ZIO[Request, Throwable, Response] = ZIO.succeed(Response(Status.MethodNotAllowed))
|
|
||||||
|
|
||||||
def post: ZIO[Request, Throwable, Response] = ZIO.succeed(Response(Status.MethodNotAllowed))
|
|
||||||
|
|
||||||
}
|
|
@ -1,30 +1,33 @@
|
|||||||
package org.tbasket
|
package org.tbasket
|
||||||
|
|
||||||
|
import io.getquill.{Literal, SqliteDialect}
|
||||||
|
import io.getquill.context.qzio.ZioContext
|
||||||
import org.tbasket.api.Endpoint
|
import org.tbasket.api.Endpoint
|
||||||
import org.tbasket.handler.IncrementHandler
|
import org.tbasket.handler.{IncrementHandler, LoginHandler}
|
||||||
|
import org.tbasket.auth.UserSessionHandler
|
||||||
|
|
||||||
import java.util.Properties
|
import java.util.Properties
|
||||||
|
|
||||||
object EndpointSetup {
|
object EndpointSetup:
|
||||||
|
|
||||||
private final val EndpointPort = "endpoint.port"
|
private final val EndpointPort = "endpoint.port"
|
||||||
private final val EndpointPortDefault = "48485"
|
private final val EndpointPortDefault = "48485"
|
||||||
|
|
||||||
def setupEndpoint(config: Properties): Endpoint = {
|
def setupEndpoint(config: Properties, db: ZioContext[SqliteDialect, Literal]): Endpoint =
|
||||||
Main.LOG.debug("Initializing API endpoint...")
|
Main.LOG.debug("Initializing API endpoint...")
|
||||||
val endpoint = createEndpoint(config)
|
|
||||||
endpoint.bind("counter")(IncrementHandler)
|
|
||||||
endpoint
|
val endpoint = createEndpoint(config)
|
||||||
}
|
endpoint.bind("counter")(IncrementHandler)
|
||||||
|
endpoint.bind("login")(new LoginHandler(sessions, db))
|
||||||
|
endpoint
|
||||||
|
|
||||||
private def createEndpoint(config: Properties): Endpoint = {
|
private def createEndpoint(config: Properties): Endpoint =
|
||||||
val port = config
|
val port = config
|
||||||
.getProperty(EndpointPort, EndpointPortDefault) match {
|
.getProperty(EndpointPort, EndpointPortDefault) match
|
||||||
case s"$port" if port.toIntOption.isDefined => port.toInt
|
case s"$port" if port.toIntOption.isDefined => port.toInt
|
||||||
case v =>
|
case v =>
|
||||||
throw new InternalBasketServerException(s"$EndpointPort property value is wrong: $v must be integer")
|
throw new InternalBasketServerException(
|
||||||
}
|
s"$EndpointPort property value is wrong: $v must be integer"
|
||||||
new Endpoint(port)
|
)
|
||||||
}
|
new Endpoint(port)
|
||||||
|
|
||||||
}
|
|
||||||
|
@ -1,9 +1,7 @@
|
|||||||
package org.tbasket.session
|
package org.tbasket.auth
|
||||||
|
|
||||||
import org.tbasket.db.schemas.User
|
import org.tbasket.db.schemas.User
|
||||||
|
|
||||||
import java.util.UUID
|
import java.util.UUID
|
||||||
|
|
||||||
case class UserSession(user: User, token: UUID, expirationDate: Long) {
|
case class UserSession(user: User, token: UUID, expirationDate: Long)
|
||||||
|
|
||||||
}
|
|
@ -0,0 +1,11 @@
|
|||||||
|
package org.tbasket.handler
|
||||||
|
|
||||||
|
import zio.ZIO
|
||||||
|
import zio.http.Body
|
||||||
|
import zio.json.ast.Json
|
||||||
|
import zio.json.ast.JsonCursor
|
||||||
|
|
||||||
|
|
||||||
|
object HandlerUtils {
|
||||||
|
def errorBody(errorType: String, msg: String) = Body.fromString(s"""{"error": $errorType,"msg": "$msg"}""")
|
||||||
|
}
|
@ -1,45 +1,100 @@
|
|||||||
package org.tbasket.handler
|
package org.tbasket.handler
|
||||||
|
|
||||||
|
import io.getquill.*
|
||||||
import org.tbasket.api.compute.APIRequestHandler
|
import org.tbasket.api.compute.APIRequestHandler
|
||||||
import org.tbasket.db.Database.ctx._
|
import org.tbasket.db.Database.ctx.*
|
||||||
import org.tbasket.db.schemas.User
|
import org.tbasket.db.schemas.User
|
||||||
import org.tbasket.session.UserSessionHandler
|
import org.tbasket.auth.{UserSession, UserSessionHandler}
|
||||||
import zio.{ZEnvironment, ZIO}
|
import zio.http.model.{Cookie, Header, Headers, Status}
|
||||||
import zio.http.model.{Cookie, Headers, Status}
|
import zio.http.{Body, Request, Response}
|
||||||
import zio.http.{Request, Response}
|
import zio.json.*
|
||||||
import zio.json._
|
|
||||||
import zio.json.ast.Json.Str
|
import zio.json.ast.Json.Str
|
||||||
import zio.json.ast.{Json, JsonCursor}
|
import zio.json.ast.{Json, JsonCursor}
|
||||||
|
import zio.{ZEnvironment, ZIO}
|
||||||
|
import zio.*
|
||||||
|
import io.getquill.context.qzio.ZioContext
|
||||||
|
import org.tbasket.handler.HandlerUtils.errorBody
|
||||||
|
import org.tbasket.handler.LoginError.InvalidRequest
|
||||||
|
|
||||||
class LoginHandler(sessions: UserSessionHandler) extends APIRequestHandler {
|
import javax.sql.DataSource
|
||||||
|
import java.sql.SQLException
|
||||||
private def getUser(json: Json): Either[String, User] = {
|
import java.util.UUID
|
||||||
(for {
|
|
||||||
mail <- json.get[Str](JsonCursor.field("mail").isString).map(_.value)
|
|
||||||
password <- json.get[Str](JsonCursor.field("password").isString).map(_.value)
|
enum LoginError:
|
||||||
} yield quote { // TODO use argon2id
|
case TokenNotFound(token: UUID)
|
||||||
User.schema.filter(usr => usr.mailAddress == mail && usr.passwordHash == password.hashCode)
|
case UserNotFound(user: User)
|
||||||
}).flatMap(_.nested.value.toRight("password or email incorrect"))
|
case InvalidPassword
|
||||||
}
|
case InvalidRequest(msg: String, cause: String)
|
||||||
|
case InternalError(t: Throwable)
|
||||||
|
|
||||||
|
|
||||||
|
import LoginError.*
|
||||||
|
|
||||||
|
class LoginHandler(sessions: UserSessionHandler, ctx: ZioContext[SqliteDialect, Literal]) extends APIRequestHandler:
|
||||||
|
|
||||||
|
import ctx.*
|
||||||
|
|
||||||
|
private def getUser(json: Json): IO[LoginError, User] =
|
||||||
|
val r: ZIO[DataSource, LoginError, Option[User]] = for
|
||||||
|
mail <-
|
||||||
|
ZIO.fromEither(json.get[Str](JsonCursor.field("mail").isString).map(_.value))
|
||||||
|
.mapError(InvalidRequest("Missing or invalid field mail", _))
|
||||||
|
password <-
|
||||||
|
ZIO.fromEither(json.get[Str](JsonCursor.field("password").isString).map(_.value))
|
||||||
|
.mapError(InvalidRequest("Missing or invalid field password", _))
|
||||||
|
|
||||||
|
result <- run(quote { // TODO use argon2id
|
||||||
|
User.schema.filter(usr =>
|
||||||
|
usr.mailAddress == mail && usr.passwordHash == lift(password.hashCode)
|
||||||
|
)
|
||||||
|
}).mapError(InternalError.apply)
|
||||||
|
yield result.headOption
|
||||||
|
r.someOrFail(InvalidPassword).provideSome(ZLayer.succeed(ctx))
|
||||||
|
|
||||||
|
override def post(request: Request): URIO[Console, Response] =
|
||||||
|
val bindSession: ZIO[Console, LoginError, UserSession] =
|
||||||
|
for
|
||||||
|
body <- request
|
||||||
|
.body
|
||||||
|
.asString
|
||||||
|
.tapError(Console.printError(_))
|
||||||
|
.mapError(s => InvalidRequest("Wrong request body", s.getMessage)): IO[LoginError, String]
|
||||||
|
|
||||||
|
json <- ZIO.fromEither(body.fromJson[Json])
|
||||||
|
.mapError(InvalidRequest("Invalid JSON body", _)): IO[LoginError, Json]
|
||||||
|
|
||||||
|
user <- getUser(json): IO[LoginError, User]
|
||||||
|
session <- sessions.bind(user): IO[LoginError, UserSession]
|
||||||
|
yield session
|
||||||
|
|
||||||
override def post: ZIO[Request, Throwable, Response] = ZIO.serviceWithZIO[Request] { r =>
|
bindSession.map { sess =>
|
||||||
r.body.asString
|
Response(
|
||||||
.map(_.fromJson[Json].flatMap(getUser) match {
|
status = Status.Ok,
|
||||||
case Left(err) => //if account not found or password mismatches
|
body = Body.fromString(s"""{"token": "${sess.token}"}"""),
|
||||||
Response.json(Json.Obj("error" -> Json.Str(err)).toJson)
|
)
|
||||||
case Right(user) =>
|
}.mapError {
|
||||||
val session = sessions.bind(user)
|
case TokenNotFound(_) => Response(
|
||||||
|
status = Status.Unauthorized,
|
||||||
Response(
|
body = errorBody("unauthorized", "unknown token"),
|
||||||
status = Status.Found,
|
headers = Headers(Headers.location("/login")) //send back caller to login panel
|
||||||
headers = Headers.location("/") ++ Headers.setCookie(
|
)
|
||||||
Cookie(
|
case UserNotFound(_) => Response(
|
||||||
name = "token",
|
status = Status.Unauthorized,
|
||||||
content = session.token.toString,
|
body = errorBody("unauthorized", "unknown user email"),
|
||||||
maxAge = Some(session.expirationDate)
|
headers = Headers(Headers.location("/register")) //send back caller to register panel
|
||||||
))
|
)
|
||||||
)
|
case InvalidPassword => Response(
|
||||||
}
|
status = Status.Unauthorized,
|
||||||
)
|
body = errorBody("unauthorized", "invalid password")
|
||||||
|
)
|
||||||
|
case InvalidRequest(msg, cause) => Response(
|
||||||
|
status = Status.Unauthorized,
|
||||||
|
body = errorBody("wrong request", s"$cause: $msg")
|
||||||
|
)
|
||||||
|
case InternalError(_) => Response(
|
||||||
|
status = Status.InternalServerError,
|
||||||
|
body = errorBody("internal", "internal error, please contact support")
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
@ -1,52 +0,0 @@
|
|||||||
package org.tbasket.session
|
|
||||||
|
|
||||||
import org.tbasket.db.schemas.User
|
|
||||||
import org.tbasket.session.UserSessionHandler.SessionLifespan
|
|
||||||
|
|
||||||
import java.time.{Duration, Instant}
|
|
||||||
import java.util.UUID
|
|
||||||
import scala.collection.mutable
|
|
||||||
|
|
||||||
object UserSessionHandler {
|
|
||||||
final val SessionLifespan = Duration.ofDays(31)
|
|
||||||
}
|
|
||||||
|
|
||||||
class UserSessionHandler {
|
|
||||||
|
|
||||||
private val sessionsUser = mutable.HashMap.empty[User, UserSession]
|
|
||||||
private val sessionsToken = mutable.HashMap.empty[UUID, UserSession]
|
|
||||||
|
|
||||||
def findSession(token: UUID): Option[UserSession] = {
|
|
||||||
sessionsToken.get(token) match {
|
|
||||||
case Some(session) if System.currentTimeMillis() > session.expirationDate =>
|
|
||||||
unbind(token) //session has expired, unbind session
|
|
||||||
None
|
|
||||||
|
|
||||||
case s => s
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private def unbind(token: UUID): Unit = {
|
|
||||||
sessionsToken.remove(token)
|
|
||||||
.foreach(s => sessionsUser.remove(s.user))
|
|
||||||
}
|
|
||||||
|
|
||||||
private def unbind(user: User): Unit = {
|
|
||||||
sessionsUser.remove(user)
|
|
||||||
.foreach(s => sessionsToken.remove(s.token))
|
|
||||||
}
|
|
||||||
|
|
||||||
def bind(user: User): UserSession = {
|
|
||||||
if (sessionsUser.contains(user)) {
|
|
||||||
//if there was a session already bound, then remove it
|
|
||||||
unbind(user)
|
|
||||||
}
|
|
||||||
val uuid = UUID.randomUUID()
|
|
||||||
val limit = System.currentTimeMillis() + Instant.now().plus(SessionLifespan).toEpochMilli
|
|
||||||
val session = UserSession(user, uuid, limit)
|
|
||||||
sessionsUser.put(user, session)
|
|
||||||
sessionsToken.put(uuid, session)
|
|
||||||
session
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,41 +0,0 @@
|
|||||||
package org.tbasket.test
|
|
||||||
|
|
||||||
import io.circe.parser._
|
|
||||||
import org.junit.jupiter.api.{Assertions, Test}
|
|
||||||
import org.tbasket.handler.IncrementHandler
|
|
||||||
import zio.http.model.Status
|
|
||||||
import zio.http.{Body, Path, Request, URL}
|
|
||||||
|
|
||||||
class IncrementRequestHandler {
|
|
||||||
|
|
||||||
private val url = URL(Path.decode("counter"))
|
|
||||||
|
|
||||||
@Test
|
|
||||||
def testMakeIncrement(): Unit = {
|
|
||||||
val last = IncrementHandler.getCounter
|
|
||||||
val response = IncrementHandler.post(Request.post(Body.empty, url))
|
|
||||||
Assertions.assertEquals(response.status, Status.Ok)
|
|
||||||
Assertions.assertEquals(last + 1, IncrementHandler.getCounter)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
def testGetIncrement(): Unit = {
|
|
||||||
val counter = IncrementHandler.getCounter
|
|
||||||
val response = IncrementHandler.get(Request.post(Body.empty, url))
|
|
||||||
for {
|
|
||||||
json <- response.body.asString
|
|
||||||
} yield parse(json) match {
|
|
||||||
case Left(failure) => Assertions.fail(s"returned json is invalid ($failure)")
|
|
||||||
case Right(json) =>
|
|
||||||
val valueJsons = json.findAllByKey("value")
|
|
||||||
Assertions.assertEquals(1, valueJsons.size)
|
|
||||||
val valueCounter = valueJsons.head.asNumber.get.toInt.get
|
|
||||||
Assertions.assertEquals(counter, valueCounter)
|
|
||||||
}
|
|
||||||
Assertions.assertEquals(response.status, Status.Ok)
|
|
||||||
Assertions.assertEquals(counter, IncrementHandler.getCounter)
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,18 +1,19 @@
|
|||||||
package org.tbasket.db.schemas
|
package org.tbasket.db.schemas
|
||||||
|
|
||||||
|
import io.getquill.*
|
||||||
import org.tbasket.db.Database
|
import org.tbasket.db.Database
|
||||||
|
|
||||||
case class Member(team: Team, user: User, admin: Boolean)
|
case class Member(team: Team, user: User, admin: Boolean)
|
||||||
|
|
||||||
object Member {
|
object Member:
|
||||||
|
|
||||||
import Database.ctx._
|
import Database.ctx.*
|
||||||
|
|
||||||
val schema = quote {
|
val schema = quote {
|
||||||
querySchema[Member]("member",
|
querySchema[Member](
|
||||||
_.team.id -> "team_id",
|
"member",
|
||||||
_.user.id -> "user_id",
|
_.team.id -> "team_id",
|
||||||
_.admin -> "is_admin"
|
_.user.id -> "user_id",
|
||||||
)
|
_.admin -> "is_admin"
|
||||||
}
|
)
|
||||||
}
|
}
|
||||||
|
@ -1,16 +1,19 @@
|
|||||||
package org.tbasket.db.schemas
|
package org.tbasket.db.schemas
|
||||||
|
|
||||||
|
import io.getquill.*
|
||||||
|
|
||||||
import org.tbasket.db.Database
|
import org.tbasket.db.Database
|
||||||
case class Tactic(id: Int, name: String, owner: User, filePath: String)
|
case class Tactic(id: Int, name: String, owner: User, filePath: String)
|
||||||
|
|
||||||
object Tactic {
|
object Tactic:
|
||||||
import Database.ctx._
|
import Database.ctx.*
|
||||||
|
|
||||||
val schema = quote {
|
val schema = quote {
|
||||||
querySchema[Tactic]("tactic",
|
querySchema[Tactic](
|
||||||
_.id -> "id",
|
"tactic",
|
||||||
_.name -> "name",
|
_.id -> "id",
|
||||||
_.owner.id -> "owner_id",
|
_.name -> "name",
|
||||||
_.filePath -> "file_path"
|
_.owner.id -> "owner_id",
|
||||||
)
|
_.filePath -> "file_path"
|
||||||
}
|
)
|
||||||
}
|
}
|
||||||
|
@ -1,17 +1,17 @@
|
|||||||
package org.tbasket.db.schemas
|
package org.tbasket.db.schemas
|
||||||
|
|
||||||
import org.tbasket.db.Database
|
import io.getquill.*
|
||||||
|
|
||||||
case class Team(id: Int, name: String, clubName: String)
|
case class Team(id: Int, name: String, clubName: String)
|
||||||
object Team {
|
object Team:
|
||||||
import Database.ctx._
|
|
||||||
|
import org.tbasket.db.Database.ctx.*
|
||||||
val schema = quote {
|
|
||||||
querySchema[Team]("team",
|
val schema = quote {
|
||||||
_.id -> "id",
|
querySchema[Team](
|
||||||
_.name -> "name",
|
"team",
|
||||||
_.clubName -> "club_name"
|
_.id -> "id",
|
||||||
)
|
_.name -> "name",
|
||||||
}
|
_.clubName -> "club_name"
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
@ -1,23 +1,26 @@
|
|||||||
package org.tbasket.db.schemas
|
package org.tbasket.db.schemas
|
||||||
|
|
||||||
|
import io.getquill.*
|
||||||
import org.tbasket.db.Database
|
import org.tbasket.db.Database
|
||||||
|
|
||||||
case class User(id : Int,
|
case class User(
|
||||||
name : String,
|
id: Int,
|
||||||
forename : String,
|
name: String,
|
||||||
passwordHash: Int,
|
forename: String,
|
||||||
mailAddress : String)
|
passwordHash: Int,
|
||||||
object User {
|
mailAddress: String
|
||||||
|
)
|
||||||
import Database.ctx._
|
object User:
|
||||||
|
|
||||||
val schema = quote {
|
import Database.ctx.*
|
||||||
querySchema[User]("user",
|
|
||||||
_.id -> "id",
|
val schema = quote {
|
||||||
_.name -> "name",
|
querySchema[User](
|
||||||
_.forename -> "forename",
|
"user",
|
||||||
_.passwordHash -> "password_hash",
|
_.id -> "id",
|
||||||
_.mailAddress -> "mail_address",
|
_.name -> "name",
|
||||||
)
|
_.forename -> "forename",
|
||||||
}
|
_.passwordHash -> "password_hash",
|
||||||
}
|
_.mailAddress -> "mail_address"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
package org.tbasket.api
|
package org.tbasket.api
|
||||||
|
|
||||||
class APIException(msg: String, cause: Throwable = null) extends Exception
|
class APIException(msg: String, cause: Throwable = null) extends Exception
|
@ -0,0 +1,13 @@
|
|||||||
|
package org.tbasket.api.compute
|
||||||
|
|
||||||
|
import zio.*
|
||||||
|
import zio.http.model.Status
|
||||||
|
import zio.http.{Request, Response}
|
||||||
|
|
||||||
|
trait APIRequestHandler:
|
||||||
|
|
||||||
|
def get: Task[Response] =
|
||||||
|
ZIO.succeed(Response(Status.MethodNotAllowed))
|
||||||
|
|
||||||
|
def post: Task[Response] =
|
||||||
|
ZIO.succeed(Response(Status.MethodNotAllowed))
|
@ -1,31 +1,49 @@
|
|||||||
import mill._, scalalib._
|
import mill._, scalalib._, scalafmt._
|
||||||
|
|
||||||
trait ServerModule extends ScalaModule {
|
trait ServerModule extends ScalaModule with ScalafmtModule {
|
||||||
|
|
||||||
|
//override def scalacOptions = Seq("-explain")
|
||||||
|
|
||||||
override final def scalaVersion = "3.2.0"
|
override final def scalaVersion = "3.2.0"
|
||||||
}
|
|
||||||
|
|
||||||
object Core extends ServerModule {
|
|
||||||
override def ivyDeps = Agg(
|
override def ivyDeps = Agg(
|
||||||
ivy"dev.zio::zio:2.0.6",
|
ivy"dev.zio::zio:2.0.6",
|
||||||
ivy"dev.zio::zio-test:2.0.6",
|
|
||||||
ivy"dev.zio::zio-json:0.4.2",
|
|
||||||
|
|
||||||
ivy"org.apache.logging.log4j:log4j-slf4j-impl:2.19.0"
|
ivy"org.apache.logging.log4j:log4j-slf4j-impl:2.19.0"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
trait HttpModule extends ServerModule {
|
||||||
object API extends ServerModule {
|
override def ivyDeps = super.ivyDeps() ++ Agg(
|
||||||
override def ivyDeps = Agg(
|
|
||||||
ivy"dev.zio::zio-http:0.0.3",
|
ivy"dev.zio::zio-http:0.0.3",
|
||||||
|
|
||||||
ivy"org.apache.logging.log4j:log4j-slf4j-impl:2.19.0"
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Simple module whose only job is to generate JWT Tokens
|
||||||
|
* */
|
||||||
|
object JWTEmitter extends HttpModule
|
||||||
|
|
||||||
|
/**
|
||||||
|
* module that handles the REST API endpoint
|
||||||
|
* */
|
||||||
|
object Endpoint extends HttpModule
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Business layer of a server
|
||||||
|
* */
|
||||||
|
object Core extends ServerModule {
|
||||||
|
override def ivyDeps = super.ivyDeps() ++ Agg(
|
||||||
|
ivy"dev.zio::zio-json:0.4.2",
|
||||||
|
)
|
||||||
|
|
||||||
|
override def moduleDeps = Seq(Endpoint, DB)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Database module
|
||||||
|
* */
|
||||||
object DB extends ServerModule {
|
object DB extends ServerModule {
|
||||||
override def ivyDeps = Agg(
|
override def ivyDeps = super.ivyDeps() ++ Agg(
|
||||||
ivy"io.getquill::quill-jdbc-zio:4.6.0",
|
ivy"io.getquill::quill-jdbc-zio:4.6.0",
|
||||||
|
|
||||||
ivy"org.apache.logging.log4j:log4j-slf4j-impl:2.19.0"
|
ivy"org.xerial:sqlite-jdbc:3.40.0.0",
|
||||||
)
|
)
|
||||||
}
|
}
|
@ -1,9 +1,9 @@
|
|||||||
{
|
{
|
||||||
"value": [
|
"value": [
|
||||||
"ref:43882227:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/src/org/tbasket/api/Endpoint.scala",
|
"ref:4fa6423d:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/src/org/tbasket/api/Endpoint.scala",
|
||||||
"ref:d2f14845:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/src/org/tbasket/api/APIException.scala",
|
"ref:3564929d:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/src/org/tbasket/api/APIException.scala",
|
||||||
"ref:48e37309:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/src/org/tbasket/api/compute/APIRequestHandler.scala"
|
"ref:340cbac3:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/src/org/tbasket/api/compute/APIRequestHandler.scala"
|
||||||
],
|
],
|
||||||
"valueHash": 1005516331,
|
"valueHash": -1333334074,
|
||||||
"inputsHash": -2048058361
|
"inputsHash": -355541881
|
||||||
}
|
}
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"value": [
|
"value": [
|
||||||
"ref:f4ab4dc0:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/src"
|
"ref:95490f6f:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/src"
|
||||||
],
|
],
|
||||||
"valueHash": -909178762,
|
"valueHash": 1181484811,
|
||||||
"inputsHash": 1509044708
|
"inputsHash": -2038904234
|
||||||
}
|
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"value": {
|
||||||
|
"analysisFile": "/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/out/API/compile.dest/zinc",
|
||||||
|
"classes": "ref:c565ef4b:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/out/API/compile.dest/classes"
|
||||||
|
},
|
||||||
|
"valueHash": -557435500,
|
||||||
|
"inputsHash": -204597287
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"value": "ref:9395c852:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/out/API/ideaCompileOutput.dest/classes",
|
||||||
|
"valueHash": -1818900398,
|
||||||
|
"inputsHash": -682936988
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 473519988,
|
||||||
|
"inputsHash": -682936988
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 473519988,
|
||||||
|
"inputsHash": -682936988
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 0,
|
||||||
|
"inputsHash": 883715415
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
"ref:c984eca8:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/resources",
|
||||||
|
"ref:c565ef4b:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/out/API/compile.dest/classes"
|
||||||
|
],
|
||||||
|
"valueHash": -901868320,
|
||||||
|
"inputsHash": 2070217781
|
||||||
|
}
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"value": "",
|
"value": "",
|
||||||
"valueHash": 0,
|
"valueHash": 0,
|
||||||
"inputsHash": -400702942
|
"inputsHash": -511194116
|
||||||
}
|
}
|
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"value": null,
|
||||||
|
"valueHash": 0,
|
||||||
|
"inputsHash": -348475366
|
||||||
|
}
|
@ -0,0 +1,54 @@
|
|||||||
|
Formatting 3 Scala sources
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scalameta/scalafmt-core_2.13/3.6.1/scalafmt-core_2.13-3.6.1.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scalameta/scalafmt-core_2.13/3.6.1/scalafmt-core_2.13-3.6.1.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scalameta/scalafmt-config_2.13/3.6.1/scalafmt-config_2.13-3.6.1.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scalameta/scalameta_2.13/4.6.0/scalameta_2.13-4.6.0.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scalameta/scalafmt-sysops_2.13/3.6.1/scalafmt-sysops_2.13-3.6.1.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scalameta/scalafmt-config_2.13/3.6.1/scalafmt-config_2.13-3.6.1.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scalameta/scalameta_2.13/4.6.0/scalameta_2.13-4.6.0.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scalameta/scalafmt-sysops_2.13/3.6.1/scalafmt-sysops_2.13-3.6.1.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scalameta/parsers_2.13/4.6.0/parsers_2.13-4.6.0.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scala-lang/modules/scala-parallel-collections_2.13/1.0.4/scala-parallel-collections_2.13-1.0.4.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/com/geirsson/metaconfig-core_2.13/0.11.1/metaconfig-core_2.13-0.11.1.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/com/geirsson/metaconfig-typesafe-config_2.13/0.11.1/metaconfig-typesafe-config_2.13-0.11.1.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scala-lang/scalap/2.13.9/scalap-2.13.9.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scala-lang/modules/scala-parallel-collections_2.13/1.0.4/scala-parallel-collections_2.13-1.0.4.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/com/geirsson/metaconfig-core_2.13/0.11.1/metaconfig-core_2.13-0.11.1.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scalameta/parsers_2.13/4.6.0/parsers_2.13-4.6.0.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scala-lang/scalap/2.13.9/scalap-2.13.9.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/com/geirsson/metaconfig-typesafe-config_2.13/0.11.1/metaconfig-typesafe-config_2.13-0.11.1.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/com/geirsson/metaconfig-pprint_2.13/0.11.1/metaconfig-pprint_2.13-0.11.1.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scala-lang/scala-compiler/2.13.9/scala-compiler-2.13.9.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.5.0/scala-collection-compat_2.13-2.5.0.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/com/geirsson/metaconfig-pprint_2.13/0.11.1/metaconfig-pprint_2.13-0.11.1.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scala-lang/scala-compiler/2.13.9/scala-compiler-2.13.9.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.5.0/scala-collection-compat_2.13-2.5.0.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/com/lihaoyi/fansi_2.13/0.3.0/fansi_2.13-0.3.0.pom
|
||||||
|
Downloaded https://repo1.maven.org/maven2/com/lihaoyi/fansi_2.13/0.3.0/fansi_2.13-0.3.0.pom
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scalameta/scalafmt-config_2.13/3.6.1/scalafmt-config_2.13-3.6.1.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scalameta/scalameta_2.13/4.6.0/scalameta_2.13-4.6.0.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/com/geirsson/metaconfig-pprint_2.13/0.11.1/metaconfig-pprint_2.13-0.11.1.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scala-lang/scalap/2.13.9/scalap-2.13.9.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scalameta/scalafmt-core_2.13/3.6.1/scalafmt-core_2.13-3.6.1.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scalameta/parsers_2.13/4.6.0/parsers_2.13-4.6.0.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scalameta/scalafmt-config_2.13/3.6.1/scalafmt-config_2.13-3.6.1.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/com/geirsson/metaconfig-core_2.13/0.11.1/metaconfig-core_2.13-0.11.1.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/com/geirsson/metaconfig-pprint_2.13/0.11.1/metaconfig-pprint_2.13-0.11.1.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.5.0/scala-collection-compat_2.13-2.5.0.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_2.13/2.5.0/scala-collection-compat_2.13-2.5.0.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/com/geirsson/metaconfig-typesafe-config_2.13/0.11.1/metaconfig-typesafe-config_2.13-0.11.1.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/com/geirsson/metaconfig-typesafe-config_2.13/0.11.1/metaconfig-typesafe-config_2.13-0.11.1.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scala-lang/modules/scala-parallel-collections_2.13/1.0.4/scala-parallel-collections_2.13-1.0.4.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scala-lang/scalap/2.13.9/scalap-2.13.9.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/com/lihaoyi/fansi_2.13/0.3.0/fansi_2.13-0.3.0.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/com/geirsson/metaconfig-core_2.13/0.11.1/metaconfig-core_2.13-0.11.1.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scala-lang/scala-compiler/2.13.9/scala-compiler-2.13.9.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/com/lihaoyi/fansi_2.13/0.3.0/fansi_2.13-0.3.0.jar
|
||||||
|
Downloading https://repo1.maven.org/maven2/org/scalameta/scalafmt-sysops_2.13/3.6.1/scalafmt-sysops_2.13-3.6.1.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scalameta/scalameta_2.13/4.6.0/scalameta_2.13-4.6.0.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scalameta/scalafmt-sysops_2.13/3.6.1/scalafmt-sysops_2.13-3.6.1.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scala-lang/modules/scala-parallel-collections_2.13/1.0.4/scala-parallel-collections_2.13-1.0.4.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scalameta/scalafmt-core_2.13/3.6.1/scalafmt-core_2.13-3.6.1.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scalameta/parsers_2.13/4.6.0/parsers_2.13-4.6.0.jar
|
||||||
|
Downloaded https://repo1.maven.org/maven2/org/scala-lang/scala-compiler/2.13.9/scala-compiler-2.13.9.jar
|
||||||
|
parsed config (v3.6.1): /home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/.scalafmt.conf
|
@ -0,0 +1,49 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
"qref:786864fe:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-http_3/0.0.3/zio-http_3-0.0.3.jar",
|
||||||
|
"qref:ad6c0293:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/apache/logging/log4j/log4j-slf4j-impl/2.19.0/log4j-slf4j-impl-2.19.0.jar",
|
||||||
|
"qref:b5501cbb:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/scala3-library_3/3.2.0/scala3-library_3-3.2.0.jar",
|
||||||
|
"qref:95c82ffd:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-http-logging_3/0.0.3/zio-http-logging_3-0.0.3.jar",
|
||||||
|
"qref:f4359597:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-codec-http/4.1.82.Final/netty-codec-http-4.1.82.Final.jar",
|
||||||
|
"qref:be47dde4:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-handler-proxy/4.1.82.Final/netty-handler-proxy-4.1.82.Final.jar",
|
||||||
|
"qref:c42a208a:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-epoll/4.1.82.Final/netty-transport-native-epoll-4.1.82.Final.jar",
|
||||||
|
"qref:0f82b946:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-epoll/4.1.82.Final/netty-transport-native-epoll-4.1.82.Final-linux-x86_64.jar",
|
||||||
|
"qref:40b13f5d:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-epoll/4.1.82.Final/netty-transport-native-epoll-4.1.82.Final-linux-aarch_64.jar",
|
||||||
|
"qref:b29de332:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-kqueue/4.1.82.Final/netty-transport-native-kqueue-4.1.82.Final.jar",
|
||||||
|
"qref:a078c663:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-kqueue/4.1.82.Final/netty-transport-native-kqueue-4.1.82.Final-osx-x86_64.jar",
|
||||||
|
"qref:6c6216f9:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-kqueue/4.1.82.Final/netty-transport-native-kqueue-4.1.82.Final-osx-aarch_64.jar",
|
||||||
|
"qref:3a76b25e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio_3/2.0.3/zio_3-2.0.3.jar",
|
||||||
|
"qref:3146d8bf:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-streams_3/2.0.3/zio-streams_3-2.0.3.jar",
|
||||||
|
"qref:fd02770d:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-schema_3/0.2.1/zio-schema_3-0.2.1.jar",
|
||||||
|
"qref:2fec96f9:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-schema-json_3/0.2.1/zio-schema-json_3-0.2.1.jar",
|
||||||
|
"qref:c4d72723:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/incubator/netty-incubator-transport-native-io_uring/0.0.15.Final/netty-incubator-transport-native-io_uring-0.0.15.Final-linux-x86_64.jar",
|
||||||
|
"qref:32e5062e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/slf4j/slf4j-api/1.7.36/slf4j-api-1.7.36.jar",
|
||||||
|
"qref:b7314c89:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/apache/logging/log4j/log4j-api/2.19.0/log4j-api-2.19.0.jar",
|
||||||
|
"qref:d4fc68fd:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/apache/logging/log4j/log4j-core/2.19.0/log4j-core-2.19.0.jar",
|
||||||
|
"qref:5c87fdc5:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/scala-library/2.13.8/scala-library-2.13.8.jar",
|
||||||
|
"qref:141b2b3d:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-common/4.1.82.Final/netty-common-4.1.82.Final.jar",
|
||||||
|
"qref:22aaaca7:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-buffer/4.1.82.Final/netty-buffer-4.1.82.Final.jar",
|
||||||
|
"qref:87d38de6:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport/4.1.82.Final/netty-transport-4.1.82.Final.jar",
|
||||||
|
"qref:dfc6650d:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-codec/4.1.82.Final/netty-codec-4.1.82.Final.jar",
|
||||||
|
"qref:71f3a5d9:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-handler/4.1.82.Final/netty-handler-4.1.82.Final.jar",
|
||||||
|
"qref:e5cd026e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-codec-socks/4.1.82.Final/netty-codec-socks-4.1.82.Final.jar",
|
||||||
|
"qref:32cee56e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-unix-common/4.1.82.Final/netty-transport-native-unix-common-4.1.82.Final.jar",
|
||||||
|
"qref:89ac2f5e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-classes-epoll/4.1.82.Final/netty-transport-classes-epoll-4.1.82.Final.jar",
|
||||||
|
"qref:1ec3ace8:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-classes-kqueue/4.1.82.Final/netty-transport-classes-kqueue-4.1.82.Final.jar",
|
||||||
|
"qref:2e57b31b:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-internal-macros_3/2.0.3/zio-internal-macros_3-2.0.3.jar",
|
||||||
|
"qref:de5b15b3:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-stacktracer_3/2.0.3/zio-stacktracer_3-2.0.3.jar",
|
||||||
|
"qref:b680016c:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/izumi-reflect_3/2.2.0/izumi-reflect_3-2.2.0.jar",
|
||||||
|
"qref:68a6ff28:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-schema-macros_3/0.2.1/zio-schema-macros_3-0.2.1.jar",
|
||||||
|
"qref:823114a4:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-prelude_3/1.0.0-RC15/zio-prelude_3-1.0.0-RC15.jar",
|
||||||
|
"qref:45929e91:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-schema-derivation_3/0.2.1/zio-schema-derivation_3-0.2.1.jar",
|
||||||
|
"qref:74e08b1b:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-json_3/0.3.0-RC9/zio-json_3-0.3.0-RC9.jar",
|
||||||
|
"qref:d882e809:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/incubator/netty-incubator-transport-classes-io_uring/0.0.15.Final/netty-incubator-transport-classes-io_uring-0.0.15.Final.jar",
|
||||||
|
"qref:2f06acb1:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-resolver/4.1.82.Final/netty-resolver-4.1.82.Final.jar",
|
||||||
|
"qref:fca49b5e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/izumi-reflect-thirdparty-boopickle-shaded_3/2.2.0/izumi-reflect-thirdparty-boopickle-shaded_3-2.2.0.jar",
|
||||||
|
"qref:1be77ffe:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-prelude-macros_3/1.0.0-RC15/zio-prelude-macros_3-1.0.0-RC15.jar",
|
||||||
|
"qref:50fa8563:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_3/2.5.0/scala-collection-compat_3-2.5.0.jar",
|
||||||
|
"qref:07d971d9:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/softwaremill/magnolia1_3/magnolia_3/1.0.0/magnolia_3-1.0.0.jar"
|
||||||
|
],
|
||||||
|
"valueHash": 589717268,
|
||||||
|
"inputsHash": -1243029773
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 0,
|
||||||
|
"inputsHash": -682936988
|
||||||
|
}
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"value": "org.scala-lang",
|
"value": "org.scala-lang",
|
||||||
"valueHash": 1747943263,
|
"valueHash": 1747943263,
|
||||||
"inputsHash": 1046496917
|
"inputsHash": 936005743
|
||||||
}
|
}
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"value": "3.2.0",
|
"value": "3.2.0",
|
||||||
"valueHash": 48519481,
|
"valueHash": 48519481,
|
||||||
"inputsHash": -400702942
|
"inputsHash": -511194116
|
||||||
}
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
"ref:e6c2d371:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/.scalafmt.conf"
|
||||||
|
],
|
||||||
|
"valueHash": -267721387,
|
||||||
|
"inputsHash": -1584380476
|
||||||
|
}
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"value": [
|
"value": [
|
||||||
"ref:f4ab4dc0:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/src"
|
"ref:95490f6f:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/src"
|
||||||
],
|
],
|
||||||
"valueHash": -909178762,
|
"valueHash": 1181484811,
|
||||||
"inputsHash": 729607789
|
"inputsHash": -179710719
|
||||||
}
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 473519988,
|
||||||
|
"inputsHash": -1637701402
|
||||||
|
}
|
@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
"ref:29e2a496:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/src/org/tbasket/InternalBasketServerException.scala",
|
||||||
|
"ref:ce022bc0:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/src/org/tbasket/handler/HandlerUtils.scala",
|
||||||
|
"ref:4b8a7ce4:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/src/org/tbasket/handler/LoginHandler.scala",
|
||||||
|
"ref:4d4e838d:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/src/org/tbasket/handler/IncrementHandler.scala",
|
||||||
|
"ref:60d26ff6:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/src/org/tbasket/ExternalBasketServerException.scala",
|
||||||
|
"ref:4a2210b7:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/src/org/tbasket/Main.scala",
|
||||||
|
"ref:58860610:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/src/org/tbasket/auth/UserSession.scala",
|
||||||
|
"ref:bd076fe3:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/src/org/tbasket/auth/UserSessionHandler.scala",
|
||||||
|
"ref:c1a223f8:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/src/org/tbasket/EndpointSetup.scala"
|
||||||
|
],
|
||||||
|
"valueHash": 1819157258,
|
||||||
|
"inputsHash": 33935089
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
"ref:09790f6f:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/src"
|
||||||
|
],
|
||||||
|
"valueHash": 235242755,
|
||||||
|
"inputsHash": 1775352012
|
||||||
|
}
|
@ -0,0 +1,86 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
"ref:c984eca8:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/API/resources",
|
||||||
|
"ref:c565ef4b:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/out/API/compile.dest/classes",
|
||||||
|
"ref:e22c2942:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/DB/resources",
|
||||||
|
"ref:5aacd86a:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/out/DB/compile.dest/classes",
|
||||||
|
"ref:c984eca8:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/Core/resources",
|
||||||
|
"qref:39a886be:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio_3/2.0.6/zio_3-2.0.6.jar",
|
||||||
|
"qref:b57cb3ac:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-json_3/0.4.2/zio-json_3-0.4.2.jar",
|
||||||
|
"qref:ad6c0293:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/apache/logging/log4j/log4j-slf4j-impl/2.19.0/log4j-slf4j-impl-2.19.0.jar",
|
||||||
|
"qref:b5501cbb:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/scala3-library_3/3.2.0/scala3-library_3-3.2.0.jar",
|
||||||
|
"qref:786864fe:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-http_3/0.0.3/zio-http_3-0.0.3.jar",
|
||||||
|
"qref:bd4336c2:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/getquill/quill-jdbc-zio_3/4.6.0/quill-jdbc-zio_3-4.6.0.jar",
|
||||||
|
"qref:0ef11a08:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/xerial/sqlite-jdbc/3.40.0.0/sqlite-jdbc-3.40.0.0.jar",
|
||||||
|
"qref:c1a82478:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-internal-macros_3/2.0.6/zio-internal-macros_3-2.0.6.jar",
|
||||||
|
"qref:468513bd:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-stacktracer_3/2.0.6/zio-stacktracer_3-2.0.6.jar",
|
||||||
|
"qref:9cd8b0c5:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/izumi-reflect_3/2.2.2/izumi-reflect_3-2.2.2.jar",
|
||||||
|
"qref:3146d8bf:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-streams_3/2.0.3/zio-streams_3-2.0.3.jar",
|
||||||
|
"qref:0f77930e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-collection-compat_3/2.8.1/scala-collection-compat_3-2.8.1.jar",
|
||||||
|
"qref:4b8d8225:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/softwaremill/magnolia1_3/magnolia_3/1.1.5/magnolia_3-1.1.5.jar",
|
||||||
|
"qref:32e5062e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/slf4j/slf4j-api/1.7.36/slf4j-api-1.7.36.jar",
|
||||||
|
"qref:b7314c89:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/apache/logging/log4j/log4j-api/2.19.0/log4j-api-2.19.0.jar",
|
||||||
|
"qref:d4fc68fd:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/apache/logging/log4j/log4j-core/2.19.0/log4j-core-2.19.0.jar",
|
||||||
|
"qref:5c87fdc5:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/scala-library/2.13.8/scala-library-2.13.8.jar",
|
||||||
|
"qref:95c82ffd:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-http-logging_3/0.0.3/zio-http-logging_3-0.0.3.jar",
|
||||||
|
"qref:f4359597:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-codec-http/4.1.82.Final/netty-codec-http-4.1.82.Final.jar",
|
||||||
|
"qref:be47dde4:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-handler-proxy/4.1.82.Final/netty-handler-proxy-4.1.82.Final.jar",
|
||||||
|
"qref:c42a208a:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-epoll/4.1.82.Final/netty-transport-native-epoll-4.1.82.Final.jar",
|
||||||
|
"qref:0f82b946:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-epoll/4.1.82.Final/netty-transport-native-epoll-4.1.82.Final-linux-x86_64.jar",
|
||||||
|
"qref:40b13f5d:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-epoll/4.1.82.Final/netty-transport-native-epoll-4.1.82.Final-linux-aarch_64.jar",
|
||||||
|
"qref:b29de332:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-kqueue/4.1.82.Final/netty-transport-native-kqueue-4.1.82.Final.jar",
|
||||||
|
"qref:a078c663:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-kqueue/4.1.82.Final/netty-transport-native-kqueue-4.1.82.Final-osx-x86_64.jar",
|
||||||
|
"qref:6c6216f9:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-kqueue/4.1.82.Final/netty-transport-native-kqueue-4.1.82.Final-osx-aarch_64.jar",
|
||||||
|
"qref:fd02770d:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-schema_3/0.2.1/zio-schema_3-0.2.1.jar",
|
||||||
|
"qref:2fec96f9:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-schema-json_3/0.2.1/zio-schema-json_3-0.2.1.jar",
|
||||||
|
"qref:c4d72723:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/incubator/netty-incubator-transport-native-io_uring/0.0.15.Final/netty-incubator-transport-native-io_uring-0.0.15.Final-linux-x86_64.jar",
|
||||||
|
"qref:9c4bbd97:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/getquill/quill-zio_3/4.6.0/quill-zio_3-4.6.0.jar",
|
||||||
|
"qref:c815cbaf:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/getquill/quill-sql_3/4.6.0/quill-sql_3-4.6.0.jar",
|
||||||
|
"qref:3ea9ab84:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/getquill/quill-jdbc_3/4.6.0/quill-jdbc_3-4.6.0.jar",
|
||||||
|
"qref:4f8a588e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/modules/scala-java8-compat_3/1.0.1/scala-java8-compat_3-1.0.1.jar",
|
||||||
|
"qref:a161e2c9:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/zaxxer/HikariCP/3.4.5/HikariCP-3.4.5.jar",
|
||||||
|
"qref:5eab0071:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/izumi-reflect-thirdparty-boopickle-shaded_3/2.2.2/izumi-reflect-thirdparty-boopickle-shaded_3-2.2.2.jar",
|
||||||
|
"qref:141b2b3d:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-common/4.1.82.Final/netty-common-4.1.82.Final.jar",
|
||||||
|
"qref:22aaaca7:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-buffer/4.1.82.Final/netty-buffer-4.1.82.Final.jar",
|
||||||
|
"qref:87d38de6:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport/4.1.82.Final/netty-transport-4.1.82.Final.jar",
|
||||||
|
"qref:dfc6650d:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-codec/4.1.82.Final/netty-codec-4.1.82.Final.jar",
|
||||||
|
"qref:71f3a5d9:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-handler/4.1.82.Final/netty-handler-4.1.82.Final.jar",
|
||||||
|
"qref:e5cd026e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-codec-socks/4.1.82.Final/netty-codec-socks-4.1.82.Final.jar",
|
||||||
|
"qref:32cee56e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-native-unix-common/4.1.82.Final/netty-transport-native-unix-common-4.1.82.Final.jar",
|
||||||
|
"qref:89ac2f5e:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-classes-epoll/4.1.82.Final/netty-transport-classes-epoll-4.1.82.Final.jar",
|
||||||
|
"qref:1ec3ace8:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-transport-classes-kqueue/4.1.82.Final/netty-transport-classes-kqueue-4.1.82.Final.jar",
|
||||||
|
"qref:68a6ff28:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-schema-macros_3/0.2.1/zio-schema-macros_3-0.2.1.jar",
|
||||||
|
"qref:823114a4:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-prelude_3/1.0.0-RC15/zio-prelude_3-1.0.0-RC15.jar",
|
||||||
|
"qref:45929e91:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-schema-derivation_3/0.2.1/zio-schema-derivation_3-0.2.1.jar",
|
||||||
|
"qref:d882e809:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/incubator/netty-incubator-transport-classes-io_uring/0.0.15.Final/netty-incubator-transport-classes-io_uring-0.0.15.Final.jar",
|
||||||
|
"qref:495a33af:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/suzaku/boopickle_3/1.4.0/boopickle_3-1.4.0.jar",
|
||||||
|
"qref:5be1cf90:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/lihaoyi/pprint_3/0.6.6/pprint_3-0.6.6.jar",
|
||||||
|
"qref:35b44e48:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/getquill/quill-engine_3/4.6.0/quill-engine_3-4.6.0.jar",
|
||||||
|
"qref:8381237d:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/getquill/quill-util_3/4.6.0/quill-util_3-4.6.0.jar",
|
||||||
|
"qref:ce4955c6:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/typesafe/scala-logging/scala-logging_3/3.9.4/scala-logging_3-3.9.4.jar",
|
||||||
|
"qref:2f06acb1:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/io/netty/netty-resolver/4.1.82.Final/netty-resolver-4.1.82.Final.jar",
|
||||||
|
"qref:1be77ffe:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/dev/zio/zio-prelude-macros_3/1.0.0-RC15/zio-prelude-macros_3-1.0.0-RC15.jar",
|
||||||
|
"qref:adbef666:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/lihaoyi/fansi_3/0.2.14/fansi_3-0.2.14.jar",
|
||||||
|
"qref:e1e28d5d:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/lihaoyi/sourcecode_3/0.2.7/sourcecode_3-0.2.7.jar",
|
||||||
|
"qref:5dbac183:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/typesafe/config/1.4.2/config-1.4.2.jar",
|
||||||
|
"qref:4b535f97:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/github/takayahilton/sql-formatter_2.13/1.2.1/sql-formatter_2.13-1.2.1.jar",
|
||||||
|
"qref:de546ab1:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scalameta/scalafmt-core_2.13/3.1.0/scalafmt-core_2.13-3.1.0.jar",
|
||||||
|
"qref:7e996396:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scalameta/scalafmt-sysops_2.13/3.1.0/scalafmt-sysops_2.13-3.1.0.jar",
|
||||||
|
"qref:80f524de:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/geirsson/metaconfig-core_2.13/0.9.15/metaconfig-core_2.13-0.9.15.jar",
|
||||||
|
"qref:64effb84:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scalameta/scalameta_2.13/4.4.29/scalameta_2.13-4.4.29.jar",
|
||||||
|
"qref:fb7ab5e4:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/scala-reflect/2.13.6/scala-reflect-2.13.6.jar",
|
||||||
|
"qref:aa2d2400:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/geirsson/metaconfig-typesafe-config_2.13/0.9.15/metaconfig-typesafe-config_2.13-0.9.15.jar",
|
||||||
|
"qref:6f58fe00:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/typelevel/paiges-core_2.13/0.4.2/paiges-core_2.13-0.4.2.jar",
|
||||||
|
"qref:bb13c6e2:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scalameta/parsers_2.13/4.4.29/parsers_2.13-4.4.29.jar",
|
||||||
|
"qref:02c964b4:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/scalap/2.13.6/scalap-2.13.6.jar",
|
||||||
|
"qref:9a0ede71:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scalameta/trees_2.13/4.4.29/trees_2.13-4.4.29.jar",
|
||||||
|
"qref:683c2f1a:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/scala-compiler/2.13.6/scala-compiler-2.13.6.jar",
|
||||||
|
"qref:738d20ee:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scalameta/common_2.13/4.4.29/common_2.13-4.4.29.jar",
|
||||||
|
"qref:58243602:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/scalameta/fastparse-v2_2.13/2.3.1/fastparse-v2_2.13-2.3.1.jar",
|
||||||
|
"qref:db5c9401:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/org/jline/jline/3.19.0/jline-3.19.0.jar",
|
||||||
|
"qref:84bac27c:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/net/java/dev/jna/jna/5.3.1/jna-5.3.1.jar",
|
||||||
|
"qref:2edca6f7:/home/maxime/.cache/coursier/v1/https/repo1.maven.org/maven2/com/lihaoyi/geny_2.13/0.6.5/geny_2.13-0.6.5.jar"
|
||||||
|
],
|
||||||
|
"valueHash": 1988054202,
|
||||||
|
"inputsHash": -916191649
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 0,
|
||||||
|
"inputsHash": 49542187
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 473519988,
|
||||||
|
"inputsHash": 1133280082
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 473519988,
|
||||||
|
"inputsHash": 49542187
|
||||||
|
}
|
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"value": "ref:b8fafc46:/home/maxime/Projects/IdeaProjects/Tactique-Basket-Backend/out/Core/ideaCompileOutput.dest/classes",
|
||||||
|
"valueHash": -1191510970,
|
||||||
|
"inputsHash": 49542187
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 473519988,
|
||||||
|
"inputsHash": 49542187
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 473519988,
|
||||||
|
"inputsHash": 49542187
|
||||||
|
}
|
@ -0,0 +1,130 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
{
|
||||||
|
"dep": {
|
||||||
|
"module": {
|
||||||
|
"organization": {
|
||||||
|
"value": "dev.zio"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"value": "zio"
|
||||||
|
},
|
||||||
|
"attributes": {
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"version": "2.0.6",
|
||||||
|
"configuration": {
|
||||||
|
"value": "default(compile)"
|
||||||
|
},
|
||||||
|
"minimizedExclusions": {
|
||||||
|
"data": "coursier.core.MinimizedExclusions.ExcludeNone"
|
||||||
|
},
|
||||||
|
"publication": {
|
||||||
|
"name": "",
|
||||||
|
"type": {
|
||||||
|
"value": ""
|
||||||
|
},
|
||||||
|
"ext": {
|
||||||
|
"value": ""
|
||||||
|
},
|
||||||
|
"classifier": {
|
||||||
|
"value": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"optional": false,
|
||||||
|
"transitive": true
|
||||||
|
},
|
||||||
|
"cross": {
|
||||||
|
"$type": "mill.scalalib.CrossVersion.Binary",
|
||||||
|
"platformed": false
|
||||||
|
},
|
||||||
|
"force": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"dep": {
|
||||||
|
"module": {
|
||||||
|
"organization": {
|
||||||
|
"value": "org.apache.logging.log4j"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"value": "log4j-slf4j-impl"
|
||||||
|
},
|
||||||
|
"attributes": {
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"version": "2.19.0",
|
||||||
|
"configuration": {
|
||||||
|
"value": "default(compile)"
|
||||||
|
},
|
||||||
|
"minimizedExclusions": {
|
||||||
|
"data": "coursier.core.MinimizedExclusions.ExcludeNone"
|
||||||
|
},
|
||||||
|
"publication": {
|
||||||
|
"name": "",
|
||||||
|
"type": {
|
||||||
|
"value": ""
|
||||||
|
},
|
||||||
|
"ext": {
|
||||||
|
"value": ""
|
||||||
|
},
|
||||||
|
"classifier": {
|
||||||
|
"value": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"optional": false,
|
||||||
|
"transitive": true
|
||||||
|
},
|
||||||
|
"cross": {
|
||||||
|
"$type": "mill.scalalib.CrossVersion.Constant",
|
||||||
|
"value": "",
|
||||||
|
"platformed": false
|
||||||
|
},
|
||||||
|
"force": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"dep": {
|
||||||
|
"module": {
|
||||||
|
"organization": {
|
||||||
|
"value": "dev.zio"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"value": "zio-json"
|
||||||
|
},
|
||||||
|
"attributes": {
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"version": "0.4.2",
|
||||||
|
"configuration": {
|
||||||
|
"value": "default(compile)"
|
||||||
|
},
|
||||||
|
"minimizedExclusions": {
|
||||||
|
"data": "coursier.core.MinimizedExclusions.ExcludeNone"
|
||||||
|
},
|
||||||
|
"publication": {
|
||||||
|
"name": "",
|
||||||
|
"type": {
|
||||||
|
"value": ""
|
||||||
|
},
|
||||||
|
"ext": {
|
||||||
|
"value": ""
|
||||||
|
},
|
||||||
|
"classifier": {
|
||||||
|
"value": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"optional": false,
|
||||||
|
"transitive": true
|
||||||
|
},
|
||||||
|
"cross": {
|
||||||
|
"$type": "mill.scalalib.CrossVersion.Binary",
|
||||||
|
"platformed": false
|
||||||
|
},
|
||||||
|
"force": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"valueHash": -728437380,
|
||||||
|
"inputsHash": -1244232985
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 0,
|
||||||
|
"inputsHash": -682936988
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 473519988,
|
||||||
|
"inputsHash": -511194116
|
||||||
|
}
|
@ -0,0 +1,47 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
{
|
||||||
|
"dep": {
|
||||||
|
"module": {
|
||||||
|
"organization": {
|
||||||
|
"value": "org.scala-lang"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"value": "scala3-library"
|
||||||
|
},
|
||||||
|
"attributes": {
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"version": "3.2.0",
|
||||||
|
"configuration": {
|
||||||
|
"value": "default(compile)"
|
||||||
|
},
|
||||||
|
"minimizedExclusions": {
|
||||||
|
"data": "coursier.core.MinimizedExclusions.ExcludeNone"
|
||||||
|
},
|
||||||
|
"publication": {
|
||||||
|
"name": "",
|
||||||
|
"type": {
|
||||||
|
"value": ""
|
||||||
|
},
|
||||||
|
"ext": {
|
||||||
|
"value": ""
|
||||||
|
},
|
||||||
|
"classifier": {
|
||||||
|
"value": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"optional": false,
|
||||||
|
"transitive": true
|
||||||
|
},
|
||||||
|
"cross": {
|
||||||
|
"$type": "mill.scalalib.CrossVersion.Binary",
|
||||||
|
"platformed": true
|
||||||
|
},
|
||||||
|
"force": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"valueHash": 180912663,
|
||||||
|
"inputsHash": 1913053147
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 0,
|
||||||
|
"inputsHash": 49542187
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"value": [
|
||||||
|
|
||||||
|
],
|
||||||
|
"valueHash": 473519988,
|
||||||
|
"inputsHash": 49542187
|
||||||
|
}
|
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"value": "",
|
||||||
|
"valueHash": 0,
|
||||||
|
"inputsHash": 49542187
|
||||||
|
}
|
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"value": null,
|
||||||
|
"valueHash": 0,
|
||||||
|
"inputsHash": -1570750509
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show More
Reference in new issue