Hi, all. I’ve been trying to integrate the v3 starter into my existing Polylith workspace, but I’m getting a Can't take value of macro hyperfiddle.electric3/server warning when I fire up the server from the REPL.
Hmm. Would everything related to Electric need to be CLJC?
I broke the server out into regular CLJ, so I have no mixed namespaces besides the pure Electric Main component.
I dont remember the details, but this is definitely a flag and i would go make sure your configuration matches the working starter app exactly
e/defn is cljc only currently
in a client/server configuration at least ... i dont recall the details
Ah. Figured it out.
Converted to CLJC and used reader conditionals to separate out the client require and the client entry point. Compiled with no issue.
Guessing that going with CLJS was messing up the hyperfiddle.electric3 require.
Now seeing a different issue, but I'll spend some time debugging before bothering you with it.
Although, real quick—should one see reactor failures? Or under what conditions?
Reactor failure on reload after a change.
it means the process terminated, which is normal
System properties tutorial is working like a charm.
Haven't worked with CLJC before. Usually my projects have been split between CLJ and CLJS.
Rereading the reader conditional docs. Guessing the change in syntax for requiring macros in CLJ vs CLJS may have been the issue.
In any case, time to start building 🙂
I can load the app in the browser, but hot reload results in the warning in the browser (forcing a hard reload to see changes).
I’ve separated out the server and app (Electric) into their own namespaces.
This is the app entrypoint. Basically, copy-paste from the starter (minus the do).
Not really sure where to start with debugging this. What am I missing?
Gotta be something silly 😛
i have no insights
the way i would approach this is to clone a fresh starter app and validate it works, and then audit the polylith integration line by line, ideally using a diff tool to prevent human error
if you don't think it could be that - check file extensions, .clj vs .cljc, etc