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

Reply via email to