Released version 3.0.0

@dg dg released this Nov 7, 2015 · 65 commits to master since this release

  • Dibi now uses namespaces see API
  • minimal required PHP is 5.4.4
  • contains loader for former class names, so it should be 100% compatible
  • compatible with PHP 7
  • minified version is dibi.phar
  • throws fine-grained exceptions: ConstraintViolationException, ForeignKeyConstraintViolationException, NotNullConstraintViolationException and UniqueConstraintViolationException
  • MySQL: type TIME is returned as DateInterval (BC break)
  • IDibiDriver escape() & unescape() methods was replaced, see 3490fef (BC break)
  • drivers: applyLimit throws exception for negative values (BC break)
  • Fluent: exports limit & offset as %lmt and %ofs
  • Fluent: prevents doubled processing
  • Translator: DateTime can be used (only) with %d or %t modifiers, Literal can be used with %sql or %SQL modifiers
  • differentiated Type::TIME and Type::DATETIME
  • Connection: option 'driver' can contain driver instance #153
  • MsSql2005 driver renamed to SqlsrvDriver
  • removed driver for SQLite2 and MsSqlDriver (not available with PHP 5.3 or later) replaced with SqlsrvDriver
  • SqlsrvDriver: added support for LIMIT & OFFSET on SQL Server 2012
  • Dibi\Row: shows did you mean? suggestions for missing columns
  • BC break: before you add new array property into Dibi\Row via $row->foo[] = 'bar', create this property: $row->foo = [];
  • BC break: use $fluent->offset($offset)->limit($limit) instead of $fluent->limit("%i, %i", $offset, $limit)