增强描述
将主选项添加到 {{-Sdescribe}} 输出。这可以简单地是一个新的 {{:main-opts}} 键,并带有表示主选项缓存文件内容的字符串值(如果存在的话),如果没有,则为空字符串。
合理性
下游执行环境可以在使用 {{clojure}} 进行依赖下载、类路径构建和通过别名选择主选项时使用主选项信息。另一种看待这个问题的方式是,与 {{-Spath}} 在与其他可消费类路径的可执行环境结合时提供有用信息一样,访问主选项在组合时也是非常有用的。这可能不足以证明在选项列表中添加新的 {{-Smain-opts}} 标志是合理的;将此放入 {{-Sdescribe}} 输出可能是足够的。
另一个可能的合理性可能是,这可能对人类在调试方面是有用的。
实施注意事项
这可以是脚本中的单个新行,可能放置在 {{-Sdescribe}} 输出中发射 {{:main-aliases}} 的行之后。
:main-opts "$(cat "$main_file")"
这将对大多数正常用例有效,但可能与 TDEPS-56 发生的事情有关,在那里可能会对包含有空格的主选项的适当处理进行一些平台特定的更改。(也许在这种情况下,{{clojure}} 可以采取这样的立场:{{:main-opts}} 不是保证是最终的;这与仍然处于 alpha 阶段是一致的,也许也与 {{-Sdescribe}} 不是真正的正式 API 有关。)