{"action":"created","issue":{"url":"https://api.github.com/repos/bazelbuild/rules_scala/issues/370","repository_url":"https://api.github.com/repos/bazelbuild/rules_scala","labels_url":"https://api.github.com/repos/bazelbuild/rules_scala/issues/370/labels{/name}","comments_url":"https://api.github.com/repos/bazelbuild/rules_scala/issues/370/comments","events_url":"https://api.github.com/repos/bazelbuild/rules_scala/issues/370/events","html_url":"https://github.com/bazelbuild/rules_scala/issues/370","id":284013911,"number":370,"title":"How to integrate scala_import","user":{"login":"gkossakowski","id":4217,"avatar_url":"https://avatars3.githubusercontent.com/u/4217?v=4","gravatar_id":"","url":"https://api.github.com/users/gkossakowski","html_url":"https://github.com/gkossakowski","followers_url":"https://api.github.com/users/gkossakowski/followers","following_url":"https://api.github.com/users/gkossakowski/following{/other_user}","gists_url":"https://api.github.com/users/gkossakowski/gists{/gist_id}","starred_url":"https://api.github.com/users/gkossakowski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gkossakowski/subscriptions","organizations_url":"https://api.github.com/users/gkossakowski/orgs","repos_url":"https://api.github.com/users/gkossakowski/repos","events_url":"https://api.github.com/users/gkossakowski/events{/privacy}","received_events_url":"https://api.github.com/users/gkossakowski/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2017-12-21T21:48:18Z","updated_at":"2017-12-24T06:33:25Z","closed_at":null,"author_association":"NONE","body":"I'm opening this ticket to discuss details of using `scala_import` with IntelliJ. Having the discussion in public will make it easier to Google for other people.\r\n\r\nScala rules have `scala_import` that is supposed to mirror `java_import`. Another feature of `scala_import` is that it carries information that IntelliJ plugin lookups to determine dependencies.\r\n\r\nI'm working on adding support for `scala_import` to bazel-deps and I hit some snags. Questions:\r\n1. Should both java and scala go through `*_import` rules? At the moment, bazel-deps uses `java_library` for exposing java jars (fetched with maven_artifact) and `scala_library` for scala jars. For consistency reasons, it feels like we should just use import rules\r\n2. What's the exact dependency of a `java_import`? is it a file group like `@com_google_guava_guava//jar:file` or `@com_google_guava_guava//jar`? What's better for IntelliJ?\r\n3. How are transitive dependencies supposed to be expressed? My understanding is that they should be exposed as exports for both java and scala dependencies. Is that right?\r\n4. Does resolution of source artifacts work for both java and scala dependencies in IntelliJ?"},"comment":{"url":"https://api.github.com/repos/bazelbuild/rules_scala/issues/comments/353768191","html_url":"https://github.com/bazelbuild/rules_scala/issues/370#issuecomment-353768191","issue_url":"https://api.github.com/repos/bazelbuild/rules_scala/issues/370","id":353768191,"user":{"login":"johnynek","id":67958,"avatar_url":"https://avatars0.githubusercontent.com/u/67958?v=4","gravatar_id":"","url":"https://api.github.com/users/johnynek","html_url":"https://github.com/johnynek","followers_url":"https://api.github.com/users/johnynek/followers","following_url":"https://api.github.com/users/johnynek/following{/other_user}","gists_url":"https://api.github.com/users/johnynek/gists{/gist_id}","starred_url":"https://api.github.com/users/johnynek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/johnynek/subscriptions","organizations_url":"https://api.github.com/users/johnynek/orgs","repos_url":"https://api.github.com/users/johnynek/repos","events_url":"https://api.github.com/users/johnynek/events{/privacy}","received_events_url":"https://api.github.com/users/johnynek/received_events","type":"User","site_admin":false},"created_at":"2017-12-24T06:33:25Z","updated_at":"2017-12-24T06:33:25Z","author_association":"MEMBER","body":"You disagree with me how?\r\n\r\nBazel-deps has options and I’m open to adding more. As far as I know deps == runtime_deps for a jar. Runtime deps is what we use for compile and runtime scope now. I don’t know maven as well as you. I don’t even know what Pom packaging is. Happy to add more control but we haven’t been burned by using all maven deps as runtime unless they are excluded."}}
{"actor":{"display_login":"johnynek"}}