-
Notifications
You must be signed in to change notification settings - Fork 151
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
Long term: sbt-license-report
took so much time to compile (upstream problem)
#1019
Comments
@Roiocam would you mind to test it with the current main? thanks. Your PR fix the huge problem for me,thanks. |
@Roiocam The core reason why sbt-license-report takes so long is that due to a limitation in coursier which is the default resolution mechanism for repositories in sbt, sbt license report is instead forced to re-resolve all dependencies using Ivy which is whats taking a really long time. If you want to solve this issue (which is whats currently taking up the majority of the time in doc generation) we need to unblock this issue which involves solving coursier/coursier#1790. I tried to do this myself but didn't have the time/capacity to figure out the core problem. |
@Roiocam Just to set expectations, even if you do figure out how to resolve coursier/coursier#1790 its probably going to take a while for it to be released in coursier which then needs to be included in a new version of sbt for sbt-license-report to use |
@mdedetrich @Roiocam We should solve this problem, but there are short-term and long-term solutions. The short-term solution is to use this PR to make everyone faster. The long-term solution is to fix the upstream issue. So I suggest adding a |
sbt-license-report
took so much time to compilesbt-license-report
took so much time to compile
sbt-license-report
took so much time to compilesbt-license-report
took so much time to compile (upstream problem)
I just did a quick investigation to see why the plugin runs frequently to the issue you mentioned. The result is Paradox always executes the task of Even if we fix the upstream problem of dependency resolver, we will still re-execute the generation of task Considering that most of the people in this project are unpaid, I think it makes sense to have this turn-off option by default and long-lasting preservation. We should be consistent on this issue. As for the upstream issue of this issue, I don't think pekko is concerned about it, We should spend more time on pekko itself. |
While this is technically true, do note that coursier unlike Ivy has its own caching mechanism, ontop of this we would actually be re-using the value from That being said implementing a form of caching would be good, I think that sbt's caching may be helpful here
Sure I am not going to be telling people where and where not to spend their time, its just that this does directly effect Pekko (as stated before) and as a nice bonus it does help the community. |
When I tried to review PR #1012, I found the
sbt-license-report
took so much time, even if we have increment compile.Long time paradox build
I think PR #704 will help the paradox compile because they skip the license report generation. On my laptop, it speeds up almost over 15x times.
disable license report made paradox build faster
@mdedetrich @He-Pin Can yours pick up the PR #704, and consider the feasibility agains?
Solution
sbt-license-report
took so much time to compile (upstream problem) #1019 (comment)The text was updated successfully, but these errors were encountered: