On Fri, Dec 29, 2023 at 07:23:35AM -0800, tony mancill wrote: > On Fri, Dec 29, 2023 at 12:27:07PM +0100, Emmanuel Bourg wrote: > > On 28/12/2023 00:48, tony mancill wrote: > > > > > - Maven output is colorized by default when invoked during Debian > > > package builds that depend on maven-debian-helper. > > > > Good > > > > > > > - Direct `mvn` Maven output is not colorized by default. > > > > That's an issue, mvn output should be colorized on a terminal by default, > > that's the upstream behaviour. > > Ah, that's right. And it's a little odd, because at this point jansi > is no longer patched and our maven packaging doesn't patch for this > behavior. > > Thank you for bringing this up. I will figure out why this is > occurring. It's likely what led to the jansi patch in the first > place.
After looking a bit closer, it's not so odd after all. Debian's jansi (2.x) JAR differs from the upstream version bundled with Maven in that it doesn't include the jansi-native libraries and doesn't depend on anything that could provide them. The Debian jansi-native package is for 1.x and doesn't actually provide the arch-dependent bits anyway (see [1]), so the default TTY detection (jansi.mode=default) functionality is broken because all of the native calls are broken. Perhaps it's more surprising that jansi.mode=force or the patch work as well as they do. This will take a bit to sort out, since we either need to build the arch-specific packages, which will need to go through NEW, or come up with a pure-Java implementation that behaves like upstream. (Not directly related, but it would be nice to migrate to upstream 2.4.1 [2], which uses moditect [3], which would need to be packaged.) My intuition is that it will be better to update the Debian jansi package to create the necessary arch-any packages so our version more closely resembles upstream, and we are better positioned if/when jansi merges into jline, as mentioned here [4]. Thanks, tony [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921994 [2] https://github.com/fusesource/jansi/releases/tag/jansi-2.4.1 [3] https://github.com/moditect/moditect [4] https://github.com/fusesource/jansi/issues/277