From user-return-635-archive-asf-public=cust-asf.ponee.io@arrow.apache.org Mon Aug 24 21:53:16 2020 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mailroute1-lw-us.apache.org (mailroute1-lw-us.apache.org [207.244.88.153]) by mx-eu-01.ponee.io (Postfix) with ESMTPS id EB57218037A for ; Mon, 24 Aug 2020 23:53:15 +0200 (CEST) Received: from mail.apache.org (localhost [127.0.0.1]) by mailroute1-lw-us.apache.org (ASF Mail Server at mailroute1-lw-us.apache.org) with SMTP id 15B901241ED for ; Mon, 24 Aug 2020 21:53:15 +0000 (UTC) Received: (qmail 42570 invoked by uid 500); 24 Aug 2020 21:53:14 -0000 Mailing-List: contact user-help@arrow.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@arrow.apache.org Delivered-To: mailing list user@arrow.apache.org Received: (qmail 42557 invoked by uid 99); 24 Aug 2020 21:53:14 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 24 Aug 2020 21:53:14 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id CF35C181434 for ; Mon, 24 Aug 2020 21:53:13 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 0.201 X-Spam-Level: X-Spam-Status: No, score=0.201 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.2, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=disabled Authentication-Results: spamd3-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=knime-com.20150623.gappssmtp.com Received: from mx1-he-de.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id KTNZLlicT0K2 for ; Mon, 24 Aug 2020 21:53:10 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2607:f8b0:4864:20::e30; helo=mail-vs1-xe30.google.com; envelope-from=bernd.wiswedel@knime.com; receiver= Received: from mail-vs1-xe30.google.com (mail-vs1-xe30.google.com [IPv6:2607:f8b0:4864:20::e30]) by mx1-he-de.apache.org (ASF Mail Server at mx1-he-de.apache.org) with ESMTPS id EF0A47FB45 for ; Mon, 24 Aug 2020 21:53:09 +0000 (UTC) Received: by mail-vs1-xe30.google.com with SMTP id p186so2534356vsa.10 for ; Mon, 24 Aug 2020 14:53:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=knime-com.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=5LS//NkRtKA4Mt6G4HfLsobE8H+JoF2fG+QJSI2Wo5A=; b=eKdonKFL4BLA5VfqfvObhSK4UJE/wPmmccOSs0sY6Y+3eHLcxxw0vEOhFFJMi5638c OT7O0YTUVjEBAjQzaI/obqz5x8PaRKfJp05lO6CyNUqAub1c1b5mTTPPF18yacr1KMwy SIqi984saISe0JqbO9vXPdUbuFVjOpuYPtVkXexzMy7O3O4/7FYy10i6/vfhsGrL+vEw L3rRZLOSWiGco015XRiPkWgSY+13zD0DaSr9JY6rFm+WbZxpCzyHq2LFOXJs73MseNad Jq8/jKQd3cnT+IQYWa3znlwvMS/8r+go+f6Uy+pMCt9Qy7o3dSUV5cydKSkjVsC3ny16 rbyQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=5LS//NkRtKA4Mt6G4HfLsobE8H+JoF2fG+QJSI2Wo5A=; b=O7VtlXfqgNUnuGglHZ3DubniYW9bG1jJmuPkL2O6tJ/ncNvcUNreEzQ+UZ1sikBMC5 DxwebpNh9b+Y6EfqCGdK3uO73yljR1ISd3Nlr3DXrMCUC5qrhPOeOLVfWig3d3WbFXP1 hqZ+2ROcb9eGeaRtKLEoLHvToEftKV9DeNUgsKaQrVJPtPzNF4jMkHJMjlfIoLcgpbpk CTN8375ZDAYeYiztEFXlx5m7UGgNccZBHBxQ+I0d5zWau6p6RNBIcycLRH/BC94apsSA gKCGXabgx2uL1ljJVWrYJwbT/43eIKs5z/qiDK7G1EvtrTOR/zxRYagJYaIwh1BVoUFw 8UVw== X-Gm-Message-State: AOAM530ALNHNoqLbK7YmdtAagocTmdNIj/NFThGA90FMUazecC8O2f77 gUpIqqcsq2IE2DMXSLzsu003rDTpHcmzPL0D+uK8wl7dkKIm+EMt X-Google-Smtp-Source: ABdhPJzJXLXSJ99C9hsnfoX+TjE17kV9K7VVkuAoHIDwMIZsHkCtxHMM9CA865rh5CtEYx9DHJDVcsz+1t779JW63nI= X-Received: by 2002:a67:2ec3:: with SMTP id u186mr3793615vsu.186.1598305988262; Mon, 24 Aug 2020 14:53:08 -0700 (PDT) MIME-Version: 1.0 From: Bernd Wiswedel Date: Mon, 24 Aug 2020 23:52:52 +0200 Message-ID: Subject: [Java] Issues with "Split Packages" and OSGi (and probably Java 9+) To: user@arrow.apache.org Content-Type: multipart/alternative; boundary="000000000000ac555c05ada69c6c" --000000000000ac555c05ada69c6c Content-Type: text/plain; charset="UTF-8" We at KNIME (https://www.knime.com/) are currently looking at Arrow as an alternative data representation. Our platform is based on Eclipse and uses OSGi for dependency management. As part of that we use the Arrow artifacts available from maven and convert them to OSGI bundles. We noticed that at least one java package (org.apache.arrow.util) is provided in two different artifacts - arrow-memory-core: (Link to GitHub ) - arrow-vectors: (Link to GitHub ) This is causing us trouble as the package is available via two chains. I believe this is also going to be troublesome once it's used in a Java 9+ environment where different modules(*) can't share the same package ('split package' -- some more details are here ). The simplest solution is to move classes from one package to the other (same) package. If that's not an accepted option it could also be moved into a new artifact(*) arrow-util or so. Please advise! Thanks, Bernd (*) Bundle, Module, Plug-In, Artefact ... different terms used in different contexts but they mostly mean the same thing. --000000000000ac555c05ada69c6c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

We at KNIME (https://www.knime.com/) are currently=C2=A0looking= at Arrow as an alternative data representation. Our platform is based on E= clipse and uses OSGi for dependency management. As part of that we use the = Arrow artifacts available from maven and convert them to OSGI bundles.

We noticed that at least one java package (org.apache.= arrow.util) is provided in two different artifacts
This is causing us trouble as the package is available via two = chains. I believe this is also going to be troublesome once it's used i= n a Java 9+ environment where different modules(*) can't share the same= package ('split package' -- some more details are here).

The simplest solution=C2=A0is = to move classes from one package to the other (same) package. If that's= not an accepted=C2=A0option it could also be moved into a new artifact(*) = arrow-util or so.

Please advise!

Thanks,
=C2=A0Bernd

(*) Bundle, = Module, Plug-In, Artefact ... different terms used in different contexts bu= t they mostly mean the same thing.=C2=A0
--000000000000ac555c05ada69c6c--