These are chat archives for ensime/ensime-atom

22nd
Mar 2016
Viktor Hedefalk
@hedefalk
Mar 22 2016 11:39
@/all ENSIME-Atom 0.38.1 release notes: https://github.com/ensime/ensime-atom/releases/tag/v0.38.1
Jari Pennanen
@Ciantic
Mar 22 2016 11:47
great!
Richard Dallaway
@d6y
Mar 22 2016 11:56
lovely!
Krishnadas
@krishnadasmallya
Mar 22 2016 12:08
@hedefalk after the update the ensime server seems to be starting(I see the message) however the feature seems to be not working. Can you please advise where and what to look to debug?
eg: of not working is
  • cmd + click doesn't navigate to the respective file
  • type highlights not displaying
Viktor Hedefalk
@hedefalk
Mar 22 2016 12:11
@krishnadasmallya Open up dev tools and see if there's anything suspicious logged. cmd-alt-i on Mac.
Krishnadas
@krishnadasmallya
Mar 22 2016 12:29
@hedefalk there was error suggesting clearing the ensime_cache, now I'm not able to do ensime-start, as it is asking sbt gen-ensime to do that. Sadly the dependencies are not all cached hence the sbt gen-ensime is failing for me now. Will have to check the same from office tomorrow.
Krishnadas
@krishnadasmallya
Mar 22 2016 12:42
I can confirm that its not working for one single project folder, I tried another folder which I had worked an ensime seems to be working fine for that. will have to check whats failing for the current project tomorrow. Thanks for the help anyway.
Viktor Hedefalk
@hedefalk
Mar 22 2016 12:48
@krishnadasmallya Ok! Please let me know if I can help in any way and don't hesitate to report on github. Try to attach logs and stacktrace if applicable.
Matthew de Detrich
@mdedetrich
Mar 22 2016 14:19
@hedefalk How do you get a stack trace you are asking for, this in regards to ensime/ensime-atom#201
Matthew de Detrich
@mdedetrich
Mar 22 2016 14:27
Unfortnately I already restarted Atom, and the message is gone, is there a history of logs somewhere?
Viktor Hedefalk
@hedefalk
Mar 22 2016 14:28
Sorry, don't think so… :(
The stack trace should probably be logged in chrome dev tools (cmd-alt-i on mac) or in the red popup.
Magnus Andersson
@magnusart
Mar 22 2016 14:36
@hedefalk Atom seems to have something called view symbols but ensime-atom does not use that. Is it because of the client server architecture or just something else unrelated? It says project does not have symbols or tags.
I do know that there is an Ensime Search public symbol functionality that seems overlapping.
Viktor Hedefalk
@hedefalk
Mar 22 2016 14:37
@magnusart Yeah, it's ctags based, too simple for us. I think the API didn't support anything remotely enough for us last time I looked…
atom/symbols-view#109
atom/symbols-view#70
Magnus Andersson
@magnusart
Mar 22 2016 14:42
You’re way ahead of me as ususal
Viktor Hedefalk
@hedefalk
Mar 22 2016 14:44
:)
Magnus Andersson
@magnusart
Mar 22 2016 14:44
Nothing have happened for almost a year on the Atom side by the looks of it.
How is the rewrite of ensime-client coming along?
Viktor Hedefalk
@hedefalk
Mar 22 2016 14:46
This is one of the problems with Atom I think where maybe vscode shines. Dunno though.
Magnus Andersson
@magnusart
Mar 22 2016 14:46
I haven’t tried out Vscode yet.
Viktor Hedefalk
@hedefalk
Mar 22 2016 14:46
I mean, there are "standard" components but sometimes they're still abandonware and doesn't live up to expectations for package developers.
Magnus Andersson
@magnusart
Mar 22 2016 14:46
Came to Atom from Sublime. The plugins seems vibrant, but I do notice that Atom is slooow sometimes.
I see. What is your experience with vscode so far, did you even look into providing a plugin?
Viktor Hedefalk
@hedefalk
Mar 22 2016 14:47
About the rewrite: I did some rewriting most in typescript. Didn't like typescript much though. And unfortunately haven't had the time to try to use it from vscode.
I didn't do much of real "rewrite" in the sense of cleanup or stabilizing API either.
I just wanted to try to get something in typescript out so I could use it from vscode with code completion and stuff to try to make a quick POC of ensime-vscode.
But haven't explored that yet.
Been super busy.
Magnus Andersson
@magnusart
Mar 22 2016 14:49
OK. I’ve been swamped by work and evenings are now spent on having a small baby. I don’t know what I did with my time before. :) But it would be cool to look into debugging at some point.
Viktor Hedefalk
@hedefalk
Mar 22 2016 14:52

Debugging would definitely be a shiny new feature! And I think I'm going to leave it alone for quite some time so please explore!

Congrats! I have a 2 year old and a 5 month so I understand what you mean with time…

Magnus Andersson
@magnusart
Mar 22 2016 14:53
Thanks, it’s our first. She arrived beginning of november 2015 so just a bit younger than your second.
Magnus Andersson
@magnusart
Mar 22 2016 15:49
remind me: ensime-node uses S-expressions+json over HTTP or plain TCP? Is it possible to send ad hoc requests to the ensime-server with postman to explore the API?
Jerky was JSON+websocket, right? Now I think I remember
Ghost
@ghost~540393fe163965c9bc2018ce
Mar 22 2016 16:21
It should be using jerky
The contributing page on ensime.org has a section on the API
Viktor Hedefalk
@hedefalk
Mar 22 2016 20:24
It's still using jerk in swank envelopes. I'm thinking I should just fix it to use websockets since this probably is a really small fix. And then I can answer it's using jerky next time someone asks :)
Magnus Andersson
@magnusart
Mar 22 2016 21:14
Cool, could connect with a websocket client (Dark Websocket Terminal) just had to figure out the port and that I was supposed to connect to /jerky path.
I’m trying to send some messages from the jerky format spec. But I get errors in the logs saying
received unhandled message Failure(spray.json.DeserializationException: Object is missing required member 'req’)
Is there some wrapper object?
Think i got it RpcRequestEnvelope, sorry for spamming.
Viktor Hedefalk
@hedefalk
Mar 22 2016 21:24
Oh, I just started doing the switch too… But kindof need to go to bed though
Magnus Andersson
@magnusart
Mar 22 2016 21:24
I’m not coding anything yet. Just trying out the protocol
Same here time for sleep
Long day tomorrow.
Viktor Hedefalk
@hedefalk
Mar 22 2016 21:42

Actually got it working: hedefalk/ensime-node@24de499

:)

But I think I'm gonna do a bit of cleanup later before merging that into master…
Good Night!
Viktor Hedefalk
@hedefalk
Mar 22 2016 21:47
The only issue was that the websocket couldn't receive any messages from client until websocket established while the old socket api I used probably was stateful so I could push something out immediately upon calling open socket. Now I need to wait for the "open" event before sending the first message and I just did a quickfix for this with a callback. But I think we can do better.
Magnus Andersson
@magnusart
Mar 22 2016 22:04
Yep, saw the callback thing. When testing just now with a ws client I’ve also noticed that the ws connection times out now and then and needs to be reestablished. Not sure if that is related to the tool I used or if it is ensime-server that times out the connection. But could be good to keep in mind.
Matthew de Detrich
@mdedetrich
Mar 22 2016 23:23
@hedefalk Too late, its gone :(
Thats really dumb, they should use rotating file logs
IntelliJ does that