Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 83A27200B50 for ; Fri, 29 Jul 2016 23:10:58 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 82572160A79; Fri, 29 Jul 2016 21:10:58 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id A132F160A6E for ; Fri, 29 Jul 2016 23:10:57 +0200 (CEST) Received: (qmail 41002 invoked by uid 500); 29 Jul 2016 21:10:56 -0000 Mailing-List: contact dev-help@ignite.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.apache.org Delivered-To: mailing list dev@ignite.apache.org Received: (qmail 40990 invoked by uid 99); 29 Jul 2016 21:10:56 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 29 Jul 2016 21:10:56 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 22EF8C0D9B for ; Fri, 29 Jul 2016 21:10:56 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.279 X-Spam-Level: * X-Spam-Status: No, score=1.279 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gridgain-com.20150623.gappssmtp.com Received: from mx2-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id 6MAWLXhZnSZy for ; Fri, 29 Jul 2016 21:10:53 +0000 (UTC) Received: from mail-lf0-f50.google.com (mail-lf0-f50.google.com [209.85.215.50]) by mx2-lw-eu.apache.org (ASF Mail Server at mx2-lw-eu.apache.org) with ESMTPS id 435175FBFB for ; Fri, 29 Jul 2016 21:10:53 +0000 (UTC) Received: by mail-lf0-f50.google.com with SMTP id g62so79267139lfe.3 for ; Fri, 29 Jul 2016 14:10:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gridgain-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=BV4EL8cHWMcEygzAxsoLGVOBtQtSgrN8deITqzuQhMk=; b=okx7+JnBIgf0VjXGdncCybqRe5TQgcj0jvy2YmT7CgGsFZT+q6HnnJrDKKYOXpWZom YeZEbzZLsYaZ1d/8s8woaQ58ffae75Uob9xiVhDSCBsElQdf1LGx3lBLkWV89jcZPU7I af8wPGZxNRxQidMBJGD5UAvCxI7ReT54olllW5o+TYLGTsdlNYfgqeQrN9B0fjV3JBch op3sl4/rBNTid5v5qj+Kwqjov9mjA0NUaxRC0QpH44JbuwYR6ba3K1S7wodY5uqxD29v q5s+w83CBPvMUpKGVF236i9W+7AZC0f9LGFU2Mcs+QZHonq5xs1m2l2rimFXIlECPAdh IKgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=BV4EL8cHWMcEygzAxsoLGVOBtQtSgrN8deITqzuQhMk=; b=Jk9CKUWcqQYmFzJ5LxvWYEKXO/hpN4bnRTH1jjdQNW/uun2wXPhvhX6v6jFc3x8NDm laYI8ffVB6uzkB9pFxh4imYJZyYh2sgjBim8JazAQlmxKMgg6feql+ipcjiRYFbLYOnA 0hBpOL1AnSCdoMB1+wriCdPYqA07EniGis3J9mOTBNFpUzESxMKgJgcjMT/l40mSEkYU QwRfoNsAbaDfx4osZzdXM/Bsf8/qfiJ5I7keNCO4Hse3uu+VGKbBxJYkmE+uGZDVOv7D vvWWrTlsc+DCqPmBawT5gURmNdszD8j9NYgYFI0w4g7K4SUNdG+iIt1WTAxUVyX49gYN B21g== X-Gm-Message-State: AEkooutSYof6gXH0t7ayVwyjTb+wAtr18NZEnBSFvt3L6s/0xYeKMvEHZUnPj9xdQyxavHOAt58pWXJuB3I1vgzV X-Received: by 10.25.214.40 with SMTP id n40mr16155107lfg.105.1469826651768; Fri, 29 Jul 2016 14:10:51 -0700 (PDT) MIME-Version: 1.0 Received: by 10.114.59.145 with HTTP; Fri, 29 Jul 2016 14:10:51 -0700 (PDT) In-Reply-To: References: From: Anton Vinogradov Date: Sat, 30 Jul 2016 00:10:51 +0300 Message-ID: Subject: Re: JetBrains Annotaions usage. To: dev@ignite.apache.org Content-Type: multipart/alternative; boundary=001a1141170675dd130538ccaf96 archived-at: Fri, 29 Jul 2016 21:10:58 -0000 --001a1141170675dd130538ccaf96 Content-Type: text/plain; charset=UTF-8 Alexey, thanks for tips. Seems maven dependency's "optional" tag can handle this. See pullrequest for details. P.s. I'm not pretty sure this change will not brake something, need to recheck it twice. On Thu, Jul 28, 2016 at 5:15 PM, Alexey Goncharuk < alexey.goncharuk@gmail.com> wrote: > According to the JLS [1], adding or removing annotations has no effect on > the correct linkage of the binary representations of programs in the Java > programming language. Even if these annotations were RUNTIME, a user could > successfully use Ignite unless he explicitly uses those classes in runtime. > See also [2] > > [1] > https://docs.oracle.com/javase/specs/jls/se7/html/jls-13.html#jls-13.5.7 > [2] http://bugs.java.com/view_bug.do?bug_id=6322301 > > 2016-07-28 16:29 GMT+03:00 Anton Vinogradov : > > > Dmitriy, > > > > Annotations have @Retention(RetentionPolicy.CLASS) > > which means > > * Annotations are to be recorded in the class file by the compiler > > * but need not be retained by the VM at run time. This is the > default > > * behavior. > > > > So, from what I understand, everyone using ignite API with such > annotations > > still require them, correct? > > > > On Thu, Jul 28, 2016 at 4:16 PM, Dmitriy Setrakyan < > dsetrakyan@apache.org> > > wrote: > > > > > Anton, compile-time annotations should mean that Ignite should not > > require > > > these libraries at runtime. Did you try it already and run into issues? > > > > > > On Thu, Jul 28, 2016 at 4:34 AM, Anton Vinogradov < > > > avinogradov@gridgain.com> > > > wrote: > > > > > > > Possible, what's the solution in this case? > > > > > > > > On Thu, Jul 28, 2016 at 11:17 AM, Sergi Vladykin < > > > sergi.vladykin@gmail.com > > > > > > > > > wrote: > > > > > > > > > I don't think that JB annotations is a runtime dependency, we > should > > > need > > > > > them only at compile time, no? > > > > > > > > > > Sergi > > > > > > > > > > 2016-07-28 11:09 GMT+03:00 Anton Vinogradov : > > > > > > > > > > > Igniters, > > > > > > > > > > > > As you may know we had only 2 dependencies at ignite-core: jcache > > and > > > > > > ignite-shmen. > > > > > > > > > > > > IGNITE-3323 Get rid of copypasted JB annotations, use dependency > > > > instead. > > > > > > brings one > > more > > > > > > dependency to org.jetbrains.annotations. > > > > > > This solves problems for people using JB annotations at their > > > projects. > > > > > but > > > > > > makes ignite-core less dependency-lightweight. > > > > > > > > > > > > JB annotaions are used to highlight null problems in IDE and > > provide > > > > some > > > > > > understanding to users on whether null is allowed/possible in > > > concrete > > > > > > place. I doubt other products/frameworks use it much. > > > > > > > > > > > > But, do we really need them? As for me, we can replace all these > > > > > > annotations by asserts. > > > > > > > > > > > > I propose to discontinue usage of jb annotation and replace them > by > > > > > > asserts. > > > > > > > > > > > > Thoughts? > > > > > > > > > > > > > > > > > > > > > --001a1141170675dd130538ccaf96--