-
Notifications
You must be signed in to change notification settings - Fork 445
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
Fix dependency handling in JlinkPlugin (+ general improvements) #1226
Conversation
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.
Some minor remarks. If you have time to fix, it would be nice. Otherwise I'll merge and release :)
val jlinkModules = TaskKey[Seq[String]]("jlinkModules", "Modules to link") | ||
|
||
val jlinkIgnoreMissingDependency = | ||
TaskKey[((String, String)) => Boolean]( |
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.
Can you add some docs what the the function types represent in `(String, String) => Boolean)
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.
Done.
final case class Module(name: String) extends Source | ||
final case class JarOrDir(name: String) extends Source | ||
|
||
private val pattern = """^\s+([^\s]+)\s+->\s+([^\s]+)\s+([^\s].*?)\s*$""".r |
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.
Can you add examples for some common patterns that occur?
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.
Done.
Thanks @nigredo-tori for your work ❤️ |
|
@nigredo-tori given your recent activity and incredible contributions, are you interested in commit rights and being more active for native-packager. If you are interested, but are unsure what this implies, we can either chat/email/hangout and I can answer any questions. |
As outlined here:
jdeps --print-module-deps
is unreliable - switch to parsing the fulljdeps
output.jdeps
behavior (throwing an error for missing dependencies) seems to be useful - include similar functionality into the new implementation.jlinkIgnoreMissingDependency
). Add convenience helpers (JlinkPlugin.Ignore
).General improvements:
jlinkModules
) to allow manually adding/removing these.Compile / fullClasspath
to allow injecting classpath elements for the scan. This can be useful if not all the relevant dependencies should be a part of the actual classpath (I have a use case for that).