These are chat archives for ensime/ensime-sublime

28th
Jan 2016
Dick Wall
@dickwall
Jan 28 2016 20:24
OK - been using it today (assuming I got the new one, how can I tell what I am running locally? I blew away my ivy cache version and forced it to re-download) - so far no problems, I’ll keep banging on it
I also merged up all the latest changes from ensime-sublime into my new refactoring branch. I still have to try it out in Windows, but it all seems to be running well right now (fingers crossed)
Magnus Andersson
@magnusart
Jan 28 2016 20:26
@dickwall visualvm is how I found out which was running. Looking at the class path
Dick Wall
@dickwall
Jan 28 2016 20:26
if I do hit the problem again it will be an impetus to implement that tmp file solution you assigned me Sam, cos even if that doesn’t fix it it will make it easier to capture the input that makes the parser blow chunks
it’s also possible that this is a mac vs linux thing. That could be a decent theory actually. Right now I am plunking away on a mac, remember that the line endings are different on Linux, could that be a factor?
the real test will be how it runs on the big linux box back home, which is where it failed originally
@magnusart I like that idea, I’ll give that a look when I get a chance
I haven’t PRd the diff file refactoring yet for two reasons: I still haven’t had a chance to try it on windows (has anyone else?), and I want to look at using the python diff library instead, which should sidestep the windows thing anyway. Since no one is chasing me for it yet, I figure that I can take a look at that over the next couple of days.
the current state of things is in new-refactoring branch if anyone does want to give it a whirl
I’ll probably squash it down a bit before submitting the PR as well
Magnus Andersson
@magnusart
Jan 28 2016 20:36
@dickwall if this is about ensime/ensime-server#1243, then I am using a mac if that helps.
Dick Wall
@dickwall
Jan 28 2016 20:39
yeah - the failure (which really did just happen after a couple of minutes of running, pretty much whatever I was doing) was very reliably happening, but on Linux
so far on the mac I am seeing no problem at all
I will be back home next week, and will try again with the server on the linux box then
since it is related to the newline, I am sticking with my theory until I prove different :-)
Magnus Andersson
@magnusart
Jan 28 2016 20:41
I didn’t really know what to do to reproduce the issue reliably. So doing some tests on your side is probably a good idea.
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 20:55
@dickwall you'll get a really big performance boost by moving over to contentsIn
@dickwall btw, about 6 months late but I finally renamed the protocols to the Y equivalents
or, the "posh" versions
Dick Wall
@dickwall
Jan 28 2016 20:56
does that second one affect sublime?
I mean, is something suddenly going to stop working?
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 20:57
well I put the usual bomb in it, to blow up your machine just when you're about to release your code
does that count?
(rename is purely cosmetic in source control)
Dick Wall
@dickwall
Jan 28 2016 20:58
I keep an ensime-server repo on “hot failover” now, after the last time :-)
get it working first, ponder why later
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 20:59
hehe, I've not had to do that for a very long time
I really wish I could help move you over to JSON but my python skills are terrible
Dick Wall
@dickwall
Jan 28 2016 20:59
so what do you think about my theory about linux vs mac line endings in the parser?
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 20:59
that is a possibility actually
Dick Wall
@dickwall
Jan 28 2016 20:59
being the cause of that server exit
I figured it might be. It’s working splendidly on the mac here
and I don’t have my linux box handy right now, as I am dog-sitting for friends
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:00
did it fail on linux?
Dick Wall
@dickwall
Jan 28 2016 21:00
yes - the failure was on my big box
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:00
oh, but I do all my dev and CI is on linux
Dick Wall
@dickwall
Jan 28 2016 21:00
hmm - maybe not that then
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:00
maybe you have mac line endings in your version control?
Dick Wall
@dickwall
Jan 28 2016 21:00
I’ll try it when I get home
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:01
I thought mac was using unix line endings these days?
Dick Wall
@dickwall
Jan 28 2016 21:01
I think all three use different choices don’t they
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:01
if you have the source code open now, can you add a one line test to SexpParserSpec.scala ?
and s-express/test
Dick Wall
@dickwall
Jan 28 2016 21:02
at least it looked that way in 2012
might have changed since then I guess
ah - sorry
“macs prior to OS X”
so no, not that then
and I am showing my age :-)
dammit I hate it when a perfectly good theory is upset by reality
so the other thing is I don’t have that specific code base here (the project that was failing)
maybe there is just something in that file it doesn’t like
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:04
it could have had windows line endings in the repo?
Dick Wall
@dickwall
Jan 28 2016 21:04
I’ll try it next week
anything is possible :-)
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:04
should be easy to add that to the test actually
Dick Wall
@dickwall
Jan 28 2016 21:04
it was pretty reliably quitting though - about 1-2 minutes after starting, every time
with that same error
I'm going to test it quickly and see
windows is \l\n or \n\l ?
I'll do both
or is it \r
Dick Wall
@dickwall
Jan 28 2016 21:05
so - not having looked at the creation of sexps in ensime-sublime before
I seem to remember it is CF, LF in that order on windows, whatever those characters are escaped
sorry
CR, LF
anyway - so the ensime-sublime thing
is the change simply to make it write a temp file for the contents of the sexp instead of doing it in a string?
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:07
yes, exactly
Dick Wall
@dickwall
Jan 28 2016 21:07
not for every sexp sent though, right?
just ones with code snippets in them
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:07
no, just for source code files
Dick Wall
@dickwall
Jan 28 2016 21:07
right - OK
that should be easy enough, and all in one place probably
I’ll take a look this weekend
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:08
the reason its slow is because the files gets parsed for escapes first (and s-exp strings are not the most efficient in the world... typically used for documentation strings)
and then it gets parsed as scala
whereas if its just saved to file, only the compiler parses it
much faster
Dick Wall
@dickwall
Jan 28 2016 21:10
probably faster on the python end too, not to have to escape it all
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:11
btw, do you support launching the assembly jars from sublime?
its these jars plus the jars in the :scala-compiler-jars list in .ensime
I find its a much much better way to launch my own build of the server
sbt ensime/assembly
like the avengers, only cooler
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:17
it's crazy that it takes sbt 3 minutes on my machine to do an incremental update of ensime-server, but it only takes me 5 seconds to download the full assembly jar sigh. I do wonder if we should perhaps just scrap the ivy jars.
just did a test with \r\f\n and it worked
oh well
I'm off
ping rory and get him to text me if you hit any problems, I'm AFK all night but can come online if trouble hits
Dick Wall
@dickwall
Jan 28 2016 21:22
I doubt I will see anything until I try it on my big box next week
seems to be running smoove here right now
smoove is like smooth, only smoover...
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:23
smooovy
Dick Wall
@dickwall
Jan 28 2016 21:23
yeah - you know, smoooooooove, like Barry White
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:23
is anyone in sublime land looking at updating the website docs?
it's looking pretty sweet now, just need to turn those TODOs into real things
you've seen the new design / logo I assume?
Rory Graves
@rorygraves
Jan 28 2016 21:25
Yeah was on my list.
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:27
it'll probably be the focus for the feb hack day
dave gurnell did a smashing job with the navigation
we've just got to produce content
I have a pretty good idea of what that should look like
Rory Graves
@rorygraves
Jan 28 2016 21:28
Yeah he did. Agreed.
Ghost
@ghost~540393fe163965c9bc2018ce
Jan 28 2016 21:32
is sublime using type-ids? ensime/ensime-server#1225
Rory Graves
@rorygraves
Jan 28 2016 21:33
Oh had forgotten about that one.
Need to check.