From d9223aa2861bc256f61a85b85af6d6311093af0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bu=CC=80i=20Vie=CC=A3=CC=82t=20Tha=CC=80nh?= Date: Thu, 8 Dec 2022 18:37:24 +0700 Subject: [PATCH 1/5] Reorganize into multiple sbt projects + tranzactio (core): Only depends on zio and zio-stream + tranzactio-anorm: Depends on core and play's anorm + tranzactio-doobie: Depends on core, zio-interop-cats, and doobie-core + examples: Contains the old src/samples/scala as the test sources. + Old test sources `integration.{AnormIT, DoobieIT}` also be moved to examples project because they depend on examples' classes. + (The only) break changes: Users of tranzactio have to change their libraryDependencies: Before: ``` // Add this if they use doobie libraryDependencies ++= Seq( "io.github.gaelrenoux" %% "tranzactio" % version, "org.tpolecat" %% "doobie-core" % doobieVersion, ) // Add this if they use anorm libraryDependencies ++= Seq( "io.github.gaelrenoux" %% "tranzactio" % version, "org.playframework.anorm" %% "anorm" % anormVersion, ) ``` Now: ``` // Add this if they use doobie libraryDependencies += "io.github.gaelrenoux" %% "tranzactio-doobie" % version // Add this if they use anorm libraryDependencies += "io.github.gaelrenoux" %% "tranzactio-anorm" % version, ``` + Users who use anorm now don't depend on zio-interop-cats and all its transitive dependencies, eg cats. + tranzactio now don't have optional dependencies. It is dangerous to ensure that an optional dependency is actually optional. For example, if we (in tranzactio's code) import a doobie's class in a class in shared code and user use anorm (so they dont add doobie dependency because its optional) - then there will be a RuntimeException. --- .../gaelrenoux/tranzactio/anorm/package.scala | 0 build.sbt | 38 ++++++++++++++++--- .../tranzactio/ConnectionSource.scala | 0 .../tranzactio/DatabaseModuleBase.scala | 0 .../gaelrenoux/tranzactio/DatabaseOps.scala | 0 .../tranzactio/DatabaseServiceBase.scala | 0 .../gaelrenoux/tranzactio/DbException.scala | 0 .../gaelrenoux/tranzactio/Wrapper.scala | 0 .../tranzactio/errorStrategies.scala | 0 .../gaelrenoux/tranzactio/package.scala | 0 .../test/DatabaseModuleTestOps.scala | 0 .../tranzactio/test/NoopJdbcConnection.scala | 0 .../tranzactio/DatabaseOpsCompileTest.scala | 0 .../gaelrenoux/tranzactio/JdbcLayers.scala | 0 .../SingleConnectionSourceTest.scala | 0 .../tranzactio/integration/ITSpec.scala | 0 .../tranzactio/doobie/package.scala | 0 .../tranzactio/integration/AnormIT.scala | 0 .../tranzactio/integration/DoobieIT.scala | 0 .../src/test}/scala/samples/Conf.scala | 0 .../test}/scala/samples/ConnectionPool.scala | 0 .../src/test}/scala/samples/Person.scala | 0 .../src/test}/scala/samples/SamplesSpec.scala | 0 .../scala/samples/anorm/LayeredApp.scala | 0 .../scala/samples/anorm/PersonQueries.scala | 0 .../test}/scala/samples/anorm/package.scala | 0 .../scala/samples/anorm/test/SomeTest.scala | 0 .../scala/samples/doobie/LayeredApp.scala | 0 .../samples/doobie/LayeredAppStreaming.scala | 0 .../scala/samples/doobie/PersonQueries.scala | 0 .../test}/scala/samples/doobie/package.scala | 0 .../scala/samples/doobie/test/SomeTest.scala | 0 project/BuildHelper.scala | 17 +++++---- 33 files changed, 42 insertions(+), 13 deletions(-) rename {src => anorm/src}/main/scala/io/github/gaelrenoux/tranzactio/anorm/package.scala (100%) rename {src => core/src}/main/scala/io/github/gaelrenoux/tranzactio/ConnectionSource.scala (100%) rename {src => core/src}/main/scala/io/github/gaelrenoux/tranzactio/DatabaseModuleBase.scala (100%) rename {src => core/src}/main/scala/io/github/gaelrenoux/tranzactio/DatabaseOps.scala (100%) rename {src => core/src}/main/scala/io/github/gaelrenoux/tranzactio/DatabaseServiceBase.scala (100%) rename {src => core/src}/main/scala/io/github/gaelrenoux/tranzactio/DbException.scala (100%) rename {src => core/src}/main/scala/io/github/gaelrenoux/tranzactio/Wrapper.scala (100%) rename {src => core/src}/main/scala/io/github/gaelrenoux/tranzactio/errorStrategies.scala (100%) rename {src => core/src}/main/scala/io/github/gaelrenoux/tranzactio/package.scala (100%) rename {src => core/src}/main/scala/io/github/gaelrenoux/tranzactio/test/DatabaseModuleTestOps.scala (100%) rename {src => core/src}/main/scala/io/github/gaelrenoux/tranzactio/test/NoopJdbcConnection.scala (100%) rename {src => core/src}/test/scala/io/github/gaelrenoux/tranzactio/DatabaseOpsCompileTest.scala (100%) rename {src => core/src}/test/scala/io/github/gaelrenoux/tranzactio/JdbcLayers.scala (100%) rename {src => core/src}/test/scala/io/github/gaelrenoux/tranzactio/SingleConnectionSourceTest.scala (100%) rename {src => core/src}/test/scala/io/github/gaelrenoux/tranzactio/integration/ITSpec.scala (100%) rename {src => doobie/src}/main/scala/io/github/gaelrenoux/tranzactio/doobie/package.scala (100%) rename {src => examples/src}/test/scala/io/github/gaelrenoux/tranzactio/integration/AnormIT.scala (100%) rename {src => examples/src}/test/scala/io/github/gaelrenoux/tranzactio/integration/DoobieIT.scala (100%) rename {src/samples => examples/src/test}/scala/samples/Conf.scala (100%) rename {src/samples => examples/src/test}/scala/samples/ConnectionPool.scala (100%) rename {src/samples => examples/src/test}/scala/samples/Person.scala (100%) rename {src/samples => examples/src/test}/scala/samples/SamplesSpec.scala (100%) rename {src/samples => examples/src/test}/scala/samples/anorm/LayeredApp.scala (100%) rename {src/samples => examples/src/test}/scala/samples/anorm/PersonQueries.scala (100%) rename {src/samples => examples/src/test}/scala/samples/anorm/package.scala (100%) rename {src/samples => examples/src/test}/scala/samples/anorm/test/SomeTest.scala (100%) rename {src/samples => examples/src/test}/scala/samples/doobie/LayeredApp.scala (100%) rename {src/samples => examples/src/test}/scala/samples/doobie/LayeredAppStreaming.scala (100%) rename {src/samples => examples/src/test}/scala/samples/doobie/PersonQueries.scala (100%) rename {src/samples => examples/src/test}/scala/samples/doobie/package.scala (100%) rename {src/samples => examples/src/test}/scala/samples/doobie/test/SomeTest.scala (100%) diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/anorm/package.scala b/anorm/src/main/scala/io/github/gaelrenoux/tranzactio/anorm/package.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/anorm/package.scala rename to anorm/src/main/scala/io/github/gaelrenoux/tranzactio/anorm/package.scala diff --git a/build.sbt b/build.sbt index 5e59c7a..9a632d7 100644 --- a/build.sbt +++ b/build.sbt @@ -1,14 +1,42 @@ import BuildHelper._ -lazy val tranzactio = (project in file(".")).settings( +lazy val root = (project in file(".")).settings( + name := "tranzactio-root", + publish / skip := true, +).aggregate(core, anorm, doobie, examples) + +lazy val core = project.settings( name := "tranzactio", description := "ZIO wrapper for Scala DB libraries (e.g. Doobie, Anorm)", stdSettings, publishSettings, - /* Adds samples as test sources */ - Test / unmanagedSourceDirectories ++= Seq( - baseDirectory.value /"src/samples/scala" - ), + libraryDependencies ++= coreDeps, +) + +lazy val anorm = project.settings( + name := "tranzactio-anorm", + description := "ZIO wrapper for Anorm", + stdSettings, + publishSettings, + libraryDependencies ++= anormDeps, +).dependsOn(core) + +lazy val doobie = project.settings( + name := "tranzactio-doobie", + description := "ZIO wrapper for Doobie", + stdSettings, + publishSettings, + libraryDependencies ++= doobieDeps, +).dependsOn(core) + +lazy val examples = project.settings( + stdSettings, + publish / skip := true, +).dependsOn( + // https://www.scala-sbt.org/1.x/docs/Multi-Project.html#Per-configuration+classpath+dependencies + core % "test->compile;test->test", + anorm % Test, + doobie % Test, ) /* Makes processes is SBT cancelable without closing SBT */ diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/ConnectionSource.scala b/core/src/main/scala/io/github/gaelrenoux/tranzactio/ConnectionSource.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/ConnectionSource.scala rename to core/src/main/scala/io/github/gaelrenoux/tranzactio/ConnectionSource.scala diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseModuleBase.scala b/core/src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseModuleBase.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseModuleBase.scala rename to core/src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseModuleBase.scala diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseOps.scala b/core/src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseOps.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseOps.scala rename to core/src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseOps.scala diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseServiceBase.scala b/core/src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseServiceBase.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseServiceBase.scala rename to core/src/main/scala/io/github/gaelrenoux/tranzactio/DatabaseServiceBase.scala diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/DbException.scala b/core/src/main/scala/io/github/gaelrenoux/tranzactio/DbException.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/DbException.scala rename to core/src/main/scala/io/github/gaelrenoux/tranzactio/DbException.scala diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/Wrapper.scala b/core/src/main/scala/io/github/gaelrenoux/tranzactio/Wrapper.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/Wrapper.scala rename to core/src/main/scala/io/github/gaelrenoux/tranzactio/Wrapper.scala diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/errorStrategies.scala b/core/src/main/scala/io/github/gaelrenoux/tranzactio/errorStrategies.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/errorStrategies.scala rename to core/src/main/scala/io/github/gaelrenoux/tranzactio/errorStrategies.scala diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/package.scala b/core/src/main/scala/io/github/gaelrenoux/tranzactio/package.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/package.scala rename to core/src/main/scala/io/github/gaelrenoux/tranzactio/package.scala diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/test/DatabaseModuleTestOps.scala b/core/src/main/scala/io/github/gaelrenoux/tranzactio/test/DatabaseModuleTestOps.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/test/DatabaseModuleTestOps.scala rename to core/src/main/scala/io/github/gaelrenoux/tranzactio/test/DatabaseModuleTestOps.scala diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/test/NoopJdbcConnection.scala b/core/src/main/scala/io/github/gaelrenoux/tranzactio/test/NoopJdbcConnection.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/test/NoopJdbcConnection.scala rename to core/src/main/scala/io/github/gaelrenoux/tranzactio/test/NoopJdbcConnection.scala diff --git a/src/test/scala/io/github/gaelrenoux/tranzactio/DatabaseOpsCompileTest.scala b/core/src/test/scala/io/github/gaelrenoux/tranzactio/DatabaseOpsCompileTest.scala similarity index 100% rename from src/test/scala/io/github/gaelrenoux/tranzactio/DatabaseOpsCompileTest.scala rename to core/src/test/scala/io/github/gaelrenoux/tranzactio/DatabaseOpsCompileTest.scala diff --git a/src/test/scala/io/github/gaelrenoux/tranzactio/JdbcLayers.scala b/core/src/test/scala/io/github/gaelrenoux/tranzactio/JdbcLayers.scala similarity index 100% rename from src/test/scala/io/github/gaelrenoux/tranzactio/JdbcLayers.scala rename to core/src/test/scala/io/github/gaelrenoux/tranzactio/JdbcLayers.scala diff --git a/src/test/scala/io/github/gaelrenoux/tranzactio/SingleConnectionSourceTest.scala b/core/src/test/scala/io/github/gaelrenoux/tranzactio/SingleConnectionSourceTest.scala similarity index 100% rename from src/test/scala/io/github/gaelrenoux/tranzactio/SingleConnectionSourceTest.scala rename to core/src/test/scala/io/github/gaelrenoux/tranzactio/SingleConnectionSourceTest.scala diff --git a/src/test/scala/io/github/gaelrenoux/tranzactio/integration/ITSpec.scala b/core/src/test/scala/io/github/gaelrenoux/tranzactio/integration/ITSpec.scala similarity index 100% rename from src/test/scala/io/github/gaelrenoux/tranzactio/integration/ITSpec.scala rename to core/src/test/scala/io/github/gaelrenoux/tranzactio/integration/ITSpec.scala diff --git a/src/main/scala/io/github/gaelrenoux/tranzactio/doobie/package.scala b/doobie/src/main/scala/io/github/gaelrenoux/tranzactio/doobie/package.scala similarity index 100% rename from src/main/scala/io/github/gaelrenoux/tranzactio/doobie/package.scala rename to doobie/src/main/scala/io/github/gaelrenoux/tranzactio/doobie/package.scala diff --git a/src/test/scala/io/github/gaelrenoux/tranzactio/integration/AnormIT.scala b/examples/src/test/scala/io/github/gaelrenoux/tranzactio/integration/AnormIT.scala similarity index 100% rename from src/test/scala/io/github/gaelrenoux/tranzactio/integration/AnormIT.scala rename to examples/src/test/scala/io/github/gaelrenoux/tranzactio/integration/AnormIT.scala diff --git a/src/test/scala/io/github/gaelrenoux/tranzactio/integration/DoobieIT.scala b/examples/src/test/scala/io/github/gaelrenoux/tranzactio/integration/DoobieIT.scala similarity index 100% rename from src/test/scala/io/github/gaelrenoux/tranzactio/integration/DoobieIT.scala rename to examples/src/test/scala/io/github/gaelrenoux/tranzactio/integration/DoobieIT.scala diff --git a/src/samples/scala/samples/Conf.scala b/examples/src/test/scala/samples/Conf.scala similarity index 100% rename from src/samples/scala/samples/Conf.scala rename to examples/src/test/scala/samples/Conf.scala diff --git a/src/samples/scala/samples/ConnectionPool.scala b/examples/src/test/scala/samples/ConnectionPool.scala similarity index 100% rename from src/samples/scala/samples/ConnectionPool.scala rename to examples/src/test/scala/samples/ConnectionPool.scala diff --git a/src/samples/scala/samples/Person.scala b/examples/src/test/scala/samples/Person.scala similarity index 100% rename from src/samples/scala/samples/Person.scala rename to examples/src/test/scala/samples/Person.scala diff --git a/src/samples/scala/samples/SamplesSpec.scala b/examples/src/test/scala/samples/SamplesSpec.scala similarity index 100% rename from src/samples/scala/samples/SamplesSpec.scala rename to examples/src/test/scala/samples/SamplesSpec.scala diff --git a/src/samples/scala/samples/anorm/LayeredApp.scala b/examples/src/test/scala/samples/anorm/LayeredApp.scala similarity index 100% rename from src/samples/scala/samples/anorm/LayeredApp.scala rename to examples/src/test/scala/samples/anorm/LayeredApp.scala diff --git a/src/samples/scala/samples/anorm/PersonQueries.scala b/examples/src/test/scala/samples/anorm/PersonQueries.scala similarity index 100% rename from src/samples/scala/samples/anorm/PersonQueries.scala rename to examples/src/test/scala/samples/anorm/PersonQueries.scala diff --git a/src/samples/scala/samples/anorm/package.scala b/examples/src/test/scala/samples/anorm/package.scala similarity index 100% rename from src/samples/scala/samples/anorm/package.scala rename to examples/src/test/scala/samples/anorm/package.scala diff --git a/src/samples/scala/samples/anorm/test/SomeTest.scala b/examples/src/test/scala/samples/anorm/test/SomeTest.scala similarity index 100% rename from src/samples/scala/samples/anorm/test/SomeTest.scala rename to examples/src/test/scala/samples/anorm/test/SomeTest.scala diff --git a/src/samples/scala/samples/doobie/LayeredApp.scala b/examples/src/test/scala/samples/doobie/LayeredApp.scala similarity index 100% rename from src/samples/scala/samples/doobie/LayeredApp.scala rename to examples/src/test/scala/samples/doobie/LayeredApp.scala diff --git a/src/samples/scala/samples/doobie/LayeredAppStreaming.scala b/examples/src/test/scala/samples/doobie/LayeredAppStreaming.scala similarity index 100% rename from src/samples/scala/samples/doobie/LayeredAppStreaming.scala rename to examples/src/test/scala/samples/doobie/LayeredAppStreaming.scala diff --git a/src/samples/scala/samples/doobie/PersonQueries.scala b/examples/src/test/scala/samples/doobie/PersonQueries.scala similarity index 100% rename from src/samples/scala/samples/doobie/PersonQueries.scala rename to examples/src/test/scala/samples/doobie/PersonQueries.scala diff --git a/src/samples/scala/samples/doobie/package.scala b/examples/src/test/scala/samples/doobie/package.scala similarity index 100% rename from src/samples/scala/samples/doobie/package.scala rename to examples/src/test/scala/samples/doobie/package.scala diff --git a/src/samples/scala/samples/doobie/test/SomeTest.scala b/examples/src/test/scala/samples/doobie/test/SomeTest.scala similarity index 100% rename from src/samples/scala/samples/doobie/test/SomeTest.scala rename to examples/src/test/scala/samples/doobie/test/SomeTest.scala diff --git a/project/BuildHelper.scala b/project/BuildHelper.scala index 2fd2c7c..ccbda61 100644 --- a/project/BuildHelper.scala +++ b/project/BuildHelper.scala @@ -16,15 +16,10 @@ object BuildHelper { val scala3 = "3.2.2" } - private val dependencies = Seq( + val coreDeps: Seq[ModuleID] = Seq( /* ZIO */ "dev.zio" %% "zio" % V.zio, "dev.zio" %% "zio-streams" % V.zio, - "dev.zio" %% "zio-interop-cats" % V.zioCats, - - /* Doobie */ - "org.tpolecat" %% "doobie-core" % V.doobie % Optional, - "org.playframework.anorm" %% "anorm" % V.anorm % Optional, /* ZIO test */ "dev.zio" %% "zio-test" % V.zio % Test, @@ -37,12 +32,18 @@ object BuildHelper { /* H2 for tests */ "com.h2database" % "h2" % V.h2 % Test ) - + val anormDeps: Seq[ModuleID] = Seq( + "org.playframework.anorm" %% "anorm" % V.anorm, + ) + val doobieDeps: Seq[ModuleID] = Seq( + "dev.zio" %% "zio-interop-cats" % V.zioCats, + "org.tpolecat" %% "doobie-core" % V.doobie, + ) + val stdSettings: Seq[Setting[_]] = Seq( scalaVersion := V.scala3, crossScalaVersions := Seq(V.scala212, V.scala213, V.scala3), scalacOptions ++= scalaVersion(ScalacOptions(_)).value, - libraryDependencies ++= dependencies, Test / fork := true, Test / testForkedParallel := true, // run tests in parallel on the forked JVM Test / testOptions += Tests.Argument("-oD"), // show test duration From 4c0dc43bdd6435f294fdff3b971e40bffc46a20a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bu=CC=80i=20Vie=CC=A3=CC=82t=20Tha=CC=80nh?= Date: Thu, 8 Dec 2022 19:12:22 +0700 Subject: [PATCH 2/5] Update README.md --- README.md | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 6fc8bd7..9f37130 100644 --- a/README.md +++ b/README.md @@ -45,16 +45,12 @@ That's where TranzactIO comes from. I wanted a way to use ZIO everywhere, and ru TranzactIO is available on the Sonatype Central Repository (see the Nexus badge on top of this README to get the version number). In your build.sbt: ```sbt -libraryDependencies += "io.github.gaelrenoux" %% "tranzactio" % TranzactIOVersion +// Add this if you use doobie: +libraryDependencies += "io.github.gaelrenoux" %% "tranzactio-doobie" % TranzactIOVersion +// Or this if you use anorm: +libraryDependencies += "io.github.gaelrenoux" %% "tranzactio-anorm" % TranzactIOVersion ``` -In addition, you will need to declare the database access library you are using. For instance, with Doobie: -```sbt -libraryDependencies += "org.tpolecat" %% "doobie-core" % DoobieVersion -``` - - - ### Imports Most of the time, you will need to import two packages. From 34fc5796eb06ed964e6582484705d926efa14b1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABl=20Renoux?= Date: Sun, 28 May 2023 18:48:40 +0200 Subject: [PATCH 3/5] Fix name and description for core module in sbt --- build.sbt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/build.sbt b/build.sbt index 9a632d7..5f64342 100644 --- a/build.sbt +++ b/build.sbt @@ -2,12 +2,13 @@ import BuildHelper._ lazy val root = (project in file(".")).settings( name := "tranzactio-root", + description := "ZIO wrapper for Scala DB libraries (e.g. Doobie, Anorm)", publish / skip := true, ).aggregate(core, anorm, doobie, examples) lazy val core = project.settings( - name := "tranzactio", - description := "ZIO wrapper for Scala DB libraries (e.g. Doobie, Anorm)", + name := "tranzactio-core", + description := "Core classes for Tranzactio", stdSettings, publishSettings, libraryDependencies ++= coreDeps, From e6f9a1aebdc06b36f47639da161eda1e657bd006 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABl=20Renoux?= Date: Sat, 29 Jul 2023 13:59:52 +0200 Subject: [PATCH 4/5] IntelliJ config changes --- .idea/.name | 1 + .idea/misc.xml | 1 - .idea/modules.xml | 8 ++++++-- .idea/sbt.xml | 6 +++++- .idea/scala_compiler.xml | 4 ++-- 5 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 .idea/.name diff --git a/.idea/.name b/.idea/.name new file mode 100644 index 0000000..c637123 --- /dev/null +++ b/.idea/.name @@ -0,0 +1 @@ +tranzactio-root \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index bd152bd..7b292ac 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,4 +1,3 @@ - diff --git a/.idea/modules.xml b/.idea/modules.xml index f897374..553c858 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -2,8 +2,12 @@ - - + + + + + + \ No newline at end of file diff --git a/.idea/sbt.xml b/.idea/sbt.xml index 18831b8..f03326d 100644 --- a/.idea/sbt.xml +++ b/.idea/sbt.xml @@ -9,10 +9,14 @@ - diff --git a/.idea/scala_compiler.xml b/.idea/scala_compiler.xml index b85261a..70918da 100644 --- a/.idea/scala_compiler.xml +++ b/.idea/scala_compiler.xml @@ -1,8 +1,8 @@ - - + +