{"action":"created","issue":{"url":"https://api.github.com/repos/elastic/elasticsearch/issues/21170","repository_url":"https://api.github.com/repos/elastic/elasticsearch","labels_url":"https://api.github.com/repos/elastic/elasticsearch/issues/21170/labels{/name}","comments_url":"https://api.github.com/repos/elastic/elasticsearch/issues/21170/comments","events_url":"https://api.github.com/repos/elastic/elasticsearch/issues/21170/events","html_url":"https://github.com/elastic/elasticsearch/issues/21170","id":185919228,"number":21170,"title":"Ivy cannot properly resolve ES v5.0.0 dependencies","user":{"login":"ywelsch","id":3718355,"avatar_url":"https://avatars.githubusercontent.com/u/3718355?v=3","gravatar_id":"","url":"https://api.github.com/users/ywelsch","html_url":"https://github.com/ywelsch","followers_url":"https://api.github.com/users/ywelsch/followers","following_url":"https://api.github.com/users/ywelsch/following{/other_user}","gists_url":"https://api.github.com/users/ywelsch/gists{/gist_id}","starred_url":"https://api.github.com/users/ywelsch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ywelsch/subscriptions","organizations_url":"https://api.github.com/users/ywelsch/orgs","repos_url":"https://api.github.com/users/ywelsch/repos","events_url":"https://api.github.com/users/ywelsch/events{/privacy}","received_events_url":"https://api.github.com/users/ywelsch/received_events","type":"User","site_admin":false},"labels":[{"id":23173,"url":"https://api.github.com/repos/elastic/elasticsearch/labels/bug","name":"bug","color":"9e2c2c","default":true},{"id":106454670,"url":"https://api.github.com/repos/elastic/elasticsearch/labels/build","name":"build","color":"5319e7","default":false},{"id":463755193,"url":"https://api.github.com/repos/elastic/elasticsearch/labels/v5.0.1","name":"v5.0.1","color":"dddddd","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":11,"created_at":"2016-10-28T13:10:05Z","updated_at":"2016-11-03T11:02:57Z","closed_at":null,"body":"The Maven pom definitions generated for ES v5.0.0+ use \\* excludes to prevent transitive dependencies. This does not play nice with Ivy, however, where \\* excludes are interpreted differently. This breaks the consumption of these dependencies from SBT, Grape, and other software that uses Ivy to resolve dependencies.\n\nIn Ivy the \\* excludes of the form\n\n```\n<dependencies>\n    <dependency>\n      <groupId>io.netty</groupId>\n      <artifactId>netty-buffer</artifactId>\n      <version>4.1.5.Final</version>\n      <scope>compile</scope>\n      <exclusions>\n        <exclusion>\n          <groupId>*</groupId>\n          <artifactId>*</artifactId>\n        </exclusion>\n      </exclusions>\n    </dependency>\n   ...\n```\n\nexclude the artifacts of `netty-buffer` itself as well.\n\nThis can be shown by running\n\n```\nivy -confs default -dependency org.elasticsearch.plugin transport-netty4-client 5.0.0 -retrieve \"[artifact](-[classifier]).[ext]\"\n```\n\nwhich yields\n\n```\n:: loading settings :: url = jar:file:/usr/local/Cellar/ivy/2.4.0/libexec/ivy-2.4.0.jar!/org/apache/ivy/core/settings/ivysettings.xml\n:: resolving dependencies :: org.elasticsearch.plugin#transport-netty4-client-caller;working\n    confs: [default]\n    found org.elasticsearch.plugin#transport-netty4-client;5.0.0 in public\n    found io.netty#netty-buffer;4.1.5.Final in public\n    found io.netty#netty-codec;4.1.5.Final in public\n    found io.netty#netty-codec-http;4.1.5.Final in public\n    found io.netty#netty-common;4.1.5.Final in public\n    found io.netty#netty-handler;4.1.5.Final in public\n    found io.netty#netty-resolver;4.1.5.Final in public\n    found io.netty#netty-transport;4.1.5.Final in public\n:: resolution report :: resolve 564ms :: artifacts dl 6ms\n    ---------------------------------------------------------------------\n    |                  |            modules            ||   artifacts   |\n    |       conf       | number| search|dwnlded|evicted|| number|dwnlded|\n    ---------------------------------------------------------------------\n    |      default     |   8   |   0   |   0   |   0   ||   2   |   0   |\n    ---------------------------------------------------------------------\n:: retrieving :: org.elasticsearch.plugin#transport-netty4-client-caller\n    confs: [default]\n    2 artifacts copied, 0 already retrieved (740kB/23ms)\n```\n\ni.e. it just yields the following 2 artifacts:\n\n```\n$ ls\nnetty-common.jar\ntransport-netty4-client.jar\n```\n\nmissing `netty-buffer` and others which use the \\* excludes.\n\n/cc: @rjernst \n"},"comment":{"url":"https://api.github.com/repos/elastic/elasticsearch/issues/comments/258114082","html_url":"https://github.com/elastic/elasticsearch/issues/21170#issuecomment-258114082","issue_url":"https://api.github.com/repos/elastic/elasticsearch/issues/21170","id":258114082,"user":{"login":"retemaadi","id":1247458,"avatar_url":"https://avatars.githubusercontent.com/u/1247458?v=3","gravatar_id":"","url":"https://api.github.com/users/retemaadi","html_url":"https://github.com/retemaadi","followers_url":"https://api.github.com/users/retemaadi/followers","following_url":"https://api.github.com/users/retemaadi/following{/other_user}","gists_url":"https://api.github.com/users/retemaadi/gists{/gist_id}","starred_url":"https://api.github.com/users/retemaadi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/retemaadi/subscriptions","organizations_url":"https://api.github.com/users/retemaadi/orgs","repos_url":"https://api.github.com/users/retemaadi/repos","events_url":"https://api.github.com/users/retemaadi/events{/privacy}","received_events_url":"https://api.github.com/users/retemaadi/received_events","type":"User","site_admin":false},"created_at":"2016-11-03T11:02:57Z","updated_at":"2016-11-03T11:02:57Z","body":"@ywelsch I tried it out with SBT 0.13.13 and still I get the error. Here is the stacktrace:\r\n\r\njava.lang.NoClassDefFoundError: io/netty/channel/RecvByteBufAllocator\r\n        at org.elasticsearch.transport.Netty4Plugin.getSettings(Netty4Plugin.java:39)\r\n        at org.elasticsearch.plugins.PluginsService.lambda$getPluginSettings$0(PluginsService.java:85)\r\n        at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:267)\r\n        at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)\r\n        at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)\r\n        at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)\r\n        at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)\r\n        at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)\r\n        at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)\r\n        at org.elasticsearch.plugins.PluginsService.getPluginSettings(PluginsService.java:85)\r\n        at org.elasticsearch.client.transport.TransportClient.buildTemplate(TransportClient.java:115)\r\n        at org.elasticsearch.client.transport.TransportClient.<init>(TransportClient.java:228)\r\n        at org.elasticsearch.transport.client.PreBuiltTransportClient.<init>(PreBuiltTransportClient.java:69)\r\n        at org.elasticsearch.transport.client.PreBuiltTransportClient.<init>(PreBuiltTransportClient.java:65)\r\n"}}
{"actor":{"display_login":"retemaadi"}}