mauricioszabo / atom-chlorine

An Atom plugin to integrate with Socket-REPL over Clojure, ClojureScript, ClojureCLR, Joker, Babashka, Clojerl, Lumo and Plank
MIT License
176 stars 17 forks source link

Uncaught TypeError: Cannot read property 'I' of null #224

Closed SarmBoJim closed 3 years ago

SarmBoJim commented 4 years ago

[Enter steps to reproduce:]

  1. Hi, I received the below error when disconnecting the socket REPL in Chlorine. Below the error trace I put a complete listing of all the code I was entering into my core.clj file and evaluating, if it is any help. It's a big dump of code though so maybe not helpful at all.

Atom: 1.53.0 x64 Electron: 6.1.12 OS: Microsoft Windows 10 Home Thrown From: chlorine package 0.10.1

Stack Trace

Uncaught TypeError: Cannot read property 'I' of null

At C:\Users\celap\.atom\packages\chlorine\lib\cmds.js:89

TypeError: Cannot read property 'I' of null
    at Function.v.g (/packages/chlorine/lib/cmds.js:676:24)
    at z2 (/packages/chlorine/lib/cmds.js:2654:1147)
    at A2 (/packages/chlorine/lib/cmds.js:2655:209)
    at HU.Og (/packages/chlorine/lib/cmds.js:2657:293)
    at C2 (/packages/chlorine/lib/cmds.js:2656:90)
    at Function.F2.j (/packages/chlorine/lib/cmds.js:2662:220)
    at /packages/chlorine/lib/cmds.js:2757:339
    at Function.DNa (/packages/chlorine/lib/cmds.js:2758:39)
    at Ej (/packages/chlorine/lib/cmds.js:671:217)
    at Dj (/packages/chlorine/lib/cmds.js:670:70)
    at Function.v.P (/packages/chlorine/lib/cmds.js:676:453)
    at /packages/chlorine/lib/cmds.js:716:311)
    at /packages/chlorine/lib/cmds.js:716:275)
    at /packages/chlorine/lib/cmds.js:774:118
    at cj (/packages/chlorine/lib/cmds.js:644:55)
    at bj.h.ea (/packages/chlorine/lib/cmds.js:646:309)
    at /packages/chlorine/lib/cmds.js:530:164)
    at Function.Sn.a (/packages/chlorine/lib/cmds.js:1039:231)
    at Function.Tn.a (/packages/chlorine/lib/cmds.js:1040:222)
    at V2.h.ae (/packages/chlorine/lib/cmds.js:2766:126)
    at b.o_ (/packages/chlorine/lib/cmds.js:1926:434)
    at /packages/chlorine/lib/cmds.js:1536:220
    at ODa (/packages/chlorine/lib/cmds.js:1536:359)
    at /packages/chlorine/lib/cmds.js:1538:173
    at AU (/packages/chlorine/lib/cmds.js:1516:73)
    at IDa.h._run (/packages/chlorine/lib/cmds.js:1528:360)
    at b.render (/packages/chlorine/lib/cmds.js:1538:225)
    at xf (/packages/chlorine/lib/cmds.js:132:332)
    at Ih (/packages/chlorine/lib/cmds.js:132:125)
    at Dj (/packages/chlorine/lib/cmds.js:257:332)

Commands

     -5:55.1.0 core:move-down (input.hidden-input)
     -5:54.7.0 autocomplete-plus:confirm (input.hidden-input)
     -5:43.5.0 chlorine:rebl-top-block (input.hidden-input)
     -5:42.9.0 editor:newline-below (input.hidden-input)
  2x -4:46.2.0 core:move-down (input.hidden-input)
     -4:44.7.0 autocomplete-plus:confirm (input.hidden-input)
     -4:23 chlorine:rebl-top-block (input.hidden-input)
     -4:22.4.0 editor:newline-below (input.hidden-input)
  3x -3:30.4.0 core:backspace (input.hidden-input)
  3x -3:27.5.0 core:move-down (input.hidden-input)
  2x -3:25.8.0 autocomplete-plus:confirm (input.hidden-input)
  2x -3:11.1.0 core:backspace (input.hidden-input)
     -3:06.4.0 chlorine:rebl-top-block (input.hidden-input)
     -3:05.8.0 editor:newline-below (input.hidden-input)
     -1:16.3.0 chlorine:clear-console (input.hidden-input)
     -1:13.4.0 chlorine:disconnect (input.hidden-input)

Non-Core Packages

chlorine 0.10.1 

