Thanks for opening this, Zoran.
I can say for Camel Quarkus at least, that creating an app with it is
very Maven-repo centric. It is because Quarkus tooling (that does the
build time analysis and transformation of the application code) looks
for the build time and runtime artifacts using Maven or Gradle
resolution mechanisms. It would be very hard for a user to put the
artifacts on proper places manually.
I thought providing a zipped Maven repo could be useful for offline use
cases, but in the end, if only our artifacts (without transitives) are
included, its usefulness would be quite limited.
Having said that, I am for not providing any binary distribution for
Camel Quarkus. I cannot provide any opinion for other Camel projects
because I do not know them well enough.
Thanks,
-- Peter
On 15/12/2020 10:37, Zoran Regvart wrote:
+1 Tadayoshi, folk seem to use the Maven repository far more than
downloading a ZIP/tar.gz archive, I can't actually fathom how a
ZIP/tar.gz with binary jars is useful as we don't provide a
ZIP/tar.gz+dependencies variant, so for any binary jar we produce one
has to go and download a non trivial number of dependency jars, check
for compatibility, update on patch versions...
I was hoping to hear someone with a compelling argument for having the
binary distribution, but I'm not hearing one. Use cases that I was
hoping to hear would be that a company firewall doesn't allow
downloading from Maven central but allows downloading the binary
distribution ZIP/tar.gz. This was somewhat of a practice ~10 years
ago, but I guess not today?
Having the `kamel` CLI in distribution is the only one I'd keep for
now. Let's try to hear from more folk and then we can decide.
zoran
On Tue, Dec 15, 2020 at 2:03 AM Tadayoshi Sato <[email protected]> wrote:
Hi folks,
I don't use binary distributions, either. It makes sense for runtime
projects such as Apache Karaf, Kafka, Artemis, etc. to provide binary
distributions, but it doesn't for library frameworks like Camel Core, Camel
Quarkus, and CKC.
For Camel-K, however, it has a CLI `kamel` so IMO it still makes sense to
keep binary distributions for it.
Thanks,
Tadayoshi
On Mon, Dec 14, 2020 at 10:58 PM Ajmera, Hemang C <[email protected]>
wrote:
I am relying on maven for binaries and git for sourcecode. IMHO binary
distribution may not be needed.
Github has release feature, where we can have binaries can be downloaded
from there. Many users might be used to that way of downloading binary, so
if needed, that can be alternate place for download if anyone needs it.
However CI/CD pipeline might need updates for github release to work.
Thanks and Regards,
Hemang Ajmera
-----Original Message-----
From: Zoran Regvart <[email protected]>
Sent: 14 December 2020 19:08
To: Dev <[email protected]>; [email protected]
Subject: Are you using binary distribution?
EXTERNAL SENDER: Do not click any links or open any attachments unless
you trust the sender and know the content is safe.
EXPÉDITEUR EXTERNE: Ne cliquez sur aucun lien et n’ouvrez aucune pièce
jointe à moins qu’ils ne proviennent d’un expéditeur fiable, ou que vous
ayez l'assurance que le contenu provient d'une source sûre.
Hi Cameleers,
we're discussing binary distribution on two issues[1][2]. The binary
distribution is the tar.gz/ZIP file linked from the Camel website. By ASF
policy we only ship source code, and the binary distribution is optional.
Back in the dark days, before using build tools that knew about dependency
management (Maven, Gradle...) folk used to use the binary distribution.
I've found some statistics on downloads/per day, for us[3]/eu[4] and
created these charts:
https://urldefense.com/v3/__https://s.apache.org/camel-dl-us__;!!AaIhyw!8ibMqXkFVhQZbXiUiDEZIMhodvHt6ZT0-9hO37pz6vxmkpWyl1rF-cNDiSwKzT18$
https://urldefense.com/v3/__https://s.apache.org/camel-dl-eu__;!!AaIhyw!8ibMqXkFVhQZbXiUiDEZIMhodvHt6ZT0-9hO37pz6vxmkpWyl1rF-cNDic4MBCm6$
The data is over 2 and 1/4 years, we've had 19.7+-8.8 via US, and
20.24+-8.43 in via EU per day. So not that much IMHO.
I'm wondering if anyone is still relying on these, and if so what would a
binary distribution look like for sub projects? Should we do the same as we
do for the Camel core?
Please reply on this thread or chime in on those issues for sub-project
specific concerns.
Thanks :)
zoran
[1]
https://urldefense.com/v3/__https://github.com/apache/camel-quarkus/issues/2045__;!!AaIhyw!8ibMqXkFVhQZbXiUiDEZIMhodvHt6ZT0-9hO37pz6vxmkpWyl1rF-cNDiZ80_jXD$
[2]
https://urldefense.com/v3/__https://github.com/apache/camel-kafka-connector/issues/754__;!!AaIhyw!8ibMqXkFVhQZbXiUiDEZIMhodvHt6ZT0-9hO37pz6vxmkpWyl1rF-cNDiVlO1Pqs$
[3]
https://urldefense.com/v3/__https://www-us.apache.org/dyn/stats/camel.log__;!!AaIhyw!8ibMqXkFVhQZbXiUiDEZIMhodvHt6ZT0-9hO37pz6vxmkpWyl1rF-cNDiStt2eyy$
[4]
https://urldefense.com/v3/__https://www-eu.apache.org/dyn/stats/camel.log__;!!AaIhyw!8ibMqXkFVhQZbXiUiDEZIMhodvHt6ZT0-9hO37pz6vxmkpWyl1rF-cNDicRsFgPE$
--
Zoran Regvart
--
Tadayoshi Sato