Commit Graph

423 Commits

Author SHA1 Message Date
Daniele Teti
de95bb19cf Added postgres tests with a lite version of portgresql 13.1 2020-12-12 19:26:18 +01:00
Daniele Teti
afabd2fde6 Better internal unit test irganization for TMVCActiveRecord 2020-12-11 18:53:37 +01:00
João Antônio Duarte
972237a17a Testing adjustments to work with the new RESTClient 2020-11-29 10:34:02 -03:00
João Antônio Duarte
181cf5aba9 Merge branch 'master' into feature_restclient 2020-11-27 14:14:41 -03:00
Daniele Teti
967a5322a1 https://github.com/danieleteti/delphimvcframework/issues/432 2020-11-27 15:13:17 +01:00
João Antônio Duarte
8ba8213a6e Compatibility adjustments in the new RESTClient 2020-11-10 19:13:02 -03:00
João Antônio Duarte
9c43f85b33 Merge branch 'master' into feature_restclient 2020-11-09 07:55:06 -03:00
Daniele Teti
11c7b397d4 Improved CRUD sample 2020-11-05 15:42:31 +01:00
Daniele Teti
4a65b78fb5 https://github.com/danieleteti/delphimvcframework/issues/434 2020-11-04 19:06:54 +01:00
João Antônio Duarte
5fa41c6837 Merge branch 'master' into feature_restclient 2020-10-19 19:41:42 -03:00
Daniele Teti
e5310e626f https://github.com/danieleteti/delphimvcframework/issues/435 2020-10-19 19:41:16 +02:00
João Antônio Duarte
e9ecdd67e1 Merge branch 'master' into feature_restclient 2020-10-18 20:39:52 -03:00
João Antônio Duarte
cb1cf5a383 Conversion to snake case improved, as in some cases it still failed. 2020-10-17 12:32:55 -03:00
João Antônio Duarte
46f28cde64 Corrections in snake case and correction in camel case
Fix #436
2020-10-16 20:12:20 -03:00
João Antônio Duarte
6b2e1c1a1b Added serialization support with snake_case case 2020-10-15 21:37:55 -03:00
João Antônio Duarte
df6fc6d43a Merge remote-tracking branch 'upstream/master' into feature_restclient 2020-10-01 08:39:05 -03:00
Daniele Teti
057519d550 https://github.com/danieleteti/delphimvcframework/issues/424 2020-09-30 11:16:10 +02:00
João Antônio Duarte
cf7c81520b Added SessionId method to improve DMVC server session management. SetBasicAuthorization and SetBearerAuthorization methods changed to persist authorization for all requests. 2020-09-24 15:03:11 -03:00
João Antônio Duarte
15c92f5d67 Added more unit tests for the TMVCRESTClient 2020-09-23 20:50:19 -03:00
Daniele Teti
311be67323 New functionality explained in the jsonrpc samples (TMultiDataset) 2020-09-22 15:18:22 +02:00
João Antônio Duarte
a07043fe1a Asynchronous methods added. Fixes unit tests. 2020-09-21 20:32:21 -03:00
João Antônio Duarte
e30e93f72d Merge remote-tracking branch 'upstream/master' into feature_restclient 2020-09-21 19:31:26 -03:00
João Antônio Duarte
950c81cd28 Merge branch 'master' into feature_restclient 2020-09-21 19:06:01 -03:00
Daniele Teti
19fc11a16c https://github.com/danieleteti/delphimvcframework/issues/421 2020-09-21 12:42:38 +02:00
Daniele Teti
c9c6aaebf3 Added HTML serializer to all RT packages 2020-09-18 10:49:56 +02:00
Daniele Teti
e3f5210b6c Small test refactoring 2020-09-18 09:44:01 +02:00
João Antônio Duarte
b21096b515 RESTClient improvements and LiveTest adjustments 2020-09-17 20:06:24 -03:00
João Antônio Duarte
a9aad4912f Adjustments after the merge 2020-09-16 15:01:50 -03:00
João Antônio Duarte
152756cb03 Merge remote-tracking branch 'upstream/master' into feature_restclient 2020-09-16 14:50:42 -03:00
Daniele Teti
f63cc4469b Improved StaticFilesMiddleware 2020-09-16 15:56:14 +02:00
Daniele Teti
2ae2068807 Improved TMVCStaticFilesMiddleware 2020-09-14 15:52:50 +02:00
João Antônio Duarte
a870bca81b data decompression improvements 2020-09-11 22:24:38 -03:00
João Antônio Duarte
719883282e Merge branch 'master' into feature_restclient 2020-09-11 18:05:46 -03:00
João Antônio Duarte
715a31c0f6 Improvements in the submission of the request body and corrections in handling the response. 2020-09-11 14:55:26 -03:00
Daniele Teti
87eaf90099 Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
# Conflicts:
#	unittests/general/Several/LiveServerTestU.pas
2020-09-08 15:27:04 +02:00
Daniele Teti
b27db6122e Improved EMVCException rendering, added unit tests (202 so far) 2020-09-08 15:25:44 +02:00
Daniele Teti
fe62799eee Reverted all unit test as were before TMVCRESTClient 2020-09-06 15:38:25 +02:00
João Antônio Duarte
78263cbdc4 Removed TMVCRESTClient from unittests 2020-09-04 16:26:16 -03:00
João Antônio Duarte
c12f0af6dc Change to pass the ContentType as a string instead of the enumerated type of RESTClient to decrease the clutter, if you want to implement TMVCRESTClient using another HTTP library 2020-08-27 14:32:09 -03:00
João Antônio Duarte
2b3051f194 Testing fixes 2020-08-26 10:09:47 -03:00
João Antônio Duarte
5d6904991e Merge remote-tracking branch 'upstream/master' into new_restclient 2020-08-26 09:57:56 -03:00
João Antônio Duarte
e701d8f83c RESTAdapter changed to use TMVCRESTClient 2020-08-26 09:05:12 -03:00
João Antônio Duarte
84bc484344 Various fixes and improvements after unit tests 2020-08-25 20:07:21 -03:00
Daniele Teti
2f151d6364 Improved TDuckList to handle simple types too 2020-08-25 17:19:28 +02:00
Daniele Teti
5ed7f7fe95 Added PBKDF2 support for password hashing 2020-08-23 18:56:14 +02:00
Daniele Teti
c05cbfffb7 Improved JSON-RPC Hooks 2020-08-06 17:40:56 +02:00
Daniele Teti
b1c56b6a2c completed unit tests 2020-08-06 00:28:54 +02:00
Daniele Teti
6656314501 formatting 2020-08-05 14:56:11 +02:00
Daniele Teti
75cdf7f720 Hooks signature changed. 2020-08-05 09:50:06 +02:00
Daniele Teti
c90aa1c028 Fixed some unit tests after jsonrpc refactoring 2020-07-29 12:35:12 +02:00
Daniele Teti
4bebea287c Added ActiveRecord unittests for Firebird (using firebird embedded). Now unit tests automatically tests sqlite and firebird. All the other RDBMS are tested manually using activerecord_showcase sample. 2020-07-13 17:05:22 +02:00
Daniele Teti
fb87e9e1f4 https://github.com/danieleteti/delphimvcframework/issues/401 2020-07-02 23:19:36 +02:00
Daniele Teti
3948f62a40 Improved unittest for sqlite 2020-06-25 23:19:00 +02:00
João Antônio Duarte
a6ffb35b6f Added more tests for serializing/deserializing generic objects 2020-06-23 09:00:39 -03:00
Daniele Teti
aaa34ca410 Added "TMVCActiveRecord.SelectOneByRQL", Removed "Context.Request.HeaderNames" 2020-06-22 15:24:20 +02:00
Daniele Teti
e76ece994e Small FIXES for ActiveRecordController 2020-06-18 14:49:06 +02:00
Daniele Teti
516101ebb8 https://github.com/danieleteti/delphimvcframework/issues/388 2020-05-28 22:35:45 +02:00
Daniele Teti
371d09194a UnitTest // Delphi 10.4 Sydney support 2020-05-27 11:28:22 +02:00
Daniele Teti
622d664989 Full UnitTest Linux compatibilities (working on) for 10.4 2020-05-25 19:34:14 +02:00
Daniele Teti
87c712d640 Added procedure WaitForReturn in MVCFramework.Console.pas 2020-05-25 15:18:32 +02:00
Daniele Teti
32fd704d83 New version of MVCFramework.Console.pas with the New Sample 2020-05-25 15:12:46 +02:00
Daniele Teti
309fb10baa Updated LoggerPro to v1.3.3 2020-05-14 19:12:52 +02:00
Daniele Teti
530084271b Improved SPA support 2020-05-14 17:41:20 +02:00
Daniele Teti
028089969a TMVCEngine.Config property is now read-only. Can be changed only in the anonymous method injected in the constructor. (All the samples have been updated - from an idea of @Spinettato a.k.a. Danielino) 2020-05-11 23:39:43 +02:00
Daniele Teti
e0e14be6e5 Added MVCDoNotDeSerializeAttribute (if marked with this attribute, a property is not deserialized) 2020-05-04 12:39:54 +02:00
Daniele Teti
6c96a6ef3e Small fix for relative path and documentroot in staticfilemiddleware 2020-05-02 17:06:59 +02:00
Daniele Teti
ddc5f4d97d JSON-RPC named parameters support 2020-05-02 16:39:32 +02:00
João Antônio Duarte
fb7c664233 All examples using static files have been updated to use TMVCStaticFilesMiddleware 2020-04-28 20:59:41 -03:00
João Antônio Duarte
7dde0cf7d9 Correction of exception raised when middleware tried to map url with invalid characters as path to a file 2020-04-24 21:55:36 -03:00
João Antônio Duarte
ebcda178ff Merge remote-tracking branch 'upstream/master' into middleware_staticfiles 2020-04-24 19:13:44 -03:00
Daniele Teti
1e4d374101 Comepleted ObjectDict support - fixed ncCamelCase mangling 2020-04-24 16:36:18 +02:00
João Antônio Duarte
2e105ec59f The static file server that was at the core of TMVCEngine has been moved to TMVCStaticFilesMiddleware middleware 2020-04-23 21:48:39 -03:00
Daniele Teti
dd64ab4c49 Completed ObjectDict tests 2020-04-21 17:04:04 +02:00
Daniele Teti
d261edb622 Added ncPascalCase, improved ncCamelCase support, improved DataSet Serialization 2020-04-20 17:56:17 +02:00
Daniele Teti
08f01e6633 https://github.com/danieleteti/delphimvcframework/issues/366 2020-04-19 12:23:55 +02:00
Daniele Teti
f853b362b3 https://github.com/danieleteti/delphimvcframework/issues/362 2020-04-18 23:32:24 +02:00
Daniele Teti
26b82080d9 https://github.com/danieleteti/delphimvcframework/issues/330 2020-04-13 16:22:15 +02:00
Daniele Teti
440e979aba Fixed some gitignore entries 2020-04-10 00:28:40 +02:00
João Antônio Duarte
91f2bebcfc
Added support for guid path parameters (#353) 2020-04-09 11:04:45 -03:00
Daniele Teti
18e988d604 https://github.com/danieleteti/delphimvcframework/issues/356 2020-04-08 13:00:32 +02:00
Daniele Teti
4a1ef47bd3 "404 Not Found" exceptions now contains the requested URL (as in the log) 2020-04-07 10:37:33 +02:00
Daniele Teti
d577221a71 Now ActiveRecord PrimaryKey can be string, nullablestring, integer, nullableinteger, int64, nullableint64 2020-03-31 16:23:22 +02:00
Daniele Teti
841edeb114 https://github.com/danieleteti/delphimvcframework/issues/349
https://github.com/danieleteti/delphimvcframework/issues/38
2020-03-31 00:47:35 +02:00
Daniele Teti
99664f141b Refactoring of some internals structures of TMVCActiveRecord 2020-03-25 11:35:25 +01:00
Daniele Teti
71b6108149 Improved deserialization in cases of derived properties 2020-03-23 18:51:57 +01:00
Daniele Teti
406ee139fd Renamed "MVCEnumSerializationTypeAttribute" to "MVCEnumSerializationAttribute"
Added "DataTypeName" in MVCActiveRecord to better use specific RDBMS types (e.g. JSON / JSONP data type in PostgreSQL)
2020-03-12 20:37:48 +01:00
João Antônio Duarte
25d2a909ef Added ability to serialize/desserialize types enumerated by an array of mapped values 2020-03-12 14:24:20 -03:00
Daniele Teti
36c2a2201e Nullable Templates 2020-03-11 01:35:31 +01:00
Daniele Teti
ab2c92c26f https://github.com/danieleteti/delphimvcframework/issues/338 2020-03-08 17:54:10 +01:00
Daniele Teti
ac9f3bc7f6 FIX https://github.com/danieleteti/delphimvcframework/issues/334 2020-03-05 18:34:00 +01:00
Daniele Teti
f99aa89fda Added more characters in URL_MAPPED_PARAMS_ALLOWED_CHARS = ' àèéùòì''"@\[\]\{\}\(\)\=;&#\.:!\_\/,%\w\d\x2D\x3A';
Added more unit tests
2020-03-04 19:56:01 +01:00
Daniele Teti
92dcbd8b40 FIXED a Vulnerability bug which affects some deployment configurations. 2020-02-13 23:33:30 +01:00
Daniele Teti
c36cd13988 3.2.0-boron-RC4 2020-02-05 23:46:38 +01:00
Daniele Teti
4a78322aef Improvement is Nullable primary keys. Added method "Store" 2020-02-03 13:19:55 +01:00
Daniele Teti
42cf51b595 All serialization/deserialization unittests pass for nullables!! :-) 2020-02-03 12:11:42 +01:00
Daniele Teti
3388354743 Serialization support for all the types in MVCFramework.Nullables 2020-02-03 10:51:40 +01:00
Daniele Teti
3233ea123f Fixed a mleak in caso of disconnection while the request is running (https://github.com/danieleteti/delphimvcframework/issues/323) 2020-01-24 10:09:14 +01:00
Daniele Teti
9d7ff23c11 Added more unit tests for MVCActiveRecord 2020-01-08 23:59:41 +01:00
Daniele Teti
8144baf40c Nulls support in MVCActiveRecord (check activerecord_showcase sample) 2020-01-06 16:49:18 +01:00
Daniele Teti
2f43b31bbd v3_2_0-boron-RC2 2019-12-01 20:55:31 +01:00
Daniele Teti
23a108896c JSON properties can be de/serialized verbatim by the default json serializer 2019-11-05 14:40:39 +01:00
Daniele Teti
7ce87edb51 dmvcframework 3.2.0-boron 2019-11-03 16:18:24 +01:00
Daniele Teti
ead05b8d5d dmvcframework 3.2.0-RC0-boron 2019-10-15 12:51:35 +02:00
Daniele Teti
cbbf2956f4 Added support for deserializing generic lists without MVCListOf attribute. 2019-10-15 09:33:53 +02:00
João Antônio Duarte
db9cb7406b Added support for deserialize generic lists without MVCListOf attribute
Unit Tests Added
2019-10-14 18:11:08 -03:00
João Antônio Duarte
58153c1abf Merge remote-tracking branch 'upstream/master' into serialize_interfaces
# Conflicts:
#	sources/MVCFramework.Serializer.JsonDataObjects.pas
#	sources/MVCFramework.pas
2019-10-09 19:59:04 -03:00
Daniele Teti
8b3d0ee384 Improved windowsservice sample 2019-10-10 00:20:03 +02:00
João Antônio Duarte
6a88ff38db Merge remote-tracking branch 'upstream/master' into serialization_enums 2019-09-25 11:43:22 -03:00
Daniele Teti
a3738777a7 Added SwagDoc 2019-09-25 14:54:04 +02:00
João Duarte
530edca638 Added overload to render method for types Iinterfaces 2019-09-18 11:53:54 -03:00
João Duarte
ef64fbaa55 Improvement to serialize nested interfaces 2019-09-18 08:30:50 -03:00
João Duarte
a184165e47 * Serialization for interfaces
Added support for serialization of interface instances
Added unit test
2019-09-17 20:14:54 -03:00
Daniele Teti
698f34354c Added ResponseCreated, ResponseNoContent, ResponseAccepted 2019-09-01 20:36:36 +02:00
Daniele Teti
fea37fed42 RenderCreated 2019-08-28 00:18:40 +02:00
João Antônio Duarte
aeb82ebb63 attribute naming improvement 2019-08-13 15:55:51 -03:00
João Antônio Duarte
4c4b1e204c Added test for serialization of enumerated types 2019-08-12 17:27:36 -03:00
Daniele Teti
cc64a564a8 FIXED compatibility problems with XE7 2019-08-02 12:32:31 +02:00
Daniele Teti
0992ada70a https://github.com/danieleteti/delphimvcframework/issues/225 2019-07-27 00:57:37 +02:00
Daniele Teti
ad38832746 https://github.com/danieleteti/delphimvcframework/issues/230 2019-07-07 17:25:31 +02:00
João Antônio Duarte
21b6edbd8d Added custom serializer for TGUID type fields.
Added unit test for this custom type
2019-06-26 14:31:53 -03:00
Daniele Teti
d554964260 Added optional serializers for TBitmap, TPNGImage and TJPEGImage. IDEExpert has been updated. 2019-06-25 17:33:02 +02:00
Daniele Teti
efd170d9ba Merge branch 'master' of https://github.com/pedrooliveira01/delphimvcframework
All conflicts have been fixed
2019-05-19 14:36:17 +02:00
Daniele Teti
01a8195485 FIX FOR RQL "in" clause
FIX FOR https://github.com/danieleteti/delphimvcframework/issues/219
2019-05-19 11:06:34 +02:00
Pedro
a3aa3a8897 Created Serialization and Deserialization of Array (only string and integer, need complete for another types)
Included a test unit "TestSerializeEntityWithArray" and "TestDeserializeEntityWithArray"
2019-05-17 11:15:18 -03:00
Daniele Teti
7b39d94537 Support for X-HTTP-Method-Override to work behind corporate firewalls. 2019-05-10 00:47:18 +02:00
Daniele Teti
6a664d608c 3.1.1-beryllium-RC5 2019-05-09 21:00:26 +02:00
Daniele Teti
fc28b3ba5e Removed strings indexing 2019-05-02 17:39:17 +02:00
Daniele Teti
77e78b24f3 ISSUE https://github.com/danieleteti/delphimvcframework/issues/205 2019-04-16 23:12:56 +02:00
Pedro
2ad8d9a921 Test unit -> LoadFromJSONArrayStringItems 2019-03-13 10:16:33 -03:00
Daniele Teti
5da30ed243 Extended support for HATEOAS 2019-03-10 16:29:53 +01:00
Daniele Teti
beb059a0e3 Improved support for HATEOAS in renders 2019-03-08 09:34:03 +01:00
Daniele Teti
f7f0ce8548 Fixed! #164 2019-03-06 12:01:00 +01:00
Daniele Teti
9ebb33969a - New overloads for all the Log* calls. Now it is possibile to call LogD(lMyObject) to get logged lMyObject as JSON.
- Added new unit tests for
- Improved `MVCEntitiesGenerator`
2019-03-05 20:57:25 +01:00
Daniele Teti
75e975811b - Improved! In case of unhandled exception TMVCEngine is compliant with the default response content-type (usually it did would reply using text/plain).
- Fix! [issue184](https://github.com/danieleteti/delphimvcframework/issues/184).
2019-02-24 20:43:40 +01:00
Daniele Teti
cd7df5dd36 https://github.com/danieleteti/delphimvcframework/issues/157 2019-01-18 19:04:20 +01:00
Daniele Teti
1b3dc4ae2c - FIXes for Delphi 10.0 Seattle
- New! `TMVCActiveRecord.Count` method (e.g. `TMVCActiveRecord.Count(TCustomer)` returns the number of records for the entity mapped by the class `TCustomer`)
- Change! `TMVCACtiveRecord.GetByPK<T>` raises an exception if the record is not found
- New! `contains` clause has been added in the RQL compiler for Firebird and Interbase
- New Installation procedure! Just open the project group, build all and install the design-time package (which is `dmvcframeworkDT`)
2019-01-18 18:18:52 +01:00
Daniele Teti
8ed859b7d1 New build system based on pyinvoke 2019-01-08 12:48:53 +01:00
Daniele Teti
c5800b3354 Added dmvcframework package
Features freeze for 3.1 (lithium)
Working on the planned issues for this milestone https://github.com/danieleteti/delphimvcframework/milestones/3.1%20(helium)
2018-12-09 23:05:01 +01:00
Daniele Teti
d4a23e52fb Removed unit MVCFramework.TypesAliases.pas
Updated JsonDataObjects.pas
2018-11-24 16:57:04 +01:00
Daniele Teti
05560fa4c1 Compatibility with Delphi 10.3 RIO 2018-11-21 22:42:19 +01:00
Daniele Teti
7ca4ccbe59 Completed refactoring about IMVCTypeSerializer 2018-10-31 01:07:25 +01:00
Daniele Teti
132e169542 Changes to the custom type serializer interface 2018-10-30 13:53:18 +01:00
Daniele Teti
70c1e55e94 New MVCActiveRecord showcase samples
New Unit Tests for Compression in TRESTClient
Updated RQL Parser and compilers
New EntitiesGenerator (alpha)
Improved unittests
Updated landing page
2018-10-23 16:18:50 +02:00
Daniele Teti
96bbb83209 Improved support for MySQL in MVCActiveRecord
Better multi thread handling in MVCActiveRecord
2018-10-14 18:24:07 +02:00
Daniele Teti
bb454af16a - Speed improvement! Removed enhanced visibility for action methods. Now only public and published methods can be used as actions.
- `TMVCController.Create` is `virtual`! Now on your base controllers can be even more powerful!
- FIX for [issue #143](https://github.com/danieleteti/delphimvcframework/issues/143)
2018-08-08 17:12:12 +02:00
Daniele Teti
c305aec5fc https://github.com/danieleteti/delphimvcframework/issues/137 2018-07-16 12:34:10 +02:00
Daniele Teti
34bc5e0638 Added JSON-RPC Notification Support
Added IMVCJSONRPCExecutor for a simpler use of JSON-RPC servers
2018-05-16 19:46:35 +02:00
Daniele Teti
b27fd4264c Removed old releases zips 2018-02-20 23:04:13 +01:00
Daniele Teti
581a000687 Merge remote-tracking branch 'origin/pluggable_mapper'
# Conflicts:
#	CHANGES.TXT
#	README.md
#	ideexpert/DMVC_IDE_Expert_D102Tokyo.dpk
#	ideexpert/DMVC_IDE_Expert_D102Tokyo.dproj
#	lib/delphistompclient
#	lib/dmustache
#	lib/loggerpro
#	samples/jsonwebtoken/AuthenticationU.pas
#	sources/MVCFramework.Commons.pas
#	sources/MVCFramework.HMAC.pas
#	sources/MVCFramework.JWT.pas
#	sources/MVCFramework.MessagingController.pas
#	sources/MVCFramework.Middleware.CORS.pas
#	sources/MVCFramework.Middleware.JWT.pas
#	sources/MVCFramework.RESTClient.pas
#	sources/MVCFramework.pas
#	sources/ObjectsMappers.pas
#	sources/dmvcframework.inc
#	sources/dmvcframeworkbuildconsts.inc
#	unittests/Several/DMVCFrameworkTests.dpr
#	unittests/general/Several/DMVCFrameworkTests.dproj
#	unittests/general/TestServer/TestServer.dproj
2018-02-20 22:51:03 +01:00
Daniele Teti
4daba2ea67 Some refactoring preparing RC13 2018-02-20 22:36:36 +01:00