This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-10-13
Channels
- # announcements (1)
- # babashka (41)
- # beginners (194)
- # calva (14)
- # chlorine-clover (2)
- # cider (32)
- # circleci (9)
- # cljsrn (10)
- # clojure (110)
- # clojure-australia (1)
- # clojure-berlin (2)
- # clojure-dev (39)
- # clojure-europe (42)
- # clojure-france (3)
- # clojure-nl (19)
- # clojure-spec (22)
- # clojure-uk (23)
- # clojurescript (21)
- # conjure (41)
- # datomic (33)
- # depstar (16)
- # duct (46)
- # events (1)
- # fulcro (17)
- # graphql (14)
- # jobs (6)
- # jobs-discuss (9)
- # leiningen (6)
- # malli (29)
- # off-topic (21)
- # pathom (7)
- # portal (1)
- # rdf (81)
- # re-frame (3)
- # reagent (12)
- # reitit (2)
- # remote-jobs (1)
- # rum (1)
- # shadow-cljs (60)
- # specter (1)
- # sql (13)
- # tools-deps (23)
- # vrac (1)
- # yada (19)
Sometimes it seems like Conjure ignores my already opened log buffer and starts output stuff in the little floating window instead. I can't figure out if I'm doing something wrong or if this is to be expected, I can't reliably reproduce it, only happens sometimes
I've run into that when I move around in the buffer
It will do that if you can't see the bottom of the log buffer, this is so that you know there's new content / entries in the log while you're inspecting something from the past.
This was something I planned in my own head and have never really taken feedback on / attempted to make configurable. Open to a discussion on it and eventual issues asking for config / changes 🙂
one option that looks kind of nice in my head is that you could display some sort of "look down" indicator instead of showing the bottom of the log buffer
my thinking is, i'm already looking at the log buffer, so seeing another, smaller version of it pop up is perhaps a little jarring/confusing. i'd rather just see some indicator that tells me "hey, there's new stuff at the bottom of the buffer, just FYI." then i can press G
whenever i'm ready to see the new stuff
My expectation was that it would just append to the buffer.
Has anyone encountered not being able to evaluate forms that contain reader conditionals while in a cljc file? I have one session open against a jvm-based repl. My repro is
;; attempt to evaluate in a cljc file:
(defn testing [] #?(:cljs :this :clj :that))
;; result in log:
; eval (root-form): (defn testing [] #?(:cljs :this :clj :tha...
; (err) Error printing return value at clojure.lang.Util/runtimeException (Util.java:221).
; (err) Conditional read not allowed
I can't reproduce this :thinking_face: I've only ever seen this when something in the REPL itself has rebound the thing that allows you to use reader conditionals.
How are you starting the REPL?
; eval (root-form): (defn testing [] #?(:cljs :this :clj :that))
#'dev.sandbox/testing
Hmm, that means Conjure tried to check if you're Clojure or ClojureScript in your current session through a reader-conditional and got an error or nil.
That session type works by reader conditionals, so it makes sense that it's broken if reader conditionals are playing up.
sure. here are the results:
; Closed all sessions (2)
; --------------------------------------------------------------------------------
; Assumed session: Scottish Fold ()
; --------------------------------------------------------------------------------
; Sessions (1):
; >1 - Scottish Fold ()
; --------------------------------------------------------------------------------
; eval (root-form): (defn testing [] #?(:cljs :this :clj :tha...
; (err) Error printing return value at clojure.lang.Util/runtimeException (Util.java:221).
; (err) Conditional read not allowed
Oh yeah, I made no env link to a wiki page explaining the situations that it can occur 😅
(sorry about remote debugging, there's not really anything in Conjure for this, so I'm just trying to help diagnose where the issue lies)
Could be your tools.repl or Clojure version being held back by some dep :thinking_face:
well, not quite. this does look like a repl issue because evaluating #?(:cljs :this :clj :that)
returns nothing
No problem! I'm guessing it's a dependency causing it. I'd try lein repl
in another project / fresh dir to see if that's okay
Okay, well this isn't minimal by any stretch, but I fixed it by removing the nrebl set up that I was listing in my lein/profiles.clj user profile:
{:nrebl {:resource-paths ["/Users/onno/opt/REBL-0.9.226/REBL-0.9.226.jar"]
:dependencies [[rickmoynihan/nrebl.middleware "0.3.1"]
[org.clojure/core.async "0.4.500"]
[org.openjfx/javafx-fxml "11.0.1"]
[org.openjfx/javafx-controls "11.0.1"]
[org.openjfx/javafx-graphics "11.0.1"]
[org.openjfx/javafx-media "11.0.1"]
[org.openjfx/javafx-swing "11.0.1"]
[org.openjfx/javafx-base "11.0.1"]
[org.openjfx/javafx-web "11.0.1"]
[cljfmt "0.6.4"]]
:repl-options {:nrepl-middleware [nrebl.middleware/wrap-nrebl]}
:injections [(require 'nrebl.middleware)
(require '[cognitect.rebl :as rebl])]}
I could narrow it down further -- but I'll try that tomorrowGood spot! There may even be an issue on that project about this, I presume it's holding a common dependency back to a point of breakage, or it's not providing a flag to the REPL as it starts up as it should.
Thanks again for your time; and sorry to waste it when I hadn't tried things out at my repl first. My bad!