Skip to content

Releases: sourcegraph/scip-java

lsif-java v0.6.11

19 Oct 07:57
2a6cc1f

Choose a tag to compare

Kotlin support for Gradle projects

Running lsif-java index in Gradle projects will now index Java, Scala and Kotlin sources. Note that Kotlin support is a few feature that's not as feature-complete as the suport for Java and Scala. Please give it a try and report feedback :)

What's Changed

  • Add support for Kotlin Gradle projects by @olafurpg in #351
  • Add support for Kotlin files in lsif-java.json builds by @olafurpg in #350

Full Changelog: v0.6.9...v0.6.11

lsif-java v0.6.9

22 Sep 15:12
d296b26

Choose a tag to compare

SemanticDB synthetics are now indexed

Previously, "find references" wouldn't show results for Scala implicits or usages of apply methods. Now, these symbol usages are indexed by lsif-java.

Pull Requests

  • Update dependency com.lightbend.sbt:sbt-java-formatter to v0.6.1 (#323) @renovate
  • Update dependency org.scalameta:munit to v0.7.29 (#326) @renovate
  • Update dependency org.rauschig:jarchivelib to v1.2.0 (#329) @renovate
  • Update gradle Docker tag to v7.2.0 (#330) @renovate
  • Update dependency org.flywaydb:flyway-core to v7.15.0 (#328) @renovate
  • Update dependency com.google.cloud.sql:postgres-socket-factory to v1.3.3 (#334) @renovate
  • Update dependency ch.epfl.scala:sbt-scalafix to v0.9.31 (#322) @renovate
  • Update dependency net.bytebuddy:byte-buddy-agent to v1.11.16 (#325) @renovate
  • Update dependency ch.epfl.scala:sbt-bloop to v1.4.9-14-67e8541e (#321) @renovate
  • Return non-zero exit code when missing SemanticDB files (#332) @olafurpg
  • Add index-dependency command to troubleshoot package repo issues. (#331) @olafurpg

lsif-java v0.6.8

27 Aug 22:28
2fed737

Choose a tag to compare

Scala Gradle support

Previously, running lsif-java index in Gradle projects indexed only the Java parts of the codebase. Now, lsif-java index also indexes Scala code

https://sourcegraph.com/github.com/apache/samza@a7cb039d2d53cbcf207a12fce504066da8bc21cb/-/blob/samza-kv/src/main/scala/org/apache/samza/storage/kv/LoggedStore.scala?L38:69#tab=references

CleanShot 2021-08-26 at 21 11 37@2x

Fixed bug in Gradle projects using annotation processors

Sometimes, lsif-java index would report an error "plug-in not found: semanticdb" in Gradle projects using annotation processors. This bug should be fixed with this release.

Pull Requests

  • Add support for Gradle Scala projects (#316) @olafurpg
  • Properly fix issue with checkerframework Gradle plugin. (#315) @olafurpg
  • Disable checkerframework Gradle plugin for lsif-java index (#314) @olafurpg
  • Add docs for how to manually enable cross-repository navigation (#312) @olafurpg
  • fix LsifBuildTool errors.nonEmpty checks (#310) @Strum355

lsif-java v0.6.6

25 Aug 11:08
3b574a3

Choose a tag to compare

Pull Requests

  • Add docs for how to manually enable cross-repository navigation (#312) @olafurpg
  • fix LsifBuildTool errors.nonEmpty checks (#310) @Strum355
  • Handle -cp javac compiler option just like -classpath (#311) @olafurpg
  • fix range emitted for member references to only include the reference (#309) @Strum355
  • change manual gradle configuration to use compileOnly instead of implementation (#308) @Strum355
  • Fix: message error '--build-tools=BUILD_TOOL_NAME' (#303) @marcel-dias
  • Handle null/unit constant types. (#300) @olafurpg
  • Trim the inferred metadata information POM files (#299) @olafurpg
  • Make snapshot-lsif command more LSIF-compliant (#298) @olafurpg

lsif-java v0.6.4

11 Aug 15:51
3109c97

Choose a tag to compare

Scala support

It's now possible to index Scala code with lsif-java. For example, this link shows you references to the java.lang.String.split() method from the Scala standard library, Spark and MUnit. The versions Scala 2.11.x, 2.12.x, 2.13.x and 3.x are supported.

image

sbt support

Previously, only the build tools Gradle and Maven were supported for the lsif-java index command. Now, you can also run lsif-java index in sbt projects. Both Java and Scala sources will be indexed.

For example, you can now use precise code intelligence on Sourcegraph.com to browse the akka/akka and haifengl/smile repositories.

CleanShot 2021-08-11 at 11 05 32@2x

Observe that "find references" shows results in both Java and Scala sources.

⚠️ Caveats

The lsif-java index command does not yet support Scala projects using the build tools Maven or Gradle. Subscribe to #301 to get notified when we add support for Scala Maven projects and #302 when we add support for Scala Gradle projects.

Pull Requests

  • Handle null/unit constant types. (#300) @olafurpg
  • Trim the inferred metadata information POM files (#299) @olafurpg
  • Make snapshot-lsif command more LSIF-compliant (#298) @olafurpg
  • Upgrade to the latest sbt-sourcegraph (#295) @olafurpg
  • Add build tool support for sbt. (#292) @olafurpg
  • Update dependency org.flywaydb:flyway-core to v7.12.1 (#289) @renovate
  • Update dependency ch.epfl.scala:sbt-bloop to v1.4.8-98-e7d4e01e (#290) @renovate
  • Update dependency net.bytebuddy:byte-buddy-agent to v1.11.12 (#287) @renovate
  • Update dependency com.google.cloud.sql:postgres-socket-factory to v1.3.2 (#282) @renovate
  • Swap order of signature and docstrings in hover messages (#285) @olafurpg
  • Start emitting SymbolInformation for Scala package repos. (#280) @olafurpg
  • Update dependency ch.epfl.scala:sbt-bloop to v1.4.8-94-1cfdf0bd (#269) @renovate
  • Update dependency net.bytebuddy:byte-buddy to v1.11.9 (#273) @renovate
  • Update dependency org.scalameta:sbt-scalafmt to v2.4.3 (#275) @renovate
  • Update dependency com.zaxxer:HikariCP to v5 (#276) @renovate
  • Update olafurpg/setup-scala action to v13 (#277) @renovate
  • Add Scala support. (#278) @olafurpg

lsif-java v0.5.7

23 Jul 12:37
fbfd0bc

Choose a tag to compare

Rework emitted packageInformation vertex data

Previously, lsif-java included the library version in the name field of the packageInformation vertices. This releases changes this to only include the version info in the version field for consistency with other LSIF indexers.
The manager field is also changed to no longer have the value "packagehub". This was a temporary value during lifetime of the POC of PackageHub, which has been replaced by a new External Service type.

Pull Requests

  • emit LSIF dump with rw-r--r-- permissions (#268) @Strum355
  • Update packageInformation structure (#267) @olafurpg
  • Update dependency net.bytebuddy:byte-buddy-agent to v1.11.8 (#256) @renovate
  • Update dependency org.postgresql:postgresql to v42.2.23 (#257) @renovate
  • Update dependency org.scalameta:munit to v0.7.27 (#262) @renovate
  • Update dependency org.scalameta:sbt-native-image to v0.3.1 (#258) @renovate

lsif-java v0.5.6

15 Jun 13:16
fd09a0c

Choose a tag to compare

Improved error handling

Previously, the lsif-semanticdb command could fail with an exception when processing certain SemanticDB files. This release includes improvements to error handling so that lsif-semanticdb should fail less frequently, and it should report a more helpful error message in the cases where it still fails.

Pull Requests

  • Return empty SymbolDescriptor for empty symbol (#254) @olafurpg
  • Update dependency ch.epfl.scala:sbt-scalafix to v0.9.29 (#237) @renovate
  • Update dependency ch.epfl.scala:sbt-bloop to v1.4.8-43-c2d941d9 (#236) @renovate
  • Update dependency com.lihaoyi:pprint to v0.6.6 (#239) @renovate
  • Update dependency org.scalameta:munit to v0.7.26 (#241) @renovate
  • Update dependency org.scalameta:sbt-mdoc to v2.2.21 (#242) @renovate
  • Update dependency pl.project13.scala:sbt-jmh to v0.4.3 (#243) @renovate
  • Update dependency net.bytebuddy:byte-buddy-agent to v1.11.1 (#249) @renovate
  • Update olafurpg/setup-scala action to v12 (#247) @renovate
  • Update dependency com.google.cloud.sql:postgres-socket-factory to v1.3.0 (#250) @renovate
  • Upgrade to the latest sbt-sourcegraph (#233) @olafurpg

lsif-java v0.5.5

31 May 12:01
ee59136

Choose a tag to compare

Improved ANSI color output

Previously, lsif-java used default color output settings when shelling out to Maven and Gradle. Now, lsif-java uses --batch-mode for Maven and TERM=dumb for Gradle to reduce ANSI color output (helpful for CI logs). Additionally, the NO_COLOR=true environment variable is respected so that you can disable all ANSI color output.

Pull Requests

lsif-java v0.5.4

21 May 19:26
99b6f0b

Choose a tag to compare

Use kind: local for local symbols

Use "local" instead of "import" for local symbol monikers. (#228) @olafurpg. This should help reduce storage size on Sourcegraph

lsif-java v0.5.3

19 May 17:49
32ff67b

Choose a tag to compare

Improved cross-repo navigation

Previously, cross-repo navigation would frequently fail to work, in particular when navigating to symbols from the JDK. This release includes several fixes so that cross-repo navigation should in general work more reliably now.

New -targetroot:javac-classes-directory

Thanks to a contribution from @wiwa, it's possible to configure the semanticdb-javac compiler plugin to emit SemanticDB files in the same directory where the compiler emits classfiles. This makes it easier to integrate lsif-java with a build tool since you can use the same -targetroot:javac-classes-directory for all projects/modules in a build. Previously, it was necessary to provide an explicit directory for every project/module.

Pull Requests

  • Improve handling of moniker import/exports and the JDK (#227) @olafurpg
  • Allow javac plugin to infer targetroot from javac class output directory (#224) @wiwa
  • Declare local symbols as "export" instead "import" monikers (#222) @olafurpg
  • Fix minor PackageHub regressions (#220) @olafurpg
  • Disable auto-indexing on packagehub (#225) @olafurpg
  • Specify yarn version for website (#226) @olafurpg
  • Add --ttl 0 flag in auto-indexing image to always pick up latest is lsif-java (#223) @olafurpg
  • skip outputting lsif snapshot for files located outside the sourceroot (#195) @Strum355
  • Remove unused dependency in the Java agent (#218) @olafurpg
  • Use the correct JDK version when indexing Java packages. (#215) @olafurpg
  • Add support for npm packages in PackageHub (#214) @olafurpg
  • Fix bug for cross-repo navigation to the JDK sources. (#212) @olafurpg
  • Pin Docker digests (#196) @renovate
  • Remove --no-transfer-progress from Maven command (#210) @olafurpg
  • Add dockerfile for auto-indexing (#209) @olafurpg
  • abstract semanticdb builders and move tree modeling to new class (#194) @Strum355
  • Several PackageHub fixes (#193) @olafurpg
  • handle unresolved annotation parameter tree differences (#191) @Strum355