[Mono-dev] set culture uses serialization?
Steve Bjorg
steveb at mindtouch.com
Sat Jan 5 15:36:19 EST 2008
Thanks for clarifying. So, what is the recommended practice for
concurrently multi-lingual applications? Do I need to track down
each use of culture dependent string operations and pass in the
wanted CultureInfo explcitly? Or is the overhead of setting the
CultureInfo low enough that there is no reason to worry?
- Steve
---------------------------------
Steve G. Bjorg
MindTouch
555 W. Beech St.
Suite 501
San Diego, CA 92101
619.795.8459x1106 office
619.795.3948 fax
425.891.5913 mobile
On Jan 5, 2008, at 11:32 AM, Robert Jordan wrote:
> Steve,
>
> this is by design.
>
> The GC error you encountered during the deserialization of CultureInfo
> was fixed in 1.2.6.
>
> Robert
>
> Steve Bjorg wrote:
>> I spoke too soon. I tested on an old version mistakenly. 1.2.6 has
>> now Korean and Konkani. Sweet! I updated our languages page.
>>
>> That only leaves the issue with using serialization when setting
>> CurrentCulture. Is that by design or a bug? If by design, what is
>> the recommended pattern for supporting difference cultures on
>> different threads?
>>
>> - Steve
>>
>> --------------
>> Steve G. Bjorg
>> http://wiki.mindtouch.com
>> http://wiki.opengarden.org
>>
>>
>> On Jan 5, 2008, at 7:15 AM, Steve Bjorg wrote:
>>
>>> Korean culture cannot be instantiated as
>>> new CultureInfo("ko-kr")
>>> throws an exception stating it's not implemented.
>>>
>>> There is work item filed to be update the locale builder:
>>> https://bugzilla.novell.com/show_bug.cgi?id=324483
>>>
>>>
>>> There are other cultures missing as well. The following code
>>> instantiates all 134 cultures lists in the attached file.
>>>
>>> using System;
>>> using System.Globalization;
>>>
>>> namespace CultureCheck {
>>> class Program {
>>> static void Main(string[] args) {
>>> if(System.IO.File.Exists("cultures.txt")) {
>>> string[] cultures = System.IO.File.ReadAllLines
>>> ("cultures.txt");
>>> int failed = 0;
>>> int succeeded = 0;
>>> foreach(string culture in cultures) {
>>> try {
>>> CultureInfo info = new CultureInfo
>>> (culture.Trim());
>>> string now = DateTime.UtcNow.ToString
>>> (info.DateTimeFormat);
>>> ++succeeded;
>>> } catch {
>>> ++failed;
>>> Console.WriteLine(culture);
>>> }
>>> }
>>> Console.WriteLine("Tested {0} cultures: {1}
>>> succeeded, {2} failed", succeeded + failed, succeeded, failed);
>>> } else {
>>> Console.Error.WriteLine("MISSING FILE:
>>> cultures.txt");
>>> }
>>> }
>>> }
>>> }
>>>
>>>
>>> Only 26 out of 134 cultures fail on mono 1.2.6:
>>> az-cyrl-az
>>> az-latn-az
>>> dv-mv
>>> en-bz
>>> en-029
>>> en-jm
>>> en-tt
>>> fr-mc
>>> ka-ge
>>> de-li
>>> kk-kz
>>> kok-in
>>> ko-kr
>>> ky-kg
>>> ms-bn
>>> ms-my
>>> mn-mn
>>> pa-in
>>> sa-in
>>> sr-cyrl-cs
>>> sr-latn-cs
>>> syr-sy
>>> tt-ru
>>> ur-pk
>>> uz-cyrl-uz
>>> uz-latn-uz
>>>
>>> List of missing cultures is also available here (highlighted in
>>> yellow): http://wiki.opengarden.org/Deki_Wiki/Languages
>>>
>>> Some of these should be trivial as they are identical to existing
>>> ones:
>>> * English (Belize)
>>> * English (Caribbean)
>>> * English (Jamaica)
>>> * English (Trinidad and Tobago)
>>> * French (Monaco)
>>> * German (Liechtenstein)
>>>
>>> Others are likely more complicated. Of those, a high-priority
>>> culture is Korean.
>>>
>>>
>>> - Steve
>>>
>>> --------------
>>> Steve G. Bjorg
>>> http://wiki.mindtouch.com
>>> http://wiki.opengarden.org
>>>
>>>
>>> On Jan 4, 2008, at 10:47 PM, Miguel de Icaza wrote:
>>>
>>>>> This issue and the fact that Korean isn't supported for
>>>>> CultureInfo
>>>>> are blockers for a large customer deployment of ours. Is there
>>>>> any
>>>>> way these issues can be addressed? Who is working on CultureInfo?
>>>> What seems to be the problem with Korean?
>>>>
>>>> Please provide a stack trace, a bug report, or a sample program
>>>> that
>>>> fails with Korean.
>>>>
>>>> Miguel.
>>>>
>>>>
>>>> <cultures.txt>
>
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
>
More information about the Mono-devel-list
mailing list