Fork me on GitHub
#cursive
<
2016-11-18
>
cfleming10:11:46

@roelofw Yes, that’s the current means of doing so.

roelofw10:11:00

oke, thanks

yonatanel10:11:00

@cfleming I'm not sure why i can't rename an alias like you said but it might be because of my first problem, which is I use alias override from a lib instead of clojure.core, and cursive doesn't resolve that function.

cfleming10:11:35

@yonatanel So you have another alias function which uses alias under the hood?

yonatanel10:11:52

I'll reupload

cfleming10:11:56

Is that from a public lib, or something internal?

cfleming10:11:13

Ah, I see - from schpec

cfleming10:11:20

Sorry, I missed that in your screenshot

cfleming10:11:28

I don’t know why that would not be resolved - I’ll try to reproduce that.

cfleming10:11:04

I’ll also add support to Cursive so that that creates aliases correctly.

yonatanel10:11:07

Thanks. In addition, I now tried to use the core alias and renaming 'a to 'aa didn't change all the specs that use it. I have a bunch of (s/def ::a/some-spec (s/and ... that wasn't changed to ::aa/some-spec.

yonatanel10:11:08

It does work when I change the :require ... :as part when the namespace actually exists, but for specs I use non-existent namespaces just for organizing the specs.

yonatanel10:11:04

@cfleming Are you supporting java 6 for cursive as now mentioned over at #clojure ? I think the newer intellij already requires java 8.

cfleming10:11:24

I see - yes, I suspect that is correct. I’ll have to fix the support for alias to ensure that that symbol correctly refers to the alias.

cfleming10:11:15

Yes, I am. Java 8 is only required for v2016+, currently I support v14, v14.1 and v15 as well. I’m about to drop support for v14 and v14.1, but v15 will be supported until next year.

yonatanel10:11:20

@cfleming re alias, how do you do that? Do you link the aliased symbol only to its occurrences after the alias call?

cfleming10:11:51

I support the last two years of IntelliJ versions, basically.

cfleming10:11:06

That’s not the main reason for lack of boot support though.

cfleming10:11:28

That’s mostly because boot is very hard to support correctly.

yonatanel10:11:29

OK. I was just curious how this works with intellij versions.

cfleming10:11:58

For some v15 users on a Mac, Apple JDK6 is still the best JDK to use for running IDEA.

cfleming10:11:19

Due to bugs in Oracle’s Swing/AWT support.

cfleming10:11:55

@yonatanel Re: alias, right, I add support for clojure.core/alias which says that the first symbol actually refers to the namespace alias. I’ll also add support saying that com.gfredericks.schpeck/alias works like the core one.

yonatanel11:11:30

@cfleming Would it be crazy to link symbols from anywhere and not just in alias calls to keyword namespaces?

yonatanel11:11:47

Yeah, probably...

cfleming11:11:53

I’m not sure what you mean

yonatanel11:11:52

I'm trying to think of a way you don't have to support a new lib that impersonates alias when someone else decides to write one.

yonatanel11:11:20

Or maybe when renaming a namespaced keyword like ::a/k to have the option to change only the alias. The more I think about it it seems to much to support. Never mind.

yonatanel11:11:55

Nice, ctrl+shift+quote maximizes any tool window including the REPL if you're in it.

cfleming12:11:15

@bfabry When you’re getting REPL slowdowns, are you printing a ton of output in the REPL?

cfleming12:11:51

Actually, @imre as well - are you printing a lot of output when seeing these slowdowns?

cfleming12:11:07

And are you both on the 2016.3 EAP?

imre12:11:37

I'm on: IntelliJ IDEA 2016.2.5 Build #IC-162.2228.15, built on October 14, 2016 JRE: 1.8.0_112-release-287-b2 amd64 JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

imre12:11:10

Cursive: Version: 1.4.0-eap4-2016.2

imre12:11:02

@cfleming sometimes there can be a lot of output due to test being executed resulting in exception stack traces

imre12:11:27

other times I'm just typing large commands into the repl trying to repl-drive something

cfleming12:11:37

When I say a lot of output, I’m starting to see memory issues at around 256k lines of output.

imre12:11:04

hmmmm I don't think so

cfleming12:11:05

Pretty-printing large sequences of nested maps.

imre12:11:28

but the next time I run into the issue I'll try and analyse my repl output window

cfleming12:11:35

Great, thanks

imre12:11:57

do you think clearing the output for the repl should help?

imre12:11:42

I'll also try that the next time and report back

cfleming12:11:33

I’m not sure. I’ll try that for the problem I’m seeing and see if it works. If it does, I might limit scrollback to 50k lines (configurable) or something.

cfleming12:11:04

@imre Clearing the REPL output definitely helps in the case I’m seeing.

roelofw16:11:07

@cfleming Do I also have boot run with a run configuration or must I open a terminal for it ?

bfabry17:11:45

I'm on 2016.3 eap. I think my repl output is pretty modest

imre17:11:39

@cfleming thanks. just to make sure this part of the problem doesn't get lost - when my repl slows down, the entire ide slows down. Even moving the caret around in the editor window becomes painful

imre17:11:01

haven't had the problem since yesterday though

cfleming20:11:37

@imre Can you check the memory usage? I always turn the indicator on: Settings-&gt;Appearance &amp; Behaviour-&gt;Appearance-&gt;Show memory indicator. You can click on that to perform a GC. If the slowdown is GC thrashing, the memory will be nearly all used, and clicking will free very little.

cfleming20:11:55

Memory indicator is bottom right, BTW.

cfleming20:11:29

@bfabry It’d be interesting to know that when it happens to you too.

bfabry20:11:37

will turn that on

imre20:11:04

will do, thanks Colin

kenny21:11:36

@cfleming Do you know how to change the upper limit on the RAM? I have tried editing Help &gt; Edit Custom VM Options but the Xmx number does not reflect the number shown in the UI bar.

cfleming21:11:55

You’ll have to restart after changing it, of course

cfleming21:11:37

I guess that unless you set the min and max to the same value, it’s possible that the JVM will initially allocate less, and then expand it on demand - that might be what you’re seeing.

kenny21:11:03

Well, the value I'm seeing is not the min or the max

cfleming21:11:05

Try setting both to 1G or whatever, and see if it changes then.

cfleming21:11:15

That probably explains it.

kenny21:11:09

The min is at 1g right now but the bar shows "287 of 725M". Shouldn't it be "287 of 1024M" or something closer to 1g, not 725M?

kenny21:11:37

725M seems so specific

cfleming21:11:57

I see 725M too, and I’m pretty sure I have it set to 1G. I don’t know what the difference is due to - possibly that’s what used to be the permgen?

cfleming21:11:24

I know the JVM usually has a fairly high constant overhead too, perhaps IntelliJ is factoring that out?

cfleming21:11:28

I don’t know.

kenny21:11:54

Will try changing min to 2g to see if changes are reflected

cfleming21:11:05

Ok, let me know what happens

kenny21:11:53

Same 725M number after restarting

bfabry21:11:20

damn, having that button there now, I can see myself reflexively habitually clicking it anytime something seems slow

kenny21:11:40

That's why I just enabled it lol

cfleming21:11:48

@bfabry Hehe, you’ll learn to ignore it after a while, until things go wrong

kenny21:11:58

Yeah, I have no idea where that 725M is coming from. Maybe some other RAM number?

cfleming21:11:39

I don’t know. I’ll investigate later - it’s bedtime here.

kenny21:11:15

No worries. Certainly not important, more of a curiosity 🙂