I ran across a situation where Portal stops showing new data, and tracked it down to a passing test report that produced a #object[..] value (based on a reify Object call). I'm trying to narrow it down to a small, self-contained repro -- but wondered if anyone had run into anything similar already? Maybe this just a restriction in Portal due to cljs rendering?
Taking a look at this now 👌
Ohh, so the issue here is that objects are put into a hash-map so Portal can track what object it has sent to the UI.
I think some people saw similar issues with libpython-clj because a lot of python objects aren't hashable
https://github.com/djblue/portal/blob/master/src/portal/runtime.cljc#L114-L131 is the relevant code
I could see relaxing this requirement such that values that don't support hashing would only get a one-way mapping instead of a two-way mapping 🤔
And this came into HoneySQL via libpython-clj: https://github.com/seancorfield/honeysql/issues/509 🙂
Ok, I think I have a fix working locally 👍