我的担忧是,将继承的复杂性(甚至是多重继承)引入一个本来就很简单的配置中。我从多年的Java学习中学到的关键一点是避免这些方法,而使用组合,这样可以提供更大的灵活性。
使用 tools.build 是否能更容易地解决 mono-repos 中的这个问题?
在原始问题提出的事例中,是否有机制来防范或至少警告 :dev/project1
包含了 :dev/all-projects
或其他集结别名的情况?这个分组可以有多少层级?
是否有明确先决规则?
是否有工具可以诊断冲突所在 - 也许 -Stree 足够,但我不确定
别名分组是否仅限于在项目 deps.edn 中定义的别名,还是也包括用户级别的 deps.edn(我假设排除用户级别的配置会增加更多复杂性)
或许一个避免这种情况的方法是有一种类似 :meta-aliases
的东西,它只能包括别名而不会包括其他 :meta-aliases
,但那样似乎还是增加了复杂性。
我希望针对 mono-repls 特定的相关问题能够在不增加 deps.edn
配置的复杂性(特别是避免继承或甚至多重继承)的情况下得到解决。