kris
Joined: 27 Mar 2004 Posts: 1494 Location: South Pacific
|
Posted: Sat Dec 24, 2005 9:04 pm Post subject: Mango release 2.0 |
|
|
A little "stocking stuffer" for everyone
there's a new mango.text package, and some major updates to the mango.convert package. Mango is pretty much fully unicode enabled at this point, via either templates or through configuration of existing classes. Some specifics include:
the console is now fixed at UTF8 on both linux & Win32; input and output. Because of this, unicode redirection now operates correctly on Win32
there's new support for UnicodeFile and UnicodeBom. You can open a file of unknown encoding and send it to the console (for example) with little concern over transcoding issues. Those interested might look at unifile.d in the examples directory.
all of mango.text and most of mango.convert is templated for char/wchar/dchar alternatives. This includes the sprintf/printf style formatting package, along with a new set of fast tokenizers.
the reader/writer hierarchy is now fully unicode enabled
The change that may affect folks is the writer update to putw() and putd(), which now requires a literal suffix to select the appropriate method. This was noted in a prior post and, with luck, the compiler will change its odd behaviour in this case to something consistent with other literals
The files FileStyle and ConduitStyle have been deprecated, so you might remove imports for those. Other changes there should be otherwise invisible to your code.
Per a standing request, Buffer is now typed as Text, Binary or Mixed. This alleviates usage-problems where a binary file is mistakenly processed with a text-based reader, and vice-versa.
Except for one, all warnings have been eliminated. The remaining one is a warning that doesn't indicate which file out of ~190 is the culprit, so it will remain for now
Thanks to the efforts of Tionix and Teqdruid, mango.log appears to have shaken off that intermittent cyclic-static-ctor issue. Fingers' crossed on that one.
The mechanisms used in an attempt to clean up unclosed resources has been replaced, and now appears to operate cleanly under linux where it was likely the cause of problems past.
Mango has undergone extensive usage in conjunction with Ares. In fact, I use Phobos now only for compatability testing. I think this is testament to the stability of Ares as a platform, and to Sean's work there. Three cheers for Sean!
Merry Christmas everyone, or whatever your equivalent is at this time of year! And many, many thanks to everyone who reports bugs, posts fixes, compiles on linux, and generally supports this project ~ you know who you are. Thankyou, and ...
Cheers
downloads are here: http://trac.dsource.org/projects/mango/wiki/Downloads
readme file is here: http://trac.dsource.org/projects/mango/browser/trunk/readme.txt |
|