Roblox / foreman

Toolchain manager for Roblox projects
MIT License
178 stars 26 forks source link

LUAFDN-784 Try to download all tools before erroring #62

Closed hmallen99 closed 1 year ago

hmallen99 commented 1 year ago

Problem

Closes #37 LUAFDN-784 We should try to download all tools before erroring. Currently, the tool will immediately crash if it finds a tool that it cannot install. This is not great, as a foreman.toml file may list some tools that the user doesn't have auth for, and the user will have to manually delete the entry for that tool.

Solution

Instead of halting execution when we encounter an error, catch the error and add it to an error map. Then we can display all the errors accumulated during execution after all downloads have been attempted.

Testing

Added a snapshot test for downloading all of the tools, even if there's an error in the middle.

github-actions[bot] commented 1 year ago

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

hmallen99 commented 1 year ago

I have read the CLA Document and I hereby sign the CLA