`(ns inventory.core (:gen-class))

(defn -main "I don't do a whole lot yet..." [& args] (println "Hello World!"))

(let [[colour size] ["blue" "small"]] (str "The " colour " door is " size)) (let [x ["blue" "small"] colour (first x) size (last x)] (str "The " colour " door is " size)) (let [[colour [size]] ["blue" ["very small"]]] (str "The " colour " door is " size)) (let [[colour [size] :as original] ["blue" ["very small"]]] {:colour colour :size size :original original}) (let [{flower1 :flower1 flower2 :flower2} {:flower1 "red" :flower2 "blue"}] (str "The flowers are " flower1 " and " flower2)) (let [{flower1 :flower1 :as all-flowers} {:flower1 "red"}] [flower1 all-flowers]) (let [{:keys [flower1 flower2]} {:flower1 "red" :flower2 "blue"}] (str "The flowers are " flower1 " and " flower2)) (defn flower-colours [colours] (str "The flowers are " (:flower1 colours) " and " (:flower2 colours))) (flower-colours {:flower1 "red" :flower2 "blue"}) (defn flower-colours [{:keys [flower1 flower2]}] (str "The flowers are " flower1 " and " flower2)) (flower-colours {:flower1 "red" :flower2 "blue"}) (take 5 (range)) (take 10 (range)) (range 5) (class (range 5)) (take 10 (range)) (count (take 1000 (range))) (count (take 100000 (range))) (repeat 3 "rabbit") (class (repeat 3 "rabbit")) (take 5 (repeat "rabbit")) (count (take 5000 (repeat "rabbit"))) (rand-int 10) (rand-int 10) (rand-int 10) (repeat 5 (rand-int 10))

(rand-int 10)

(#(rand-int 10)) (repeatedly 5 #(rand-int 10)) (take 10 (repeatedly #(rand-int 10))) (take 20 (repeatedly #(rand-int 10))) (take 30 (repeatedly #(rand-int 10))) (take 3 (cycle ["big" "small"])) (take 6 (cycle ["big" "small"])) (take 3 (rest (cycle ["big" "small"]))) (def adjs ["normal" "too small" "too big" "swimming"]) (defn alice-is [in out] (if (empty? in) out (alice-is (rest in) (conj out (str "Alice is " (first in)))))) (alice-is adjs []) (defn alice-is [input] (loop [in input out []] (if (empty? in) out (recur (rest in) (conj out (str "Alice is " (first in))))))) (alice-is adjs) (defn countdown [n] (if (= n 0) n (countdown (- n 1)))) (countdown 10)
(countdown 100000) (defn countdown [n] (if (= n 0) n (recur (- n 1)))) (countdown 100000) (def animals [:mouse :duck :dodo :lory :eaglet]) (#(str %) :mouse) (map #(str %) animals) (class (map #(str %) animals)) (take 3 (map #(str %) (range))) (take 10 (map #(str %) (range))) (println "Look at the mouse!") (def animal-print (map #(println %) animals)) animal-print (def animal-print (doall (map #(println %) animals))) animal-print (def colours ["brown" "black" "blue" "pink" "gold"]) (defn gen-animal-string [animal colour] (str colour "-" animal)) (map gen-animal-string animals colours) (def colours ["brown" "black"]) (map gen-animal-string animals colours) (map gen-animal-string animals (cycle ["brown" "black"])) (reduce + [1 2 3 4 5]) (reduce (fn [r x] (+ r (* x x))) [1 2 3]) (reduce (fn [r x] (if (nil? x) r (conj r x))) [] [:mouse nil :duck nil nil :lory]) (reduce (fn [r x] (if (nil? x) r (conj r x))) [] [nil :mouse nil :duck nil nil nil :lory]) ((complement nil?) nil) ((complement nil?) 1) (filter (complement nil?) [:mouse nil :duck nil]) (filter keyword? [:mouse nil :duck nil]) (remove nil? [:mouse nil :duck nil]) (for [animal [:mouse :duck :lory]] (str (name animal))) (for [animal [:mouse :duck :lory] colour [:red :blue]] (str (name colour) (name animal))) (for [animal [:mouse :duck :lory] colour [:red :blue] :let [animal-str (str "animal-" (name animal)) colour-str (str "colour-" (name colour)) display-str (str animal-str "-" colour-str)]] display-str) (for [animal [:mouse :duck :lory] colour [:red :blue] :let [animal-str (str "animal-" (name animal)) colour-str (str "colour-" (name colour)) display-str (str animal-str "-" colour-str)] :when (= colour :blue)] display-str) (flatten [[:duck [:mouse] [[:lory]]]]) (class (flatten [[:duck [:mouse] [[:lory]]]])) (vec '(1 2 3)) (into [] '(1 2 3)) (sorted-map :b 1 :a 1 :z 3) (into (sorted-map) {:b 2 :c 3 :a 1}) (into {} [[:a 1][:b 2][:c 3]]) (into [] {:a 1 :b 2 :c 3}) (partition 3 [1 2 3 4 5 6 7 8 9]) (partition 3 [1 2 3 4 5 6 7 8 9 10]) (partition-all 3 [1 2 3 4 5 6 7 8 9 10]) (partition-by #(= 6 %) [1 2 3 4 5 6 7 8 9 10]) (partition-by odd? [1 2 3 4 5 6 7 8 9 10]) `

mauricioszabo commented 3 years ago

Fixed on 0.10.2