Skip to content

Commit 4fc009e

Browse files
authored
Merge pull request #280 from olafurpg/mtags-snapshot
Start emitting `SymbolInformation` for Scala package repos.
2 parents 10577d6 + 9ce6b3c commit 4fc009e

File tree

4 files changed

+38
-6
lines changed

4 files changed

+38
-6
lines changed

build.sbt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ lazy val V =
1616
def scala212 = "2.12.14"
1717
def scala211 = "2.11.12"
1818
def scala3 = "3.0.1"
19-
def metals = "0.10.5"
19+
def metals = "0.10.6-M1"
2020
def scalameta = "4.4.25"
2121
def testcontainers = "0.39.3"
2222
def requests = "0.6.5"

lsif-java/src/main/scala/com/sourcegraph/lsif_java/buildtools/LsifBuildTool.scala

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,11 @@ import java.nio.file.Paths
1212
import java.nio.file.SimpleFileVisitor
1313
import java.nio.file.StandardOpenOption
1414
import java.nio.file.attribute.BasicFileAttributes
15+
import java.util
16+
import java.util.Collections
17+
import java.util.Optional
1518
import java.util.ServiceLoader
19+
import java.util.concurrent.TimeUnit
1620

1721
import scala.collection.mutable.ListBuffer
1822
import scala.jdk.CollectionConverters._
@@ -22,6 +26,7 @@ import scala.util.Try
2226
import scala.util.control.NonFatal
2327

2428
import scala.meta.pc.PresentationCompiler
29+
import scala.meta.pc.PresentationCompilerConfig
2530

2631
import com.sourcegraph.io.DeleteVisitor
2732
import com.sourcegraph.lsif_java.BuildInfo
@@ -244,6 +249,31 @@ class LsifBuildTool(index: IndexCommand) extends BuildTool("LSIF", index) {
244249
val compiler = compilers
245250
.next()
246251
.newInstance("lsif-java", classpath.asJava, List[String]().asJava)
252+
.withConfiguration(
253+
new PresentationCompilerConfig {
254+
override def parameterHintsCommand(): Optional[String] =
255+
Optional.empty()
256+
override def completionCommand(): Optional[String] =
257+
Optional.empty()
258+
override def symbolPrefixes(): util.Map[String, String] =
259+
Collections.emptyMap()
260+
override def isDefaultSymbolPrefixes: Boolean = false
261+
override def overrideDefFormat()
262+
: PresentationCompilerConfig.OverrideDefFormat =
263+
PresentationCompilerConfig.OverrideDefFormat.Ascii
264+
override def isCompletionItemDetailEnabled: Boolean = false
265+
override def isStripMarginOnTypeFormattingEnabled: Boolean = false
266+
override def isCompletionItemDocumentationEnabled: Boolean = false
267+
override def isHoverDocumentationEnabled: Boolean = false
268+
override def snippetAutoIndent(): Boolean = false
269+
override def isSignatureHelpDocumentationEnabled: Boolean = false
270+
override def isCompletionSnippetsEnabled: Boolean = false
271+
override def timeoutDelay(): Long = 0
272+
override def timeoutUnit(): TimeUnit = TimeUnit.SECONDS
273+
override def semanticdbCompilerOptions(): util.List[String] =
274+
Collections.emptyList()
275+
}
276+
)
247277
try {
248278
fn(compiler)
249279
} finally {

lsif-semanticdb/src/main/java/com/sourcegraph/lsif_semanticdb/SignatureFormatter.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -269,8 +269,10 @@ private void formatScalaMethodSignature(MethodSignature methodSignature) {
269269
? "this"
270270
: symbolInformation.getDisplayName());
271271
formatScalaParameterList(methodSignature.getParameterListsList());
272-
printKeyword(":");
273-
s.append(this.formatType(methodSignature.getReturnType()));
272+
if (symbolInformation.getKind() != SymbolInformation.Kind.CONSTRUCTOR) {
273+
printKeyword(":");
274+
s.append(this.formatType(methodSignature.getReturnType()));
275+
}
274276
}
275277

276278
private Optional<MethodSignature> primaryConstructor(ClassSignature classSignature) {

tests/snapshots/src/main/generated/minimized/MinimizedScalaSignatures.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ package minimized
66

77
case class MinimizedCaseClass(value: String) {
88
// ^^^^^^^^^^^^^^^^^^ definition minimized/MinimizedCaseClass# case class MinimizedCaseClass(value: String)
9-
// definition minimized/MinimizedCaseClass#`<init>`(). def this(value: String):
9+
// definition minimized/MinimizedCaseClass#`<init>`(). def this(value: String)
1010
// ^^^^^ definition minimized/MinimizedCaseClass#value. val value: String
1111
// ^^^^^^ reference scala/Predef.String#
1212
def this() = this("value")
13-
// ^^^^ definition minimized/MinimizedCaseClass#`<init>`(+1). def this():
13+
// ^^^^ definition minimized/MinimizedCaseClass#`<init>`(+1). def this()
1414
// reference minimized/MinimizedCaseClass#`<init>`().
1515
}
1616

@@ -34,7 +34,7 @@ trait MinimizedTrait[T] extends AutoCloseable {
3434

3535
class MinimizedScalaSignatures extends AutoCloseable with java.io.Serializable {
3636
// ^^^^^^^^^^^^^^^^^^^^^^^^ definition minimized/MinimizedScalaSignatures# class MinimizedScalaSignatures
37-
// definition minimized/MinimizedScalaSignatures#`<init>`(). def this():
37+
// definition minimized/MinimizedScalaSignatures#`<init>`(). def this()
3838
// ^^^^^^^^^^^^^ reference java/lang/AutoCloseable#
3939
// reference java/lang/Object#`<init>`().
4040
// ^^^^ reference java/

0 commit comments

Comments
 (0)