chlorine-clover

About Chlorine for Atom and Clover for VS Code: https://atom.io/packages/chlorine and https://marketplace.visualstudio.com/items?itemName=mauricioszabo.clover
seancorfield 2020-09-21T04:05:49.006700Z

Ran into a strange thing today: I have a namespace that defines a function format; it has (:refer-clojure :exclude [format]), it works when run from a regular REPL, it works when run in tests (the ns required :as sut and then sut/format). But via Chlorine, it seems to think format is clojure.core/format. I can't run (format ...) in my ns because Chlorine seems to run (clojure.core/format ...) and even when I try to run the tests, it seems to think sut/format doesn't exist...

2020-09-21T05:33:12.006900Z

that is strange

seancorfield 2020-09-21T05:38:47.007300Z

Yeah, I'm real puzzled. Not sure what's going on there.

seancorfield 2020-09-21T05:39:16.008Z

I've tried it on two Chlorine setups: macOS and Windows+WSL. Same weird behavior.

2020-09-21T05:52:20.008500Z

@seancorfield i get the same issue on linux fwiw

2020-09-21T05:54:13.009400Z

i tried explicitly evaluating in-ns as well before evaluating a custom format defined in an ns with (:refer-clojure :exclude [format])

2020-09-21T05:55:27.010100Z

even using a fully qualified symbol (e.g. my-ns/format) yields the same results

2020-09-21T05:56:38.010400Z

i suspect unrepl is up to something 🙂

seancorfield 2020-09-21T05:57:59.010900Z

Yeah, it's weird because in another ns it seems to be okay to define format 😐

mauricio.szabo 2020-09-21T12:43:35.011200Z

Wow, strange indeed. I'll look at it right now

mauricio.szabo 2020-09-21T14:02:10.011700Z

Seems like a bug. Probably on my part, really...

mauricio.szabo 2020-09-21T14:07:34.013300Z

Right, found out. To avoid more bizarre errors, I was using ns instead of in-ns before running any code on specific namespace. But it seems that its behavior is quite bizarre when a namespace already exist 😞

mauricio.szabo 2020-09-21T14:16:48.013500Z

Fixing here: https://github.com/mauricioszabo/repl-tooling/pull/94

seancorfield 2020-09-21T16:23:22.014600Z

Cool. I just went to check how it would behave in the namespace-not-existing case and see you've preserved that behavior. Thanks for the quick fix!

mauricio.szabo 2020-09-21T16:27:17.015200Z

Yes, when the namespace does not exist Clojure sometimes give such a strange error that's hard to explain what's happening...

seancorfield 2020-09-21T20:23:45.016200Z

Thanks for the quick fix on that @mauricio.szabo -- I can confirm that my format issue has gone away now 🙂

👍 2
2020-09-21T22:21:55.016600Z

worked here too :)

2020-09-21T22:22:50.016800Z

i apologize to the unrepl gods