From 048dea5236bf2a6d172daab782e163919c8628ea Mon Sep 17 00:00:00 2001 From: Hubert Plociniczak Date: Wed, 5 Mar 2025 22:42:05 +0100 Subject: [PATCH] Fix dependencies on `library-manager` (#12419) * Fix deps on `library-manager` Only tests should depend on logging setup, for test purposes. Fixes ClassNotFoundException: ``` [info] LibraryDownloadTest: [info] DownloadingLibraryCache SLF4J(I): Attempting to load provider "org.enso.logging.service.logback.test.provider.TestLogProvider" specified via "slf4j.provider" system propertyTests 0s SLF4J(E): Failed to instantiate the specified SLF4JServiceProvider (org.enso.logging.service.logback.test.provider.TestLogProvider) SLF4J(E): Reported exception: java.lang.ClassNotFoundException: org.enso.logging.service.logback.test.provider.TestLogProvider at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) at org.slf4j.LoggerFactory.loadExplicitlySpecified(LoggerFactory.java:226) at org.slf4j.LoggerFactory.findServiceProviders(LoggerFactory.java:122) ``` * Drop `library-manager-test` Replaced by setting dependencies between projects appropriately using classifiers. --- build.sbt | 51 ++++--------------- .../src/test/resources/application-test.conf | 0 .../repository/LibraryDownloadTest.scala | 0 .../published/repository/DownloaderTest.scala | 0 .../repository/DummyRepository.scala | 0 .../repository/EmptyRepository.scala | 0 .../repository/ExampleRepository.scala | 0 .../libraryupload/LibraryUploadTest.scala | 0 8 files changed, 10 insertions(+), 41 deletions(-) rename lib/scala/{library-manager-test => library-manager}/src/test/resources/application-test.conf (100%) rename lib/scala/{library-manager-test => library-manager}/src/test/scala/org/enso/librarymanager/published/repository/LibraryDownloadTest.scala (100%) rename lib/scala/{library-manager-test/src/main => library-manager/src/test}/scala/org/enso/librarymanager/test/published/repository/DownloaderTest.scala (100%) rename lib/scala/{library-manager-test/src/main => library-manager/src/test}/scala/org/enso/librarymanager/test/published/repository/DummyRepository.scala (100%) rename lib/scala/{library-manager-test/src/main => library-manager/src/test}/scala/org/enso/librarymanager/test/published/repository/EmptyRepository.scala (100%) rename lib/scala/{library-manager-test/src/main => library-manager/src/test}/scala/org/enso/librarymanager/test/published/repository/ExampleRepository.scala (100%) rename lib/scala/{library-manager-test => library-manager}/src/test/scala/org/enso/libraryupload/LibraryUploadTest.scala (100%) diff --git a/build.sbt b/build.sbt index 5a886894a00f..a34180c0e8f9 100644 --- a/build.sbt +++ b/build.sbt @@ -332,7 +332,6 @@ lazy val enso = (project in file(".")) `language-server-deps-wrapper`, launcher, `library-manager`, - `library-manager-test`, `locking-test-helper`, `logging-config`, `logging-service`, @@ -2499,7 +2498,7 @@ lazy val `language-server` = (project in file("engine/language-server")) .dependsOn(filewatcher) .dependsOn(testkit % Test) .dependsOn(`logging-service-logback` % "test->test") - .dependsOn(`library-manager-test` % Test) + .dependsOn(`library-manager` % "test->test") .dependsOn(`runtime-version-manager-test` % Test) .dependsOn(`ydoc-polyfill`) @@ -4478,7 +4477,7 @@ lazy val `edition-updater` = project .dependsOn(editions) .dependsOn(downloader) .dependsOn(`distribution-manager`) - .dependsOn(`library-manager-test` % Test) + .dependsOn(`library-manager` % "test->test") lazy val `edition-uploader` = project .in(file("lib/scala/edition-uploader")) @@ -4518,50 +4517,20 @@ lazy val `library-manager` = project (`logging-utils` / Compile / exportedModule).value, (`scala-libs-wrapper` / Compile / exportedModule).value, (`scala-yaml` / Compile / exportedModule).value - ) + ), + commands += WithDebugCommand.withDebug, + Test / javaOptions ++= testLogProviderOptions, + Test / test := (Test / test).tag(simpleLibraryServerTag).value, + Test / fork := true ) .dependsOn(`version-output`) // Note [Default Editions] .dependsOn(editions) .dependsOn(cli) .dependsOn(`distribution-manager`) .dependsOn(downloader) - .dependsOn(testkit % Test) - -lazy val `library-manager-test` = project - .in(file("lib/scala/library-manager-test")) - .enablePlugins(JPMSPlugin) - .configs(Test) - .settings( - frgaalJavaCompilerSetting, - scalaModuleDependencySetting, - compileOrder := CompileOrder.ScalaThenJava, - Test / fork := true, - commands += WithDebugCommand.withDebug, - Test / javaOptions ++= testLogProviderOptions, - Test / test := (Test / test).tag(simpleLibraryServerTag).value, - libraryDependencies ++= Seq( - "com.typesafe.scala-logging" %% "scala-logging" % scalaLoggingVersion, - "org.scalatest" %% "scalatest" % scalatestVersion % Test - ), - Compile / internalModuleDependencies := Seq( - (`library-manager` / Compile / exportedModule).value, - (`cli` / Compile / exportedModule).value, - (`distribution-manager` / Compile / exportedModule).value, - (`library-manager` / Compile / exportedModule).value, - (`process-utils` / Compile / exportedModule).value, - (`pkg` / Compile / exportedModule).value, - (`semver` / Compile / exportedModule).value, - (`downloader` / Compile / exportedModule).value, - (`editions` / Compile / exportedModule).value, - (`version-output` / Compile / exportedModule).value, - (`testkit` / Compile / exportedModule).value - ) - ) - .dependsOn(`library-manager`) - .dependsOn(`process-utils`) - .dependsOn(`logging-utils`) - .dependsOn(testkit) - .dependsOn(`logging-service-logback` % Test) + .dependsOn(testkit % "test->test") + .dependsOn(`process-utils` % "test->compile") + .dependsOn(`logging-service-logback` % "test->test") lazy val `connected-lock-manager` = project .in(file("lib/scala/connected-lock-manager")) diff --git a/lib/scala/library-manager-test/src/test/resources/application-test.conf b/lib/scala/library-manager/src/test/resources/application-test.conf similarity index 100% rename from lib/scala/library-manager-test/src/test/resources/application-test.conf rename to lib/scala/library-manager/src/test/resources/application-test.conf diff --git a/lib/scala/library-manager-test/src/test/scala/org/enso/librarymanager/published/repository/LibraryDownloadTest.scala b/lib/scala/library-manager/src/test/scala/org/enso/librarymanager/published/repository/LibraryDownloadTest.scala similarity index 100% rename from lib/scala/library-manager-test/src/test/scala/org/enso/librarymanager/published/repository/LibraryDownloadTest.scala rename to lib/scala/library-manager/src/test/scala/org/enso/librarymanager/published/repository/LibraryDownloadTest.scala diff --git a/lib/scala/library-manager-test/src/main/scala/org/enso/librarymanager/test/published/repository/DownloaderTest.scala b/lib/scala/library-manager/src/test/scala/org/enso/librarymanager/test/published/repository/DownloaderTest.scala similarity index 100% rename from lib/scala/library-manager-test/src/main/scala/org/enso/librarymanager/test/published/repository/DownloaderTest.scala rename to lib/scala/library-manager/src/test/scala/org/enso/librarymanager/test/published/repository/DownloaderTest.scala diff --git a/lib/scala/library-manager-test/src/main/scala/org/enso/librarymanager/test/published/repository/DummyRepository.scala b/lib/scala/library-manager/src/test/scala/org/enso/librarymanager/test/published/repository/DummyRepository.scala similarity index 100% rename from lib/scala/library-manager-test/src/main/scala/org/enso/librarymanager/test/published/repository/DummyRepository.scala rename to lib/scala/library-manager/src/test/scala/org/enso/librarymanager/test/published/repository/DummyRepository.scala diff --git a/lib/scala/library-manager-test/src/main/scala/org/enso/librarymanager/test/published/repository/EmptyRepository.scala b/lib/scala/library-manager/src/test/scala/org/enso/librarymanager/test/published/repository/EmptyRepository.scala similarity index 100% rename from lib/scala/library-manager-test/src/main/scala/org/enso/librarymanager/test/published/repository/EmptyRepository.scala rename to lib/scala/library-manager/src/test/scala/org/enso/librarymanager/test/published/repository/EmptyRepository.scala diff --git a/lib/scala/library-manager-test/src/main/scala/org/enso/librarymanager/test/published/repository/ExampleRepository.scala b/lib/scala/library-manager/src/test/scala/org/enso/librarymanager/test/published/repository/ExampleRepository.scala similarity index 100% rename from lib/scala/library-manager-test/src/main/scala/org/enso/librarymanager/test/published/repository/ExampleRepository.scala rename to lib/scala/library-manager/src/test/scala/org/enso/librarymanager/test/published/repository/ExampleRepository.scala diff --git a/lib/scala/library-manager-test/src/test/scala/org/enso/libraryupload/LibraryUploadTest.scala b/lib/scala/library-manager/src/test/scala/org/enso/libraryupload/LibraryUploadTest.scala similarity index 100% rename from lib/scala/library-manager-test/src/test/scala/org/enso/libraryupload/LibraryUploadTest.scala rename to lib/scala/library-manager/src/test/scala/org/enso/libraryupload/LibraryUploadTest.scala