Clojurians
#cursive
<
2016-02-11
>

This page is not created by, affiliated with, or supported by Slack Technologies, Inc.

raymcdermott10:02:11

I noticed that 16 EAP is out … I can’t see if it’s been asked before but when do you propose to support it?

james10:02:52

@cfleming: Also, I was wondering if you have a timeline for the standalone version of Cursive?

timgilbert17:02:55

Say, is there a setting or something that will let me see the full traceback when something I'm doing in the repl generates an exception?

viebel17:02:11

@cfleming: In my project, I am using a macro named deftry to define functions. How can I make cursive aware of deftry?

jcromartie19:02:14

I've got a strange situation where Cursive is trying to load files that are not on my classpath

jcromartie19:02:39

we have a demos/ directory, which is not on the classpath, with .clj files in it, and they are loaded form Gorilla REPL

jcromartie19:02:59

and loading the .clj files in demos/ causes problems

jcromartie19:02:27

meaning it throws a compiler exception and I can't run tests

hugesandwich21:02:03

Is there some issue existing already about syntax highlighting with alt! ? I'm seeing a binding marked as a syntax error (squiggle underlined), but evaling the code in the repl and running it works fine, just Cursive seems to think the syntax is wrong.

hugesandwich21:02:42

https://clojuredocs.org/clojure.core.async/alt! - Try the code in these examples and you'll see it highlight the bindings inside the alt as an error

hugesandwich21:02:14

more specifically, it says "cannot be resolved"

cfleming21:02:42

@raymcdermott: The next build should support v16

cfleming21:02:55

@viebel: Right now there’s no good solution for that. I’m planning a workaround soon (marking certain forms as def-like or let-like), and a long-term solution (an API for adding full support for forms)

cfleming21:02:08

@hugesandwich: That’s probably the same problem as @viebel’s - Cursive doesn’t automatically have support for macros which define new symbols. I’ll check those examples and add support for that.

hugesandwich21:02:01

yeah it makes sense since alt! is using macros under the hood

cfleming22:02:11

@jcromartie: is the demos/ directory a source root?

jcromartie22:02:19

no, it isn't

jcromartie22:02:41

@cfleming: it's intentionally outside of a source directory

cfleming22:02:56

@jcromartie: Is the project something I can look at, or is it internal?

jcromartie22:02:52

it's internal

jcromartie22:02:05

I've got alternatives (running command-line REPL right now)

cfleming22:02:20

So using lein repl this doesn’t happen?

jcromartie22:02:30

I think it has to do with transitive loading

cfleming22:02:32

When are the files loaded?

jcromartie22:02:40

when I execute "Run test under caret"

jcromartie22:02:54

but nothing should actually depend on this file...

jcromartie22:02:57

that's the strange part

cfleming22:02:00

Ok. Do your tests depend on that file?

jcromartie22:02:02

nothing does require it

cfleming22:02:10

That’s really weird.

jcromartie22:02:39

./.idea/workspace.xml: <option value="$PROJECT_DIR$/dev-system/demos/sprint44.clj" />

jcromartie22:02:45

for the file in question

cfleming22:02:54

Give me a moment, I can probably send you a diagnostic tool to help figure this out.

jcromartie22:02:20

in <component name="IdeDocumentHistory"><option name="CHANGED_PATHS"><list>...

cfleming22:02:24

That just means you’ve had it open in the editor, I think. Which element in that XML is that option inside?

cfleming22:02:38

Right, I think that means that it’s a file you’ve modified in an editor.

jcromartie22:02:57

so, Cursive thinks it should load it for some reason, and that's the only place the file name shows up anywhere

jcromartie22:02:06

I'd guess that's part of the puzzle

jcromartie22:02:16

but I turned off transitive loading the other day

cfleming22:02:43

Ok, give me a moment to check the code, and I’ll send you something to test this, hopefully in about half an hour.

jcromartie22:02:44

because automatically loading files when running tests was causing failures due to defrecord dispatch problems

cfleming22:02:50

@jcromartie: When you turned off transitive loading, did that fix the problem?

cfleming22:02:20

@jcromartie: Also, which IntelliJ version are you running?

jcromartie22:02:49

@cfleming: it helped earlier, but I'm not sure why it's loading a bunch of .clj files now

jcromartie22:02:08

I'm not sure if "Run test under caret" might do something different

jcromartie22:02:28

but at least "Run tests in current NS" stopped loading .clj files automatically

cfleming22:02:11

Ouch, looking at the code, the test actions don’t obey the transitive loading flag.

cfleming22:02:41

That bug will affect both test actions (tests in ns, and test under caret)

cfleming22:02:51

That’s not good.

cfleming22:02:00

@jcromartie: Which IntelliJ and Cursive versions are you running?

jcromartie22:02:56

let me see...

jcromartie22:02:08

IntelliJ 15.0.2

jcromartie22:02:43

Cursive 1.1.0-15

jcromartie22:02:25

so the "run tests in current NS" action not loading deps might just be my imagination :simple_smile:

jcromartie22:02:04

gotta run for now

jcromartie22:02:06

thanks for the help