Re: [PATCH v3 02/10] t/test-lib: wire up NO_ICONV prerequisite

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2024-10-16 at 08:12:53, Patrick Steinhardt wrote:
> The iconv library is used by Git to reencode files, commit messages and
> other things. As such it is a rather integral part, but given that many
> platforms nowadays use UTF-8 everywhere you can live without support for
> reencoding in many situations. It is thus optional to build Git with
> iconv, and some of our platforms wired up in "config.mak.uname" disable
> it. But while we support building without it, running our test suite
> with "NO_ICONV=Yes" causes many test failures.
> 
> Wire up a new test prerequisite ICONV that gets populated via our
> GIT-BUILD-OPTIONS. Annotate failing tests accordingly.

I don't really have a strong opinion on this patch, but this has been a
part of POSIX since the 2001 revision, so everyone except Windows should
have it by default (and Git for Windows ships with their own version).
Perhaps if people are not seeing the tests fail, that's because everyone
is building with iconv enabled?

I will also add that as much as we might like people to be using UTF-8
everywhere (and to be clear, I very much would), many repositories still
have commits encoded in older ways (such as the Linux kernel) and there
are unfortunately many people using working-tree-encoding to convert to
UTF-16LE-BOM for compatibility with legacy Windows software, so in
general, only users in highly restricted Unix-only environments would be
able to confidently run without support for more encodings than UTF-8.

I think this patch is fine for now, but given what I mentioned above,
maybe we want to add a weather balloon in a future series to see if
anyone is compiling with NO_ICONV.  After all, if everybody has easy
access to iconv(3), then we might be able to drop support for NO_ICONV
and the work maintaining it entails without negatively impacting anyone.
-- 
brian m. carlson (they/them or he/him)
Toronto, Ontario, CA

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux