Added TINYORM_DISABLE_ORM macro controlled by ORM for CMake and
disable_orm for qmake. When TINYORM_DISABLE_ORM macro is defined then
only the query builder without ORM is compiled.
Also excludes ORM-related unit tests.
RootFolderInput component allows to input the root folder and
application folder and these two folders are used across whole
documentation, they are persisted in the local storage.
Also pretty huge enhancements:
- Docusaurus upgraded to 2.0.0-beta.14
- APITable component
- RootFolderInput / RootFolder components
- enhanced docusaurus.config.js
- new qmake syntax highlighter
- fixed bash syntax highlighter
- fixed robots.txt, moved to static/ folder
- enabled sass for css modules and for global customCss
- support for querying nested relations existence/absence
- added tests for all possible overloads 😲, 28 unit tests and 14
functional tests
- added has() related proxies to the Model and Relation
- added documentation
- gcc and clang specific fixes
others:
- used clazy exclude comments instead of suppressing warnings in IDE
Two overloads, simple pluck(column) to get values from the given column
and pluck<T>(column, key) which returns std::map<T, QVariant> values
of the given column keyed by the given key.
- added docs
- added tests
- manually tested all proxies
- dynamic_cast() is not needed anymore, this is the result of following
change:
- relation factory methods return actual creating type instead
of the general base Relation type"
- also docs updated
The HasOne and BelongsTo can now return default model instead
of the nullptr.
- also added tests
- added documentation
- updated test db structure, null foreign key in previewable files
- to the test db into the previewable files added row without parent
- relation factory methods return actual creating type instead of
the general base Relation type
- added missing documentation for 'Inserting & Updating Related Models'
in TinyORM: Relationships
- added missing documentation for 'Deleting Models'
in TinyORM: Getting Started
- re-compared all documentation against latest Eloquent version
- added u_fillable on models used in tests that need it
- added documentation for mass assignment
- added tests for mass assignment feature
- added new Torrent models for tests, which have set up u_fillable and
u_guarded differently
- added schema grammar, query post-processor, and schema builder, they
was needed for database column listing during a mass assignment
guarded attributes check, used to check if the given attribute is
a valid guardable column
- all tests are ran against SQLite test database too 🎉🔥
- removed default models connection for tests, because I'm testing
models for all database connections and the connection is controlled
by global test data, so every test is ran against all the
supported databases
- added test code controlled by TINYORM_TESTS_CODE preprocessor macro,
which enables connection override in the BaseModel
- build tests only when the "CONFIG += build_tests" was added to the
qmake command
added php script to create databases
- script creates MySQL and SQLite databases
- script populate this databases with test data
- connection credentials are provided through the DB_ env. variables
other changes
- added api to enable statement counters for the given connections
- added BaseModel::truncate test