CLJS expects that a namespace self-requires its macros (via :require-macros) to make them accessible directly (or via :refer). shadow-cljs follows this strictly but it sort of accidentally works with plain CLJS (and thereby all other CLJS build tools) if the macro was somehow required somewhere else. See CLJS-2454.
This PR adds the self-requires for the macro namespaces. This allows using :refer for both vars and macros.
CLJS expects that a namespace self-requires its macros (via
:require-macros
) to make them accessible directly (or via:refer
).shadow-cljs
follows this strictly but it sort of accidentally works with plain CLJS (and thereby all other CLJS build tools) if the macro was somehow required somewhere else. See CLJS-2454.This PR adds the self-requires for the macro namespaces. This allows using
:refer
for both vars and macros.