Hi Adrian, [recording parts of our IRC conversation in mail]
On Thu, Dec 25, 2025 at 01:36:21PM +0100, John Paul Adrian Glaubitz wrote: > Can someone explain the use of JQuery like I'm five to me? I'm asking because > JQuery > requires "uglifyjs" which has a runtime dependency on NodeJS which heavily > restricts > buildability of the reverse dependencies due to Google's unwillingness to > provide a > generic, slow implementation of their V8 JavaScript engine. This limits the > whole > NodeJS stack to architectures with big companies behind as others don't have > the funds > to support a V8 port. I think what you really want here is an explanation of why uglifyjs is needed rather than JQuery. The /usr/bin/doxygen binary contains a minified JQuery. We use uglifyjs to create this version from Doxygen's vendor copy of JQuery (which actually is not JQuery but a collection of JQuery plus some other libraries and some bits added by Doxygen). The purpose here was building from source as much as possible. > From what I understand, all that NodeJS does here is take some JavaScript > code and > transpile it into other JavaScript code. [...] Confirmed. > On the other hand, the JavaScript files can also be "cross-transpiled" from > architectures > that have NodeJS support to architectures which don't. Oracle does this in > Solaris allowing > them to build and ship Firefox for Solaris SPARC [2]. Yes. If /usr/bin/doxygen were able to load the minified jquery.js from an external file rather than stuffing it into a const char* variable, we could do that. > Wouldn't it be possible to do that here as well? Can't we just transpile the > JavaScript > on amd64 and stuff the result into the doxygen-common package? Yes, I think that would be feasible (assuming the aforementioned change). That way, uglifyjs could plausibly be moved to B-D-I. Another alternative could be adding a pkg.doxygen.prebuiltjs build profile that would drop the uglifyjs dependency in favor of using the minified JQuery in the source tarball without rebuilding it. That said, I no longer am a Doxygen maintainer and have no more say in what is or is not acceptable. Helmut

