增强描述
将主要选项添加到 {{-Sdescribe}} 输出。这可以是一个新的 {{:main-opts}} 键,以及一个表示主选项缓存文件内容的字符串值(如果存在),否则为空字符串。
理由
下游执行环境可以在使用 {{clojure}} 进行依赖项下载、类路径构建和通过别名选择主选项时使用主选项信息。另一种看法是,与 {{-Spath}} 在与其他可以消费类路径并访问可执行环境的 {{clojure}} 组合时提供有用信息的方式相同,访问主选项在组合中也有类似的作用。这个需求可能不足以证明有必要添加新的 {{-Smain-opts}} 标志来污染选项列表;将其放入 {{-Sdescribe}} 输出可能是足够的。
另一个次要的理由可能是,这可能会对人类的调试目的有用。
实施注意事项
这可能是脚本中的一条新的单行,可能放置在 {{-Sdescribe}} 输出中的 {{:main-aliases}} 提供信息之后的行。
:main-opts "$(cat "$main_file")"
这对于大多数正常用例都适用,但可能会依赖于 TDEPS-56 的结果,那里可能会有一些特定于平台的更改以正确处理主选项含有空格的情况。(也许由于其,{{clojure}} 可以采取立场认为 {{:main-opts}} 不保证是最终的;这与仍然处于 alpha 状态的事物一致,也许也与 {{-Sdescribe}} 不是正式 API 的事实一致。)