From what I understand, the intent for this use case is to simply add a dependency on said tool at whatever version in your package manifest. Dependencies not actually used by your products will be ignored by your clients in a future version of Swift (SE‐0226 is already implemented on master
). But such dependencies will still be available during development to swift run
whichever of them you want. That covers the fetching and version locking side. The separately desired shared cache feature would end up automatically persisting the built tool.
1 Like