ChangeLog 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946
  1. 2007-10-25 Atsushi Enomoto <[email protected]>
  2. * UnicodeEncoding.cs : fix build.
  3. 2007-10-25 Atsushi Enomoto <[email protected]>
  4. * DecoderReplacementFallbackBuffer.cs : Reset() should also reset the
  5. input buffer. When fallback is not assigned, just return '\0'.
  6. * UnicodeEncoding.cs : handle throwOnInvalid .ctor argument.
  7. Default replacement fallback buffer is now "\uFFFD".
  8. * UTF8Encoding.cs : couple of replacement buffer size fixes.
  9. Default replacement fallback buffer is now "\uFFFD".
  10. * UTF32Encoding.cs : Default replacement is "\uFFFD" too here.
  11. See http://support.microsoft.com/kb/940521/ for this change.
  12. 2007-08-15 Jb Evain <[email protected]>
  13. * StringBuilder: hide non 2.1 AppendFormat on 2.1 so that
  14. the compile picks up the adequate method when AppendFormat
  15. is used in 2.1 platform code.
  16. 2007-07-28 Miguel de Icaza <[email protected]>
  17. * StringBuilder.cs (Text): Check for null, from Jesse Jones.
  18. 2007-05-03 Dick Porter <[email protected]>
  19. * Encoding.cs:
  20. * UnicodeEncoding.cs:
  21. * UTF7Encoding.cs: Update to 2.0 profile
  22. 2007-02-01 Gert Driesen <[email protected]>
  23. * Encoding.cs: Enabled ArgumentException in GetEncoding (string) again.
  24. In Encoding.Default, catch both ArgumentException and NotSupportException.
  25. 2007-02-01 Atsushi Enomoto <[email protected]>
  26. * Encoding.cs : the change broke the build, so reverted part of it.
  27. 2007-01-31 Gert Driesen <[email protected]>
  28. * Encoding.cs: Also set ParamName of the ArgumentException.
  29. 2007-01-31 Gert Driesen <[email protected]>
  30. * Encoding.cs: In GetEncoding (int) do not allow codepage value below zero
  31. and above 0xffff. Modified NotSupportedException to ArgumentException in
  32. GetEncoding (string).
  33. 2006-12-18 Atsushi Enomoto <[email protected]>
  34. * EncoderFallbackBuffer.cs : implement Reset().
  35. 2006-10-25 Ben Maurer <[email protected]>
  36. * Encoding.cs: Make the GetByteCcount method used fixed pointers
  37. removes quite a few allocations from Banshee.
  38. 2006-09-03 Zoltan Varga <[email protected]>
  39. * StringBuilder.cs (.ctor): Add a comment.
  40. 2006-08-24 Atsushi Enomoto <[email protected]>
  41. * Encoding.cs :
  42. Consider DecoderFallback and EncoderFallback in 2.0 Equals()
  43. and GetHashCode().
  44. * UTF32Encoding.cs, UTF7Encoding.cs :
  45. Fixed GetHashCode() and Equals() as well.
  46. Added several missing overrides in 2.0.
  47. 2006-08-24 Atsushi Enomoto <[email protected]>
  48. * Encoding.cs : implemented IsAlwaysNormalized().
  49. * Latin1Encoding.cs : IsAlwaysNormalized() does not return false
  50. for FormC.
  51. 2006-07-18 Kornél Pál <[email protected]>
  52. * ASCIIEncoding.cs: Fixed GetString () methods to use ASCII rather
  53. than new string (sbyte*, int, int) that uses Encoding.Default.
  54. * Latin1Encoding.cs: Fixed GetString () methods to use Latin 1 rather
  55. than new string (sbyte*, int, int) that uses Encoding.Default.
  56. 2006-07-11 Kornél Pál <[email protected]>
  57. * StringBuilder.cs: Pad the string with NULL characters when setting
  58. Length. This is now documented:
  59. http://msdn2.microsoft.com/en-us/library/system.text.stringbuilder.length.aspx
  60. 2006-07-06 Kornél Pál <[email protected]>
  61. * CodePageEncoding.cs: Corrected comments.
  62. * MLangCodePageEncoding.cs: Corrected comments. Removed unnesessary
  63. ArgumentExceptions in private constructors.
  64. * SurrogateEncoder.cs: Corrected comments.
  65. 2006-07-05 Kornél Pál <[email protected]>
  66. * CodePageEncoding.cs: Return the same real object in subsequent
  67. calls to GetRealObject ().
  68. * MLangCodePageEncoding.cs: Return the same real object in
  69. subsequent calls to GetRealObject (). Rename Encoder and Decoder
  70. MLangEncoder and MLangDecoder. These classes are not serializable
  71. in 1.x although MS.NET 2.0 can deserialize them.
  72. * SurrogateEncoder.cs: Return the same real object in subsequent
  73. calls to GetRealObject ().
  74. 2006-07-04 Kornél Pál <[email protected]>
  75. * CodePageEncoding.cs: Added comment on usage.
  76. * MLangCodePageEncoding.cs: Added comment on usage.
  77. * SurrogateEncoder.cs: Added comment on usage.
  78. 2006-07-03 Kornél Pál <[email protected]>
  79. * CodePageEncoding.cs: Added.
  80. * MLangCodePageEncoding.cs: Added.
  81. * SurrogateEncoder.cs: Added.
  82. 2006-06-27 Atsushi Enomoto <[email protected]>
  83. * EncodingInfo.cs : EncodingName is WebName, not EncodingName.
  84. 2006-06-24 Kornél Pál <[email protected]>
  85. * UnicodeEncoding.cs: Don't detect byte order. Only readers like
  86. StreamReader should detect byte order marks.
  87. 2006-06-21 Kornél Pál <[email protected]>
  88. * Encoding.cs: Return big-endian UTF-32 in GetEncodings () and
  89. GetEncoding (int)
  90. 2006-06-06 Kornél Pál <[email protected]>
  91. * UnicodeEncoding.cs: Override GetString (byte [], int, int) in
  92. profile 1.x as well because performance improvement is worth the
  93. signature difference. (Fix regression of r61250.)
  94. 2006-05-30 Gert Driesen <[email protected]>
  95. * ASCIIEncoding.cs: Marked class ComVisible (true) on 2.0 profile.
  96. Marked 2.0-only members as ComVisible (false).
  97. * Decoder.cs: Marked class ComVisible (true) on 2.0 profile. Marked
  98. 2.0-only members as ComVisible (false).
  99. * Encoder.cs: Marked class ComVisible (true) on 2.0 profile. Marked
  100. 2.0-only members as ComVisible (false).
  101. * Encoding.cs: Marked class ComVisible (true) on 2.0 profile. Marked
  102. 2.0-only members as ComVisible (false).
  103. * NormalizationForm.cs: Marked ComVisible (true).
  104. * StringBuilder.cs: Marked class ComVisible (true) on 2.0 profile.
  105. Marked 2.0-only methods as ComVisible (false).
  106. * UnicodeEncoding.cs: GetString (byte[], int, int) is only available
  107. in 2.0 profile. Marked 2.0-only methods ComVisible (false). Added
  108. missing ctor in 2.0 profile, and marked in MonoTODO.
  109. * UTF7Encoding.cs: Marked class ComVisible (true) on 2.0 profile.
  110. * UTF8Encoding.cs: Marked 2.0-only methods as ComVisible (false).
  111. 2006-05-25 Atsushi Enomoto <[email protected]>
  112. * EncodingInfo.cs, Encoding.cs :
  113. Implemented Encoding.GetEncodings(). It's so hacky!
  114. 2006-04-13 Kornél Pál <[email protected]>
  115. * Encoding.cs: GetString (byte []): Wrap GetString (byte [], int, int)
  116. as MS.NET does. This is a more reasonable high level wrapper
  117. implementation.
  118. * UnicodeEncoding.cs: GetBytes (string): Implement as a wrapper
  119. instead of using GetBytesInternal to be MS.NET compatible.
  120. Override GetString (byte [], int, int) to speed up string creation.
  121. 2006-04-13 Atsushi Enomoto <[email protected]>
  122. * ASCIIEncoding.cs : 2.0 decoder fallback support was missing.
  123. 2006-03-30 Atsushi Enomoto <[email protected]>
  124. * Encoder.cs, Decoder.cs : implemented Convert(). Also added argument
  125. check in some methods.
  126. 2006-03-30 Atsushi Enomoto <[email protected]>
  127. * ASCIIEncoding.cs : added overriden methods in NET_2_0 (maybe
  128. there are optimizations, but for now we need something just works).
  129. 2006-03-24 Atsushi Enomoto <[email protected]>
  130. * UTF8Encoding.cs : made internal implementation as pointer-based,
  131. and added pointer-based converter method overloads.
  132. 2006-03-21 Kornél Pál <[email protected]>
  133. * UnicodeEncoding.cs: Use unsafe code for copying characters to speed
  134. up conversion.
  135. 2006-03-09 Zoltan Varga <[email protected]>
  136. * Encoding.cs: Add stub for net 2.0 GetEncodings () method.
  137. 2006-02-14 Atsushi Enomoto <[email protected]>
  138. * UTF8Encoding.cs : Fallback was indicating incorrect index.
  139. Fixed bug #77550.
  140. 2006-02-10 Atsushi Enomoto <[email protected]>
  141. * ASCIIEncoding.cs : (GetChars) reduced either one store or one jump
  142. in IL. 10% performance improvement.
  143. 2006-02-03 Atsushi Enomoto <[email protected]>
  144. * UTF8Encoding.cs : avoid possible overflow.
  145. 2006-02-03 Atsushi Enomoto <[email protected]>
  146. * UTF8Encoding.cs : In zero-charbuffer case, byte buffer count should
  147. be checked. Also it should not ignore leftOver characters even if
  148. byte buffer length is 0.
  149. 2006-02-03 Atsushi Enomoto <[email protected]>
  150. * UTF8Encoding.cs : Fast path optimization for InternalGetByteCount()
  151. and InternalGetBytes().
  152. 2006-02-03 Atsushi Enomoto <[email protected]>
  153. * UTF8Encoding.cs :
  154. actually leftover bits needs more careful handleding. So it's
  155. better to be rather close to the original GetBytes().
  156. Also changed leftOver handling so that it will be able to support
  157. fallback.
  158. 2006-02-03 Atsushi Enomoto <[email protected]>
  159. * UTF8Encoding.cs :
  160. GetBytes(string, ...) could reuse InternalGetBytes() using fixed
  161. pointers. However, InternalGetBytes() was slower than
  162. GetBytes(string, ...), so first replaced existing InternalGetBytes()
  163. with GetBytes() internals, and GetBytes(string, ...) switched to
  164. InternalGetBytes(). Now GetBytes() implementation code is reduced
  165. to one method.
  166. 2006-02-02 Atsushi Enomoto <[email protected]>
  167. * UTF8Encoding.cs : fast path optimization was pretty insufficient.
  168. Now it handles the entire bytes, not just half of them.
  169. 2006-02-02 Atsushi Enomoto <[email protected]>
  170. * UTF8Encoding.cs : zero-length check was wrong. Check it by
  171. "charIndex == chars.Length" instead of "charCount == 0".
  172. 2006-02-02 Atsushi Enomoto <[email protected]>
  173. * UTF8Encoding.cs : switched GetBytes() to pointer-based code.
  174. Implemented 2.0 pointer-based GetBytes(). 10% perf. improvement.
  175. 2006-01-30 Atsushi Enomoto <[email protected]>
  176. * UTF8Encoding.cs : InternalGetCharCount() optimization again, and
  177. this time InternalGetChars() as well.
  178. 2006-01-24 Mike Glenn <[email protected]>
  179. * StringBuilder.cs: Avoid computing computation for the string
  180. length twice.
  181. 2006-01-24 Atsushi Enomoto <[email protected]>
  182. * UTF8Encoding.cs : reverted the previous change. Looks like it broke
  183. the build.
  184. 2006-01-24 Atsushi Enomoto <[email protected]>
  185. * UTF8Encoding.cs : InternalGetCharCount() optimization: fast path
  186. for ASCII range.
  187. 2006-01-24 Atsushi Enomoto <[email protected]>
  188. * UTF7Encoding.cs UTF8Encoding.cs :
  189. Fixed bug #77315 (Patch by [email protected]).
  190. Make strict check for invalid surrogate.
  191. 2006-01-23 Atsushi Enomoto <[email protected]>
  192. * EncoderFallbackException.cs EncoderExceptionFallback.cs
  193. DecoderFallbackBuffer.cs EncoderReplacementFallback.cs
  194. EncoderFallbackBuffer.cs DecoderExceptionFallbackBuffer.cs
  195. EncoderFallback.cs DecoderReplacementFallbackBuffer.cs
  196. DecoderFallbackException.cs DecoderExceptionFallback.cs
  197. DecoderReplacementFallback.cs EncoderExceptionFallbackBuffer.cs
  198. EncoderReplacementFallbackBuffer.cs :
  199. include them in net_2_0bootstrap build.
  200. 2006-01-20 Atsushi Enomoto <[email protected]>
  201. * Decoder.cs : ditto.
  202. 2006-01-20 Atsushi Enomoto <[email protected]>
  203. * Encoder.cs : Fallback should be initialized to have an instance.
  204. 2006-01-20 Atsushi Enomoto <[email protected]>
  205. * Encoding.cs : Cloned instances should not be read-only.
  206. 2005-12-08 Atsushi Enomoto <[email protected]>
  207. * UTF8Encoding.cs : (GetChars) let ABCREM work effectively.
  208. 2005-12-08 Atsushi Enomoto <[email protected]>
  209. * Encoding.cs : now under 2.0 GetBytes(string,...) dispatches to
  210. byte*-based GetBytes().
  211. * UTF8Encoding.cs : avoid extraneous DecoderFallbackBuffer creation
  212. which came to happen after introducing fallback buffer.
  213. 2005-11-28 Atsushi Enomoto <[email protected]>
  214. * Encoding.cs, ASCIIEncoding.cs, Latin1Encoding.cs :
  215. Added IsSingleByte.
  216. 2005-11-28 Atsushi Enomoto <[email protected]>
  217. * Encoder.cs : added new GetByteCount()/GetBytes() overloads.
  218. Added FallbackBuffer.
  219. * Decoder.cs : added new GetCharCount()/GetChars() overloads.
  220. 2005-11-28 Atsushi Enomoto <[email protected]>
  221. * EncodingInfo.cs : new file.
  222. 2005-11-28 Atsushi Enomoto <[email protected]>
  223. * UTF32Encoding.cs : Sealed. Added the overload which has
  224. throwOnInvalid parameter.
  225. * NormalizationForm.cs : removed [Serializable].
  226. 2005-11-28 Atsushi Enomoto <[email protected]>
  227. * Encoding.cs : added UTF32.
  228. 2005-11-28 Atsushi Enomoto <[email protected]>
  229. * UTF32Encoding.cs : surrogate pairs vanished in GetBytes() when the
  230. endianness is big.
  231. 2005-11-28 Atsushi Enomoto <[email protected]>
  232. * UTF32Encoding.cs : new file.
  233. 2005-11-22 Atsushi Enomoto <[email protected]>
  234. * ASCIIEncoding.cs, Latin1Encoding.cs : added EncoderFallback support.
  235. * Encoding.cs : changed default fallback selection. Seems like only
  236. ASCII and GB18030 uses '?' for replacement.
  237. * UTF8Encoding.cs : now that Fallback is read only by default, we
  238. need special setter.
  239. 2005-11-16 Atsushi Enomoto <[email protected]>
  240. * UTF8Encoding.cs : safer UTF8Decoder ctor.
  241. 2005-11-16 Atsushi Enomoto <[email protected]>
  242. * Decoder.cs : added FallbackBuffer property.
  243. * UTF8Encoding.cs : In NET_2_0, use DecoderFallbackBuffer instead of
  244. "throwOnInvalid".
  245. 2005-11-15 Atsushi Enomoto <[email protected]>
  246. * DecoderReplacementFallbackBuffer.cs : it does not have to preserve
  247. byte buffer.
  248. * EncoderReplacementFallbackBuffer.cs : implemented.
  249. * DecoderReplacementFallback.cs, EncoderReplacementFallback.cs :
  250. Removed MonoTODO.
  251. 2005-11-15 Atsushi Enomoto <[email protected]>
  252. * DecoderFallbackBuffer.cs : Reset() does nothing here.
  253. * DecoderReplacementFallbackBuffer.cs : implemented, but no idea how
  254. bytesUnknown is used.
  255. 2005-11-15 Atsushi Enomoto <[email protected]>
  256. * Encoding.cs : added ICloneable, Clone() and new GetEncoding().
  257. 2005-11-15 Atsushi Enomoto <[email protected]>
  258. * Encoding.cs : Added IsReadOnly, DecoderFallback and EncoderFallback.
  259. * Encoder.cs : Added Fallback property.
  260. * Decoder.cs : Added Fallback property.
  261. 2005-11-15 Atsushi Enomoto <[email protected]>
  262. * EncoderFallbackBuffer.cs, EncoderFallback.cs,
  263. EncoderExceptionFallbackBuffer.cs,
  264. EncoderReplacementFallbackBuffer.cs,
  265. EncoderFallbackException.cs,
  266. EncoderExceptionFallback.cs,
  267. EncoderReplacementFallback.cs : new files (not actually used yet).
  268. * DecoderExceptionFallback.cs, DecoderFallbackException.cs,
  269. DecoderReplacementFallback.cs : [Serializable] and sealed.
  270. * DecoderReplacementFallbackBuffer.cs : Reset() was missing.
  271. 2005-11-14 Atsushi Enomoto <[email protected]>
  272. * DecoderFallbackBuffer.cs, DecoderFallback.cs,
  273. DecoderExceptionFallbackBuffer.cs,
  274. DecoderReplacementFallbackBuffer.cs,
  275. DecoderFallbackException.cs,
  276. DecoderExceptionFallback.cs,
  277. DecoderReplacementFallback.cs : new files (not actually used yet).
  278. 2005-11-14 Miguel de Icaza <[email protected]>
  279. * ASCIIEncoding.cs, Encoding: Another snack, just a few methods
  280. missing.
  281. Also add some checks that were missing.
  282. 2005-11-11 Sebastien Pouliot <[email protected]>
  283. * StringBuilder.cs: Fix ISerializable.GetObjectData (remoting tests
  284. were failing under 2.0) and two possible integer overflow in CopyTo.
  285. 2005-11-11 Miguel de Icaza <[email protected]>
  286. * Encoding.cs, UnicodeEncoding.cs: A few 2.x methods.
  287. * StringBuilder.cs (Text): Added serialization support in 2.x.
  288. 2005-10-22 Jonathan Pryor <[email protected]>
  289. * UTF8Encoding.cs (InternalGetChars/InternalGetCharCount): Fix lead byte
  290. check logic for 6 octet sequences. ((ch & 0xFC) == 0xFC) is always true
  291. for 0xFF, even though 0xFF isn't a valid lead byte. It should be
  292. ((ch & 0xFE) == 0xFC).
  293. 2005-08-25 Atsushi Enomoto <[email protected]>
  294. * UTF8Encoding.cs : (InternalGetChars/InternalGetCharCount):
  295. Don't exclude FEFF in the resulting text.
  296. 2005-06-21 Ben Maurer <[email protected]>
  297. * StringBuilder.cs (Replace): Do the correct thing when we replace
  298. with a longer string. Thanks to Alexander Beznozdrev
  299. <[email protected]>
  300. 2005-05-26 Ben Maurer <[email protected]>
  301. * Encoding.cs: Use static object for locking. `volatile' to
  302. prevent double checked locking error.
  303. * StringBuilder.cs: Remove = null inits on fields, saves a few
  304. instructions. When we compare _cached_str == _str, we are only
  305. interested in pointer based equality, so just do that.
  306. 2005-05-06 Ben Maurer <[email protected]>
  307. * StringBuilder.cs (InternalEnsureCapacity): It is possible that
  308. the size we attempt to grow to is more than the max capacity, but
  309. that a smaller size will do. In this case, don't throw an
  310. exception. Fixes #72244
  311. 2005-04-16 Atsushi Enomoto <[email protected]>
  312. * NormalizationForm.cs : new file.
  313. 2005-03-20 Ben Maurer <[email protected]>
  314. * StringBuilder.cs (set_Length): If we set the length, we must
  315. clobber the cached string.
  316. 2005-03-03 Gonzalo Paniagua Javier <[email protected]>
  317. * UnicodeEncoding.cs: same fix (\uFEFF) but for Unicode. Patch by
  318. Svetlana Zholkovsky.
  319. 2005-03-03 Gonzalo Paniagua Javier <[email protected]>
  320. * UTF7Encoding.cs: fix for characters encoded as a shifted sequence
  321. whose length is greater than 3. Patch by Svetlana Zholkovsky.
  322. 2005-01-31 Ben Maurer <[email protected]>
  323. * StringBuilder.cs (Remove): We need to do the check that the
  324. string isnt being cached *before* we munge it.
  325. 2005-01-21 Ben Maurer <[email protected]>
  326. * StringBuilder.cs: Don't allocate memory on the .ctor, do it
  327. lazily. This saves us lots of memory if you only use the
  328. stringbuilder once. Also, we can allocate on the second Append,
  329. which might reduce the number of buffers allocated.
  330. 2005-01-14 Lluis Sanches Gual <[email protected]>
  331. * StringBuilder.cs: Improved parameter check.
  332. 2005-01-11 Gonzalo Paniagua Javier <[email protected]>
  333. * StringBuilder.cs: when creating the StringBuilder from a string, the
  334. maximum capacity remains Int32.MaxValue.
  335. 2005-01-10 Gonzalo Paniagua Javier <[email protected]>
  336. * StringBuilder.cs: throw if the new size is greater than the maximum
  337. capacity for the StringBuilder. Patch by [email protected]. Fixes
  338. bug #62422.
  339. 2004-12-15 Sebastien Pouliot <[email protected]>
  340. * UTF7Encoding.cs: Fixed warning for unused variable.
  341. 2004-09-30 Juraj Skripsky <[email protected]>
  342. * Encoding.cs: Add encoding name "latin1" for compatibility with
  343. MS.NET.
  344. 2004-09-25 Zoltan Varga <[email protected]>
  345. * StringBuilder.cs (Append): Use InternalStrcpy to append char arrays.
  346. 2004-09-09 Tim Coleman <[email protected]>
  347. * StringBuilder.cs: Added AppendLine methods for Fx 2.0
  348. 2004-06-23 Sebastien Pouliot <[email protected]>
  349. * UTF7Encoding.cs: Fixed decoding table. Fixed char count calculation.
  350. Follow the RFC1642 rules for "overbits".
  351. 2004-06-15 Gert Driesen <[email protected]>
  352. * ASCIIEncoding.cs: added TODO for serialization
  353. * StringBuilder.cs: added TODO for serialization
  354. * UnicodeEncoding.cs: added TODO for serialization
  355. * UTF7Encoding.cs: added TODO for serialization
  356. * UTF8Encoding.cs: added TODO for serialization
  357. 2004-06-10 Gert Driesen <[email protected]>
  358. * Encoding.cs: Marked protected internal field as internal to
  359. fix API signature
  360. 2004-06-07 Atsushi Enomoto <[email protected]>
  361. * UTF8Encoding.cs : Length check must be done only when the character
  362. sequence is valid (i.e. should not check when it is overlongs).
  363. See also TestThrowOnInvalid().
  364. 2004-06-07 Atsushi Enomoto <[email protected]>
  365. * UTF8Encoding.cs : Added Overlong check to InternalGetCharCount().
  366. 2004-06-07 Atsushi Enomoto <[email protected]>
  367. * UTF8Encoding.cs : Throw overlongs error only when throwOnInvalid is
  368. true. Otherwise just ignore them.
  369. 2004-05-26 Sebastien Pouliot <[email protected]>
  370. * StringBuilder.cs: Fixed potential integer overflows in several
  371. methods.
  372. 2004-05-14 Sebastien Pouliot <[email protected]>
  373. * UTF8Encoding.cs: Moved charCount-- after the check for surrogate
  374. pair. This fix bug #57009 (and 2 failing unit tests). Added code
  375. to check for some (like MS) overlongs.
  376. 2004-05-03 Lluis Sanches Gual <[email protected]>
  377. * Encoding.cs: Use name const to load I18N assembly.
  378. 2004-04-25 Andreas Nahr <[email protected]>
  379. * Encoding.cs: Call shortcut String.ToLowerInvariant
  380. 2004-04-13 Miguel de Icaza <[email protected]>
  381. * Encoding.cs: Use new internal codepage setup.
  382. 2004-04-10 Atsushi Enomoto <[email protected]>
  383. * UTF7Encoding.cs : GetMaxByteCount() was based on incorrect formula.
  384. 2004-03-19 Dick Porter <[email protected]>
  385. * UnicodeEncoding.cs: GetCharCount(), GetChars(): Check for the
  386. BOM at the beginning of the range of characters we're interested
  387. in, not at the beginning of the array. Fixes bug 51531.
  388. 2004-03-10 Juraj Skripsky <[email protected]>
  389. * StringBuilder.cs
  390. (Insert int, char[]): fix by using new string(char[]) instead of
  391. char[].ToString() and simplify.
  392. (Insert int, string, int): add LAMESPEC note.
  393. (Insert int char[], int, int): handle value==null according to spec.
  394. Use a string instead of char array + Array.Copy (gonzalo)
  395. 2004-03-08 Gonzalo Paniagua Javier <[email protected]>
  396. * StringBuilder.cs:
  397. (Append (string)): remove redundant check.
  398. 2004-01-23 Gonzalo Paniagua Javier <[email protected]>
  399. * StringBuilder.cs:
  400. (Remove): fixed offsets when copying and set the new size. Fixes bug
  401. #53240.
  402. 2004-01-13 Gonzalo Paniagua Javier <[email protected]>
  403. * StringBuilder.cs: added checks for null in a few Append methods.
  404. Tue Jan 13 22:23:25 CET 2004 Paolo Molaro <[email protected]>
  405. * StringBuilder.cs: fixed start offset in Append(char).
  406. 2004-01-12 Patrik Torstensson
  407. * StringBuilder.cs: new implementation that uses
  408. string as a buffer instead of a array of chars.
  409. 2003-12-07 Ben Maurer <[email protected]>
  410. * UTF8Encoding.cs (GetBytes string): Do not call base
  411. The version in Encoding will call string.ToCharArray (),
  412. allocating an extra array. By calling the better method
  413. in our own class we can save memory.
  414. 2003-11-17 Ben Maurer <[email protected]>
  415. * StringBuilder.cs (Insert int, char): It is really silly and
  416. wasteful to allocate an array here. We can just copy the value
  417. over.
  418. 2003-11-11 Miguel de Icaza <[email protected]>
  419. * Encoding.cs: Use an internal variable to track the parameters of
  420. each encoder, since the .NET API does not expose virtual methods
  421. in the child classes, we should not depend on that.
  422. * ASCIIEncoding.cs, UTF7Encoding, UTF8Encoding, UnicodeEncoding:
  423. Initialize the parameters for base class encoding here.
  424. 2003-09-01 Miguel de Icaza <[email protected]>
  425. * Encoding.cs (UTF8Unmarked): make it also not error out on
  426. invalid input, that is what the Microsoft default is for the
  427. StreamReader and BinaryReader expect (our main consumers).
  428. 2003-08-21 Ben Maurer <[email protected]>
  429. * StringBuilder.cs
  430. (AppendFormat) Use FormatHelper in System.String to avoid
  431. allocating an extra StringBuilder.
  432. (Append string, int, int), (Append char, int): Both were
  433. allocating extra strings.
  434. 2003-06-05 Nick Drochak <[email protected]>
  435. * UTF8Encoding.cs: Cleanups according to class status page
  436. 2003-05-10 Miguel de Icaza <[email protected]>
  437. * Encoding.cs (GetEncoding): Add all the aliases documented in the
  438. framework. We were missing a few.
  439. Reorganize the table. Also, convert the input name into the
  440. lower-case - to _ before we compare against our table.
  441. 2003-05-10 Gonzalo Paniagua Javier <[email protected]>
  442. * StringBuilder.cs: fixed bug #41397.
  443. 2003-04-12 Miguel de Icaza <[email protected]>
  444. * Encoding.cs: Enabled the code paths that we did have commented
  445. out, they seem to work now.
  446. Fri Apr 11 08:29:50 CEST 2003 Paolo Molaro <[email protected]>
  447. * StringBuilder.cs: cache the result from ToString().
  448. 2003-03-18 Atsushi Enomoto <[email protected]>
  449. * UnicodeEncoding.cs: changed WebName from unicodeFFFE to utf-16be.
  450. (unicodeFFFE is MS compliant, but isn't valid IANA encoding name.)
  451. 2003-03-05 Gonzalo Paniagua Javier <[email protected]>
  452. * ASCIIEncoding.cs: fixed bug #38984.
  453. 2003-03-05 Aleksey Demakov <[email protected]>
  454. * ASCIIEncoding.cs:
  455. * Latin1Encoding.cs: fix GetString (byte[]) and
  456. GetString (byte[], int, int) for zero-length case.
  457. 2003-02-19 Gonzalo Paniagua Javier <[email protected]>
  458. * Latin1Encoding.cs: added Serializable attribute.
  459. 2003-02-03 Gonzalo Paniagua Javier <[email protected]>
  460. * Encoding.cs: removed UnixConsoleEncoding.
  461. 2003-01-30 Zoltan Varga <[email protected]>
  462. * StringBuilder.cs: fix the constructor: 'value' can be NULL,
  463. 'capacity' must be >=0, use defaultCapacity only if capacity equals 0.
  464. This fixes the StringBuilder unit tests.
  465. 2003-01-30 Gonzalo Paniagua Javier <[email protected]>
  466. * StringBuilder.cs: fixed typo in set_Length.
  467. 2002-12-12 Gonzalo Paniagua Javier <[email protected]>
  468. * Encoding.cs: g_get_encoding () returns "ASCII". In Default, when the
  469. encoding is not found, default to UTF8Unmarked. Removed comment in
  470. UnixConsoleEncoding, because it's now Default, which gets the
  471. encoding internally using g_get_encoding ().
  472. 2002-12-01 Gonzalo Paniagua Javier <[email protected]>
  473. * StringBuilder.cs: fixed constructor. Thanks to marcusU for reporting.
  474. Tue Nov 19 13:03:27 CET 2002 Paolo Molaro <[email protected]>
  475. * UTF8Encoding.cs: fix GetByteCount (), too.
  476. 2002-11-19 Miguel de Icaza <[email protected]>
  477. * UnicodeEncoding.cs: the bytemark should only be used to return
  478. information in GetPreamble, not to actually encode the information
  479. on the stream. That is taken care of by the Stream classes.
  480. * UTF8Encoding.cs: ditto.
  481. 2002-11-13 Gonzalo Paniagua Javier <[email protected]>
  482. * StringBuilder.cs: only move the remaining chars in Remove.
  483. 2002-11-05 Gonzalo Paniagua Javier <[email protected]>
  484. * Encoding.cs: unixConsoleEncoding is now the same as Default. Avoid
  485. locking whenever possible.
  486. 2002-10-30 Miguel de Icaza <[email protected]>
  487. * Encoding.cs (UTF8Unmarked): New static property, used to return
  488. a no-markers UTf8 encoder, used in a few places in the class library.
  489. 2002-09-06 Miguel de Icaza <[email protected]>
  490. * Encoding.cs (UTF8, Unicode): Create with a preamble, that is
  491. what the Microsoft version does.
  492. (UnixConsoleEncoding): New internal method, used to get the
  493. encoding, in the future, this should pull the locale, map to
  494. charset and then code page.
  495. Wed Sep 4 14:01:25 CEST 2002 Paolo Molaro <[email protected]>
  496. * Encoding.cs: use icall to get default codepage.
  497. * DefaultEncoding.cs: remove useless class.
  498. Mon Aug 26 16:44:54 CEST 2002 Paolo Molaro <[email protected]>
  499. * *.cs: change to conform to mono coding style.
  500. 2002-08-24 Gonzalo Paniagua Javier <[email protected]>
  501. * ASCIIEncoding.cs:
  502. * Decoder.cs:
  503. * Encoder.cs:
  504. * Encoding.cs:
  505. * UTF7Encoding.cs:
  506. * UTF8Encoding.cs:
  507. * UnicodeEncoding.cs: added Serializable attribute.
  508. 2002-08-24 Gonzalo Paniagua Javier <[email protected]>
  509. * StringBuilder.cs: improved performace by using String.InternalCopyTo
  510. instead of using ToCharArray all over the place (more that 50% of
  511. speed improvement when using Append).
  512. Wed Aug 21 20:02:04 CEST 2002 Paolo Molaro <[email protected]>
  513. * *.cs: imported the code donated by Rhys Weatherley
  514. <[email protected]>.
  515. 2002-08-18 Dick Porter <[email protected]>
  516. * Encoding.cs: Make GetString() return a useful representation of
  517. the bytes, rather than "System.Char[]"
  518. 2002-08-03 Gonzalo Paniagua Javier <[email protected]>
  519. * StringBuilder.cs: added IndexerName to indexer.
  520. 2002-08-01 Jason Diamond <[email protected]>
  521. * Encoding.cs: Use GetByteCount instead of GetMaxByteCount when
  522. converting chars to bytes.
  523. 2002-07-13 Gonzalo Paniagua Javier <[email protected]>
  524. * StringBuilder.cs: updated comments. MaxCapacity always returns
  525. Int32.MaxValue.
  526. 2002-06-21 Gonzalo Paniagua Javier <[email protected]>
  527. * StringBuilder.cs: implemented AppendFormat methods using
  528. String.Format. Thanks Paolo!
  529. This makes xsp generate correct C# output in linux :-). I still need
  530. to do more testing, though.
  531. Mon Jun 3 12:58:40 CEST 2002 Paolo Molaro <[email protected]>
  532. * ASCIIEncoding.cs: fixed handling of 0 bytecount.
  533. 2002-05-19 Martin Baulig <[email protected]>
  534. * Encoder.cs (IConvEncoder.GetByteCount, IConvEncoder.GetBytes):
  535. Added exception handling.
  536. * Decoder.cs (IConvDecoder.GetCharCount, IConvDecoder.GetChars):
  537. Added exception handling.
  538. 2002/04/02 Nick Drochak <[email protected]>
  539. * StringBuilder.cs (Append): Removed obsolete overload.
  540. 2002-03-21 Mike Kestner <[email protected]>
  541. * ASCIIEncoding.cs : Fix off by one error in Get(Char|Byte)Count.
  542. Thu Mar 21 17:38:19 CET 2002 Paolo Molaro <[email protected]>
  543. * StringBuilder.cs: no need to intern the string returned by ToString().
  544. 2002-03-17 Mike Kestner <[email protected]>
  545. * ASCIIEncoding.cs: Implement all the overridden methods. No longer
  546. dependent on iconv icalls.
  547. * Encoding.cs: Fix count bugs in GetBytes and GetChars. Add virtual
  548. to GetBytes.
  549. Wed Mar 13 00:26:29 CET 2002 Paolo Molaro <[email protected]>
  550. * StringBuilder.cs: make ToString() return a interned string, this
  551. seems to be required to make switch on string work.
  552. Fri Mar 8 17:29:58 CET 2002 Paolo Molaro <[email protected]>
  553. * StringBuilder.cs: make Append(char) do the smart thing.
  554. 2002-01-05 Ravi Pratap <[email protected]>
  555. * ASCIIEncoding.cs, Encoding.cs, UTF7Encoding.cs,
  556. UnicodeEncoding.cs: MonoTODO attribute marking.
  557. * StringBuilder.cs : Ditto.
  558. Wed Nov 14 17:05:22 CET 2001 Paolo Molaro <[email protected]>
  559. * Encoding.cs: renamed some fields.
  560. * StringBuilder.cs: CLSCompliant updates.
  561. 2001-10-29 Nick Drochak <[email protected]>
  562. * StringBuilder.cs: Throw exceptions when constructor paramter(s) are
  563. invalid. Just like MS does (as best as I can tell).
  564. Tests for these exceptions are now added to the unit tests as well.
  565. 2001-10-25 Nick Drochak <[email protected]>
  566. * StringBuilder.cs: Throw exception if they try to make a StringBuilder
  567. whose capacity is greater than the MaxCapacity.
  568. I added some tests for the constructors and the above exception. More
  569. coming soon.
  570. 2001-10-23 Nick Drochak <[email protected]>
  571. * StringBuilder.cs: Refactored constructor code into just one
  572. constructor. All the other construtors call it. Also supplied missing
  573. constructors so the class has all those in the spec.
  574. Added the MaxCapacity property as well, however this needs to be
  575. completed to return a value is related to the available system memory.
  576. 2001-10-07 Miguel de Icaza <[email protected]>
  577. * Encoding.cs, UTF8Encoding.cs, UTF7Encoding.cs, ASCIIEncoding.cs,
  578. UnicodeEncoding.cs: Corrected API.
  579. * UTF8Encoding.cs: Checked in changes from Rafael.
  580. 2001-08-28 Dietmar Maurer <[email protected]>
  581. * UTF8Encoding.cs: impl. clumsy GetBytes
  582. 2001-07-16 Marcin Szczepanski <[email protected]>
  583. * StringBuilder.cs (Text): Fixed.
  584. * StringBuilderTest.cs: Implement Test suite.
  585. 2001-07-12 Marcin Szczepanski <[email protected]>
  586. * StringBuilder.cs: Implemented.
  587. The only methods left unimplemented are the AppendFormat( ... )
  588. ones just because it's probably better to wait until some of the
  589. Format related classes are implemented. I've put that as a TODO
  590. comment at the top and created the methods with a "nop" body.
  591. 2001-06-26 Sean MacIsaac <[email protected]>
  592. * UnicodeEncoding.cs: Members added so that a clean compile is
  593. possible.
  594. * ASCIIEncoding.cs: Members added so that a clean compile is
  595. possible.
  596. * UTF7Encoding.cs: Members added so that a clean compile is
  597. possible.
  598. * UTF8Encoding.cs: Members added so that a clean compile is
  599. possible.
  600. * Encoding.cs: All public members included. Most members
  601. unimplemented.