vibe.d 0.7.10 release
vibe.d 0.7.10 release

Thu, 03 Jan 2013The Win32 back end now has working TCP socket support. Also, the form and REST interface generators have been improved and Diet templates support arbitrary D expressions for attribute values. Finally, everything compiles now on Win64 using DMD 2.061.
Features and improvements
- TCP sockets in the Win32 back end work now
- Added support for struct and array parameters to
registerFormInterface
(by Robert Klotzner aka eskimor) - issue #138, issue #139, issue #140 registerFormInterface
now ignores static methods (by Robert Klotzner aka eskimor) - issue #136- Added support for arbitrary expressions for attributes in Diet templates
- Added
RedisClient.zrangebyscore
and fixed the return type ofRedistClient.ttl
(long
) (by Simon Kerouack aka ekyo) - issue #141 renderCompat()
does not require the parameter values to be wrapped in a Variant anymore- Added a
BsonObjectID.timeStamp
property that extracts the unix time part - Added a versions of
deserialize(B/J)son
that return the result instead of writing it to an out parameter - The REST interface client now can handle more foreign types by searching for all needed module imports recursively
listenTcp
now returns aTcpListener
object that can be used to stop listening again- Added
vibe.inet.message.decodeEncodedWords
anddecodeEmailAddressHeader
- Added
compileDietFileMixin
usable for directly mixing in Diet templates (they are instantiated in the caller scope) - The SMTP client now prints the last command whenever an error is returned from the server - see issue #126
- Documentation improvements
- All examples now use
shared static this
instead ofstatic this
so that they will behave correctly once multi-threading gets enabled vibe.core
now only depends onvibe.inet
andvibe.utils.memory
and thus is ready to be used as a stand-alone libraryBson.length
is now allowed forBson.Type.Object
and addedBson.EmptyArray
- Setting
HttpFileServerSettings.maxAge
to zero will cause the "Expires" and "Cache-Control" headers to be omitted Url
can now be constructed asUrl(str)
in addition toUrl.parse(str)
- The HTTP server logger now logs the requesting host name instead of the selected configuration's host name
- Using
ParameterIdentifierTuple
now for the REST interface generator, which makes the_dummy
parameter hack unnecessary - Compiles with DMD 2.061 and on Win64
- User and group names are now accepted in addition to UID/GID in /etc/vibe/vibe.conf - issue #133
Bug fixes
- Fixed forwarding of non-ASCII unicode characters in
htmlEscape
- Fixed the Diet template parser to accept underscores in ID and class identifiers
- Fixed HEAD requests properly falling back to GET routes in the
UrlRouter
- Fixed parsing of unicode escape sequences in the JSON parser - issue #146
- Made
vibe.core.mutex.Mutex
actually pass its unit tests - Fixed compile errors occuring when using the field selector parameter of
MongoDB.find/findOne/findAndModify
- Fixed some cases of
InvalidMemoryOperationError
in ConnectionPool/LockedConnection - possibly issue #117 - Avoid passing
0x8000
(O_BINARY
) on non-Windows systems toopen()
, as this may cause the call to fail (by Martin Nowak) - issue #142 - Fixed creation of HTTP sessions (were not created before at least one key was set)
- Fixed the error detection code (safe mode) for the MongoDB client
int
values are now correctly serialized asBson.Type.Int
instead ofBson.Type.Long
- Fixed handling of the "X-Forwarded-For" header in the reverse proxy server in case of a proxy chain
- During the build, temporary executables are now built in
%TEMP%/.rdmd/source
so they pick up the right DLL versions - Fixed the daytime example (
readLine
was called with a maximum line length of zero) - issue #122, issue #123
Comments for the post are currently disabled.
0 comments