diff --git a/MODULE.bazel b/MODULE.bazel index 9aef913..6a2ac5b 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -1,5 +1,5 @@ module( - name = "scip-lsp", + name = "scip_lsp", version = "0.1.0", ) @@ -15,6 +15,7 @@ bazel_dep(name = "rules_proto", version = "7.0.2") # Maven Deps maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven") maven.install( + name = "scip_lsp_maven", artifacts = [ # SCIP Java dependencies "com.sourcegraph:scip-java_2.13:0.10.4", @@ -45,7 +46,7 @@ maven.install( # Test dependencies - separate install to mark as testonly maven.install( - name = "maven_test", + name = "scip_lsp_maven_test", artifacts = [ "org.junit.jupiter:junit-jupiter-api:5.13.1", "org.junit.jupiter:junit-jupiter-engine:5.13.1", @@ -59,7 +60,7 @@ maven.install( "https://repo1.maven.org/maven2/", ], ) -use_repo(maven, "maven", "maven_test") +use_repo(maven, "scip_lsp_maven", "scip_lsp_maven_test") # Python toolchain setup python = use_extension("@rules_python//python/extensions:python_toolchains.bzl", "python") diff --git a/MODULE.bazel.lock b/MODULE.bazel.lock index 0e2e7f0..82129f3 100644 --- a/MODULE.bazel.lock +++ b/MODULE.bazel.lock @@ -336,301 +336,6 @@ ] } }, - "@@rules_go+//go:extensions.bzl%go_sdk": { - "os:osx,arch:aarch64": { - "bzlTransitiveDigest": "Auk15o2MBXE/6C1zRPxrxkZgUs8fd86QT9YYK3Cb+0A=", - "usagesDigest": "gzYyP42UN/6PNco+RvijhQvQBu7lDj0thXOKf6E50c0=", - "recordedFileInputs": {}, - "recordedDirentsInputs": {}, - "envVariables": {}, - "generatedRepoSpecs": { - "io_bazel_rules_nogo": { - "repoRuleId": "@@rules_go+//go/private:nogo.bzl%go_register_nogo", - "attributes": { - "nogo": "@io_bazel_rules_go//:default_nogo", - "includes": [ - "'@@//:__subpackages__'" - ], - "excludes": [] - } - }, - "contrib_rules_jvm__download_0": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "experiments": [], - "patches": [], - "patch_strip": 0, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.5", - "strip_prefix": "go" - } - }, - "contrib_rules_jvm__download_0_darwin_amd64": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.5" - } - }, - "contrib_rules_jvm__download_0_linux_amd64": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.5" - } - }, - "contrib_rules_jvm__download_0_linux_arm64": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.5" - } - }, - "contrib_rules_jvm__download_0_windows_amd64": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.5" - } - }, - "contrib_rules_jvm__download_0_windows_arm64": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.5" - } - }, - "go_default_sdk": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "experiments": [], - "patches": [], - "patch_strip": 0, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.1", - "strip_prefix": "go" - } - }, - "rules_go__download_0_darwin_amd64": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.1" - } - }, - "rules_go__download_0_linux_amd64": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.1" - } - }, - "rules_go__download_0_linux_arm64": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.1" - } - }, - "rules_go__download_0_windows_amd64": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.1" - } - }, - "rules_go__download_0_windows_arm64": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_download_sdk_rule", - "attributes": { - "goos": "", - "goarch": "", - "sdks": {}, - "urls": [ - "https://dl.google.com/go/{}" - ], - "version": "1.21.1" - } - }, - "go_host_compatible_sdk_label": { - "repoRuleId": "@@rules_go+//go/private:extensions.bzl%host_compatible_toolchain", - "attributes": { - "toolchain": "@contrib_rules_jvm__download_0//:ROOT" - } - }, - "go_toolchains": { - "repoRuleId": "@@rules_go+//go/private:sdk.bzl%go_multiple_toolchains", - "attributes": { - "prefixes": [ - "_0000_contrib_rules_jvm__download_0_", - "_0001_contrib_rules_jvm__download_0_darwin_amd64_", - "_0002_contrib_rules_jvm__download_0_linux_amd64_", - "_0003_contrib_rules_jvm__download_0_linux_arm64_", - "_0004_contrib_rules_jvm__download_0_windows_amd64_", - "_0005_contrib_rules_jvm__download_0_windows_arm64_", - "_0006_go_default_sdk_", - "_0007_rules_go__download_0_darwin_amd64_", - "_0008_rules_go__download_0_linux_amd64_", - "_0009_rules_go__download_0_linux_arm64_", - "_0010_rules_go__download_0_windows_amd64_", - "_0011_rules_go__download_0_windows_arm64_" - ], - "geese": [ - "", - "darwin", - "linux", - "linux", - "windows", - "windows", - "", - "darwin", - "linux", - "linux", - "windows", - "windows" - ], - "goarchs": [ - "", - "amd64", - "amd64", - "arm64", - "amd64", - "arm64", - "", - "amd64", - "amd64", - "arm64", - "amd64", - "arm64" - ], - "sdk_repos": [ - "contrib_rules_jvm__download_0", - "contrib_rules_jvm__download_0_darwin_amd64", - "contrib_rules_jvm__download_0_linux_amd64", - "contrib_rules_jvm__download_0_linux_arm64", - "contrib_rules_jvm__download_0_windows_amd64", - "contrib_rules_jvm__download_0_windows_arm64", - "go_default_sdk", - "rules_go__download_0_darwin_amd64", - "rules_go__download_0_linux_amd64", - "rules_go__download_0_linux_arm64", - "rules_go__download_0_windows_amd64", - "rules_go__download_0_windows_arm64" - ], - "sdk_types": [ - "remote", - "remote", - "remote", - "remote", - "remote", - "remote", - "remote", - "remote", - "remote", - "remote", - "remote", - "remote" - ], - "sdk_versions": [ - "1.21.5", - "1.21.5", - "1.21.5", - "1.21.5", - "1.21.5", - "1.21.5", - "1.21.1", - "1.21.1", - "1.21.1", - "1.21.1", - "1.21.1", - "1.21.1" - ] - } - } - }, - "recordedRepoMappingEntries": [ - [ - "bazel_features+", - "bazel_features_globals", - "bazel_features++version_extension+bazel_features_globals" - ], - [ - "bazel_features+", - "bazel_features_version", - "bazel_features++version_extension+bazel_features_version" - ], - [ - "rules_go+", - "bazel_tools", - "bazel_tools" - ], - [ - "rules_go+", - "io_bazel_rules_go", - "rules_go+" - ], - [ - "rules_go+", - "io_bazel_rules_go_bazel_features", - "bazel_features+" - ] - ] - } - }, "@@rules_kotlin+//src/main/starlark/core/repositories:bzlmod_setup.bzl%rules_kotlin_extensions": { "general": { "bzlTransitiveDigest": "hUTp2w+RUVdL7ma5esCXZJAFnX7vLbVfLd7FwnQI6bU=", diff --git a/README.md b/README.md index a342d99..3a6be92 100644 --- a/README.md +++ b/README.md @@ -64,40 +64,11 @@ We will focus on a) automating these steps b) adjusting them to ensure they allo 3. [If Indexing Code in Another Repo] Add necessary dependencies to the repo's MODULE.bazel ``` - bazel_dep(name = "rules_jvm_external", version = "6.7") - local_repository = use_repo_rule("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository") - local_repository(name = "scip_lsp", path = "/home/user/scip-lsp") - - maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven") - maven.install( - artifacts = [ - # SCIP Java dependencies - "com.sourcegraph:scip-java_2.13:0.10.4", - "com.sourcegraph:scip-semanticdb:0.10.4", - "com.sourcegraph:scip-java-proto:0.10.4", - "com.sourcegraph:semanticdb-java:0.10.4", - "com.sourcegraph:semanticdb-javac:0.10.4", - - # Intellij dependencies - "com.jetbrains.intellij.java:java-decompiler-engine:jar:251.26094.121", - - # Utility libraries - "commons-cli:commons-cli:1.5.0", - "commons-io:commons-io:2.11.0", - "org.jspecify:jspecify:0.3.0", - "org.ow2.asm:asm:9.7.1", - "org.projectlombok:lombok:1.18.38", - - # Logging - "org.slf4j:slf4j-api:2.0.9", - "org.slf4j:slf4j-simple:2.0.9", - ], - repositories = [ - "https://repo1.maven.org/maven2/", - "https://www.jetbrains.com/intellij-repository/releases", - ], + bazel_dep(name = "scip_lsp", version = "0.0.1") + local_path_override( + module_name = "scip_lsp", + path = "/path/to/code/uber/scip-lsp", ) - use_repo(maven, "maven") ``` 4. SCIP Index Generation diff --git a/bsp_server/indexer/scip.bzl b/bsp_server/indexer/scip.bzl index 360ea44..78464e0 100644 --- a/bsp_server/indexer/scip.bzl +++ b/bsp_server/indexer/scip.bzl @@ -163,12 +163,12 @@ def _index_sources( ctx, target, sources_file, - sources_folders = None + sources_folders = None, inputs = depset(), additional_classpath = None, flow_prefix = "_index_sources"): - if source_folders == None: - source_folders = [] + if sources_folders == None: + sources_folders = [] if additional_classpath == None: additional_classpath = [] @@ -287,7 +287,7 @@ scip_java_aspect = aspect( _scip_java_aspect, attrs = { "_javac_semanticdb_plugin": attr.label( - default = Label("@maven//:com_sourcegraph_semanticdb_javac"), + default = Label("@scip_lsp_maven//:com_sourcegraph_semanticdb_javac"), cfg = "exec", ), "_lombok_extractor": attr.label( diff --git a/src/main/java/com/uber/intellij/jd/BUILD.bazel b/src/main/java/com/uber/intellij/jd/BUILD.bazel index 6704d83..08b6b39 100644 --- a/src/main/java/com/uber/intellij/jd/BUILD.bazel +++ b/src/main/java/com/uber/intellij/jd/BUILD.bazel @@ -5,7 +5,7 @@ java_library( srcs = glob(["*.java"]), visibility = ["//visibility:public"], deps = [ - "@maven//:com_jetbrains_intellij_java_java_decompiler_engine", + "@scip_lsp_maven//:com_jetbrains_intellij_java_java_decompiler_engine", ], ) diff --git a/src/main/java/com/uber/scip/aggregator/BUILD.bazel b/src/main/java/com/uber/scip/aggregator/BUILD.bazel index 931e309..ed41c44 100644 --- a/src/main/java/com/uber/scip/aggregator/BUILD.bazel +++ b/src/main/java/com/uber/scip/aggregator/BUILD.bazel @@ -5,15 +5,15 @@ java_library( srcs = glob(["*.java"]), visibility = ["//visibility:public"], runtime_deps = [ - "@maven//:org_slf4j_slf4j_simple", + "@scip_lsp_maven//:org_slf4j_slf4j_simple", ], deps = [ "//src/main/java/com/uber/scip/aggregator/scip", - "@maven//:com_sourcegraph_scip_semanticdb", - "@maven//:commons_cli_commons_cli", - "@maven//:commons_io_commons_io", - "@maven//:org_jspecify_jspecify", - "@maven//:org_slf4j_slf4j_api", + "@scip_lsp_maven//:com_sourcegraph_scip_semanticdb", + "@scip_lsp_maven//:commons_cli_commons_cli", + "@scip_lsp_maven//:commons_io_commons_io", + "@scip_lsp_maven//:org_jspecify_jspecify", + "@scip_lsp_maven//:org_slf4j_slf4j_api", ], ) diff --git a/src/main/java/com/uber/scip/aggregator/scip/BUILD.bazel b/src/main/java/com/uber/scip/aggregator/scip/BUILD.bazel index 18eb75f..539a230 100644 --- a/src/main/java/com/uber/scip/aggregator/scip/BUILD.bazel +++ b/src/main/java/com/uber/scip/aggregator/scip/BUILD.bazel @@ -5,16 +5,16 @@ java_library( srcs = glob(["*.java"]), visibility = ["//visibility:public"], runtime_deps = [ - "@maven//:org_slf4j_slf4j_simple", + "@scip_lsp_maven//:org_slf4j_slf4j_simple", ], deps = [ - "@maven//:com_sourcegraph_scip_java_proto", - "@maven//:com_sourcegraph_scip_semanticdb", - "@maven//:com_sourcegraph_semanticdb_java", - "@maven//:com_sourcegraph_semanticdb_javac", - "@maven//:commons_cli_commons_cli", - "@maven//:commons_io_commons_io", - "@maven//:org_jspecify_jspecify", - "@maven//:org_slf4j_slf4j_api", + "@scip_lsp_maven//:com_sourcegraph_scip_java_proto", + "@scip_lsp_maven//:com_sourcegraph_scip_semanticdb", + "@scip_lsp_maven//:com_sourcegraph_semanticdb_java", + "@scip_lsp_maven//:com_sourcegraph_semanticdb_javac", + "@scip_lsp_maven//:commons_cli_commons_cli", + "@scip_lsp_maven//:commons_io_commons_io", + "@scip_lsp_maven//:org_jspecify_jspecify", + "@scip_lsp_maven//:org_slf4j_slf4j_api", ], ) diff --git a/src/main/java/com/uber/scip/extractor/BUILD.bazel b/src/main/java/com/uber/scip/extractor/BUILD.bazel index c69235a..faa7f67 100644 --- a/src/main/java/com/uber/scip/extractor/BUILD.bazel +++ b/src/main/java/com/uber/scip/extractor/BUILD.bazel @@ -5,15 +5,15 @@ java_library( srcs = glob(["*.java"]), visibility = ["//visibility:public"], runtime_deps = [ - "@maven//:org_slf4j_slf4j_simple", + "@scip_lsp_maven//:org_slf4j_slf4j_simple", ], deps = [ - "@maven//:com_sourcegraph_scip_semanticdb", - "@maven//:commons_cli_commons_cli", - "@maven//:commons_io_commons_io", - "@maven//:org_jspecify_jspecify", - "@maven//:org_ow2_asm_asm", - "@maven//:org_slf4j_slf4j_api", + "@scip_lsp_maven//:com_sourcegraph_scip_semanticdb", + "@scip_lsp_maven//:commons_cli_commons_cli", + "@scip_lsp_maven//:commons_io_commons_io", + "@scip_lsp_maven//:org_jspecify_jspecify", + "@scip_lsp_maven//:org_ow2_asm_asm", + "@scip_lsp_maven//:org_slf4j_slf4j_api", ], ) diff --git a/src/test/java/com/uber/intellij/jd/BUILD.bazel b/src/test/java/com/uber/intellij/jd/BUILD.bazel index 1afaebc..dacdfe9 100644 --- a/src/test/java/com/uber/intellij/jd/BUILD.bazel +++ b/src/test/java/com/uber/intellij/jd/BUILD.bazel @@ -11,9 +11,9 @@ java_test_suite( deps = [ "//src/main/java/com/uber/intellij/jd:decompiler", "//src/test/java/com/uber/utils:test_utils", - "@maven_test//:org_junit_jupiter_junit_jupiter_api", - "@maven_test//:org_junit_jupiter_junit_jupiter_engine", - "@maven_test//:org_junit_platform_junit_platform_launcher", - "@maven_test//:org_junit_platform_junit_platform_reporting", + "@scip_lsp_maven_test//:org_junit_jupiter_junit_jupiter_api", + "@scip_lsp_maven_test//:org_junit_jupiter_junit_jupiter_engine", + "@scip_lsp_maven_test//:org_junit_platform_junit_platform_launcher", + "@scip_lsp_maven_test//:org_junit_platform_junit_platform_reporting", ], ) diff --git a/src/test/java/com/uber/scip/aggregator/BUILD.bazel b/src/test/java/com/uber/scip/aggregator/BUILD.bazel index 1978ea5..47e7025 100644 --- a/src/test/java/com/uber/scip/aggregator/BUILD.bazel +++ b/src/test/java/com/uber/scip/aggregator/BUILD.bazel @@ -7,14 +7,14 @@ java_test_suite( deps = [ "//src/main/java/com/uber/scip/aggregator", "//src/main/java/com/uber/scip/aggregator/scip", - "@maven//:commons_cli_commons_cli", - "@maven//:commons_io_commons_io", - "@maven_test//:org_assertj_assertj_core", - "@maven_test//:org_junit_jupiter_junit_jupiter_api", - "@maven_test//:org_junit_jupiter_junit_jupiter_engine", - "@maven_test//:org_junit_platform_junit_platform_launcher", - "@maven_test//:org_junit_platform_junit_platform_reporting", - "@maven_test//:org_mockito_mockito_core", - "@maven_test//:org_mockito_mockito_inline", + "@scip_lsp_maven//:commons_cli_commons_cli", + "@scip_lsp_maven//:commons_io_commons_io", + "@scip_lsp_maven_test//:org_assertj_assertj_core", + "@scip_lsp_maven_test//:org_junit_jupiter_junit_jupiter_api", + "@scip_lsp_maven_test//:org_junit_jupiter_junit_jupiter_engine", + "@scip_lsp_maven_test//:org_junit_platform_junit_platform_launcher", + "@scip_lsp_maven_test//:org_junit_platform_junit_platform_reporting", + "@scip_lsp_maven_test//:org_mockito_mockito_core", + "@scip_lsp_maven_test//:org_mockito_mockito_inline", ], ) diff --git a/src/test/java/com/uber/scip/aggregator/scip/BUILD.bazel b/src/test/java/com/uber/scip/aggregator/scip/BUILD.bazel index 7c97076..a4d5173 100644 --- a/src/test/java/com/uber/scip/aggregator/scip/BUILD.bazel +++ b/src/test/java/com/uber/scip/aggregator/scip/BUILD.bazel @@ -9,16 +9,16 @@ java_test_suite( "//src/main/java/com/uber/scip/aggregator", "//src/main/java/com/uber/scip/aggregator/scip", "//src/test/java/com/uber/utils:test_utils", - "@maven//:com_sourcegraph_scip_java_proto", - "@maven//:com_sourcegraph_scip_semanticdb", - "@maven//:commons_cli_commons_cli", - "@maven//:commons_io_commons_io", - "@maven_test//:org_assertj_assertj_core", - "@maven_test//:org_junit_jupiter_junit_jupiter_api", - "@maven_test//:org_junit_jupiter_junit_jupiter_engine", - "@maven_test//:org_junit_platform_junit_platform_launcher", - "@maven_test//:org_junit_platform_junit_platform_reporting", - "@maven_test//:org_mockito_mockito_core", - "@maven_test//:org_mockito_mockito_inline", + "@scip_lsp_maven//:com_sourcegraph_scip_java_proto", + "@scip_lsp_maven//:com_sourcegraph_scip_semanticdb", + "@scip_lsp_maven//:commons_cli_commons_cli", + "@scip_lsp_maven//:commons_io_commons_io", + "@scip_lsp_maven_test//:org_assertj_assertj_core", + "@scip_lsp_maven_test//:org_junit_jupiter_junit_jupiter_api", + "@scip_lsp_maven_test//:org_junit_jupiter_junit_jupiter_engine", + "@scip_lsp_maven_test//:org_junit_platform_junit_platform_launcher", + "@scip_lsp_maven_test//:org_junit_platform_junit_platform_reporting", + "@scip_lsp_maven_test//:org_mockito_mockito_core", + "@scip_lsp_maven_test//:org_mockito_mockito_inline", ], ) diff --git a/src/test/java/com/uber/scip/extractor/BUILD.bazel b/src/test/java/com/uber/scip/extractor/BUILD.bazel index e04687e..a4fe993 100644 --- a/src/test/java/com/uber/scip/extractor/BUILD.bazel +++ b/src/test/java/com/uber/scip/extractor/BUILD.bazel @@ -8,14 +8,14 @@ java_test_suite( deps = [ "//src/main/java/com/uber/scip/extractor", "//src/test/java/com/uber/utils:test_utils", - "@maven//:com_sourcegraph_scip_semanticdb", - "@maven//:commons_cli_commons_cli", - "@maven_test//:org_assertj_assertj_core", - "@maven_test//:org_junit_jupiter_junit_jupiter_api", - "@maven_test//:org_junit_jupiter_junit_jupiter_engine", - "@maven_test//:org_junit_platform_junit_platform_launcher", - "@maven_test//:org_junit_platform_junit_platform_reporting", - "@maven_test//:org_mockito_mockito_core", - "@maven_test//:org_mockito_mockito_inline", + "@scip_lsp_maven//:com_sourcegraph_scip_semanticdb", + "@scip_lsp_maven//:commons_cli_commons_cli", + "@scip_lsp_maven_test//:org_assertj_assertj_core", + "@scip_lsp_maven_test//:org_junit_jupiter_junit_jupiter_api", + "@scip_lsp_maven_test//:org_junit_jupiter_junit_jupiter_engine", + "@scip_lsp_maven_test//:org_junit_platform_junit_platform_launcher", + "@scip_lsp_maven_test//:org_junit_platform_junit_platform_reporting", + "@scip_lsp_maven_test//:org_mockito_mockito_core", + "@scip_lsp_maven_test//:org_mockito_mockito_inline", ], )