Skip to content

lsif-java v0.5.0

Compare
Choose a tag to compare
@github-actions github-actions released this 20 Apr 14:34
· 558 commits to main since this release
04287b3

We are excited to announce the v0.5.0 release of lsif-java 🚀

Installing

Use Coursier to install lsif-java.

cs install --contrib lsif-java

Upgrading

To upgrade to the latest release, run

cs upgrade lsif-java

Improved hover messages

Hover messages now include the full signature of the definition symbol, including annotations.

CleanShot 2021-04-20 at 16 26 59@2x

NOTE: currently, hover messages only render signatures that are defined in the local repository. Subscribe to #174 for updates on rendering signatures of external symbols that are defined outside of the local repository.

Gradle improvements

The lsif-java index command should work now with the Playframework plugin for Gradle or the newly released Gradle v7.0.

First step towards navigation for Java libraries

The generated LSIF data now includes packageInformation nodes to link to externally defined symbol. This is the first step towards enabling cross-repository navigation. The next step will be to extend the Sourcegraph backend to serve published Java libraries from Maven Central.

Visit this link to see a live demo of this functionality. The link points to the sources of the Guava library. Observe that you can navigate to symbols that are defined in the JDK, and you can also "find references" can show results from multiple repositories.

CleanShot 2021-04-20 at 16 24 47@2x

Multiple navigation improvements

Goto definition and find references should work better across the board. To name a few changes

  • goto definition on a constructor now goes straight to the constructor instead of the class symbol
  • goto definition on anonymous classes should give more reliably accurate results
  • find references no longer includes confusing references to this

Pull requests

Internal pull requests

  • Update dependency ch.epfl.scala:sbt-scalafix to v0.9.27 (#134) @renovate
  • Update dependency net.bytebuddy:byte-buddy to v1.10.22 (#138) @renovate
  • Update dependency ch.epfl.scala:sbt-bloop to v1.4.8-17-3eab1f80 (#133) @renovate
  • Update dependency docusaurus to v1.14.7 (#137) @renovate
  • Update dependency com.lihaoyi:pprint to v0.6.4 (#136) @renovate
  • Update dependency com.geirsson:sbt-ci-release to v1.5.7 (#135) @renovate
  • Update dependency net.bytebuddy:byte-buddy-agent to v1.10.22 (#139) @renovate
  • Update dependency org.scalameta:munit to v0.7.23 (#140) @renovate
  • Update dependency org.scalameta:sbt-mdoc to v2.2.19 (#141) @renovate
  • Update documentation (#132) @olafurpg