Path: csiph.com!news.mixmin.net!aioe.org!bofh.it!news.nic.it!robomod From: David Bernard Newsgroups: linux.debian.maint.java Subject: Re: Packaging maven-scala-plugin (Was: Help needed for gatk) Date: Mon, 01 Feb 2016 23:10:03 +0100 Message-ID: References: X-Original-To: Andreas Tille X-Mailbox-Line: From debian-java-request@lists.debian.org Mon Feb 1 22:00:11 2016 Old-Return-Path: X-Amavis-Spam-Status: No, score=-0.549 tagged_above=-10000 required=5.3 tests=[BAYES_00=-2, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=2, RCVD_IN_DNSWL_LOW=-0.7] autolearn=no autolearn_force=no X-Policyd-Weight: using cached result; rate: -7 Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=Iot6ztjA0MJroMCyFuPBOlpAVaqUnylt1Z1Jm15AhRY=; b=Sl1I9RS+9yeMbgP9lZdsd0xLk9EwzfD2/dvnTZ2InBGqWm/uu3mjpAiliRQfWdhDCp lr0t2En92mRl3pYFcznrjSPnE2zK0ld89Tu4yh7yssN3NWpnyPaT+UpyBRFwygNV7zS7 QfAjOoDPsno1yS1O/6UGJD0RAe0PRZaSK8dbTbR5EN01MxukS41xYcb1a5Li5QHyx7ns /p1qbhRHVK4qqh/C0bS3Oaf38exH5jHrVUfXEh2B2L0n5ovwc77NU7uBKE9jrZoFFtLi Nj/wORQ9zs6hZiMZj3J9dwpGqQKqOvnSmOpyFRjCV/db9a0inUCDsGzw2X7MDZlI4cXj lK5A== 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:date :message-id:subject:from:to:cc:content-type; bh=Iot6ztjA0MJroMCyFuPBOlpAVaqUnylt1Z1Jm15AhRY=; b=ipL2fGScuasGeyYSyV4NyROWdHg+c8BJXRKdRSLbo0ST1eLFlGSq/jPDYxfY5DMTiI chG2YGx8gwL3fVnS8Ax5dwTACW3ECrVUeNsutJ1iPvgxidDAx9fyoMFhD+iy83e+/XxG KY2Ys+tSSMjnRBj9zHhU4VtY1wNGp8Mfbb03JpvtaHcfOhlAdaeDJE6gks4cqXzQT57i YudTG7oVif5Yj6ra//UsfqMkLV/Nqctk3t3AJVqEiti3lY1f+xAdUeXStvi6CCZLSueM Ma4CUTcJQCGQHbRpN19BYfxLzA1FjoCEyTwoEiVMuuXUsUCS7bgPi5EsyCTr4gHRI6jF gcog== X-Gm-Message-State: AG10YORfzVFVe7k5btuzRlc/OWeLjkGVZRMvIC23Ycnd87sdi2sf6E4t58BldLY1YBlqsCknOwRcW0564UidRg== MIME-Version: 1.0 X-Received: by 10.194.104.6 with SMTP id ga6mr24859689wjb.17.1454362913667; Mon, 01 Feb 2016 13:41:53 -0800 (PST) Content-Type: multipart/alternative; boundary=089e0102fb50d80436052abc40dd X-Mailing-List: archive/latest/19121 List-ID: List-URL: List-Archive: https://lists.debian.org/msgid-search/CAK3XY7RaOyN36MqeEDC36WJNHGA=JmkLmk6CTMvknMQ7AbPeOA@mail.gmail.com Approved: robomod@news.nic.it Lines: 170 Organization: linux.* mail to news gateway Sender: robomod@news.nic.it X-Original-Cc: Debian Java List X-Original-Date: Mon, 1 Feb 2016 22:41:53 +0100 X-Original-Message-ID: X-Original-References: <20160130170530.GK26893@an3as.eu> <1454187900.16827.5.camel@gmail.com> <20160201085137.GB29773@an3as.eu> <1454324732.4228.22.camel@gmail.com> <20160201111824.GC2206@an3as.eu> <1454329800.4228.58.camel@gmail.com> <20160201133518.GB7577@an3as.eu> <56AF5FCB.5090206@apache.org> <20160201134340.GD7577@an3as.eu> <20160201205617.GB19202@an3as.eu> Xref: csiph.com linux.debian.maint.java:8802 --089e0102fb50d80436052abc40dd Content-Type: text/plain; charset=UTF-8 zinc is optional at runtime, but required at build time (part of the code depends of it). I don't know the package policy of Debian (I use ArchLinux). Is it mandatarory to build every package (like in a gentoo)? If yes you'll have to build all the dependency of plugin, jars, ... from source and install them into a maven repository. It's a crazy task (including that some of jar, like scala, are not build with maven). And you'll have to create a package for every dependencies (directs + transitives). Do you plan to create a debian package for each artifacts listed via https://maven.apache.org/plugins/maven-dependency-plugin/analyze-mojo.html of the gatk project and its plugins ? ( I didn't read the full conversation yet). On Mon, Feb 1, 2016 at 9:56 PM, Andreas Tille wrote: > Hi David, > > On Mon, Feb 01, 2016 at 09:38:44PM +0100, David Bernard wrote: > > > > TBH, I don't understand why you package a maven plugin ? > > I can understand that from a maven plugin author this sounds totally > crazy since maven is designed to download what is missing. However, the > Debian archive has to be self consistent and needs to be buildable from > source out of itself. So per Debian policy you need to build a package > while beeing offline and the usual build process guarantees that this is > ensured by creating a chroot environment that can access only the Debian > archive. The reason why we are packaging maven plugins is that we want > to package Java software for Debian that is using this plugin to build. > The project I want to build is gatk[1] and there is a thread on the > debian-java lists that exposes my motivation to package > macen-scala-plugin[2]. > > > Because the maven > > regular flow, is to let maven download and install plugins declared in > the > > project, on demand, the first time it's used/required. > > As I said above from a distribution point of view downloading is not > possible. > > > Now, about your issue, zinc is optional (personnaly I never use it). and > > first build of a maven project should not be done offline include, first > > build of a maven's plugin. And from your log, you build the plugin > offline. > > You could find the *direct* list of dependency at : > > http://davidb.github.io/scala-maven-plugin/dependencies.html > > Its an interesting piece of information that you personally do not use > zinc and thus this could be ignored. However, as you say its downloaded > at some point in time anyway due to maven's plugin mechanism. Do you > see any chance that this download could be avoided and the source code > checks the existence before trying to access zinc? > > I hope I have explained my point clearly enough and you can make some > sense out of it why we exactly need this offline mode and try to be able > to skip those things that are not used completely. > > Kind regards > > Andreas. > > [1] https://www.broadinstitute.org/gatk/ > [2] https://lists.debian.org/debian-java/2016/01/msg00050.html > > -- > http://fam-tille.de > --089e0102fb50d80436052abc40dd Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
zinc is optional at runtime, but required at bui= ld time (part of the code depends of it).

