This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-04-21
Channels
- # babashka (16)
- # beginners (182)
- # calva (13)
- # chlorine-clover (43)
- # clj-kondo (17)
- # cljs-dev (14)
- # cljsrn (19)
- # clojure (97)
- # clojure-argentina (7)
- # clojure-dev (45)
- # clojure-europe (7)
- # clojure-germany (5)
- # clojure-nl (4)
- # clojure-portugal (4)
- # clojure-romania (5)
- # clojure-spec (46)
- # clojure-uk (21)
- # clojuredesign-podcast (2)
- # clojurescript (159)
- # conjure (28)
- # core-async (7)
- # cursive (13)
- # datomic (17)
- # defnpodcast (9)
- # duct (1)
- # fulcro (45)
- # graphql (6)
- # jobs (7)
- # jobs-discuss (1)
- # juxt (3)
- # kaocha (4)
- # leiningen (12)
- # malli (5)
- # observability (1)
- # off-topic (50)
- # pathom (15)
- # re-frame (16)
- # reitit (5)
- # remote-jobs (21)
- # ring (7)
- # shadow-cljs (166)
- # test-check (6)
- # tools-deps (27)
- # xtdb (2)
@mfikes was there a specific reason the REPL doesn't print the version if it's synthetic?
so might as always emit - I was actually scratching my head for long time wondering why sometimes Cursive would detect other times not
@dnolen Hi, I'm back about the cljs.analyzer.api/analyze-file
failure on a file of the specter package.
After a while, I'm able to propose you a synthetic example of the issue in the demo repo:
https://github.com/frozar/cljdoc_specter_support
The synthetic example is in essential.cljc:
(ns essential
#?(:cljs (:require-macros
[essential
:refer
[varialization]]))
;; The following line makes the difference. If this line is uncomment
;; the cljs.analyzer.api/analyze-file function will execute successfully
;; on essential.cljc
;; #?(:cljs (:use [cljs.core :only [coll?]]))
)
#?(:clj
(do
(defmacro varialization
[arg]
`(var ~arg))
))
(defn simple []
(varialization coll?))
With this file, you would get the weird message about the unresolvable coll?
symbol. If you uncomment the (:use [cljs.core :only [coll?]])
header line, the analysis succeed.
My interpretation is that, during the execution of analyze-file
on essential.cljc, the environment doesn't involve the cljs.core
namespace by default. So it doesn't find coll?
.
Questions: Is it true? If yes, is it intentional?@fabien.rozar intentional