Fork me on GitHub
#cljs-dev
<
2017-12-15
>
martinklepsch09:12:12

Is it valid for cljs.analyzer/all-ns to return a set containing nil?

martinklepsch10:12:07

Somehow I end up with this:

(prn (get-in @state [::ana/namespaces nil]))
{:cljs.spec/registry-ref [], :cljs.spec/speced-vars []}
(This is a big project and most likely something is just wrong but it would be nice if the compiler gave a more informative error message at a point in time where it has more context)

dnolen14:12:08

should probably catch that - but need to know how it happened

martinklepsch20:12:15

I’ve tried figuring out how this happens but haven’t had any success really. The value of the nil key seems to indicate that the state is inserted in cljs.analyzer/dump-specs but I put a println there and it seems that it’s only called once for cljs.core. Any other suggestions how I can figure out where this is added to the analyzer state?

mfikes20:12:26

For global caching, including the JAR name in cache path calculation would prevent, for example, cached items from core.async-0.3.465.jar colliding with andare-0.8.0.jar. (The latter has namespaces that purposefully match the former.)

martinklepsch20:12:15

I’ve tried figuring out how this happens but haven’t had any success really. The value of the nil key seems to indicate that the state is inserted in cljs.analyzer/dump-specs but I put a println there and it seems that it’s only called once for cljs.core. Any other suggestions how I can figure out where this is added to the analyzer state?

martinklepsch20:12:09

Is there a way to delete attachments from JIRA? I uploaded like 5 broken patches 🙈