1 2006-03-16 Atsushi Enomoto <atsushi@ximian.com>
3 * TextInfo.cs : (ToUpper/ToLower) use InternalAllocateStr() and
4 pointers rather than StringBuilder.
6 2006-03-07 Peter Dennis Bartok <pbartok@novell.com>
8 * DateTimeFormatInfo.cs: Restored original field order to allow
9 some automatic locale fu to happen (mono unmanaged code relies
10 on the field order to fill out DateTimeFormatInfo)
12 2006-03-02 Peter Dennis Bartok <pbartok@novell.com>
14 * DateTimeFormatInfo.cs: Switched (where possible) our internal
15 field names to match MS names. Added fields that MS has and we
16 don't. Fixes serialization issues with MS.
17 * CultureInfo.cs, Calendar.cs, TextInfo.cs,
18 GregorianCalenda.cs: Hiding internal attributes from serialization
20 2006-01-25 Atsushi Enomoto <atsushi@ximian.com>
22 * CultureInfo.cs : Clone() attempted to clone number and date time
23 formats, thus failed. Fixed bug #77347.
25 2005-12-08 Sebastien Pouliot <sebastien@ximian.com>
27 * DaylightTime.cs: Fixed serialization to be compatible with MS FX.
28 Pre-requisite to fix bug #76094.
30 2005-12-06 Sebastien Pouliot <sebastien@ximian.com>
32 * DateTimeStyles.cs: ComVisible is only needed in 2.0.
33 * TextInfo.cs: Added some 2.0 features that were needed (e.g. LCID)
34 to implement serialization for another class. Added TODO on class for
35 deserialization (so it shows up in the status page).
37 2005-11-29 Atsushi Enomoto <atsushi@ximian.com>
39 * CompareInfo.cs : IsSortable() are static.
40 * CharUnicodeInfo.cs : became non-static in RTM.
41 * Calendar.cs : added support for Clone() and IsReadOnly.
42 * HijriCalendar.cs ThaiBuddhistCalendar.cs HebrewCalendar.cs
43 GregorianCalendar.cs KoreanCalendar.cs JulianCalendar.cs
44 TaiwanCalendar.cs JapaneseCalendar.cs PersianCalendar.cs :
45 check IsReadOnly on every setter.
47 2005-11-14 Atsushi Enomoto <atsushi@ximian.com>
49 * CompareInfo.cs : added support for OrdinalIgnoreCase.
51 2005-10-31 Miguel de Icaza <miguel@novell.com>
53 * HijriCalendar.cs, HebrewCalendar.cs, JulianCalendar.cs,
54 GregorianCalendar.cs, JapaneseCalendar.cs, Calendar.cs,
55 TaiwanCalendar.cs, HijriCalendar.cs: Add
56 CalendarAlgorithmType, MinSupportedDateTime, MaxSupportedDateTime
59 * Added ComVisibleAttribute in a bunch of places, using the fully
60 qualified name to speed up cut and paste.
62 2005-10-14 Ben Maurer <bmaurer@ximian.com>
64 * DateTimeFormatInfo.cs: Speed up GetAllDateTimePatterns by
65 caching the result and then cloning it.
67 2005-10-10 Ben Maurer <bmaurer@ximian.com>
69 * DateTimeFormatInfo.cs: Rather than having a + ' ' + b, have a +
70 " " + b. This lets us avoid 1) boxing the char and 2) calling
71 char.ToString. Results in a fairly substantial savings on
74 2005-09-21 Atsushi Enomoto <atsushi@ximian.com>
76 * CompareInfo.cs : switched to "managed collation by default" mode.
78 2005-08-30 Sebastien Pouliot <sebastien@ximian.com>
80 * CompareInfo.cs: Use Environment.internalGetEnvironmentVariable as
81 the .cctor gets executed before the security manager is ready to be
82 activated (and cause recursion with --security).
84 2005-08-17 Atsushi Enomoto <atsushi@ximian.com>
86 * RegionInfo.cs : unlocked CurrentRegion creation.
88 2005-08-16 Atsushi Enomoto <atsushi@ximian.com>
90 * RegionInfo.cs : removed extraneous icall wrappers.
92 2005-08-15 Atsushi Enomoto <atsushi@ximian.com>
94 * RegionInfo.cs : reimplemented to use unicode CLDR.
96 2005-08-14 Gert Driesen <drieseng@users.sourceforge.net>
98 * TextInfo.cs: For invariant culture, ListSeparator is a comma.
100 2005-08-12 Atsushi Enomoto <atsushi@ximian.com>
102 * DateTimeFormatInfo.cs : GetAbbreviatedEraNames() and GetEra().
104 2005-08-11 Atsushi Enomoto <atsushi@ximian.com>
106 * CultureInfo.cs : lazy load OptionalCalendars (and always non-null).
107 * DateTimeFormatInfo.cs : GetEraNames() should work.
109 2005-08-11 Atsushi Enomoto <atsushi@ximian.com>
111 * CultureInfo.cs : added BootstrapCultureID for RegionInfo.
112 * RegionInfo.cs : implemented CurrentRegion. Added MonoTODOs.
114 2005-08-10 Atsushi Enomoto <atsushi@ximian.com>
116 * CompareInfo.cs : added IsSortable(). (NET_2_0)
118 2005-08-08 Gert Driesen <drieseng@users.sourceforge.net>
120 * CompareInfo.cs: Marked UseManagedCollation internal to have API
121 match that of MS.NET.
123 2005-08-02 Atsushi Enomoto <atsushi@ximian.com>
126 Added managed collation support. It won't be activated unless you
127 explicitly set environment MONO_USE_MANAGED_COLLATION=yes.
129 2005-08-02 Atsushi Enomoto <atsushi@ximian.com>
131 * CompareInfo.cs : LastIndexOf() which takes startIndex without length
132 should use startIndex+1 as length.
134 2005-07-12 Atsushi Enomoto <atsushi@ximian.com>
136 * CompareInfo.cs : IndexOf(string, char, ...) overloads must not
137 specify start as 0. Use source.Length - 1 instead.
139 2005-06-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
141 * NumberFormatInfo.cs: undo workaround for bug 55978 as it's not needed
142 any more. This fixed bug #75396.
144 2005-06-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
146 * CultureInfo.cs: added internal method to check for a culture
147 valid for formatting. Correctly get the calendar type. Before
148 it was always type 0. Thanks to Mcs for pointing this out.
150 2005-05-06 Miguel de Icaza <miguel@novell.com>
152 * CultureInfo.cs: Eliminate double-check lock always init the invariant_culture_info.
154 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
156 * CultureInfo.cs: made a few variables 'volatile'. GetCultures now
157 returns the InvariantCulture in the array. Fixes bug #72081.
159 2005-04-27 Atsushi Enomoto <atsushi@ximian.com>
161 * TextInfo.cs : Some performance fixes. Avoid delegate.
162 Compute parent culture only once. Quick ASCII range check.
164 2005-04-17 Atsushi Enomoto <atsushi@ximian.com>
166 * TextInfo.cs : extremely strict null check (which should not happen).
168 2005-04-17 Atsushi Enomoto <atsushi@ximian.com>
170 * TextInfo.cs : Additional null check for Parent CultureInfo.
172 2005-04-06 Atsushi Enomoto <atsushi@ximian.com>
174 * TextInfo.cs : To make new CultureInfo (127) as invariant, it should
175 not compare object Equals() against InvariantCulture.
177 2005-04-05 Atsushi Enomoto <atsushi@ximian.com>
179 * TextInfo.cs : Fixed ToTitleCase() so that
180 - handle some titlecase characters in Latin ang Greek.
181 - it keeps "all title case" word as is ("ABC" does not become "Abc").
182 - it can handle such string like "1ABc".
184 2005-04-04 Atsushi Enomoto <atsushi@ximian.com>
186 * TextInfo.cs : implemented culture sensitive ToLower() and ToUpper()
187 which behaves exactly the same as MS.NET does.
189 2005-02-09 Lluis Sanchez Gual <lluis@ximian.com>
191 * CultureInfo.cs: Added field needed for serialization
192 interoperability with MS.NET. Also fixed default value for
195 2005-01-31 Atsushi Enomoto <atsushi@ximian.com>
197 * NumberFormatInfo.cs : allow zero length sizes. patch by Kazuki
200 2005-01-20 Jackson Harper <jackson@ximian.com>
202 * HebrewCalendar.cs: Patch by Juan C. Olivares
203 (juancri@tagnet.org) to implement 4 digit years and set the
206 2005-01-17 Atsushi Enomoto <atsushi@ximian.com>
208 * CharUnicodeInfo.cs : added new in 2.0 (kinda hacky).
210 2005-01-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
212 * CultureInfo.cs: the InvariantCulture returns false for
213 IsNeutralCulture. Fixes bug #59716.
215 2004-12-13 Ben Maurer <bmaurer@ximian.com>
217 * CultureInfo.cs: Store TextInfo data. Hand it over to TextInfo.
218 * TextInfo.cs: Rewrote props to use the textinfo data stored in
221 2004-11-04 Zoltan Varga <vargaz@freemail.hu>
223 * CultureInfo.cs (Clone): Make the components of the culture read-write
226 2004-10-14 Miguel de Icaza <miguel@ximian.com>
228 * TextInfo.cs (ToString) Fix the return value for ToString.
230 (Add a new parameter: the CultureInfo, since we implemented things
231 in terms of the CultureInfo in our runtime, and not the
234 (ToTitleCase): Fix to do title case for each word on the string
237 Wed Jun 30 17:06:43 CEST 2004 Paolo Molaro <lupus@ximian.com>
239 * NumberFormatInfo.cs: workaround for bug 55978.
241 2004-06-17 Atsushi Enomoto <atsushi@ximian.com>
243 * DateTimeFormatInfo.cs : check if pattern array is empty or not. Now
244 icall fills them as possible empty list.
246 2004-06-15 Gert Driesen <drieseng@users.sourceforge.net>
248 * DateTimeFormatInfo.cs: added TODO for serialization
249 * GregorianCalendar.cs:: added TODO for serialization
250 * HebrewCalendar.cs: added TODO for serialization
251 * HijriCalendar.cs: added TODO for serialization
252 * JapaneseCalendar.cs: added TODO for serialization
253 * JulianCalendar.cs: added TODO for serialization
254 * KoreanCalendar.cs: added TODO for serialization
255 * TaiwanCalendar.cs: added TODO for serialization
256 * ThaiBuddhistCalendar.cs: added TODO for serialization
258 2004-06-08 Dick Porter <dick@ximian.com>
260 * CultureInfo.cs: Make calendar_data readonly, to match the
261 const-ness in the runtime.
263 2004-05-28 Atsushi Enomoto <atsushi@ximian.com>
265 * DateTimeFormatInfo.cs : In fact GetAllDateTimePatterns() returns
266 non-unique results. Just reordered return values looking at MS
269 2004-05-27 Atsushi Enomoto <atsushi@ximian.com>
271 * DateTimeFormatInfo.cs : 'U' is in fact the same as 'F' for pattern
272 strings. Thanks to kangaroo for the hint.
274 2004-05-27 Atsushi Enomoto <atsushi@ximian.com>
276 * DateTimeFormatInfo.cs : Fixed longtimes and shorttimes (exchanged).
278 2004-05-27 Atsushi Enomoto <atsushi@ximian.com>
280 * DateTimeFormatInfo.cs : Added some string[] fields for
281 GetAllDateTimePatterns(char). The fields will be filled in metadata
282 and culture info table. Added improved patterns for
283 GetAllDateTimePatterns() (right now works only for invariant).
284 * CultureInfo.cs : Use InvariantInfo for InvariantCulture.
286 2004-05-26 Atsushi Enomoto <atsushi@ximian.com>
288 * DateTimeFormatInfo.cs :
289 hack implementation for GetAllDateTimePatterns().
291 2004-05-17 Jackson Harper <jackson@ximian.com>
293 * CultureInfo.cs: Invariant culture has the invariant culture as
294 its parent....<insert joke about the south>. It is readonly so we
297 2004-05-17 Jackson Harper <jackson@ximian.com>
299 * CultureInfo.cs: Properify error messages when invalid lcid's are
302 2004-05-15 Jackson Harper <jackson@ximian.com>
304 * CultureInfo.cs: Initialize optional calendars. A pointer to an
305 array of ints is passed back from the runtime to the CultureInfo
306 object. The ints store the calendar type and any optional data
307 needed to construct the calendar.
309 2004-05-14 Dick Porter <dick@ximian.com>
311 * HebrewCalendar.cs: Stubbed ToFourDigitYear()
313 * HijriCalendar.cs: Stubbed HijriAdjustment
315 2004-05-13 Jackson Harper <jackson@ximian.com>
317 * CultureInfo.cs: You can access DateTimeFormat and NumberFormat
318 from the invariant culture.
320 2004-05-13 Jackson Harper <jackson@ximian.com>
322 * CultureInfo.cs: DateTimeFormat and NumberFormat can not be
323 accessed for neutral cultures.
325 2004-04-30 Dick Porter <dick@ximian.com>
328 * TextElementEnumerator.cs: Implemented
330 2004-04-27 Jackson Harper <jackson@ximian.com>
332 * CultureInfo.cs: Make specific names lower case, because all data
333 in the culture info tables is lowercase.
335 2004-04-25 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
337 * CultureInfo.cs: Call invariant String.ToLower
338 * RegionInfo.cs: Call invariant String.ToUpper
340 2004-04-11 Atsushi Enomoto <atsushi@ximian.com>
342 * NumberFormatInfo.cs : All GetXXXGroupSizes() should not return
343 internal array. Return clone as MS.NET does.
345 There still looks somewhere breaking CurrentInfo.
347 2004-04-08 Lluis Sanchez Gual <lluis@ximian.com>
349 * CompareInfo.cs, CultureInfo.cs, NumberFormatInfo.cs, TextInfo.cs:
350 Made those serializable-compatible with MS.NET: modified fields names to
351 match MS.NET ones, and in CultureInfo added a flag to control when a
352 deserialized instance need to be initialized.
354 2004-04-07 Jackson Harper <jackson@ximian.com>
356 * CultureInfo.cs: Use new ICUless implementation in the runtime.
357 * CompareInfo.cs: Get ICU name from a cultureinfo object instead
358 of looking it up in the culture map.
359 * RegionInfo.cs: Dont check if the LCID is neutral unless its not
360 found in the switch. Avoids an icall.
362 2004-03-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
364 * NumberFormatInfo.cs: this fixes bug #56000 for me. And it doesn't
365 break anything as NumberFormatInfo is sealed.
367 2004-02-14 Atsushi Enomoto <atsushi@ximian.com>
369 * NumberFormatInfo.cs : CurrentInfo should not return clone every
370 time (MS.NET returns the same object; try object.ReferenceEquals()).
372 2004-02-08 David Sheldon <dave-mono@earth.li>
374 * NumberFormatInfo.cs: When parsing the percentages, put the data
375 into PercentDecimalDigits/PercentGroupLengths, rather than trashing
376 the NumberDecimatDigits etc. This also means that the percent format
379 2004-01-27 David Sheldon <dave-mono@earth.li>
381 * NumberFormatInfo.cs: InitPatterns: it seems that the patterns in
382 ICU use digitPattern, not zeroPattern for the spaces after the
385 2004-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
387 * CultureInfo.cs: Parent returns null when lcid == parent_lcid. Fixes
390 2003-12-20 Ben Maurer <bmaurer@users.sourceforge.net>
392 * CompareInfo.cs: Replace blah == "" with blah.Length == 0.
393 MUCH faster. Note, we dont need to check for nulls, because
394 the properties were used in other places.
396 2003-12-19 Dick Porter <dick@ximian.com>
398 * CompareInfo.cs: Added assorted shortcuts when comparing empty
399 strings. Fixed offset and length range checks to flag when <0.
400 Broke test that offset >= string length to match actual ms
401 behaviour (sigh.) Fixes bug 52310.
403 2003-12-06 Dick Porter <dick@ximian.com>
405 * CompareInfo.cs: Don't build strings in Compare, IndexOf and
406 LastIndexOf methods. Avoid the icall in IndexOf and LastIndexOf
407 if the search parameter is a char and the CompareOptions include
410 2003-12-04 Dick Porter <dick@ximian.com>
412 * CompareInfo.cs: Implement the deserialization callback
414 * CultureInfo.cs: Allow CompareInfo to see the CultureMap so that
415 it can construct the ICU collator itself
417 2003-12-02 Dick Porter <dick@ximian.com>
419 * NumberFormatInfo.cs: Helper called by runtime locale
420 construction from ICU. Patch by Mohammad DAMT (mdamt@cdl2000.com).
422 2003-12-01 Dick Porter <dick@ximian.com>
424 * CultureInfo.cs: Culture name creation is case-insensitive.
425 Implemented CurrentCulture and CurrentUICulture.
427 * CompareInfo.cs: Fix IndexOf and LastIndexOf so that they work
428 for combining characters.
430 2003-11-05 Pedro Martínez Juliá <yoros@wanadoo.es>
432 * DateTimeFormatInfo.cs: Hack an era for US culture. We must look
433 for other ways to get the ERA string.
435 2003-10-21 Dick Porter <dick@ximian.com>
438 * CultureInfo.cs: Implement TextInfo.GetHashCode(). Fixes bug
441 2003-10-09 Dick Porter <dick@ximian.com>
443 * CultureInfo.cs: Implemented, with internal calls to ICU apart
444 from the Invariant culture.
447 * CompareInfo.cs: Implemented
449 * DateTimeFormatInfo.cs: Fixed the worst of the formatting,
450 construct default FullDateTimePattern on the fly.
452 2003-08-06 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
454 * Locale.cs: Removed (added new version to Assembly directory)
456 2003-07-23 Duncan Mak <duncan@ximian.com>
458 * DateTimeFormatInfo.cs: theInvariantDateTimeFormatInfo should not
461 2003-05-11 Ben Maurer <bmaurer@users.sourceforge.net>
463 * *Calendar.cs: Implemented the TwoDigitYearMax property.
465 2003-04-22 Pedro Martínez Juliá <yoros@wanadoo.es>
467 * NumberFormatInfo.cs: Method CurrentInfo now returns the "real"
468 CurrentInfo (Thread.CurrentThread.CurrentCulture.NumberFormat).
470 2003-02-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
473 (NameToID): make it case insensitive and use a hashtable instead of
474 comparing all the strings.
476 Mon Nov 18 13:02:09 CET 2002 Paolo Molaro <lupus@ximian.com>
478 * CultureInfo.cs: implemented Equals and GetHashCode.
480 2002-10-17 Duncan Mak <duncan@ximian.com>
482 * CultureInfo.cs (TextInfo): return a TextInfo in the property.
484 * TextInfo.cs (ToLower):
485 (ToTitleCase): Implemented.
487 2002-09-12 Dick Porter <dick@ximian.com>
489 * ThaiBuddhistCalendar.cs:
495 * JapaneseCalendar.cs:
498 * GregorianCalendar.cs:
500 * CompareInfo.cs: Stub out missing methods
502 2002-08-15 Tim Coleamn <tim@timcoleman.com>
504 Stubbed out some methods.
506 2002-08-14 Dick Porter <dick@ximian.com>
508 * CultureInfo.cs: Implement Name, stub out all the other missing
511 * TextInfo.cs: Stubbed out this class
513 2002-06-12 Nick Drochak <ndrochak@gol.com>
515 * DateTimeFormatInfo.cs: Reformat.
517 2002-06-11 Nick Drochak <ndrochak@gol.com>
519 * NumberFormatInfo.cs: Make NumberNegativePattern = 1 for the ctor
521 2002-06-07 Nick Drochak <ndrochak@gol.com>
523 * NumberFormatInfo.cs: Make InvariantInfo.NumberNegativePattern = 1
525 2002-05-07 Rodrigo Moya <rodrigo@ximian.com>
527 * CompareInfo.cs: new basic stub (compiles on Linux, so I assume
528 it does not break the build on windows. Sorry if it does).
530 2002-04-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
532 * NumberFormatInfo.cs: always set the values for the invariant culture
533 until there are more cultures supported.
535 2002-04-22 Nick Drochak <ndrochak@gol.com>
537 * NumberStyles.cs: Add [Serializable].
539 2002-04-08 Nick Drochak <ndrochak@gol.com>
541 * UnicodeCategory.cs: Fix typos in enum names.
543 2002-03-04 Nick Drochak <ndrochak@gol.com>
545 * JulianCalendar.cs: JulianEra should be field, not a property.
546 Thanks CorCompare (and Piers).
548 2002-02-12 Duncan Mak <duncan@ximian.com>
550 * CultureInfo.cs: Added the Calendar property to make the TimeZone
551 class build. It's marked as MonoTODO.
553 2002-02-12 Nick Drochak <ndrochak@gol.com>
555 * UnicodeCategory.cs: Fix typo.
557 2002-02-01 Radek Doulik <rodo@ximian.com>
559 * RegionInfo.cs: started work on RegionInfo
560 implemented RegionInfo (string) constructor
562 * CultureInfo.cs: added internal static function,
563 which could be used from RegionInfo.cs
565 2002-01-16 Miguel de Icaza <miguel@ximian.com>
567 * CultureInfo.cs: Completed the tables. Now we need to actually
570 2002-01-15 Duncan Mak <duncan@ximian.com>
572 * CultureInfo.cs: Convert it to unix text.
574 2002-01-04 Ravi Pratap <ravi@ximian.com>
576 * GreogrianCalendar.cs : The same old MonoTODO attribute.
578 2001-11-21 Miguel de Icaza <miguel@ximian.com>
580 * Locale.cs: New file, a place holder for Locale.GetText.
582 Wed Nov 14 16:47:07 CET 2001 Paolo Molaro <lupus@ximian.com>
584 * Calendar.cs: CLSCompliant updates.
586 2001-11-04 Martin Weindel <martin.weindel@t-online.de>
587 * NumberFormatInfo.cs: fixed minor bug in Clone with readonly flag
589 * DateTimeFormatInfo.cs: added
591 * CultureInfo.cs: some changed needed for compiling DateTimeFormatInfo.cs
593 2001-10-26 Miguel de Icaza <miguel@ximian.com>
595 * NumberFormatInfo.cs: Provide an internal constructor that takes
596 as an argument a CultureInfo ID (LCID) so that we can construct
599 * CultureInfo.cs: Begun implementation.
601 2001-10-09 Derek Holden <dholden@draper.com>
603 * NumberFormatInfo.cs: Small typo in PercentPositivePattern
604 and CurrencyPositivePattern
606 2001-09-02 Miguel de Icaza <miguel@ximian.com>
608 * Calendar.cs: Implement a bunch of missing features.
610 2001-07-24 Derek Holden <dholden@draper.com>
612 * NumberStyles.cs: Added ECMA values for Allow types and default
615 2001-07-18 Michael Lambert <michaellambert@email.com>
617 * DateTimeStyles.cs, NumberStyles.cs: Add.