Commit Graph

316 Commits

Author SHA1 Message Date
silverqx 8abc955261 enabled W4 warning level on msvc
Used /external:anglebrackets for external/system header files
2021-09-04 14:55:05 +02:00
silverqx d6379e3dc3 added newly added flags also to qmake build
Newly added flags from cmake build added also to the qmake build.
2021-09-04 07:56:35 +02:00
silverqx 11192a4514 treat all compiler warnings as errors for msvc
Enabled /WX for compiler and also for linker
2021-09-03 17:16:42 +02:00
silverqx 9c6fbce800 added new gcc warnings for cmake build
Following new warnings was added:
 -Wshadow
 -Wundef
 -Wfloat-equal
 -Wformat-security
 -Wdouble-promotion
 -Wconversion
 -Wzero-as-null-pointer-constant

Fixed warnings from:
 -Wshadow
 -Wconversion
2021-09-03 15:22:52 +02:00
silverqx 87341bc716 enhanced cmake build
- enabled -Wnon-virtual-dtor warning
 - bugfix missing virtual dtor
 - enabled /EHsc compiler flag for msvc
2021-09-02 18:53:48 +02:00
silverqx 1b8e2d92c7 bugfix export symbols on linux 😅
I had set visibility to default and that is visible by default on gcc.
2021-09-01 20:53:23 +02:00
silverqx 52a9e56bbf added cmake build 😅💪 2021-08-31 09:02:14 +02:00
silverqx 8468ecd91d bugfix this->relation() 2021-08-21 16:56:38 +02:00
silverqx 65a0274efd updated todo tasks 2021-08-06 15:20:06 +02:00
silverqx a753c3c016 removed todo task 2021-08-06 14:51:53 +02:00
silverqx d520289054 enhanced qmake build
- include.pri included in src.pro instead of in the src.pri, nicer
   project structure in QtCreator's Project view
 - possibility to disable PCH by CONFIG-=precompile_header
 - fixed build without PCH
2021-08-06 14:38:23 +02:00
silverqx 3cbe716d5c changed position of relation tags 2021-08-06 13:44:19 +02:00
silverqx 70a9e0fceb used pure virtual destructors when appropriate 2021-08-06 13:42:48 +02:00
silverqx cf939e0005 fixed comment for destructors 2021-08-06 13:24:17 +02:00
silverqx 0ff214cf30 added cpp files for logic and runtime exceptions 2021-08-06 13:16:05 +02:00
silverqx bd7a940d41 delete destructor for pure library classes 2021-08-06 13:15:38 +02:00
silverqx 8473ada739 added comments for all classes 2021-08-06 11:52:26 +02:00
silverqx e9133df5c8 comments for all ctors/dtors 2021-08-06 10:35:15 +02:00
silverqx b7d72e93de moved all inline outside classes 2021-08-06 10:14:13 +02:00
silverqx 1634cf68a5 removed todo task 2021-08-05 22:03:08 +02:00
silverqx 61780cfcbb avoid duplicates in HasRelationStore's switch 2021-08-05 22:00:36 +02:00
silverqx f64a8e0351 removed todo task 2021-08-05 21:34:44 +02:00
silverqx db5aa004a1 all exceptions moved to own folder and namespace 2021-08-05 21:13:23 +02:00
silverqx 23843e7b7b removed todo task 2021-08-05 16:19:36 +02:00
silverqx dd55222a57 all proxy methods extracted to base classes
All proxy methods on TinyBuilder, Model and Relation moved to their own
base classes.
This change makes the classes code in headers more clear.
2021-08-05 13:51:42 +02:00
silverqx f53e522684 made methods in HasRelationStore private
This avoids pollute user's CA.

 - also reordered method positions
2021-08-03 18:50:31 +02:00
silverqx a4d103f200 checked todo task 2021-08-03 16:45:21 +02:00
silverqx 9d8304ae32 changed method position 2021-08-03 14:21:59 +02:00
silverqx 739c69e68a added relation user has many torrents
- also added inverse torrent belongs to a user
 - updated tests
 - of course updated php create/seed script
2021-08-03 13:34:09 +02:00
silverqx 88c90f5574 bugfix in docs, section at wrong position 2021-08-03 11:34:03 +02:00
silverqx 458041a153 replaced common string literal by global const. 2021-08-03 10:09:42 +02:00
silverqx 7d52644061 replaced Eloquent by TinyORM 😲😁 2021-08-03 10:03:05 +02:00
silverqx d4f8ac3591 removed duplicates 2021-08-03 09:57:03 +02:00
silverqx 7ca8910cc4 added querying relationship existence/absence
- 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
2021-08-03 09:31:31 +02:00
silverqx d546f6a25d added todo tasks 2021-07-20 20:19:17 +02:00
silverqx ff0e9b3865 removed todo task 2021-07-19 10:32:27 +02:00
silverqx 1e40fa3e61 failed to add explain()
Qt sql driver does not support to call EXPLAIN as a prepared statement.
2021-07-19 10:19:53 +02:00
silverqx 31a7643f01 added todo tasks 2021-07-18 23:26:14 +02:00
silverqx 2245ff9d1e updated todo task 2021-07-18 22:04:12 +02:00
silverqx d1044e37bc added subquery support for order by clause 2021-07-18 20:49:56 +02:00
silverqx 4b4f34fbdc added support for subqueries in the select clause 2021-07-18 13:38:53 +02:00
silverqx b211a4db46 missing unprepared() and updated docs
Added missing unprepared() and affectingStatement() proxies.

 - also updated docs
2021-07-17 17:06:36 +02:00
silverqx 1d10afa6c0 added/replaced QChar constants for most used chars 2021-07-17 14:44:27 +02:00
silverqx 64c1b39d55 replaced , strings with COMMA constant 2021-07-17 14:44:27 +02:00
silverqx 5d4391900a replaced = strings with EQ constant 2021-07-17 14:44:27 +02:00
silverqx 7d1f03021b added global constants for most used strings 2021-07-17 14:41:28 +02:00
silverqx 40b639c458 subquery support for where() columns 🔥🚀
where() column can take lambda expression or QueryBuilder &
for subqueries.

 - added proxy methods
 - added unit tests
 - proxy methods tested manually
2021-07-15 16:44:23 +02:00
silverqx ef1660dd6d subquery support for where() values 🔥🚀
where() values can take labmbda expression or QueryBuilder &
for subqueries.

 - added proxy methods
 - added unit tests
2021-07-15 08:24:46 +02:00
silverqx b1f68ae140 added const to aggregate methods 2021-07-13 17:01:08 +02:00
silverqx a4fe443541 added pluck()
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
2021-07-13 14:28:41 +02:00