mirror of
https://github.com/TheAnachronism/docspell.git
synced 2025-06-22 02:18:26 +00:00
Updated following dependencies as they need changes to the code to work properly:
- Scala - fs2 - http4s
This commit is contained in:
@ -10,6 +10,7 @@ import java.security.SecureRandom
|
||||
|
||||
import cats.Monoid
|
||||
import cats.effect.Async
|
||||
import fs2.io.file.Files
|
||||
|
||||
import docspell.backend.auth.Login
|
||||
import docspell.backend.signup.{Config => SignupConfig}
|
||||
@ -30,7 +31,7 @@ object ConfigFile {
|
||||
// IntelliJ is wrong, this is required
|
||||
import Implicits._
|
||||
|
||||
def loadConfig[F[_]: Async](args: List[String]): F[Config] = {
|
||||
def loadConfig[F[_]: Async: Files](args: List[String]): F[Config] = {
|
||||
val logger = docspell.logging.getLogger[F]
|
||||
val validate =
|
||||
Validation.of(
|
||||
|
@ -9,6 +9,7 @@ package docspell.restserver
|
||||
import cats.effect._
|
||||
import fs2.Stream
|
||||
import fs2.concurrent.Topic
|
||||
import fs2.io.file.Files
|
||||
|
||||
import docspell.backend.BackendApp
|
||||
import docspell.backend.auth.{AuthToken, ShareToken}
|
||||
@ -36,7 +37,7 @@ import org.http4s.client.Client
|
||||
import org.http4s.server.Router
|
||||
import org.http4s.server.websocket.WebSocketBuilder2
|
||||
|
||||
final class RestAppImpl[F[_]: Async](
|
||||
final class RestAppImpl[F[_]: Async: Files](
|
||||
val config: Config,
|
||||
val backend: BackendApp[F],
|
||||
httpClient: Client[F],
|
||||
@ -162,7 +163,7 @@ final class RestAppImpl[F[_]: Async](
|
||||
|
||||
object RestAppImpl {
|
||||
|
||||
def create[F[_]: Async](
|
||||
def create[F[_]: Async: Files](
|
||||
cfg: Config,
|
||||
pools: Pools,
|
||||
store: Store[F],
|
||||
|
@ -12,6 +12,8 @@ import cats.effect._
|
||||
import cats.implicits._
|
||||
import fs2.Stream
|
||||
import fs2.concurrent.Topic
|
||||
import fs2.io.file.Files
|
||||
import fs2.io.net.Network
|
||||
|
||||
import docspell.backend.msg.Topics
|
||||
import docspell.backend.ops.ONode
|
||||
@ -35,7 +37,7 @@ import org.http4s.server.websocket.WebSocketBuilder2
|
||||
|
||||
object RestServer {
|
||||
|
||||
def serve[F[_]: Async](
|
||||
def serve[F[_]: Async: Files: Network](
|
||||
cfg: Config,
|
||||
pools: Pools
|
||||
): F[ExitCode] =
|
||||
@ -55,7 +57,7 @@ object RestServer {
|
||||
.flatMap { case (restApp, pubSub, setting) =>
|
||||
Stream(
|
||||
restApp.subscriptions,
|
||||
restApp.eventConsume(2),
|
||||
restApp.eventConsume(maxConcurrent = 2),
|
||||
Stream.resource {
|
||||
if (cfg.serverOptions.enableHttp2)
|
||||
EmberServerBuilder
|
||||
@ -81,7 +83,7 @@ object RestServer {
|
||||
(server ++ Stream(keepAlive)).parJoinUnbounded.compile.drain.as(ExitCode.Success)
|
||||
} yield exit
|
||||
|
||||
def createApp[F[_]: Async](
|
||||
def createApp[F[_]: Async: Files: Network](
|
||||
cfg: Config,
|
||||
pools: Pools,
|
||||
wsTopic: Topic[F, OutputEvent]
|
||||
|
@ -9,6 +9,7 @@ package docspell.restserver.routes
|
||||
import cats.data.OptionT
|
||||
import cats.effect._
|
||||
import cats.implicits._
|
||||
import fs2.io.file.Files
|
||||
|
||||
import docspell.backend.BackendApp
|
||||
import docspell.backend.auth.AuthToken
|
||||
@ -25,7 +26,7 @@ import org.log4s._
|
||||
object UploadRoutes {
|
||||
private[this] val logger = getLogger
|
||||
|
||||
def secured[F[_]: Async](
|
||||
def secured[F[_]: Async: Files](
|
||||
backend: BackendApp[F],
|
||||
cfg: Config,
|
||||
user: AuthToken
|
||||
@ -50,7 +51,7 @@ object UploadRoutes {
|
||||
}
|
||||
}
|
||||
|
||||
def open[F[_]: Async](backend: BackendApp[F], cfg: Config): HttpRoutes[F] = {
|
||||
def open[F[_]: Async: Files](backend: BackendApp[F], cfg: Config): HttpRoutes[F] = {
|
||||
val dsl = new Http4sDsl[F] with ResponseGenerator[F] {}
|
||||
import dsl._
|
||||
|
||||
@ -78,7 +79,7 @@ object UploadRoutes {
|
||||
}
|
||||
}
|
||||
|
||||
private def submitFiles[F[_]: Async](
|
||||
private def submitFiles[F[_]: Async: Files](
|
||||
backend: BackendApp[F],
|
||||
cfg: Config,
|
||||
accOrSrc: Either[Ident, CollectiveId],
|
||||
|
Reference in New Issue
Block a user