vibe.d beta banner
get vibe.d

vibe.d 0.7.31 release

vibe.d 0.7.31 release

Header image
Mon, 10 Apr 2017 This release is a backport release of the smaller changes that go into 0.8.0. The 0.7.x branch will continue to be maintained for a short while, but only bug fixes will be included from now on. Applications should switch to the 0.8.x branch as soon as possible.

Features and improvements

  • Compiles on DMD 2.068.2 up to DMD 2.074.0
  • HTTP server
  • Added support for simple range queries in the HTTP file server (by Jan Jurzitza aka WebFreak001) - issue #716, pull #1634, pull #1636
  • The HTTP file server only sets a default content type header if none was already set (by Remi A. Solås aka rexso) - pull #1642
  • HTTPServerResponse.writeJsonBody only sets a default content type header if none was already set
  • HTTPServerResponse.writeBody only sets a default content type if none is already set - issue #1655
  • Added HTTPServerResponse.writePrettyJsonBody
  • Diet templates are rendered as pretty HTML by default if diet-ng is used (can be disabled using VibeOutputCompactHTML)
  • Reduced synchronization overhead in the libevent driver for entities that are single-threaded
  • The REST interface server now responds with prettified JSON if built in debug mode
  • Stack traces are only written in REST server responses in debug mode - issue #1623
  • The trigger mode for FileDescriptorEvent can now be configured (by Jack Applegame) - pull #1596
  • Added .byValue/.byKeyValue/.byIndexValue properties to Bson and Json as a replacement for opApply based iteration (see issue #1688)

Bug fixes

  • Fixed compile error for deserializing optional class/ struct` fields
  • Fixed GET requests in the REST client to not send a body
  • Fixed REST request responses that return void to not send a body
  • Fixed a possible idle loop in Task.join() if called from outside of an event loop
  • Fixed TaskPipe.waitForData to actually time out if a timeout value was passed - issue #1605
  • Fixed a compilation error for GDC master - issue #1602
  • Fixed a linker issue for LDC on Windows - issue #1629
  • Fixed a (single-threaded) concurrent AA iteration/write issue that could result in an access violation in the Win32 driver - issue #1608
  • Fixed the JavaScript REST client generator to handle XHR errors (by Timoses) - pull #1645, pull #1646
  • Fixed a possible InvalidMemoryOperationError in SystemRNG
  • Fixed runApplication to be able to handle extraneous command line arguments
  • Fixed a possible crash in RedisSubscriber.blisten due to a faulty shutdown procedure
  • Fixed detection of non-keep-alive connections in the HTTP server (upgraded connections were treated as keep-alive)
  • Fixed bogus static assertion failure in RestInterfaceClient!I when I is annotated with @requiresAuth - issue #1648
  • Fixed a missing toRedis conversion in RedisHash.setIfNotExist (by Tuukka Kurtti aka Soletek) - pull #1659
  • Fixed an assertion failure for malformed HTML form upload filenames - issue #1630
  • Fixed the HTTP server to not use chunked encoding for HTTP/1.0 requests - issue #1721, pull #1722


Posted at 22:32:02 +0200 by Sönke Ludwig


JimmiXzSqa day ago


Do you really want to delete this comment?

JimmiXzSq2 days ago


Do you really want to delete this comment?

JimmiXzSq3 days ago


Do you really want to delete this comment?

JimmiXzSq4 days ago


Do you really want to delete this comment?