New in version 16.0.0
You can find information about existing projects upgrading in the article Upgrade project.
-
New features
- Loading active record models with relations.
- Nitisa framework is also available on Github now.
-
Added
- 3679 unit tests.
- DbExceptionRelationNotFound exception class.
- TDbActiveQuery can now load active query models with relations via
With()
method.
- TDbRelation template got methods
Select()
, Distinct()
, From()
, InnerJoin()
, LeftJoin()
, RightJoin()
, Where()
, AndWhere()
, OrWhere()
, GroupBy()
, Having()
, AndHaving()
, OrHaving()
, OrderBy()
, Limit()
, and Offset()
allowing full control over building relations.
- TDbRelation template got
Query()
method returning Active Query which can be used to perform additional operations over relation without affecting relation itself.
- CDbMigrationGenerator helper class to generate migrations.
- DbNull constant.
Json
column type in IDbMigrationColumn and CDbMigrationColumn.
- TList template, PList type and functions Free(), Count(), Next(), Prev(), Head(), Tail(), Append(), Detach(), Delete(), Insert(), Copy() to work with bi-directional linked lists.
- IWarningListener interface to be used when warnings can be issued and need to be detected.
- Comparison operators
==
and !=
to Token structure.
- TokenToString() helper function.
-
Fixed
- Alignment of widgets was somethimes incorrect.
- String encoding in CDbQueryBuilderMySql helper class to generate migrations.
- Fixed escape sequence ecoding/deconding in json::Decoder, json::Encoder and cpp::CLexic classes.
- Compilation error in
dgl.cpp
caused by broken Microsoft C++ compiler.
- Incorrect mouse event handling in PageControl widget.
-
Improved
- Some methods of TDbRelation template got ability to avoid automatic models loading.
Replace
member of Operator is now of StringKeyValueArray
type.
- Added skip groups in CTokenizer base class.
- Added
setSource()
methods to IReader interface and its implementations.
- Expose reader pointer and operator constants in cpp::CTokenizer class.
-
Removed
orders
argument from constructors of TDbRelation template. OrderBy()
method should be used instead.