Metals: sbt-metals plugin, manual global install fails

Created on 3 Oct 2019  路  3Comments  路  Source: scalameta/metals

Describe the bug
The manual installation instructions produces

[warn]  Note: Some unresolved dependencies have extra attributes.  Check that these dependencies exist with the requested attributes.
[warn]          org.scalameta:sbt-metals:0.7.6+20-3b042940-SNAPSHOT (sbtVersion=1.0, scalaVersion=2.12)
[warn]
[warn]  Note: Unresolved dependencies path:
[error] sbt.librarymanagement.ResolveException: Error downloading org.scalameta:sbt-metals;sbtVersion=1.0;scalaVersion=2.12:0.7.6+20-3b042940-SNAPSHOT
[error]   Not found
[error]   Not found
[error]   not found: https://repo1.maven.org/maven2/org/scalameta/sbt-metals_2.12_1.0/0.7.6+20-3b042940-SNAPSHOT/sbt-metals-0.7.6+20-3b042940-SNAPSHOT.pom
[error]   not found: /home/oscar/.ivy2/local/org.scalameta/sbt-metals/scala_2.12/sbt_1.0/0.7.6+20-3b042940-SNAPSHOT/ivys/ivy.xml
[error]   not found: https://oss.sonatype.org/content/repositories/snapshots/org/scalameta/sbt-metals_2.12_1.0/0.7.6+20-3b042940-SNAPSHOT/sbt-metals-0.7.6+20-3b042940-SNAPSHOT.pom
[error]   not found: https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/org.scalameta/sbt-metals/scala_2.12/sbt_1.0/0.7.6+20-3b042940-SNAPSHOT/ivys/ivy.xml
[error]   not found: https://repo.typesafe.com/typesafe/ivy-releases/org.scalameta/sbt-metals/scala_2.12/sbt_1.0/0.7.6+20-3b042940-SNAPSHOT/ivys/ivy.xml
[error]         at lmcoursier.CoursierDependencyResolution.unresolvedWarningOrThrow(CoursierDependencyResolution.scala:245)
[error]         at lmcoursier.CoursierDependencyResolution.$anonfun$update$34(CoursierDependencyResolution.scala:214)
[error]         at scala.util.Either$LeftProjection.map(Either.scala:573)
[error]         at lmcoursier.CoursierDependencyResolution.update(CoursierDependencyResolution.scala:214)
[error]         at sbt.librarymanagement.DependencyResolution.update(DependencyResolution.scala:60)
[error]         at sbt.internal.LibraryManagement$.resolve$1(LibraryManagement.scala:52)
[error]         at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$12(LibraryManagement.scala:102)
[error]         at sbt.util.Tracked$.$anonfun$lastOutput$1(Tracked.scala:69)
[error]         at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$20(LibraryManagement.scala:115)
[error]         at scala.util.control.Exception$Catch.apply(Exception.scala:228)
[error]         at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$11(LibraryManagement.scala:115)
[error]         at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$11$adapted(LibraryManagement.scala:96)
[error]         at sbt.util.Tracked$.$anonfun$inputChanged$1(Tracked.scala:150)
[error]         at sbt.internal.LibraryManagement$.cachedUpdate(LibraryManagement.scala:129)
[error]         at sbt.Classpaths$.$anonfun$updateTask0$5(Defaults.scala:2942)
[error]         at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error]         at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:62)
[error]         at sbt.std.Transform$$anon$4.work(Transform.scala:67)
[error]         at sbt.Execute.$anonfun$submit$2(Execute.scala:280)
[error]         at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:19)
[error]         at sbt.Execute.work(Execute.scala:289)
[error]         at sbt.Execute.$anonfun$submit$1(Execute.scala:280)
[error]         at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:178)
[error]         at sbt.CompletionService$$anon$2.call(CompletionService.scala:37)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error]         at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[error]         at java.base/java.lang.Thread.run(Thread.java:834)
[error] (update) sbt.librarymanagement.ResolveException: Error downloading org.scalameta:sbt-metals;sbtVersion=1.0;scalaVersion=2.12:0.7.6+20-3b042940-SNAPSHOT
[error]   Not found
[error]   Not found
[error]   not found: https://repo1.maven.org/maven2/org/scalameta/sbt-metals_2.12_1.0/0.7.6+20-3b042940-SNAPSHOT/sbt-metals-0.7.6+20-3b042940-SNAPSHOT.pom
[error]   not found: /home/oscar/.ivy2/local/org.scalameta/sbt-metals/scala_2.12/sbt_1.0/0.7.6+20-3b042940-SNAPSHOT/ivys/ivy.xml
[error]   not found: https://oss.sonatype.org/content/repositories/snapshots/org/scalameta/sbt-metals_2.12_1.0/0.7.6+20-3b042940-SNAPSHOT/sbt-metals-0.7.6+20-3b042940-SNAPSHOT.pom
[error]   not found: https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/org.scalameta/sbt-metals/scala_2.12/sbt_1.0/0.7.6+20-3b042940-SNAPSHOT/ivys/ivy.xml
[error]   not found: https://repo.typesafe.com/typesafe/ivy-releases/org.scalameta/sbt-metals/scala_2.12/sbt_1.0/0.7.6+20-3b042940-SNAPSHOT/ivys/ivy.xml
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore?

To Reproduce
Steps to reproduce the behavior:

  1. Start sbt from command line.

Once it tries to resolve the global dependency
addSbtPlugin("org.scalameta" % "sbt-metals" % "0.7.6+20-3b042940-SNAPSHOT")
sbt crashes.

Expected behavior
Instructions should be correct and updated to resolve the latest correct version.

Installation:

  • Operating system: Ubuntu Linux 19.04

Search terms
sbt-metals plugin, manual global install

documentation

All 3 comments

Thank you for reporting! The manual installation instructions got outdated after we merged #852 this morning. The sbt-metals plugin no longer exists, I believe running bloopInstall should be enough (@tgodzik ?). We should update the documentation to reflect this change before the next stable release.

Thank you for reporting! The manual installation instructions got outdated after we merged #852 this morning. The sbt-metals plugin no longer exists, I believe running bloopInstall should be enough (@tgodzik ?). We should update the documentation to reflect this change before the next stable release.

Right, we don't need to add sbt-metals anymore. Maybe automatic import can work better now?

As for manual, it's just adding bloop plugin and setting exportsources to true. I will try to update the docs as soon as I can. Most likely tomorrow.

sbt "set bloopExportJarClassifiers := Some(Set(\"source\"))" bloopInstall

Should work after adding the Bloop plugin.

Was this page helpful?
0 / 5 - 0 ratings