vibe.d beta banner
get vibe.d

Asynchronous I/O that doesn’t get in your way, written in D

vibe.d 0.7.23 release

vibe.d 0.7.23 release

Header image
Wed, 25 Mar 2015Apart from fixing compilation on DMD 2.067 and revamping the vibe.core.sync module to support nothrow, notable changes are extended parameter support in, improved translation support in vibe.web.web and new support for policy based customization of (de-)serialization. The Diet template parser has also received a good chunk of fixes and improvements in this release.

Features and improvements

  • Compiles on DMD frontend 2.065 up to 2.067 (most fixes for 2.067 are by Mathias Lang) - [pull #972][pull 972], pull #992
  • Changed semantics of TaskMutex and TaskCondition - this can be a breaking change for certain applications
  • The classes are now nothrow to stay forward compatible with D's Mutex and Condition classes,
  • Interruption using Task.interrupt() now gets deferred to the next wait/yield operation
  • The old behavior can be achieved using the new InterruptipleTaskMutex and InterruptibleTaskCondition classes
  • Definition of either VibeCustomMain or VibeDefaultMain is now a hard requirement - this is the final deprecation phase for VibeCustomMain
  • Added an overload of lowerPrivileges that takes explicit user/group arguments (by Darius Clark) - pull #948
  • Added handleWebSocket as a procedural alternative to handleWebSockets (by Luca Niccoli) - pull #946
  • Added support for "msgctxt" in .po files for the vibe.web.web translation framework (by Nathan Coe) - pull #896
  • Added overloads of HTTPServerResponse.writeBody and writeRawBody with an additional status code parameter (by Martin Nowak) - pull #980
  • Added @queryParam and @bodyParam to the module (by Mathias Lang) - pull #969
  • Added support for serving an "index.html" file when requesting a directory (by Martin Nowak) - pull #902
  • Added policy based customization for (by Luca Niccoli) - pull #937
  • Added SSLStream.peerCertificate and HTTPServerRequest.clientCertificate properties (by Rico Huijbers) - pull #965
  • Added RedisDatabase.zrangeByLex (by Etienne Cimon) - pull #993
  • Added support for HTTP digest authentication (by Kai Nacke aka redstar) - pull #1000
  • Diet template features
  • Added support for plain text lines starting with < (plain HTML lines) (by Kai Nacke aka redstar) - pull #1007
  • Added support for default and "prepend" modes for blocks (help from Kai Nacke aka redstar) - issue #905, pull #1002
  • Multiple "id" attributes are now explicitly disallowed (by Kai Nacke aka redstar) - pull #1008

Bug fixes

  • Fixed ping handling for WebSockets and added automatic keep-alive pinging (by Luca Niccoli) - pull #947
  • Fixed wrapped texts in .po files for the vibe.web.web translation framework (by Nathan Coe) - pull #896
  • Fixed a crash issue when storing a Timer in a class instance that does not get destroyed before application exit - issue #978
  • Fixed HTTPRouter.any to match all supported HTTP verbs (by Szabo Bogdan) - pull #984
  • Fixed setting TCPConnection.localAddr in the libasync driver (by Etienne Cimon) - issue #961, pull #962
  • Fixed some cases of missing destructor calls in vibe.utils.memory (partially by Etienne Cimon) - pull #987
  • Fixed some failed incoming SSL connection attempts by setting a default session context ID (by Rico Huijbers) - pull #970
  • Fixed RedisSessionStore.create() (by Yusuke Suzuki) - pull #996
  • Fixed HTML output of // style comments in Diet templates (by Kai Nacke) - pull #1004
  • Fixed the error message for mismatched @path placeholder parameters in (by Mathias Lang aka Geod24) - issue #949, pull #1001
  • Fixed parsing of hidden comments in Diet templates that have no leading space (by Kai Nacke) - pull #1012
  • Fixed serialization of const(Json) values
  • Fixed handling of struct parameter types in that implicitly convert to string, but not vice-versa
  • Fixed HTTP request parsing with uppercase letters in the "Transfer-Encoding" header (by Szabo Bogdan) - pull #1015
  • Fixed parsing of Diet attributes that are followed by whitespace - issue #1021
  • Fixed parsing of Diet string literal attributes that contain unbalanced parenthesis - issue #1033


Posted at 21:38:51 +0100 by Sönke Ludwig

Comments for the post are currently disabled.