Boost logo

Boost :

Subject: Re: [boost] [nowide] Library Updates and Boost's broken UTF-8 codecvt facet
From: Robert Ramey (ramey_at_[hidden])
Date: 2015-10-07 13:37:41

On 10/7/15 9:14 AM, Artyom Beilis wrote:
>> ________________________________
>> From: Robert Ramey <ramey_at_[hidden]>
>>> Independently of Boost.Nowide I would like to propose replacement of boost/detail/utf8_codecvt_facet by one thatactually takes in account proper Unicode handling.
>> This is a worthy undertaking. Consider putting it somewhere else other
>> than "detail" directory/namespace. This should have been an officially
>> supported boost component years and years ago. Also I'd like to see it
>> look more like a boost library - tests, documentation ,etc.
> First of all I can add it as header only component to Boost.Locale
> with its unit test as it would be a proper place - without any
> review process (also code is partially based on boost-locale's one)

Do this !

Note the test in the serialization library for the current facet. I
don't know if it's useful - it has been in the past. I presume you can
either move that test in or supply one that's at least as good.

> And than other libraries should replace the broken one by a new one
> and remove boost/detail/utf8_codevt* all together.

You'll have to give us some warning - maybe skip a release or maybe
just use header re-direction.

> Not every library provides this (libstdc++ isn't for example)

Hmmm - I'll be damned. I've been including it conditionally on a macro
from Boost config. Now that I think about it, since the test matrix
uses older compilers it must still be used.

> It is also does some other stuff that does not really fit the context.

It was written a long time ago when library support was all over the
place. It's served us pretty well. I'm sure you can do much better now
and I'll be damned disappointed if you don't!

> Major use of utf8_codecvt facet is to "connect" narrow and wide APIs.
> C++11's <codecvt> is just too long for weight especially when
> C++03 would be with us for a loooooooong period.

It will be good to have an option.

>> Robert Ramey
> Artyom Beilis
> _______________________________________________
> Unsubscribe & other changes:

Boost list run by bdawes at, gregod at, cpdaniel at, john at