zsh-workers
 help / color / mirror / code / Atom feed
From: Daniel Shahaf <d.s@daniel.shahaf.name>
To: Peter Stephenson <p.w.stephenson@ntlworld.com>, dana <dana@dana.is>
Cc: zsh-workers@zsh.org
Subject: Re: Test failures in --disable-multibyte
Date: Wed, 1 Jan 2020 13:44:57 +0000	[thread overview]
Message-ID: <20200101134457.kdzfrmlyzjwptxaz@tarpaulin.shahaf.local2> (raw)
In-Reply-To: <3E382EE0-CFFC-4ED9-A006-62C5A38E2B75@dana.is> <43145cb5fdd27a0e8a9f97d1e620e6199bda7c49.camel@ntlworld.com>

dana wrote on Tue, Dec 31, 2019 at 14:23:47 -0600:
> On 31 Dec 2019, at 12:39, Daniel Shahaf <d.s@daniel.shahaf.name> wrote:
> > given that so many
> > tests fail — and failed in 5.7.1 too — I wonder whether anyone actually builds
> > zsh with --disable-multibyte.
> 
> See workers/44272. Some people apparently do test with it at least.

Thanks; I'd forgotten about it.

In Gentoo, USE flags can be set globally (like /etc/make.conf in FreeBSD), so
it's not even clear that someone was specifically interested in a Unicode-less
zsh; for all I know, someone was just doing a QA run, building all packages
under various configurations.

> Re: systems without wide-character support, i'm not very familiar, but the zsh
> in Optware (package system for embedded devices) seems to use the defaults,
> fwiw

Thanks, that's a useful data point.

Peter Stephenson wrote on Tue, Dec 31, 2019 at 19:46:23 +0000:
> On Tue, 2019-12-31 at 18:39 +0000, Daniel Shahaf wrote:
> > In the circumstances, I wonder if we should just make those functions a hard
> > dependency and remove the --disable-multibyte (#ifndef MULTIBYTE_SUPPORT)
> > codepaths entirely.
> 
> It's not generally expected you'll want to disable multibyte explicitly,
> but it tests the case you get if you have a system which doesn't have
> the required multibyte support.  It's not clear if zsh gets compiled on
> such systems now --- they won't be very common but there might be some
> deliberately reduced systems for low-level use.  These only need testing
> in a similarly limited fashion.

This state of affairs doesn't sound quite right.  If those codepaths need
testing, the test suite should be made to pass in that configuration, so that
bugfixes would be able to be tested for unintended side effects.  With no
working test suite and no known users, it sounds like --disable-multibyte is
_de facto_ unsupported, but we are not ready to officially pull the plug on it
due to the possibility of it being used on a C99-less embedded system
somewhere.  So, how about having NEWS in 5.8 say that unless someone asks us to
continue supporting --disable-multibyte, it will become unsupported and may be
removed?

(For what it's worth, even on embedded systems it should be trivial to implement
the requisite standard library functions¹ for the ASCII-only subset of inputs
in terms of the C89 standard library, which we already require.)

Cheers,

Daniel

¹ configure.ac requires the following functions to be available:

  iswalnum iswcntrl iswdigit iswgraph iswlower iswprint iswpunct iswspace iswupper iswxdigit
  mbrlen
  mbrtowc wcrtomb
  towupper towlower
  wcschr wcscpy wcslen wcsncmp wcsncpy
  wcwidth
  wmemchr wmemcmp wmemcpy wmemmove wmemset

  reply	other threads:[~2020-01-01 13:45 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-31 18:39 Daniel Shahaf
2019-12-31 19:46 ` Peter Stephenson
2020-01-01 13:44   ` Daniel Shahaf [this message]
2020-01-01 18:01     ` Peter Stephenson
2020-01-02 11:30       ` Daniel Shahaf
2020-01-03 10:15         ` Peter Stephenson
2020-01-03 20:11           ` [PATCH] Make --disable-multibyte warn, since the test suite fails in that configuration. (was: Re: Test failures in --disable-multibyte) Daniel Shahaf
2020-01-05 18:20             ` Peter Stephenson
2020-01-05 19:13               ` Daniel Shahaf
2020-01-06  9:44                 ` Peter Stephenson
2019-12-31 20:23 ` Test failures in --disable-multibyte dana

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200101134457.kdzfrmlyzjwptxaz@tarpaulin.shahaf.local2 \
    --to=d.s@daniel.shahaf.name \
    --cc=dana@dana.is \
    --cc=p.w.stephenson@ntlworld.com \
    --cc=zsh-workers@zsh.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).