I don't know the= package policy of Debian (I use ArchLinux). Is it mandatarory to build eve= ry package (like in a gentoo)? If yes you'll have to build all the depe= ndency of plugin, jars, ... from source and install them into a maven repos= itory. It's a crazy task (including that some of jar, like scala, are n= ot build with maven). And you'll have to create a package for every dep= endencies (directs + transitives).

Do you plan to create a deb= ian package for each artifacts listed via https://maven.apache.= org/plugins/maven-dependency-plugin/analyze-mojo.html of the gatk proje= ct and its plugins ? ( I didn't read the full conversation yet).



On Mon, Feb 1, 2016 at 9:56 PM, Andreas Tille <andreas@an3as.eu>= ; wrote:
Hi David,

On Mon, Feb 01, 2016 at 09:38:44PM +0100, David Bernard wrote:
>
> TBH, I don't understand why you package a maven plugin ?

I can understand that from a maven plugin author this sounds totally=
crazy since maven is designed to download what is missing.=C2=A0 However, t= he
Debian archive has to be self consistent and needs to be buildable from
source out of itself.=C2=A0 So per Debian policy you need to build a packag= e
while beeing offline and the usual build process guarantees that this is ensured by creating a chroot environment that can access only the Debian archive.=C2=A0 The reason why we are packaging maven plugins is that we wan= t
to package Java software for Debian that is using this plugin to build.
The project I want to build is gatk[1] and there is a thread on the
debian-java lists that exposes my motivation to package
macen-scala-plugin[2].

> Because the maven
> regular flow, is to let maven download and install plugins declared in= the
> project, on demand, the first time it's used/required.

As I said above from a distribution point of view downloading is not=
possible.

> Now, about your issue, zinc is optional (personnaly I never use it). a= nd
> first build of a maven project should not be done offline include, fir= st
> build of a maven's plugin. And from your log, you build the plugin= offline.
> You could find the *direct* list of dependency at :
> http://davidb.github.io/scala-maven= -plugin/dependencies.html

Its an interesting piece of information that you personally do not u= se
zinc and thus this could be ignored.=C2=A0 However, as you say its download= ed
at some point in time anyway due to maven's plugin mechanism.=C2=A0 Do = you
see any chance that this download could be avoided and the source code
checks the existence before trying to access zinc?

I hope I have explained my point clearly enough and you can make some
sense out of it why we exactly need this offline mode and try to be able to skip those things that are not used completely.

Kind regards

=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Andreas.

[1] https://www.broadinstitute.org/gatk/
[2] https://lists.debian.org/debian-java/2= 016/01/msg00050.html

--
http:/= /fam-tille.de

--089e0102fb50d80436052abc40dd--