From 2fbaaf1c4fea0ffa576693273d16a3509eb84205 Mon Sep 17 00:00:00 2001 From: Krzysztof Romanowski Date: Wed, 12 Oct 2022 17:37:15 +0200 Subject: [PATCH] Address review and CI problems --- .../cli/commands/SpecificationLevel.scala | 2 +- .../commands/RestrictedCommandsParser.scala | 1 - .../scala/cli/commands/bloop/Bloop.scala | 3 +-- .../scala/cli/commands/config/Config.scala | 3 +-- .../cli/commands/github/SecretCreate.scala | 3 +-- .../scala/cli/commands/pgp/PgpCreate.scala | 3 +-- .../scala/cli/commands/pgp/PgpSign.scala | 3 +-- .../directives/DirectiveHandler.scala | 2 +- .../scala/cli/doc/GenerateReferenceDoc.scala | 19 ++++++------------- 9 files changed, 13 insertions(+), 26 deletions(-) diff --git a/modules/cli-options/src/main/scala/scala/cli/commands/SpecificationLevel.scala b/modules/cli-options/src/main/scala/scala/cli/commands/SpecificationLevel.scala index 0ec3eca9d8..983f9df21b 100644 --- a/modules/cli-options/src/main/scala/scala/cli/commands/SpecificationLevel.scala +++ b/modules/cli-options/src/main/scala/scala/cli/commands/SpecificationLevel.scala @@ -3,7 +3,7 @@ package scala.cli.commands import caseapp.annotation.Tag import os.copy -sealed trait SpecificationLevel { +sealed trait SpecificationLevel extends Product with Serializable { def md = toString() + " have" } object SpecificationLevel { diff --git a/modules/cli/src/main/scala/scala/cli/commands/RestrictedCommandsParser.scala b/modules/cli/src/main/scala/scala/cli/commands/RestrictedCommandsParser.scala index f893e638d8..91665b4b3b 100644 --- a/modules/cli/src/main/scala/scala/cli/commands/RestrictedCommandsParser.scala +++ b/modules/cli/src/main/scala/scala/cli/commands/RestrictedCommandsParser.scala @@ -11,7 +11,6 @@ object RestrictedCommandsParser { a.tags.exists(_.name == tags.restricted) || a.tags.exists(_.name == tags.experimental) def level(a: Arg) = a.tags.flatMap(t => tags.levelFor(t.name)).headOption.getOrElse { - // println("No specification level for " + a) SpecificationLevel.IMPLEMENTATION } diff --git a/modules/cli/src/main/scala/scala/cli/commands/bloop/Bloop.scala b/modules/cli/src/main/scala/scala/cli/commands/bloop/Bloop.scala index 6826751ff2..95dfa922a7 100644 --- a/modules/cli/src/main/scala/scala/cli/commands/bloop/Bloop.scala +++ b/modules/cli/src/main/scala/scala/cli/commands/bloop/Bloop.scala @@ -11,10 +11,9 @@ import scala.cli.CurrentParams import scala.cli.commands.util.CommonOps._ import scala.cli.commands.util.SharedCompilationServerOptionsUtil._ import scala.cli.commands.util.SharedOptionsUtil._ -import scala.cli.commands.{ScalaCommand, SharedOptions} +import scala.cli.commands.{ScalaCommand, SharedOptions, SpecificationLevel} import scala.concurrent.Await import scala.concurrent.duration.Duration -import scala.cli.commands.SpecificationLevel object Bloop extends ScalaCommand[BloopOptions] { override def hidden = true diff --git a/modules/cli/src/main/scala/scala/cli/commands/config/Config.scala b/modules/cli/src/main/scala/scala/cli/commands/config/Config.scala index 7587342ddf..15d697be8d 100644 --- a/modules/cli/src/main/scala/scala/cli/commands/config/Config.scala +++ b/modules/cli/src/main/scala/scala/cli/commands/config/Config.scala @@ -5,12 +5,11 @@ import coursier.cache.ArchiveCache import java.util.Base64 -import scala.cli.commands.ScalaCommand import scala.cli.commands.publish.ConfigUtil._ import scala.cli.commands.util.CommonOps._ import scala.cli.commands.util.JvmUtils +import scala.cli.commands.{ScalaCommand, SpecificationLevel} import scala.cli.config.{ConfigDb, Keys, PasswordOption, Secret} -import scala.cli.commands.SpecificationLevel object Config extends ScalaCommand[ConfigOptions] { override def hidden = true diff --git a/modules/cli/src/main/scala/scala/cli/commands/github/SecretCreate.scala b/modules/cli/src/main/scala/scala/cli/commands/github/SecretCreate.scala index 06a4622ba1..8c917c8787 100644 --- a/modules/cli/src/main/scala/scala/cli/commands/github/SecretCreate.scala +++ b/modules/cli/src/main/scala/scala/cli/commands/github/SecretCreate.scala @@ -10,13 +10,12 @@ import java.util.Base64 import scala.build.EitherCps.{either, value} import scala.build.Logger -import scala.cli.commands.ScalaCommand import scala.cli.commands.publish.ConfigUtil._ import scala.cli.commands.util.CommonOps._ import scala.cli.commands.util.ScalaCliSttpBackend +import scala.cli.commands.{ScalaCommand, SpecificationLevel} import scala.cli.config.{PasswordOption, Secret} import scala.cli.errors.GitHubApiError -import scala.cli.commands.SpecificationLevel object SecretCreate extends ScalaCommand[SecretCreateOptions] { diff --git a/modules/cli/src/main/scala/scala/cli/commands/pgp/PgpCreate.scala b/modules/cli/src/main/scala/scala/cli/commands/pgp/PgpCreate.scala index 109c32d869..142bca6047 100644 --- a/modules/cli/src/main/scala/scala/cli/commands/pgp/PgpCreate.scala +++ b/modules/cli/src/main/scala/scala/cli/commands/pgp/PgpCreate.scala @@ -2,9 +2,8 @@ package scala.cli.commands.pgp import caseapp.core.RemainingArgs -import scala.cli.commands.ScalaCommand +import scala.cli.commands.{ScalaCommand, SpecificationLevel} import scala.cli.signing.commands.{PgpCreate => OriginalPgpCreate, PgpCreateOptions} -import scala.cli.commands.SpecificationLevel object PgpCreate extends ScalaCommand[PgpCreateOptions] { diff --git a/modules/cli/src/main/scala/scala/cli/commands/pgp/PgpSign.scala b/modules/cli/src/main/scala/scala/cli/commands/pgp/PgpSign.scala index 7192a1a108..6c2b1ba781 100644 --- a/modules/cli/src/main/scala/scala/cli/commands/pgp/PgpSign.scala +++ b/modules/cli/src/main/scala/scala/cli/commands/pgp/PgpSign.scala @@ -2,9 +2,8 @@ package scala.cli.commands.pgp import caseapp.core.RemainingArgs -import scala.cli.commands.ScalaCommand +import scala.cli.commands.{ScalaCommand, SpecificationLevel} import scala.cli.signing.commands.{PgpSign => OriginalPgpSign, PgpSignOptions} -import scala.cli.commands.SpecificationLevel object PgpSign extends ScalaCommand[PgpSignOptions] { diff --git a/modules/directives/src/main/scala/scala/build/preprocessing/directives/DirectiveHandler.scala b/modules/directives/src/main/scala/scala/build/preprocessing/directives/DirectiveHandler.scala index 55e5fe286e..83a6a50761 100644 --- a/modules/directives/src/main/scala/scala/build/preprocessing/directives/DirectiveHandler.scala +++ b/modules/directives/src/main/scala/scala/build/preprocessing/directives/DirectiveHandler.scala @@ -1,6 +1,5 @@ package scala.build.preprocessing.directives import com.virtuslab.using_directives.custom.model.{EmptyValue, Value} -import scala.cli.commands.SpecificationLevel import scala.build.Logger import scala.build.errors.{ @@ -16,6 +15,7 @@ import scala.build.preprocessing.directives.UsingDirectiveValueKind.{ STRING, UsingDirectiveValueKind } +import scala.cli.commands.SpecificationLevel trait DirectiveHandler[T] { def name: String diff --git a/modules/generate-reference-doc/src/main/scala/scala/cli/doc/GenerateReferenceDoc.scala b/modules/generate-reference-doc/src/main/scala/scala/cli/doc/GenerateReferenceDoc.scala index 23cc0f8b6b..fc18f95ca9 100644 --- a/modules/generate-reference-doc/src/main/scala/scala/cli/doc/GenerateReferenceDoc.scala +++ b/modules/generate-reference-doc/src/main/scala/scala/cli/doc/GenerateReferenceDoc.scala @@ -3,7 +3,9 @@ package scala.cli.doc import caseapp._ import caseapp.core.Arg import caseapp.core.util.Formatter +import dotty.tools.dotc.ScalacCommand import munit.internal.difflib.Diff +import shapeless.tag import java.nio.charset.StandardCharsets import java.util.{Arrays, Locale} @@ -15,10 +17,7 @@ import scala.build.preprocessing.directives.{ UsingDirectiveHandler } import scala.cli.ScalaCliCommands -import scala.cli.commands.{RestrictedCommandsParser, ScalaCommand, SpecificationLevel} -import shapeless.tag -import dotty.tools.dotc.ScalacCommand -import scala.cli.commands.tags +import scala.cli.commands.{RestrictedCommandsParser, ScalaCommand, SpecificationLevel, tags} object GenerateReferenceDoc extends CaseApp[InternalDocOptions] { @@ -371,15 +370,9 @@ object GenerateReferenceDoc extends CaseApp[InternalDocOptions] { } else { - for (c <- mainCommands.iterator) - addCommand(c) - b.append( - """## Hidden commands - | - |""".stripMargin - ) - for (c <- hiddenCommands.iterator) - addCommand(c, additionalIndentation = 1) + mainCommands.foreach(addCommand(_)) + b.section("## Hidden commands") + hiddenCommands.foreach(c => addCommand(c, additionalIndentation = 1)) } b.toString }