-
Notifications
You must be signed in to change notification settings - Fork 46
[feature] add the ability to use bloop as the bsp server #246
Conversation
0f12f34
to
f8d2013
Compare
server/src/main/java/org/jetbrains/bsp/bazel/server/BloopExporter.java
Outdated
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/BloopExporter.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks a lot for that <3 I'll try to test it on my own later
formatting fails
left some comments + code itself needs some changes (especially BloopExporter
) but I can do it later in the following PR if u don't have time for that
install/src/main/java/org/jetbrains/bsp/bazel/install/BloopEnvironmentCreator.kt
Outdated
Show resolved
Hide resolved
install/src/main/java/org/jetbrains/bsp/bazel/install/BloopEnvironmentCreator.kt
Outdated
Show resolved
Hide resolved
install/src/main/java/org/jetbrains/bsp/bazel/install/BloopEnvironmentCreator.kt
Outdated
Show resolved
Hide resolved
install/src/main/java/org/jetbrains/bsp/bazel/install/BloopEnvironmentCreator.kt
Outdated
Show resolved
Hide resolved
install/src/main/java/org/jetbrains/bsp/bazel/install/BloopEnvironmentCreator.kt
Outdated
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/BloopExporterInitializer.java
Outdated
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/BloopExporter.java
Outdated
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/BloopExporter.java
Outdated
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/BloopExporter.java
Outdated
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/BloopExporter.java
Outdated
Show resolved
Hide resolved
its really weird, my google-java-format plugin won't wrap that string. I'll do it manually, just haven't gotten around to it yet. |
server/src/main/java/org/jetbrains/bsp/bazel/server/sync/BazelProjectMapper.java
Show resolved
Hide resolved
sorry, I've been slacking on this review. In the mean time I've been using this for the last couple weeks as my daily driver and its working great! Besides adding unit tests, are there any other major blockers you see to merging this? |
well, if u really want it merged, i can take care of tests and similar things later - u just need to rebase it |
oh no that's ok, I'm perfectly happy to do the work to get it up to speed. I also noticed you left a lot of comments a couple weeks ago I missed, let me go over those as well. |
3005b98
to
99ebfcf
Compare
489d895
to
4434555
Compare
@abrams27 did a big code cleanup and added some tests, let me know what you think! |
ping @abrams27 :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sorry, i was quite busy
i left some comments / questions and build still fails
also it'd be nice to mention in readme how to use it with bloop + update changelog
also, could u please describe how this integration works? what is the flow? i'd like to try it on my own, but im not sure exactly how it's suppose to work
install/src/main/java/org/jetbrains/bsp/bazel/install/cli/CliOptionsProvider.kt
Show resolved
Hide resolved
install/src/main/java/org/jetbrains/bsp/bazel/install/cli/CliOptionsProvider.kt
Outdated
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/bloop/BloopExporter.java
Outdated
Show resolved
Hide resolved
install/src/main/java/org/jetbrains/bsp/bazel/install/BloopEnvironmentCreator.kt
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/bloop/BloopExporterInitializer.java
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/bloop/BloopExporter.java
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/common/BUILD
Outdated
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/bloop/BspProjectExporter.java
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/bloop/ReGlobber.java
Outdated
Show resolved
Hide resolved
server/src/test/java/org/jetbrains/bsp/bazel/server/bloop/ReGlobberTest.kt
Show resolved
Hide resolved
Added a section to the README describing how to use "bloop mode" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll try it out tomorrow, and then we can merge it
and buildifier fails
bazelrunner/src/main/java/org/jetbrains/bsp/bazel/bazelrunner/BazelRunner.kt
Show resolved
Hide resolved
server/src/main/java/org/jetbrains/bsp/bazel/server/bloop/BUILD
Outdated
Show resolved
Hide resolved
I installed bloop (using brew), then |
You shouldn't have to install bloop, the installer downloads it for you. You might need to pass a target spec ( edit: oh yeah I think I'm seeing the same thing when I tried it with bazel-bsp itself, weird. |
hmm is it possible to see what bloop sends to the client? deps are only mentioned it |
edit: oh actually so for bazel-bsp I think the problem is kotlin, not 3rdparty deps, the 3rdparty stuff seems to resolve fine. What project did you test with? |
bazel-bsp xd |
heh, yeah it seems like the kotlin dependencies are really throwing bloop off. //commons compiles fine:
but it does still show up as missing deps in IJ. edit: edit2: |
think we can merge this in today? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I checked it with another project, seems working, soo okeeeyyy lets goo
This needs a little more cleanup, but is in a spot where it's ready for review (and general use!)
I've been using it for a daily-driver now instead of fastpass for a week or so now and it's at least at parity (and better in most cases imo).
Most of the logic is in BloopExporter, most translation from the bazel-bsp model to bloop is pretty straight forward, but there's a couple places where we diverge slightly:
fixupClassPath