Lars, maybe I'm just lucky in not knowing all the build complexities. I
have no direct experience with CI at all even in small projects.
My simplistic view is that somewhere there is a binary and that it could
be replaced with a new binary file. And. if needed, stick another
license file (or reference to a license file) somewhere. I haven't heard
it said that the same binary used for 32 and 64 bit archs; so I guess
that's not a problem.
1) and 2) are nice and, from what you say, easy. Considering that the
bits have been in use for over two years, it doesn't seem required; but
hey, it's easy so why not.
The problem is back to your point 3). I'll never understand the process
well enough to follow the discussion in any meaningful way (and I'm
quite content with that); and in my ignorance I will never believe that
some binary can't just be replaced without requiring all this other
stuff to happen. Worst case, the dll could be replaced during
installation, or even downloaded through the plugin manager couldn't it?
I guess there's a legitimate argument that things can't be fixed
piecemeal, because of support costs. Perhaps some investment in
"piecemeal fix" tools, would have great dividends considering all the
things that can't be done because they don't fit into the right way to
do it.
With the cut off for the next release at hand, I've brought the issue
up. I'll shut up about it now... At least until it's time for the next
release ;-)
-ernie
On 1/12/2021 11:44 PM, Lars Bruun-Hansen wrote:
Ernie, my comments were indeed very specific to the case at hand: the
fix to the native binary for the Profiler Launch for Windows 64 bit
and how to get that fix into the NetBeans distribution.
It just happens to be exactly the same challenge in the other cases I mention.
I wrote my piece because I looked into if I could contribute for this
specific problem (NETBEANS-1428, PR-2021).
Let's recap:
1. Pedro's PR-2021 needs to be further reviewed and then - if approved - merged.
2. Then a new binary needs to be build for Windows 64 bit, the file
profilerinterface.dll, based on the new Apache code, i.e. the code
which was just merged. It is not as such difficult to build the new
DLL locally, I can do it. Pedro has already done it (#1). No sweat.
3. The new binary then needs to become part of
https://netbeans.osuosl.org/binaries/-profiler-external-binaries-8.2.zip
(#2) in order to be picked up by the NetBeans build pipeline. However,
we cannot just replace that single DLL in that ZIP because then the
ZIP file would become a mix of CDDL licensed binaries and AL2 licensed
binaries and from two different source code repos. Ouch!. So there's
some complexity there. As a quick fix we want to avoid rebuilding for
all those other platforms and only re-build for Windows, perhaps even
only for Windows 64bit, right? We can maybe change the Java code for
lib.profiler so that there's a external binaries ZIP for Windows and
another for the rest of the platforms but that is a somewhat involved
task and it adds complexity. Again, this specific design, the common
ZIP, is shared with the other use cases I mention and the issue about
integrating a new binary is exactly similar.
This is why I struggle to see an easy quick fix for the problem at
hand, integrating the new binary for the Profiler Launcher solely for
Windows 64 bit. You very quickly end up in a situation where you need
to rebuild binaries for MacOS and Linux too.
I understand your frustration but I think this explains why people
keep "hijacking" or digressing to the bigger picture as you mention
and then the specific issue stalls. How annoying. The reason is it is
just not that easy to see a path to a quick fix. From my analysis my
conclusion is that we might as well tackle the bigger picture, i.e.
creating an ASF build pipeline for those binaries. And I'm normally
all for quick fixes :-)
Peace.
/Lars
Ref #1: https://github.com/pedro-w/netbeans/releases/tag/v2
Ref #2: Currently
https://netbeans.osuosl.org/binaries/45225DCFC94A9782419E95C70957822A0C44612D-profiler-external-binaries-8.2.zip
as per the file
https://github.com/apache/netbeans/blob/master/profiler/lib.profiler/external/binaries-list.
On Wed, Jan 13, 2021 at 3:00 AM Ernie Rael wrote:
This thread is about /Profiling on 64bit Windows/. With hopes to find a
short term solution; quick and dirty if nothing more general is available.
This subject has been avoided for years often time by hijacking and
starting to talk about the big picture issue. Which of course is
important and includes important issues and information. Some of this
may have been in various discussions over the past years. (I don't know)
Maybe there's an issue open about it somewhere, where you could
contribute; or start a new thread.
Where relevant, it would be great to reference those big picture here.
But not avoid the issue at hand.
Apologies (and thanks for the space) for blowing off steam.
-ernie
On 1/12/2021 1