cursive

Issues at: https://git.io/cursive-issues
cfleming 2021-05-12T00:03:26.331900Z

Hmm, that error used to come up all the time but hasn’t been seen for a while now. I’ll try that and see if I can reproduce.

cfleming 2021-05-12T00:06:19.332100Z

Can you give me an example of the sort of form which is giving you problems?

steveb8n 2021-05-12T01:35:37.332300Z

sure. here’s the contents of the alias…

steveb8n 2021-05-12T01:35:38.332500Z

{:override-deps {nextdoc/components-portable {:local/root "../components-portable"}
;                                      nextdoc/terse-schema        {:local/root "../terse-schema"}}}

steveb8n 2021-05-12T01:36:05.332700Z

works in terminal/tests/CI. only Cursive fails

steveb8n 2021-05-12T01:36:21.332900Z

if I switch to absolute paths, works everywhere

cfleming 2021-05-12T01:43:07.333100Z

Ok, and you have other deps projects at those locations, I guess? Does it work if you add :deps/manifest :deps alongside the :local/root entry?

cfleming 2021-05-12T01:43:31.333300Z

(you shouldn’t have to, but that might be a workaround)

cfleming 2021-05-12T01:44:10.333500Z

Can you give me an example of Cursive adding the wrong require?

steveb8n 2021-05-12T01:59:56.333700Z

I did try that. no luck unfortunately

steveb8n 2021-05-12T02:00:58.333900Z

I found this which may be related https://clojure.atlassian.net/browse/TDEPS-74

steveb8n 2021-05-12T02:02:18.334100Z

I’ve updated to the latest tools.deps.alpha but no luck there. is this lib bundled in Cursive i.e. you might have an older version bundled?

cfleming 2021-05-12T02:03:17.334300Z

No, but you might need to go to the deps settings and refresh there to make sure that Cursive has the latest version picked up.

steveb8n 2021-05-12T02:03:23.334500Z

not super urgent but useful for anyone doing mono-repos. seems to be all the rage these days (for good reason)

alexmiller 2021-05-12T02:09:47.334700Z

does it work outside cursive?

cfleming 2021-05-12T02:10:14.334900Z

Yes, sounds like it does.

alexmiller 2021-05-12T02:10:19.335100Z

I want to say this same thing has been reported re cursive before

cfleming 2021-05-12T02:10:51.335300Z

Yeah, that error used to be quite frequent but hasn’t been reported for ages now.

cfleming 2021-05-12T02:11:14.335500Z

But I suspect that it’s just not resolving the path correctly, so deps can’t find the deps.edn to infer the project type from.

steveb8n 2021-05-12T02:24:47.335800Z

yes, running Kaocha tests from terminal using the same alias works fine

steveb8n 2021-05-12T02:30:01.336Z

correction: using :deps/manifest :deps does change the behaviour. Cursive no longer borks during deps refresh but paths not set correctly i.e. namespace requires fail when loading

steveb8n 2021-05-12T02:31:24.336200Z

the failure in that case is a cljc ns in one of the projects. not sure if it’s specific to cljc files

steveb8n 2021-05-12T02:36:50.336400Z

the cljc files in the upstream project are not “in scope for the module used to start the REPL”

steveb8n 2021-05-12T02:37:03.336600Z

I checked and the alias is included in the run config

steveb8n 2021-05-12T02:37:31.336800Z

I guess we getting to a very specific use-case here

cfleming 2021-05-12T05:47:22.337Z

I don’t think so, I think it’s all the same root cause, which is definitely a valid and useful use-case which should work.

AJ Jaro 2021-05-12T14:01:52.340400Z

I thought at one point I was able to click directly from an Exception in the run tool window using lein to a defined namespace. However, now when the filename is common like core or util, it brings up a menu to select the proper one. The whole namespace is printed out in the Exception so I would imagine the link to the file could be determined, but I know it’s not always as easy as it seems Is there an issue/feature request filed for this already?

AJ Jaro 2021-05-13T13:31:58.344500Z

Thanks @cfleming! Would you like me to create a GitHub issue for it?