vibe.d 0.7.9 release
vibe.d 0.7.9 release

Tue, 30 Oct 2012The new release contains major improvements to the Win32 back end, as well as to the Diet template compiler. The REST interface has gotten more robust in its type handling and a new HTML form interface generator has been added. The zip file release now also includes HTML API docs.
Features and improvements
- Implemented an automated HTML form interface generator in
vibe.http.form
(by Robert Klotzner aka eskimor) - issue #106 - The REST interface now uses fully qualified names and local imports to resolve parameter/return types, making it much more robust (by Михаил Страшун aka mist) - issue #108
- The Diet template compiler now supports includes and recursive extensions/layouts - issue #32,
- Added support for WebSocket binary messages and closing connections (by kyubuns) - issue #118
- Implemented a directory watcher for the Win32 driver
- Removed
vibe.textfilter.ddoc
- now in http://github.com/rejectedsoftware/ddox - Cleaned up command line handling (e.g. application parameters are now separated from vibe parameters by --)
- Dependencies in package.json can now have "~master" as the version field to take the lastest master version instead of a tagged version
- Renamed
UrlRouter.addRoute()
toUrlRouter.match()
- Moved Path into its own module (
vibe.inet.path
) - Task local storage is now handled directly by
Task
instead of invibe.core.core
- (de)serialze(To)(Json/Bson) now support type customization using (to/from)(Json/Bson) methods
- (de)serialze(To)(Json/Bson) now strip a trailing underscore in field names, if present - allows to use keywords as field names
Json.opt!()
is now much faster in case of non-existent fields- Added
Bson.toJson()
andBson.fromJson()
and deprecatedBson.get!Json()
andcast(Json)bson
- Implemented
InputStream.readAllUtf8()
- strips BOM and sanitizes or validates the input - Implemented
copyFile()
to supplementmoveFile()
- Added RandomAccessStream interface
- Implemented a github like variant of Markdown more suitable for marking up conversation comments
- The Markdown parser now takes flags to control its behavior
- Made ATX header and automatic link detection in the Markdown parser stricter to avoid false detections
- Added
setPlainLogging()
- avoids output of thread and task id - Avoiding some bogous error messages in the HTTP server (when a peer closes a connection actively)
- Renamed the string variant of
filterHtmlAllEscape()
tohtmlAllEscape()
to match similar functions connectMongoDB()
will now throw if the connection is not possible - this was deferred to the first command up to now- By default a
MongoDB
connection will now have the 'safe' flag set - The default max cache age for the HTTP file server is now 1 day instead of 30 days
- Implemented
MemoryStream
- a rendom access stream operating on aubyte[]
array. - The form parser in the HTTP server now enforces the maximum input line width
- A lot of documentation improvements
Bug fixes
- Fixed a possible endless loop in
ZlibInputStream
- now triggers an assertion instead; Still suffering from DMD bug 8779 - issue #56 - Fixed handling of escaped characters in Diet templates and dissallowed use of "##" to escape "#"
- Fixed "undefined" appearing in the stringified version of JSON arrays or objects (they are now filtered out)
- Fixed the error message for failed connection attempts
- Fixed a bug in
PoolAllocator.realloc()
that could cause a range violation or corrupted memory - issue #107 - Fixed '//' comments in the Diet template compiler
- Fixed and optimized
readUntil
- it now also obeys the byte limit, if given - Fixed parsing of floating-point numbers with exponents in the JSON parser
- Fixed some HTML output syntax errors in the Markdown compiler
Comments for the post are currently disabled.
0 comments