Skip to content

Releases: sourcegraph/scip-java

v0.9.1

07 Aug 14:50
0fe40e9

Choose a tag to compare

This release improves the handling of special environment variables recognised by Coursier:

What's Changed

  • Allow picking up credentials from environment variables by @keynmol in #629

Full Changelog: v0.9.0...v0.9.1

v0.9.0

27 Jul 12:41
v0.9.0
8480863

Choose a tag to compare

Kotlin 1.8

This release upgrades scip-kotlin to v0.3.2, bumping the lowest supported Kotlin version to 1.8.0. See the scip-kotlin v0.3.2 release for more info.

  • bump semanticdb-kotlinc and kotlin-compiler-embeddable for kotlin 1.8 by @Strum355 in #623

Other Changes

Full Changelog: v0.8.26...v0.9.0

v0.8.26

25 Jul 13:55
d4bbe72

Choose a tag to compare

More robust error handling for Bazel

This release includes two changes related to how the semanticdb-javac compiler plugin handles unexpected failures, which previously crashed the compilation but should now allow compilation to continue.

  • Remove unnecessary throw for unexpected exception by @olafurpg in #619
  • Bazel: fallback to default absolute path logic by @olafurpg in #620

Full Changelog: v0.8.25...v0.8.26

v0.8.25

20 Jul 15:24
a1d4ff2

Choose a tag to compare

Find implementations for Kotlin

This release upgrades scip-kotlin to v0.3.1, which adds support for "Find implementations" https://github.com/sourcegraph/scip-kotlin/releases/tag/v0.3.1

Improved cross-repo navigation

Previously, due to implementation details, it was not possible to index two separate Gradle or Maven codebases and get cross-repo navigation working between those projects. This didn't work due to implementation details, which are now fixed in this release. For example, you can now index two Gradle codebases and if one project refers to symbols that are defined in the other project then cross-repo navigation should work. The only constraint is that the declared publication version in the upstream project must match the version of the dependency in the downstream project.

  • Enable cross-repository navigation between Gradle/Maven codebases by @olafurpg in #616

What's Changed

New Contributors

Full Changelog: v0.8.24...v0.8.25

v0.8.24

13 Jul 14:41
fa81188

Choose a tag to compare

Automatic Bazel/Java indexing

This release adds support to automatically index Java/Bazel codebases without changing BUILD or WORKSPACE configuration. See the updated documentation here https://sourcegraph.github.io/scip-java/docs/getting-started.html#bazel

To automatically index a Bazel/Java codebase, install the latest scip-java version and run the command

scip-java index "--bazel-scip-java-binary=$(which scip-java)"
  • Add support to auto-index Bazel builds with an aspect by @olafurpg in #610

Big thanks to @keynmol for reviewing this large PR 🙏🏻

Other changes

Full Changelog: v0.8.23...v0.8.24

v0.8.23

12 Jul 15:06
00c8ed5

Choose a tag to compare

New -no-relative-path: flag to control indexing of generated files

Previously, the SemanticDB compiler plugin errored when indexing auto-generated files outside of the configured -sourceroot directory (which is automatically inferred for Bazel builds). This behavior was undesirable because:

  • There's no good workaround for the issue
  • The error message was cryptic making it difficult to understand what went wrong

For some cases, we were able to detect this situation for Bazel and ignore the indexed file while printing an informative message, but this behavior was also undesirable because we skipping these files means that we can't render hover messages for symbols in those generated files.

This PR fixes the issue by adding a configurable -no-relative-path: flag with the following valid options:

  • index_anyways (default): indexes the file but with no guarantee that it's possible to recover the location of the original generated file. This allows us to display accurate hover tooltips for symbols in these files even if "Go to definition" won't work.
  • skip: silently ignored these files.
  • warning: ignore these files and print a message explaining it was skipped.
  • error: fail the compilation process (old default).
  • Add -no-relative-path: flag to control indexing of generated files by @olafurpg in #611

Full Changelog: v0.8.22...v0.8.23

v0.8.22

07 Jul 07:39
5028089

Choose a tag to compare

Bazel improvements

  • Bazel: add support for DirectoryFileObject by @olafurpg in #597
  • If any errors were reported, fail BazelBuildTool with code 1 by @keynmol in #607
  • Special handling of Bazel with source generators by @keynmol in #602
  • bzl: add http_archive to bazel-example by @jhchabran in #599

Mill improvements

  • feat: add support for 0.11.x series of Mill by @ckipp01 in #596
  • deps: bump version of mill plugin to 0.3.5 by @ckipp01 in #605

New Contributors

Full Changelog: v0.8.20...v0.8.22

v0.8.20

09 Jun 11:01
ddbc7f0

Choose a tag to compare

Release equivalent to 0.8.19

the release notes are from 0.8.19

This is a maintenace release which doesn't contain many user-facing features

  • Support --build-tool=auto to trust the build tool detection logic, instead of specifying it manually
  • Internal (for now) Gradle plugin to emit SCIP files - which replaces our previous init script approach - this allows us to support Gradle 8 as well, along with toolchains
    This is the most significant internal change, please report any issues, we're looking for feedback!
  • Speculative and primitive JDK version detection - 17, 11, 8 are tried in sequence until first succeeds

What's Changed

  • Remove unused release drafter workflow by @olafurpg in #574
  • deps: bump mill-scip to 0.3.2 by @ckipp01 in #576
  • Set all directories as "safe" for Git in the indexer docker container by @keynmol in #580
  • Replace Gradle init scripts with a proper Gradle plugin by @keynmol in #565
  • Use reflection to work around Gradle's scanning of plugin code by @keynmol in #581
  • Auto build tool - choose the first one that applies by @keynmol in #582
  • Try different jdk versions in sequence by @keynmol in #583
  • Check annotation path by @keynmol in #584
  • Set higher RAM percentage in Docker container by @keynmol in #585
  • Publish a latest-snapshot docker image from main by @keynmol in #586

Full Changelog: v0.8.18...v0.8.20

(do not use) v0.8.19

08 Jun 15:07
98aad2d

Choose a tag to compare

Artifacts for this release didn't publish correctly, do not use

This is a maintenace release which doesn't contain many user-facing features

  • Support --build-tool=auto to trust the build tool detection logic, instead of specifying it manually
  • Internal (for now) Gradle plugin to emit SCIP files - which replaces our previous init script approach - this allows us to support Gradle 8 as well, along with toolchains
    This is the most significant internal change, please report any issues, we're looking for feedback!
  • Speculative and primitive JDK version detection - 17, 11, 8 are tried in sequence until first succeeds

What's Changed

  • Remove unused release drafter workflow by @olafurpg in #574
  • deps: bump mill-scip to 0.3.2 by @ckipp01 in #576
  • Set all directories as "safe" for Git in the indexer docker container by @keynmol in #580
  • Replace Gradle init scripts with a proper Gradle plugin by @keynmol in #565
  • Use reflection to work around Gradle's scanning of plugin code by @keynmol in #581
  • Auto build tool - choose the first one that applies by @keynmol in #582
  • Try different jdk versions in sequence by @keynmol in #583
  • Check annotation path by @keynmol in #584
  • Set higher RAM percentage in Docker container by @keynmol in #585
  • Publish a latest-snapshot docker image from main by @keynmol in #586

Full Changelog: v0.8.18...v0.8.19

v0.8.18

03 May 11:47
7561f5a

Choose a tag to compare

What's Changed

  • Fix a regression in v0.8.17 where the SCIP index contained invalid symbols by @olafurpg in #570

Full Changelog: v0.8.17...v0.8.18