-
-
Notifications
You must be signed in to change notification settings - Fork 382
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve performances of Bloop/install
#4600
Improve performances of Bloop/install
#4600
Conversation
Prevents having to iteratively querying the location of each artifact's resolved files. This makes a big difference in large mill projects.
Does this close #4469 ? |
CC @alexarchambault and @lefou , not sure if you have any opinions on this since you know more about IDE stuff than I do. Otherwise it looks good to me and hopefully the existing tests catch any bugs |
I'm honestly not sure, but I've tried this change on a large mill project that was certainly experiencing similar symptoms, and it made it better. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks reasonable to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This switches that bit of code from the v1 to the v2 API of coursier, which is nice. The former code was apparently running the resolution twice, so that's better now 👍
Arguably it could be made event better if the task graph of java/scala modules were keeping the coursier dependencies around alongside the paths to the downloaded artifacts ... but 🤷♂️ |
#4608 adds helpers to get artifact details without calling too directly the coursier API, that could help here. We could try adding tasks keeping all those details, but I fear these might be quite heavyweight 🤔 |
Prevents having to iteratively querying the location of each artifact's resolved files. This makes a big difference in large mill projects.