Re: [PATCH] enable locale-induced UTF-8 I/O only if explicitly asked (Was: Re: [perl #19743] implicit utf8ification causes action-at-distance bugs)

[email protected] (Abe Timmerman)
Newsgroups perl.perl5.porters,perl.daily-build
Organization ztreet
Message-ID <[email protected]>
Op een zonnige winterdag (Thursday 16 January 2003 21:40), schreef Jarkko 
Hietaniemi:

> > I've been thinking about this and did some testing (on SuSE 8.0 with
> > heaps of locales).
> >
> > 1) perl-5.8.x will not build for me with PERL_UTF8_LOCALE=1
> > LC_ALL=en_US.utf8
> >
> >         $ cd perl-5.8.x
> > 	$ PERL_UTF8_LOCALE=1 LC_ALL=en_US.utf8 ./Configure -des -Dusedevel
>
> I don't think here the PERL_UTF8_LOCALE=1 will be of much use since
> there is no Perl, yet.

Okay, that is silly then.

> > 	$ PERL_UTF8_LOCALE=1 LC_ALL=en_US.utf8 make
>
> Note that the name of the UTF-8 locales varies from OS to OS,
> so don't hardwire anything to the smoke scripts.

Nope, it will be configurable, as long as we can stick to $ENV{LC_ALL}.

> > Dies on building Digest::MD5
>
> Hmmm, will take a look.
>
> > 2) perl-current with those locale settings gives:
>
> Ummm, what do you mean by 'perl-5.8.x' as opposed to 'perl-current'?

I thought that

	rsync ftp.linux.activestate.com::perl-5.8.x

was 5.8-maint (your tree, 5.8.1 to be)

and that

	rsync ftp.linux.activestate.com::perl-current

was blead (Hugo's tree, 5.10.0 to be)

(That is how I did the [5.8.0] smoke and manual testing)

> >         $ cd t
> > 	$ PERL_UTF8_LOCALE=1 LC_ALL=en_US.utf8 ./perl harness
> > Failed Test            Stat Wstat Total Fail  Failed  List of Failed
> > -------------------------------------------------------------------------
> >------ ../ext/Encode/t/CJKT.t   21  5376    42   21  50.00%  1-3 7-9 13-15
> > 19-21 25-27 31-33 37-39 49 tests and 413 subtests skipped.
> > Failed 1/754 test scripts, 99.87% okay. 21/70272 subtests failed, 99.97%
> > okay.
> >
> > 3) Do we have enough data if we *only* run 'make test' with locale
> > settings?
>
> 'make test' as opposed to 'harness'?  Of course, in general,
> the harness gives more info.

No I actually meant 'make test'  as opposed to 'make' *and* 'make test', since 
there seems to be a difference (for 5.8.x)


> > 4) Shouldn't we test both ':stdio' and ':perlio' layers under locale?
>
> I would have thought that the ':stdio' has no chance of doing much of
> the Unicode I/O tests anyway, so in the best case we'll just get a lot
> of skipped tests (in the worse cases we'll get a lot of tests failing
> to run).
>
> > 5) If not, is ':perlio' the one to choose or should we just use an empty
> > $ENV{PERLIO}?

Hmmm..., I'll try with locale settings and $ENV{PERLIO} unset.

You might see a smoke-report with this over the weekend. Just let me know what 
you want and I'll try and implement it.

> In other but related news, I now if(0)'ed the "widesyscalls" code,
> so that Win32 builds should work again.

Good luck,

Abe
-- 
Tim Bunce> Here's an easy fix: deprecate them.

*All* of them?  <finger wavering over the red big button INITIATE
VSTRINGS ANNIHILATION>
                                   -- Jarkko Hietaniemi on p5p @ 2001-11-14
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.