-
Notifications
You must be signed in to change notification settings - Fork 29.1k
[SPARK-33108][BUILD] Remove sbt-dependency-graph SBT plugin #29997
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
Conversation
|
cc @srowen and @HyukjinKwon . |
|
Kubernetes integration test starting |
srowen
left a comment
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.
OK by me. It's the kind of plugin that really does not need to be defined in a project-specific build anyway.
|
Kubernetes integration test status success |
HyukjinKwon
left a comment
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.
Okay to me too. Can we file a JIRA and leave a todo comment to recover?
|
cc @gemelen and @ScrapCodes FYI |
|
Thank you, @srowen and @HyukjinKwon . Sure. I'll add an IDed TODO comment. Let's revisit this at SBT 1.4. |
|
I'll merge this because this is not tested by any CI. I checked this manually. |
|
Kubernetes integration test starting |
|
Kubernetes integration test status success |
|
Test build #129611 has finished for PR 29997 at commit
|
|
Test build #129617 has finished for PR 29997 at commit
|
### What changes were proposed in this pull request? This PR aims to remove `sbt-dependency-graph` SBT plugin. ### Why are the changes needed? `sbt-dependency-graph` officially doesn't support SBT 1.3.x and it's broken due to `NoSuchMethodError`. This cannot be fixed in `sbt-dependency-graph` side at SBT 1.3.x - https://github.com/sbt/sbt-dependency-graph > Note: Under sbt >= 1.3.x some features might currently not work as expected or not at all (like dependencyLicenses). ``` $ build/sbt dependencyTree Launching sbt from build/sbt-launch-1.3.13.jar [info] welcome to sbt 1.3.13 (AdoptOpenJDK Java 1.8.0_252) ... [error] java.lang.NoSuchMethodError: sbt.internal.LibraryManagement$.cachedUpdate(Lsbt/librarymanagement/DependencyResolution;Lsbt/librarymanagement/ModuleDescriptor;Lsbt/util/CacheStoreFactory;Ljava/lang/String;Lsbt/librarymanagement/UpdateConfiguration;Lscala/Function1;ZZZLsbt/librarymanagement/UnresolvedWarningConfiguration;Lsbt/librarymanagement/EvictionWarningOptions;ZLsbt/internal/librarymanagement/CompatibilityWarningOptions;Lsbt/util/Logger;)Lsbt/librarymanagement/UpdateReport; ``` **ALTERNATIVES** - One alternative is `coursier`, but it requires `coursier-based sbt launcher` which is more intrusive. - https://get-coursier.io/docs/sbt-coursier.html#sbt-13x > you'll have to use the coursier-based sbt launcher, via its custom sbt-extras launcher for example. - Another alternative is moving to `SBT 1.4.0` which uses `sbt-dependency-graph` as a built-in, but it's still new and will requires many change. So, this PR aims to remove the broken plugin simply. ### Does this PR introduce _any_ user-facing change? No. This is a dev-only change. ### How was this patch tested? Manual. ``` $ build/sbt dependencyTree ... [error] Not a valid command: dependencyTree [error] Not a valid project ID: dependencyTree [error] Not a valid key: dependencyTree (similar: dependencyOverrides, sbtDependency, dependencyResolution) [error] dependencyTree [error] ^ ``` Closes apache#29997 from dongjoon-hyun/remove_depedencyTree. Lead-authored-by: Dongjoon Hyun <dongjoon@apache.org> Co-authored-by: Dongjoon Hyun <dhyun@apple.com> Signed-off-by: Dongjoon Hyun <dhyun@apple.com>
What changes were proposed in this pull request?
This PR aims to remove
sbt-dependency-graphSBT plugin.Why are the changes needed?
sbt-dependency-graphofficially doesn't support SBT 1.3.x and it's broken due toNoSuchMethodError. This cannot be fixed insbt-dependency-graphside at SBT 1.3.xALTERNATIVES
One alternative is
coursier, but it requirescoursier-based sbt launcherwhich is more intrusive.Another alternative is moving to
SBT 1.4.0which usessbt-dependency-graphas a built-in, but it's still new and will requires many change.So, this PR aims to remove the broken plugin simply.
Does this PR introduce any user-facing change?
No. This is a dev-only change.
How was this patch tested?
Manual.