增强描述
将主选项添加到 {{-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 的事实一致。