Boost logo

Boost :

Subject: Re: [boost] [nowide] Library Updates and Boost's broken UTF-8 codecvt facet
From: Artyom Beilis (artyomtnk_at_[hidden])
Date: 2015-10-07 12:14:16

> 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)

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

Also if Boost.Nowide gets reviewed/accepted it can be proper place
as well because nowide is "lightweight library" when boost.Locale
is heavy one.
>On the other hand, the standard library includes officially sanctioned
><codecvt> so maybe this isn't as critical as it used to be.
>I'm not really trying to make a case for anything specific here, just
>reacting to years and years of dealing with this festering sore.


Not every library provides this (libstdc++ isn't for example)
It is also does some other stuff that does not really fit the context.

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.
>Robert Ramey

Artyom Beilis

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