Fork me on GitHub
#portal
<
2024-04-10
>
Arijan18:04:23

Hey folks, I'm not too familiar with the whole Clojure ecosystem yet, but I have an alias that should in theory add both CIDER and Portal middleware to my nrepl, except Portal still doesn't pick up on my evaluations without an explicit tap> - could someone point me in the right direction please? I'll send a couple of screenshots in thread.

Arijan18:04:56

:repl/inspect
  {:extra-deps
   {nrepl/nrepl       {:mvn/version "1.0.0"}
    cider/cider-nrepl {:mvn/version "0.37.0"}
    djblue/portal     {:mvn/version "0.46.0"}}
   :main-opts ["--main" "nrepl.cmdline"
               "--middleware" "[cider.nrepl/cider-middleware,portal.nrepl/wrap-portal]"
               "--interactive"]}
In the screenshot below, only the tap>ed statement is submitted to Portal: (just noticed that this is an old version, but 0.54.2 doesn't work either)

Arijan19:04:24

Update: it works when I eval stuff with Calva after I connect to the already-running REPL, it just doesn't submit them through the terminal for some reason think_beret

djblue20:04:14

Sorry for the confusion, this is intentional behavior in Portal https://github.com/djblue/portal/blob/master/src/portal/nrepl.clj#L63. Since it is difficult to know if an evaluation came from the user or tooling, Portal uses :file as a heuristic for user provided vs tooling provided. I think when evaluating code at the REPL, there is no file :thinking_face:

Arijan20:04:49

Oh, makes sense thank you!