欢迎!有关本网站的工作方式,请参阅关于页面以了解更多信息。
emit-source-map
strip-prefix-path
:inline-source-maps
相关:CLJS-1402, CLJS-1901
评论者:darwin
补丁 https://github.com/darwin/clojurescript/commit/de1da63072c8049b9812d41cce750e5a972c0b0b.patch https://github.com/darwin/clojurescript/commit/2389fb7839a18299d842d381b135a669a7091869.patch https://github.com/darwin/clojurescript/commit/3ba594d8c7215ef8c8276737b7e5d8008c6b3a98.patch
完整审查: https://github.com/clojure/clojurescript/compare/darwin:inline-source-maps~3...darwin:inline-source-maps
请注意,在测试源映射的URL的时间戳格式有问题,导致第一个补丁的第一个测试失败。 https://github.com/clojure/clojurescript/compare/master...darwin:inline-source-maps#diff-55b85385d2d0bfb6dc20d59ed982d5c8L1239
今天在测试Dirac时,我意识到我们还需要嵌入源内容。
额外补丁 https://github.com/darwin/clojurescript/commit/c1df38f14a33d02fe2d421f80db0b421b17286bb.patch
新的审查URL: https://github.com/darwin/clojurescript/compare/inline-source-maps~4...darwin:inline-source-maps
在DevTools中测试,效果非常好。
评论由:skrat 提出
这对我们来说也有帮助。
评论由:dnolen 提出
在 JIRA 之外链接补丁是错误的。请直接将单个压缩补丁添加到此任务中。
已将其作为补丁文件附加。
取自https://github.com/darwin/clojurescript/compare/inline-source-maps~4...darwin:inline-source-maps.diff并应用到当前 master 代码上。它可以干净地应用,没有冲突。在我的机器上测试仍然通过。
评论由:mfikes 提出
该补丁不再适用;需要重新基线。
https://stackoverflow.com/a/54761431/84283
谢谢。我将在这周内尝试查看。
CLJS-1902-2.patch 在 CI 中失败(x)
特别是在 Windows 下。
以下是失败的一个实例
在 (test-external-source-maps) 测试中失败(source_maps_tests.clj:79)
CI 错误日志及其他实例:https://ci.appveyor.com/project/mfikes/clojurescript/builds/24471651
我检查了那个windows构建,在失败的测试中,URL映射信息看起来这样(注意混合斜杠)
//# sourceMappingURL=https://127.0.0.1:1234/some/path/source_maps/main.js.map
问题在于现有的代码中使用了{{util/path}},它取决于操作系统,并在Windows下产生反斜杠,我的补丁没有修改那个代码分支 https://github.com/clojure/clojurescript/blob/47386d7c03e6fc36dc4f0145bd62377802ac1c02/src/main/clojure/cljs/compiler.cljc#L1473
我认为我们有两种可能的解决方案1. 保持现有的行为不变,让我的测试接受混合斜杠2. 新的使用仅向前斜杠,保持我的测试不变,并在下一个版本中宣布这是一个潜在的破坏性更改
我认为解决方案2是一个更好的前进方向。我相信混合斜杠是可行的,因为浏览器宽容地将反斜杠视为正斜杠进行源映射解析。这种更改可能会以极小的可能性破坏现有的代码,这取决于clojurescript迄今为止如何使用反斜杠生成URL映射信息。
我将留给你考虑。然后根据你的决定继续前进。