These are chat archives for ensime/ensime-atom

25th
Feb 2016
Viktor Hedefalk
@hedefalk
Feb 25 2016 09:37
@magnusart akka-persistence-cassandra works for me :)
Sorry, I mean :(
Screen Shot 2016-02-25 at 10.37.14.png
No can reproduce lah.
Screen Shot 2016-02-25 at 10.38.37.png
@magnusart I'm pretty sure there has been some confusion of what .ensimes you are running:
rootDir: "/Users/magnus/Documents/Programmering/Magnusart/akka-persistence-cassandra/project" IS your "project definition" aka your sbt build project, not your actual project.
Viktor Hedefalk
@hedefalk
Feb 25 2016 09:43
If you didn't select this knowingly, it could be that it was auto-selected for you by the simple fact that the other .ensime was already running a server. This "feature" I'm gonna remove. I will always show a select dialog if there's more than ONE .ensime in the tree. If already started, I will show a green ball on the select and just show "already started" if you try to start it again.
ensime/ensime-atom#185
Magnus Andersson
@magnusart
Feb 25 2016 09:47
@hedefalk yes but I tried it without /project as well.
I’ve removed every ensime chache and dot file and killed all servers.
Viktor Hedefalk
@hedefalk
Feb 25 2016 09:48
@magnusart ok. And you wiped your ivy-cache?
Magnus Andersson
@magnusart
Feb 25 2016 09:48
But it’s very useful to know that it works for you. Then I don’t need to spend time looking at the project.
Yes DirtyMoney plugin.
Viktor Hedefalk
@hedefalk
Feb 25 2016 09:48
Cool, I use that one too.
Magnus Andersson
@magnusart
Feb 25 2016 09:48
But now I’m suspecting that it is a memory issue.
Viktor Hedefalk
@hedefalk
Feb 25 2016 09:49
Ooh…
The server dies?
Magnus Andersson
@magnusart
Feb 25 2016 09:49
But I’d like to know which version of sbt-ensime you use?
Viktor Hedefalk
@hedefalk
Feb 25 2016 09:49
What does the server log tell you?
Magnus Andersson
@magnusart
Feb 25 2016 09:49
It actually doesn’t die
The connection dies.
Or at least it looks like it dies.
Do you have the stable plugin version 0.4.0?
Viktor Hedefalk
@hedefalk
Feb 25 2016 09:51
cat ~/.sbt/0.13/plugins/plugins.sbt                                                                                                                        master ◼
…
addSbtPlugin("org.ensime" % "ensime-sbt" % "0.3.2")
I'm behind.
Magnus Andersson
@magnusart
Feb 25 2016 09:51
Aha. I’ll try that then. Get the same version setup, clean caches etc.
Viktor Hedefalk
@hedefalk
Feb 25 2016 09:51
But this only effects how the .ensime will look. I didn't know there was any breaking changes there. Let me try 0.4.0 myself…
Magnus Andersson
@magnusart
Feb 25 2016 09:54
OK
Viktor Hedefalk
@hedefalk
Feb 25 2016 09:55
Yeah, generated .ensime with 0.4.0 of ensime-sbt and still works ok.
Magnus Andersson
@magnusart
Feb 25 2016 09:55
OK.
Viktor Hedefalk
@hedefalk
Feb 25 2016 09:55
Though, I didn't kill cache. Wait…
Viktor Hedefalk
@hedefalk
Feb 25 2016 10:02
Works pretty well even though building up cache took a while.
Screen Shot 2016-02-25 at 10.58.09.png
Just those classical false positives
Magnus Andersson
@magnusart
Feb 25 2016 10:04
Hm. Interesting. I need to give it another go and really make sure I have cleaned everything out.
Viktor Hedefalk
@hedefalk
Feb 25 2016 10:21
Do that.
Thurston Sandberg
@thurstonsand
Feb 25 2016 15:09
so I’m trying ensime for the first time. How can I make key bindings for stuff like jump to definition and the like?
Viktor Hedefalk
@hedefalk
Feb 25 2016 15:18
settings -> open config folder -> keycap.cson
stuff like
  'atom-text-editor':
    'cmd-alt-l': 'editor:auto-indent'
    'shift-cmd-T': 'ensime:search-public-symbol’
Thurston Sandberg
@thurstonsand
Feb 25 2016 15:47
thanks @hedefalk exactly what i wanted
Boris Chazalet
@bchazalet
Feb 25 2016 16:16
I am experiencing big lags in the UI since I upgraded to 0.35.3
to the point that I have to disable the plugin to be able to edit my files
am I the only one to experience this?
Viktor Hedefalk
@hedefalk
Feb 25 2016 17:43
@bchazalet sounds weird. Can you check if there's anything suspicious in the dev console log?
Boris Chazalet
@bchazalet
Feb 25 2016 17:48
is that the thing at the bottom of the UI?
I have a very high number of issues (in red): 1031, even though my project compiles just fine in sbt
Viktor Hedefalk
@hedefalk
Feb 25 2016 18:14
Hm, that's a lot of errors. Maybe the linter chokes… The dev log is chrome developer tools. You bring it up by cmd-shift-l on Mac.
I guess this is proprietary source you can't show?
1031 sound like a LOT of errors but shouldn't be a problem for the linter. But maybe our part chokes on that many… Because they seem to be sent one by one nowadays from the server so a lot of communication and translation.
Sometimes errors are "blinking" a lot from the server. Like "ClearAllScalaNotes", "Here are 1031 new errors", "ClearThemAgain", "Here they are again". I haven't had any performance issues with that, but I typically haven't had > 1000 errors either.
By the way, mke sure you have a running sbt ~compile in the background.
@bchazalet ^^^
Boris Chazalet
@bchazalet
Feb 25 2016 18:19
having ~compile running in the background helps?
Viktor Hedefalk
@hedefalk
Feb 25 2016 18:19
Do you know what version you were on before? Linter was introduced on 0.35.0. Before it was our own ui for errors.
@bchazalet Yes, you need to have compiled classes. Either you load everything in pres. compiler, but better off with ~compile with big projects. Which this seems to be?
Boris Chazalet
@bchazalet
Feb 25 2016 18:20
I didn't use to have the dotted red lines in my code
so i guess that was before the linter?
Viktor Hedefalk
@hedefalk
Feb 25 2016 18:20
Yes.
So ok, maybe we have performance issues with linter if too many issues…
Boris Chazalet
@bchazalet
Feb 25 2016 18:21
maybe i should look into those issues then
if my project compiles ok in sbt I shouldn't have 1000 issues should I?
Thurston Sandberg
@thurstonsand
Feb 25 2016 18:21
sorry what is the pres. compiler, and how would you load everything into it?
Viktor Hedefalk
@hedefalk
Feb 25 2016 18:21
Please try ~compile. You probably don't want to use a feature that reports 1000 false positiv errors anyway?
Boris Chazalet
@bchazalet
Feb 25 2016 18:22
well I don't really look at the errors.. I go to sbt console for that
Viktor Hedefalk
@hedefalk
Feb 25 2016 18:22
@thurstonsand "Ensime: typecheck all"
Boris Chazalet
@bchazalet
Feb 25 2016 18:22
I really want auto completion, types, and click to source.. those are awesome!
Viktor Hedefalk
@hedefalk
Feb 25 2016 18:22
Ok, then maybe we could add a full disable on the whole error reporting feature to support your use case. Please raise a ticket.
The other idea is to simply disable linter in atom.
Boris Chazalet
@bchazalet
Feb 25 2016 18:23
i am going to try that yes
Viktor Hedefalk
@hedefalk
Feb 25 2016 18:23
But please raise a ticket! If your project is sharable, link your repo and I can use it as a repro case.
Thurston Sandberg
@thurstonsand
Feb 25 2016 18:24
@hedefalk alright and if i just run sbt ~compile instead it will act the same i take it?
Boris Chazalet
@bchazalet
Feb 25 2016 18:24
I am afraid it's not
Viktor Hedefalk
@hedefalk
Feb 25 2016 18:24
@thurstonsand pres. compiler = presentation compiler. It's the underlying thing that is supporting scala-ide and ensime made by the scala compiler team.
a running ~compile is basically always a good idea.
The ensime-atom part of this site is still lacking but: http://ensime.github.io/editors/emacs/workflow/
"C-c C-c a" in Emacs is "typecheck all" in Atom.
Thurston Sandberg
@thurstonsand
Feb 25 2016 18:26
ok this makes more sense. I was pretty confused on why so little was being explained
thanks i’ll look through the emacs documentation and figure out how it maps to atom
Boris Chazalet
@bchazalet
Feb 25 2016 18:30
I have disabled the linter, and that seems to be working much better! Thanks @hedefalk
and I have created issue #187
Thurston Sandberg
@thurstonsand
Feb 25 2016 19:21
what do people do for debugging?
Viktor Hedefalk
@hedefalk
Feb 25 2016 19:24
There is experimental support in ensime-server. ensime-emacs and ensime-sublime uses it, but I haven't gotten around to doing it in ensime-atom. Rumour has it it's probably best to wait for the big rewrite of scala-debugging.
Thurston Sandberg
@thurstonsand
Feb 25 2016 19:29
thanks. guess i might try some printlning
Viktor Hedefalk
@hedefalk
Feb 25 2016 19:37
@thurstonsand Write specs :)
Viktor Hedefalk
@hedefalk
Feb 25 2016 19:58
@bchazalet Don't know if you've seen the links on the issue, but basically they've fixed it upstream on linter, but will probably be a couple of weeks before they release: atom-community/linter#1087
So, in the mean time I think I'm gonna do some scheduling hackery anyways.
Our performance workaround on linter basically do O(n^2) calls to JSON.parse of pretty big objects. n^2/2 to be specific so 500k on 1000 messages :)
@bchazalet thanks for reporting.
Adam Busch
@booschie
Feb 25 2016 21:25
Hi everyone. I was looking around the repo and found a todo that I would like to implement. The fix would automatically read SBT_HOME environment variable and set sbt exec path accordingly. How do I test the plugin? I tried applying the code patch in-place, but what next? I cannot view the ensime log (saw it once or twice but never got it to show again) - dunno why. Also - the settings property seems not to be set, even though the ensime plugin works. Any help?
By "settings property" I meant the sbt exect path property in plugin settings.