Open atroche opened 6 years ago
@atroche Hi Alistair, thanks for the heads-up - and apologies for the long delay replying.
I'm not familiar with Planck. Could you explain your use case a bit? You want to use Truss's assertion macros in Planck code?
I'll need to wrap my head around how macros would work for something like Planck.
Quick update: from a quick skim of Planck's docs, it does appear to me that adding support for Planck might unfortunately be non-trivial.
A couple potential issues:
.clj/c
files but will process only :cljs
conditional branches. So it seems like macros in .cljc
files need to choose between a :clj
conditional (which is preferred by shadow afaiu, and helps to reduce build times and the risk of unnecessary output) and an unconditional macro (which seems to be necessary for Planck).There seems there may be a fair amount of complexity here to sort out, I'd need to spend a fair chunk of time understanding the details to really judge the viability here.
The ideal would be if there were some guidelines for library authors with some examples to show how to satisfy Planck's requirements without negatively impacting other builds/tooling. I suspect that's probably possible with the right approach, it's just unclear to me how much such an approach would impact my usual patterns / workflow.
Planck looks really cool, would be great to support it if possible. But realistically, would need either some clear guidance on the above - or a strong motivation (e.g. wide user demand) to try dig further and experiment.
If you or others are strongly interested in this, please share any details you can re: intended use cases!
Cheers :-)
You're probably already aware, but just in case:
Mike Fikes has a good explanation here: https://github.com/planck-repl/planck/issues/734