请分享您的观点,参加 2024 Clojure 状态调查!

欢迎!请参阅 关于 页面,以了解更多关于如何使用本站的信息。

0 投票
ClojureScript
在 CLJS-2298 中,为自动加载在“用户的工作区中找到的”{{user.cljs}}或{{user.cljc}}文件增加了支持。特别是,涉及的修订具体检查任何在类路径上找到的候选者实际上是磁盘上的文件,而不是在 JAR 中发现的文件。(见https://github.com/clojure/clojurescript/blob/6eedd0a08c49f7b0d4dcb30977b2fb38c90577bd/src/main/clojure/cljs/repl.cljc#L966)。

如果您(通过 git 依赖关系)依赖于包含{{user.cljs}}或{{user.cljc}}文件的库,那么仅检查它是一个文件不足以作为守卫。此外,我们还应排除 gitlibs 中找到的任何文件。我们可以通过重用类似{{cljs.closure/gitlibs-src?}}的函数来实现这一点。(见https://github.com/clojure/clojurescript/blob/c2f5aba2f59cf30dbc13c968d8ee3f0e4359d38c/src/main/clojure/cljs/closure.clj#L64)请注意,我们不能直接重用此函数,因为它是临时设置为返回{{false}}。但是,可以将其中一些功能分解到一个 util 命名空间中,并从 REPL 中重用。

2 答案

0 投票

评论者:namenu

我不知道如何为此补丁添加测试。

然而,我已经手动测试了

  • gitlibs 中的{{user.cljs}}不会自动加载。
  • 当前工作区中的{{user.cljs}}仍然会自动加载。
0 投票
参考: https://clojure.atlassian.net/browse/CLJS-2935(由mfikes报告)
...