vibe.d 0.7.26 release
vibe.d 0.7.26 release

Wed, 04 Nov 2015A large revamp of the REST interface generator was done in this release, which will enable faster future developments. The new JavaScript client generator is the first feature made possible by this. Apart from a good chunk of functional improvements in various areas, a notable change on the build level is that the VibeCustomMain version is no longer required for projects that implement their own main function.
Features and improvements
- Compiles on 2.066.x up to 2.069.0
- Removed deprecated symbols and deprecated those that were scheduled for deprecation
- The
VibeCustomMain
version identifier is now a no-op and the new default behavior - Added a JavaScript REST client generator to
vibe.web.rest
- pull #1209 - Added translation support for plural forms in
vibe.web.i18n
(by Nathan Coe) - pull #1290 - Added a fiber compatible read-write mutex implementation (
TaskReadWriteMutex
) (by Manuel Frischknecht) - pull #1287 - Added
vibe.http.fileserver.sendFile
- Added ALPN support to the TLS module (by Etienne Cimon)
- Added an optional Botan based TLS implementation (by Etienne Cimon)
- Switched the
vibe.core.log
module to support allocation-less logging (range like interface) - Removed all intrinsic dynamic allocations in all built-in logger implementations - this makes it possible to log from within class finalizers
- Added
Cookie.toString()
(by Etienne Cimon) - Added
MarkdownSettings.urlFilter
in order to be able to customize contained links - Made
Json.toString
@safe
so thatJson
values can be logged usingstd.experimental.logger
- Added
HTTPServerRequest.noLog
, usable to disable access logging for particular requests (by Márcio Martins) - pull #1281 - Added support for static array parameters in
vibe.web.web
- Added
LocalTaskSemaphore
, a single-threaded task-compatible semaphore implementation (by Etienne Cimon) - Added
ConnectionPool.maxConcurrency
(by Etienne Cimon) - Added
MongoCollection.findAndModifyExt
, which takes a parameter with custom options - issue #911 TLSVersion.any
now only matches TLS 1.0 and up; SSL 3 is explicitly excluded (by Márcio Martins) - pull #1280- Removed some bad dependencies to prepare for splitting up the library (dependency cycles between low-level and high-level packages)
- Implemented timer support for the libev driver - pull #1206
- Improved the method prefix semantics in the web/REST interface generators, so that only whole words are recognized
- Mime type
"application/vnd.api+json"
is now recognized to have a JSON body in the HTTP server (by Szabo Bogdan) - pull #1296
Bug fixes
- Fixes in the libasync driver (by Etienne Cimon)
- Various correctness and crash fixes
- Fixed handling files with non-ASCII characters on Windows - pull #1273
- Fixed timers with a zero timeout - pull #1204
- Fixed a possible TCP connection stall for blocking writes - pull #1247
- Fixed partially dropped data for TCP connections - issue #1297, pull #1298
- Fixed properly waiting for blocking operations - issue #1227
- Missing HTML form parameters are now properly handled by
@errorDisplay
in the web interface generator - Fixed bogus Diet template dependencies caused by interpreting all lines that started with "extends ..." as extension directives
- Fixed
runWorkerTaskH
to be callable outside of a task context - pull #1206 - Fixed
LibevManualEvent
to actually work across threads - pull #1206 - Fixed a bug in the shutdown sequence that could cause the application to hang if worker threads had been started - pull #1206
- Fixed multiple loggers not working - issue #1294
- Fixed
workerThreadCount
to always return a non-zero number by letting it start up the workers if necessary - Fixed
Path.toString()
to output trailing slashes if required for empty paths - Fixed an TLS connection failure in the OpenSSL based implementation when no
peer_name
was set - Fixed linking on Debian, which has removed certain public OpenSSL functions (by Luca Niccoli) - issue #1315, pull #1316
- Fixed an assertion happening when parsing malformed URLs - issue #1318
Download
http://code.dlang.org/packages/vibe-d/0.7.26
http://vibed.org/download?file=vibed-0.7.26.zip
https://github.com/rejectedsoftware/vibe.d/tree/bd4bcf74deb850b227d561b6c0617d2f9e8959a6
Comments for the post are currently disabled.
0 comments