Releases: sourcegraph/scip-java
v0.9.4
Thanks to a fantastic contribution by @Arthurm1, this release mostly removes the need to add special module export flags to access compiler APIs - as we no longer use private APIs to produce Semanticdb files from Java.
What's Changed
New Contributors
Full Changelog: v0.9.3...v0.9.4
v0.9.3
This release bumps sbt-sourcegraph plugin to 0.4.2 bringing important fixes to auto-indexing of Scala projects, notably:
- Properly support Scala 3
- Support mixed Java/Scala sources when compling on JDK 17+
We also re-enabled test coverage for auto-indexing Scala projects.
What's Changed
Full Changelog: v0.9.2...v0.9.3
v0.9.2
This release improves auto-indexing of Gradle projects and removes the Coursier bootstrap sequence which downloaded jars from Maven Central when running SCIP build tool
What's Changed
- Unconditionally add agent in Gradle plugin, add protobuf codegen test by @keynmol in #630
- Remove coursier bootstrap and respect COURSIER_JVM_INDEX by @keynmol in #631
Full Changelog: v0.9.1...v0.9.2
v0.9.1
This release improves the handling of special environment variables recognised by Coursier:
COURSIER_REPOSITORIES
- if set, it fully overrides the list of repositories used by Scip build tool for artifact resolutionCOURSIER_CREDENTIALS
- we upgraded Coursier to 2.1.x to bring in the fix for credentials passed as a string in env variable
What's Changed
Full Changelog: v0.9.0...v0.9.1
v0.9.0
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.
Other Changes
- Get benchmarks running correctly by @olafurpg in #621
- Run sample benchmarks on CI by @keynmol in #622
Full Changelog: v0.8.26...v0.9.0
v0.8.26
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
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.
What's Changed
- Add mnemonic for scip-java aspect by @olafurpg in #613
- pr-auditor: update workflow to use new repo by @burmudar in #614
New Contributors
Full Changelog: v0.8.24...v0.8.25
v0.8.24
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)"
Big thanks to @keynmol for reviewing this large PR 🙏🏻
Other changes
Full Changelog: v0.8.23...v0.8.24
v0.8.23
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).
Full Changelog: v0.8.22...v0.8.23
v0.8.22
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
- @jhchabran made their first contribution in #599
Full Changelog: v0.8.20...v0.8.22