vibe.d 0.7.12 release
vibe.d 0.7.12 release

Mon, 11 Feb 2013Main changes are a refactored MiongoDB client, important fixes to the HttpClient and memory alignment fixes in the custom allocators. The library and all examples are now also valid DUB* packages as a first step to remove the 'vibe' script in favor of the more powerful 'dub'.
Features and improvements
- Big refactoring of the MongoDB interface to be more consistent with its API (by Михаил Страшун aka Dicebot) - pull #171
- Added a range interface to
MongoCursor
- redo of pull #172 - Added a dub compatible "package.json" file for vibe.d and all example projects
- Parameters can be made optional for
registerFormInterface
now (by Robert Klotzner aka eskimor) - issue #156 - The REST interface generator also supports optional parameters by defining default parameter values
- Added
Task.interrupt()
,Task.join()
andTask.running
- Improved detection of needed imports in the REST interface generater (by Михаил Страшун aka Dicebot) - pull #164
- Partially implemented zero-copy file transfers (still disabled for libevent) - issue #143
- Added
HttpRequest.contentType
andcontentTypeParameters
to avoid errors by direct comparison with the "Content-Type" header - issue #154 - Added a small forward compatibility fix for DUB packages ("vibe.d" is ignored as a dependency)
- Cleaned up the function names for writing out
Json
objects as a string and added convenience methods (partially done in pull #166 by Joshua Niehus) - Renamed
HttpRequest.url
toHttpRequest.requestUrl
and addedHttpRequest.fullUrl
- Added the possibility to write a request body in chunked transfer mode in the
HttpClient
- Added
HttpServerRequest.ssl
to determine if a request was sent encryted - Changed several interfaces to take
scope
delegates to avoid useless GC allocations - Removed the
in_url
parameter fromPath.toString
- now assumed to betrue
SysTime
andDateTime
are now specially treated by the JSON/BSON serialization code- Refactored the
Cookie
interface to properly use@property
(by Nick Sabalausky aka Abcissa) - pull #176 - Added
HttpRouter
as an interface forUrlRouter
(by Laurie Clark-Michalek aka bluepeppers) - pull #177 - Changed
HttpFileServerSettings.maxAge
fromlong
toDuration
(by Nick Sabalausky aka Abcissa) - pull #178 - Added
HttpFileServerSettings.preWriteCallback
(by Nick Sabalausky aka Abcissa) - pull #180
Bug fixes
- Fixed matching of the host name in
HttpServer
- is case insensitive now - Fixed issues in
ConnectionPool
andHttpClient
that causedInvalidMemoryOperationError
and invalid multiplexed requests - Fixed
GCAllocator
andPoolAllocator
to enforce proper alignment - Fixed passing of misaligned base pointers to
free()
inMallocAllocator
- at least 32-bit Linux seems to choke on it - issue #157 - Fixed
listenTcp
without an explicit bind address - now returns an array of listeners with one entry per IP protocol version - Fixed "Connection: close" hangs also for HTTP/1.0 clients - those that depended on this behavior are broken anyway - [issue #147][issue147]
- Fixed possible invalid line markers in the mixin generated by the Diet compiler - issue #155
- Fixed all uses of
render!()
in the example projects by replacing them withrenderCompat!()
- issue 159 - Fixed concatenation of
Path
objects, where the LHS is not normalized - Fixed
serializeToBson
in conjunction with read-only fields (by Михаил Страшун aka Dicebot) - pull #168 - Fixed a possible endless loop caused by
ChunkedOutputStream
due to an inconsistent redundant field - Fixed
serializeToJson
in conjunction with read-only fields (same fix as for BSON) - Fixed
download
ignoring theport
property of the target URL - Fixed termination of Fibers by exceptions of already terminated tasks
- Fixed propagation of
HttpStatusException
in the REST interface generator (by Михаил Страшун aka Dicebot) - pull #173 - Fixed handling of multiple cookies with the same name
HttpServerRequest.cookies.getAll()
can now be used to query them - fixes [issue #174][issue174] - Fixed
WebSocket.connected
- issue #169 - Fixed accepting of invalid JSON syntax - issue #161
- Fixed use of
tmpnam
on Posix by replacing withmkstemps
, still used on Windows - issue #137 - Fixed
ZlibInputStream.empty
to be consistent withleastSize
Download
http://vibed.org/download?file=vibed-0.7.12.zip
http://github.com/rejectedsoftware/vibe.d/
* See the DUB package registry
Comments for the post are currently disabled.
0 comments