Daniele Teti
cc64a564a8
FIXED compatibility problems with XE7
2019-08-02 12:32:31 +02:00
João Antônio Duarte
85d5518ea1
Improved Swaggerdocapi example
...
Added JSonSchema creation from object in MVCSwagResponsesAttribute
2019-08-01 18:07:23 -03:00
João Antônio Duarte
439224da4f
JWT authentication documentation improvements:
...
- JWT UrlSegment set to basic authentication format
2019-08-01 17:31:59 -03:00
João Antônio Duarte
69788525c2
improvements on swaggerdocapi example
...
Added security to methods with MVCRequiresAuthentication attribute
2019-07-31 08:40:11 -03:00
João Antônio Duarte
7d801d94a8
Security Definitions added to documentation when TMVCJWTAuthenticationMiddleware is added to Engine.
...
The SwaggerDocApi example is not yet functional, I will still make improvements to the example
2019-07-30 18:16:10 -03:00
Geoffrey Smith
e4f57686e2
Add Start of Clientside REST API Generator
2019-07-30 16:29:31 +10:00
João Antônio Duarte
13a88503c7
Initial commit of creation JsonSchema from Tclass
2019-07-29 17:50:12 -03:00
Geoffrey Smith
fcd04089dd
Initial Commit of TMVCSwaggerController - Server Swagger Document creator
2019-07-29 23:50:09 +10:00
Geoffrey Smith
f406468754
Add Attributes used for documenting MVC Controllers and Data Structures
2019-07-29 23:47:12 +10:00
Geoffrey Smith
6029777b10
Add back units previously removed from uses clauses
2019-07-29 23:26:33 +10:00
João Antônio Duarte
72424b4910
Added Swag Parameter description
2019-07-29 10:09:55 -03:00
Geoffrey Smith
45acb0437c
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2019-07-29 22:10:09 +10:00
João Antônio Duarte
f56768d455
Fixes in adding JsonSchema to documentation
2019-07-29 08:58:08 -03:00
João Antônio Duarte
c88a0694ae
Warnings Removal
...
Access violation fixes
2019-07-29 08:37:31 -03:00
João Antônio Duarte
8f86df526d
Added API documentation with Swagger
2019-07-27 15:23:48 -03:00
Daniele Teti
0992ada70a
https://github.com/danieleteti/delphimvcframework/issues/225
2019-07-27 00:57:37 +02:00
Daniele Teti
b183eddd81
Small improvements in GetContentFields
2019-07-26 21:30:36 +02:00
viniciussanchez
fc4966ef25
Added LowerCase in ContentField name
2019-07-26 14:37:18 -03:00
viniciussanchez
ca5278c4ac
Adjusted lazy-loading TDictionary
2019-07-26 14:28:45 -03:00
viniciussanchez
7004afd101
ContentFields property created in class TMVCWebRequest
2019-07-26 13:59:07 -03:00
viniciussanchez
47a2a0592f
Render procedure overload to accept StatusCode and JSON as a parameter.
2019-07-26 10:04:19 -03:00
viniciussanchez
338db990fd
Remove System.JSON reference
2019-07-26 09:45:40 -03:00
viniciussanchez
ba9b896af8
AErrorMessage default is empty when AErrorCode is 204 (No content)
2019-07-26 09:42:57 -03:00
viniciussanchez
db5b505cf7
IETF - RFC 6750 #244
2019-07-26 08:51:11 -03:00
Daniele Teti
82ba7efa8a
Merge pull request #242 from joaoduarte19/jwt_improvements
...
JWT Token Encoding Enhancements
2019-07-26 09:34:11 +02:00
Daniele Teti
9470c85514
Some fixes after the merge of https://github.com/danieleteti/delphimvcframework/issues/241
2019-07-24 20:49:08 +02:00
Vinicius Sanchez
a2176c1600
IETF - RCF 7519
...
#245
2019-07-24 14:33:58 -03:00
Vinicius Sanchez
7acffd4fab
Implemented validation to not give error when not inform NotBefore and IssuedAt
2019-07-24 11:12:05 -03:00
Vinicius Sanchez
f15d02171e
IETF national convention - RFC 6750
...
#241
*If possible remove parameters to leave in IETF default*
2019-07-24 09:35:28 -03:00
Vinicius Sanchez
ca9cbba3cb
Update MVCFramework.Middleware.JWT.pas
2019-07-23 22:50:57 -03:00
Vinicius Sanchez
180dc2e988
#241 - RFC 6750
...
The POST verb is not required for Bearer requests. #241 - RFC 6750
2019-07-22 16:51:28 -03:00
João Antônio Duarte
856fa66118
when adding to the JWT Token a Payload containing special characters and accent was not decoded correctly by the client application. It has been fixed by encoding the Token as a Base64 with UTF-8 charset.
...
System.JSON was changed by JsonDataObjects in unit MVCFramework.JWT
2019-07-19 14:20:46 -03:00
Daniele Teti
56476d449e
https://github.com/danieleteti/delphimvcframework/issues/229
2019-07-19 17:23:19 +02:00
Daniele Teti
9af7d3fb54
Merge pull request #236 from joaoduarte19/general_changes
...
Added parameter to inform string encoding.
2019-07-11 18:27:01 +02:00
Daniele Teti
d77c77758f
https://github.com/danieleteti/delphimvcframework/issues/230
2019-07-08 19:26:45 +02:00
Daniele Teti
ad38832746
https://github.com/danieleteti/delphimvcframework/issues/230
2019-07-07 17:25:31 +02:00
Daniele Teti
de441f63a3
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2019-07-06 19:33:24 +02:00
Daniele Teti
689dbdd997
Removed optional custom type serializer from the template
2019-07-06 19:33:11 +02:00
geoffsmith82
2e239baacb
Remove unneeded Indy file references
2019-07-06 16:11:18 +10:00
João Antônio Duarte
15aa842bf2
Added parameter to inform string encoding.
2019-07-02 15:43:37 -03:00
João Antônio Duarte
4d218ef94a
Added support for comparisons with null fields
2019-07-02 11:59:01 -03: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
7363304ba8
Added support for SQLite in MVCActiveRecord
2019-06-24 21:00:17 +02:00
Daniele Teti
0cbcbd51f7
Merge pull request #227 from joaoduarte19/jwt_improvements
...
JWT middleware improvements
2019-06-24 12:47:26 +02:00
Daniele Teti
cf46ee079e
Merge pull request #226 from geoffsmith82/OnParseAuthentication
...
Allow Authorization header to be set without getting EIdHTTPUnsupport…
2019-06-24 12:45:43 +02:00
Daniele Teti
935b5d4d70
Merge pull request #222 from marcelologica/master
...
No set param datatype on TFireDACUtils.ObjectToParameters method
2019-06-20 18:13:22 +02:00
João Antônio Duarte
ed3b2f9731
Added Boolean type support in RQLParser
2019-06-11 16:50:00 -03:00
João Antônio Duarte
d6ff2b5964
JWT Middleware Altered to Allow Insert custom headers Authentication, Username and Password
2019-06-11 14:42:03 -03:00
geoffsmith82
3b42395a1e
Allow Authorization header to be set without getting EIdHTTPUnsupportedAuthorisationScheme
2019-06-06 14:54:15 +10:00
Marcelo Varela
b97f305d70
No set param datatype on TFireDACUtils.ObjectToParameters method
2019-05-29 16:27:50 -03: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
39741b08ec
Small improvements on webrequest class
2019-05-19 14:20:15 +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
53bdb8acc0
Improved MVCActiveRecord
2019-05-16 00:17:19 +02:00
Pedro
b433abc9a3
Add FHTTP.Request.UserAgent when create FHTTP
2019-05-15 11:25:22 -03:00
Pedro
365034a067
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2019-05-13 13:38:34 -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
f1ff9fa94c
Sample for HATEOS
2019-05-08 20:20:25 +02:00
Daniele Teti
a05a599931
Simplified HATEOAS support
2019-05-08 09:11:08 +02:00
Daniele Teti
fc28b3ba5e
Removed strings indexing
2019-05-02 17:39:17 +02:00
Pedro
231e10aa2f
Forcar a inclusao no Create conter a primary key, evitar erro de banco
2019-04-20 09:32:31 -03:00
Daniele Teti
260445c902
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2019-04-20 12:10:45 +02:00
Daniele Teti
020cdbc0fa
Added custom exception handling. Based on work of David Moorhouse ( https://github.com/danieleteti/delphimvcframework/issues/191 )
2019-04-20 12:10:33 +02:00
João Antônio Duarte
6f215e6f9c
Fixed bug when serializing dataset. When the first dataset record has a field that is null, it would serialize all records in this field to null, even if the next records have data
2019-04-17 11:52:45 -03:00
Daniele Teti
7715a60e8d
https://github.com/danieleteti/delphimvcframework/issues/154
2019-04-16 23:36:58 +02:00
Daniele Teti
77e78b24f3
ISSUE https://github.com/danieleteti/delphimvcframework/issues/205
2019-04-16 23:12:56 +02:00
Daniele Teti
703043f67a
Merge pull request #206 from joaoduarte19/tmvccompressionmiddleware_fix
...
Correction in TMVCCompressionMiddleware
2019-04-03 09:49:05 +02:00
Daniele Teti
8c19e63f3d
Merge pull request #204 from joaoduarte19/rql_changes
...
RQL Changes
2019-04-03 09:46:42 +02:00
Daniele Teti
d20ef3fe41
Added '/describe' to json-rpc
...
Added 'MVCInheritable' attribute
2019-04-03 09:45:31 +02:00
João Antônio Duarte
9b240d36e4
Correction in TMVCCompressionMiddleware to not compress ResponseStream of type TFileStream
2019-04-01 18:03:55 -03:00
João Antônio Duarte
2f9f6cfffc
Added tests for in operator in rql2sql tool
2019-03-25 11:29:35 -03:00
João Antônio Duarte
b25d8a97f9
Added RQL Operator in.
...
Example: RQL in(codperson,[1,2,3,4]) results WHERE (codperson IN (1,2,3,4))
Correction in MatchFieldStringValue to Generate Exception when finding end of string without closing quotes.
2019-03-25 11:11:56 -03:00
Daniele Teti
3a0981f207
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2019-03-19 12:06:35 +01:00
Daniele Teti
e86d004808
Compatibility Issues Fixed
2019-03-19 12:06:25 +01:00
Pedro
0a49f8e539
Merge branch 'master' of https://github.com/pedrooliveira01/delphimvcframework
2019-03-18 10:08:43 -03:00
Pedro
45119236cf
Add event OnBeforeExecuteSQL (MVCFramework.ActiveRecord.pas)
...
- For modify SQL before execute
Remove warning in MapTValueToParam
Add Handle UpdateEntity (MVCFramework.ActiveRecordController.pas)
2019-03-18 10:08:34 -03:00
Pedro Oliveira
3afd30b595
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2019-03-17 13:30:10 -03:00
Daniele Teti
dc2328c89a
Added Dict function to easily return a dictionary of strings.
...
Improved exceptions rendering.
2019-03-16 17:21:42 +01:00
Pedro
10359e9e62
Add into MapColumnToTValue ftFloat
2019-03-14 08:14:12 -03:00
Pedro
8715a6f21c
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2019-03-13 09:20:33 -03:00
Pedro
eb27bdabaf
Fixed compatibility with linux (NEXTGEN)
2019-03-13 08:38:04 -03:00
Daniele Teti
5da30ed243
Extended support for HATEOAS
2019-03-10 16:29:53 +01:00
Régys Borges da Silveira
09dab846aa
Change into class helper TMVCStreamHelper to suporte VCL and FMX strings
2019-03-08 13:45:56 -03:00
Régys Borges da Silveira
15e9d11e7b
- Fix to correct read the error message from server.
2019-03-08 10:27:47 -03:00
Daniele Teti
8ee3efc384
dmvcframework-3_1_1-beryllium-RC3
2019-03-08 09:49:33 +01:00
Daniele Teti
beb059a0e3
Improved support for HATEOAS in renders
2019-03-08 09:34:03 +01:00
Daniele Teti
98d4b353f4
TMVCConfig.SaveToFile and TMVCConfig.LoadFromFile now use the default serializer
2019-03-08 07:15:58 +01:00
Daniele Teti
89ea997cda
Removed System.JSON dependency from MVCFramework.Middleware.JWT.pas (thank you to joaoduarte19)
2019-03-06 22:28:22 +01:00
Pedro
c6fa32bcb0
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2019-03-06 15:27:09 -03:00
João Antônio Duarte
10b234666f
Removed references to System.JSON
...
Improved return of exceptions
2019-03-06 13:38:26 -03: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
Pedro
506a187418
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2019-02-25 08:51:35 -03:00
Pedro
3878be7387
.
2019-02-25 08:48:36 -03: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
João Antônio Duarte
62ead877a6
Added JsonArray desserialization to TDataSet type field in Object
2019-02-22 14:22:52 -03:00
Daniele Teti
cfb4a3268c
- Small fixes on ActiveRecordController and PostgreSQL SQLGenerator
2019-02-21 20:27:43 +01:00
Daniele Teti
a57cc3581f
- New! TMVCActiveRecord.DeleteAll
deletes all the records from a table
...
- New! `TMVCActiveRecord.DeleteRQL` deletes records using an `RQL` expression as `where` clause.
- New! Microsoft SQLServer Support in ActiveRecord and RQL (thanks to one of the biggest Delphi based company in Italy which heavily uses DMVCFramework)
- Improved! `ActiveRecordShowCase` sample is much better now.
2019-02-21 18:12:01 +01:00
Daniele Teti
425a7c5d26
Merge pull request #187 from pedrooliveira01/master
...
Pedro <pedrooliveira__@hotmail.com>
2019-02-21 11:07:17 +01:00
Régys Borges da Silveira
30a8d3f163
fixes to correct compile in Delphi Tokyo and Rio
2019-02-19 09:05:12 -03:00
Pedro
11a286f3db
Pedro <pedrooliveira__@hotmail.com>
2019-02-15 09:21:11 -02:00
Daniele Teti
1acdb86710
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2019-02-05 18:09:11 +01:00
Daniele Teti
3a0bfcdee7
Now primary Key is the first field in the ActiveRecord Mapping (if exists)
2019-02-05 18:08:54 +01:00
Daniele Teti
20a0e88791
Improved FileUpload Sample, better cacheitem handling, improved TemplatePro view engine
2019-02-01 20:11:33 +01:00
João Antônio Duarte
7b8af70a73
Added RQL compiler for MSSQL
2019-01-30 17:49:46 -02:00
Daniele Teti
73573c0130
3.1.1 (beryllium) RC2
2019-01-29 17:59:14 +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
3174504b90
Fix for berlin
...
https://www.facebook.com/photo.php?fbid=10217757569041117&set=gm.2029342450482217&type=3&theater&ifg=1
2019-01-16 14:24:13 +01:00
Daniele Teti
98197beb01
Added TMVCActiveRecord.Count
2019-01-13 19:18:57 +01:00
Daniele Teti
f09ae31a91
Added PostgreSQL SQLGenerator
2019-01-13 18:57:15 +01:00
joao.duarte
8edd6241e6
Bug fix when deserialize object with custom type and JSON with null value
2019-01-10 14:30:40 -02:00
Daniele Teti
8ed859b7d1
New build system based on pyinvoke
2019-01-08 12:48:53 +01:00
Daniele Teti
f64eebff6a
Improvements to the JSON-RPC layer, added MAX_REQUEST_SIZE check and config key. UPdated IDE Expert to add the new config key in the generated code.
2018-12-17 00:40:27 +01:00
Daniele Teti
2ec82ee373
JSON-RPC requests can call only functions, while JSON-RPC notifications can call only procedures.
2018-12-12 22:30:13 +01:00
Daniele Teti
f6c4382291
JSON-RPC Refactoring
2018-12-12 14:48:35 +01:00
Daniele Teti
835fc651da
changed serialization jsonrpc result
2018-12-12 11:00:52 +01:00
Daniele Teti
2ea6ceb1ae
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2018-12-09 23:05:11 +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
joao.duarte
d0197df7cf
Added RQL Operator Contains
2018-11-27 16:28:21 -02:00
joao.duarte
b4c4a64c14
Added RQL Parser for PostgreSQL
2018-11-27 16:27:36 -02: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
29f03e819e
Added ability to automatically expose PODO through JSON-RPC interface
...
FIX https://github.com/danieleteti/delphimvcframework/issues/160
FIX https://www.facebook.com/groups/delphimvcframework/?multi_permalinks=1951719131577883&comment_id=1952551261494670¬if_id=1542833848942998¬if_t=feedback_reaction_generic
2018-11-21 22:14:50 +01:00
Daniele Teti
9825782cb0
Merge pull request #158 from henriquewerlang/master
...
URL property
2018-11-20 09:40:52 +01:00
Daniele Teti
505710f9cd
Small fixes to custom stream json serializer
2018-11-09 18:12:29 +01:00
Daniele Teti
07255a8b23
Refactored MVCActiveRecord framework, added *.SQLGenerators.* units
2018-11-02 21:43:18 +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
Henrique Gottardi Werlang
8fd6004579
Criado uma propriedade para o usuário conseguir colocar a URL completa, e não em pedaços apenas.
2018-10-24 18:07:31 -03: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
9dd04f026f
Added MySQL/MariaDB support for MVCActiveRecord and RQL compiler
2018-09-28 18:33:54 +02:00
Daniele Teti
4672b81c7b
RQL support added to MVCActiveRecord
2018-09-28 13:02:48 +02:00
Daniele Teti
98499a3b97
Added RQL2SQL parser
2018-09-27 12:27:13 +02:00
Daniele Teti
e4cd5894ae
MVCActiveRecord Framework, Sample for MVCActiveRecord Framework
2018-09-25 15:38:52 +02:00
geoffsmith82
b28c6927a6
Re-arranged file to minimise the use of $IFDEFS
2018-08-25 17:44:04 +10:00
geoffsmith82
02ac9cdd31
Added $IFDEF around System.Hash
2018-08-25 17:06:50 +10:00
geoffsmith82
48ced29d73
Added Wrapper classes to enable using built-in Delphi HMAC Classes
2018-08-25 17:03:43 +10: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
7998811c74
- 404
and 500
status code returns always a text/plain
content-type
...
- Refactored ISAPI sample
2018-08-08 15:43:37 +02:00
Daniele Teti
00d5a9699a
- Config[TMVCConfigKey.FallbackResource] is served only if request path is empty or /
.
...
- Now the JSON-RPC executor provides methods to handle HTTP headers for JSON-RPC requests and notifications.
- FIX for [issue #141 ](https://github.com/danieleteti/delphimvcframework/issues/141 )
- `TDataSetHolder` is a new render that is able to render a dataset with a set of custom metadata (eg `count`,`page` etc). Check [issue #137 ](https://github.com/danieleteti/delphimvcframework/issues/137 )
2018-08-05 20:31:56 +02:00
Daniele Teti
c305aec5fc
https://github.com/danieleteti/delphimvcframework/issues/137
2018-07-16 12:34:10 +02:00
Daniele Teti
a4381ec719
Changed the behavior of the JWT LiveValidityWindows
...
Added milligram.css to some samples
2018-05-17 21:57:03 +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
f09f12038f
Added submodules + fix from Andrea Ciotti
2018-03-14 12:30:41 +01:00
OneideLuizSchneider
f0b6c9a51d
Add ProxyUsername and ProxyPassword
2018-03-10 19:51:11 -03:00
Daniele Teti
674c9feac9
Preparing 3.0 hydrogen
2018-02-20 23:33:50 +01:00
Daniele Teti
4daba2ea67
Some refactoring preparing RC13
2018-02-20 22:36:36 +01:00
Daniele Teti
b49bc82d8b
3.0 RC12 hydrogen
2018-01-29 17:30:53 +01:00
Daniele Teti
6d5c85d427
Implemented https://github.com/danieleteti/delphimvcframework/issues/114
2017-12-12 20:04:01 +01:00
Daniele Teti
2a5892da6b
Implemented https://github.com/danieleteti/delphimvcframework/issues/115
2017-12-12 18:32:41 +01:00
Daniele Teti
ae3a3ec4e6
Added ViewData and ViewDataset. New Compression Sample.
2017-11-23 17:31:26 +01:00
Daniele Teti
233786ae82
https://github.com/danieleteti/delphimvcframework/issues/107
2017-11-16 22:49:38 +01:00
Daniele Teti
a8d57bb78b
RC10
2017-10-16 22:57:49 +02:00
Daniele Teti
84ccc385c1
Improved JSON-RPC support
...
Improved JSON-RPC sample
2017-10-10 12:20:11 +02:00
Daniele Teti
ac654658f1
Improved JSON RPC 2.0 Client Sample
2017-10-09 16:17:34 +02:00
Daniele Teti
df0479d251
Server Sent Event 2 Sample
2017-10-09 10:41:49 +02:00
Daniele Teti
417ba8850d
JSON-RPC Support completed
...
Added JSON-RPC sample
Added TDataSet.LoadFromTValue
2017-09-28 00:15:35 +02:00
Daniele Teti
ee4f1fc11d
Refactored implementation of JSON-RPC 2.0
2017-09-26 01:02:27 +02:00
Daniele Teti
6321021430
Initial commit for JSON-RPC 2.0
2017-09-24 19:41:23 +02:00
Daniele Teti
25df8e9035
Fixed a rare bug on TEncoding and BodyAs<T>
...
Small JWT code improvements
2017-09-23 15:03:55 +02:00
Daniele Teti
4942c3253b
JWT Optimization
2017-09-22 09:34:33 +02:00
Daniele Teti
a2718115a0
Small FIX for Delphi XE6
2017-09-21 23:11:50 +02:00
Daniele Teti
121b6359e1
- Removed ContentEncoding
...
FIX https://github.com/danieleteti/delphimvcframework/issues/105
2017-09-08 17:00:46 +02:00
Daniele Teti
fc72c8c49b
Some minor fixes.
...
All protected serializers methods are now public so that is possible to use the low level serialization as was possibile with the old ObjectsMappers.
2017-09-07 00:11:25 +02:00
Daniele Teti
0b9b8a01bf
FIX https://github.com/danieleteti/delphimvcframework/issues/83
2017-08-29 11:54:29 +02:00
Daniele Teti
59b6208356
https://github.com/danieleteti/delphimvcframework/issues/90
2017-07-17 11:48:26 +02:00
Daniele Teti
c876916400
RC8 FIXED
2017-07-17 10:42:13 +02:00
Daniele Teti
b3e0bbdf91
RC8
...
ADDED new action in the renders.dproj sample to show how to render a list with metadata using a wrapper object
CHANGE Optimized some rtti searches in the MVCFramework.Serializer.Abstract.pas
ADDED Cache support for internal use
CHANGED Restored JWT aLoginURL Paramater
ADDED LiveValidityWindowInSeconds for JWT (check the new sample)
2017-07-16 19:39:03 +02:00
Daniele Teti
dcc27fa794
ADDED restored LoginURL parameter in the JWT Middleware to customize the login end-point for JWT
...
ADDED better error checking in the TRESTClient
2017-07-14 18:23:00 +02:00
Daniele Teti
99d2951078
ADDED Support for enumeration also for JSONDataObject base serializer
2017-07-12 11:39:50 +02:00
Daniele Teti
8eb55556bc
ADDED support for enumeration types in System.JSON based serializer
2017-07-12 01:02:59 +02:00
Daniele Teti
e52aacc391
ADDED LiveValidityWindowsInSeconds to the JWT classes.
2017-07-12 00:32:37 +02:00
Daniele Teti
f108357a92
FIX JWT (ported from 2.x branch ( 247f25e519
)
...
SSE Sample updated
2017-07-05 00:19:38 +02:00
Daniele Teti
d6a04c89c2
3_0_0_hydrogen_RC6
2017-06-22 16:19:13 +02:00
Daniele Teti
d624535e85
ROUTER Optimization (50% faster)
2017-06-02 00:12:00 +02:00
Daniele Teti
7f9580a64e
FIX now CORS + JWT middlewares works together
2017-05-31 08:49:03 +02:00
Daniele Teti
82ef760987
REMOVED ObjectsMappers.pas (finally!)
2017-05-25 16:58:07 +02:00
Daniele Teti
0d8e5f842a
Added serversentevents sample
...
Handled AutoRefCount properties on ARC platform
2017-05-25 12:31:05 +02:00
Daniele Teti
7517df93c6
Merge pull request #80 from janidan/RolebasedAuthHandler
...
Attribute driven Rolebased Authorization Handler
2017-05-25 10:32:02 +02:00
Daniele Teti
a678421e06
Updated sample render
...
JsonDataObjects Serializer not produced compact json
2017-05-25 10:31:26 +02:00
janidan
cbd83751ee
Added contribution message
2017-05-18 07:02:07 +02:00
Daniele Teti
ff1bc73949
ADDED an action which uses a custom serializer in sample "renders.dproj"
...
NEW the JsonDataObjects based serializer is the default serializer
FIX Rendering a nil value, will result in a "null" json (with the json serializers)
2017-05-18 00:38:19 +02:00
Daniele Teti
9d0ab1cf45
FIX TRESTAdapter
...
FIX JSONDataObjects deserialization when some json value is null
Improved IDEExpert (now can generate CRUD methods and there is a more explicative sample method name)
REMOVED delphistompclient from submodules. It will be used as external library not required by the core.
2017-05-17 22:35:07 +02:00
janidan
6d9e584926
Added functionality to allow the definition of OR connected Roles
2017-05-16 18:34:47 +02:00
janidan
256a629360
Added basic requires Authentication Attribute
2017-05-16 07:18:06 +02:00
janidan
ab519d45db
Added feature to add dynamic roles that can resolve request parameters. e.g. [MVCRequiresRole('($branch):read:customers')] on a controller that supplies the GET /branch/EUROPE/customers resource.
2017-05-15 14:58:13 +02:00
janidan
ccb0ec37d8
Implemented initial version of a role based auth handler. See sample for usage.
2017-05-12 12:48:44 +02:00
Daniele Teti
2f7d2fe6b0
https://github.com/danieleteti/delphimvcframework/issues/79
2017-05-11 00:31:02 +02:00
Daniele Teti
7900898df8
FIXED some problems with built-in actions
...
Polished the IDE Expert
Preparing for RC3
2017-05-10 23:28:47 +02:00
Daniele Teti
1b20254836
3.0.0 hydrogen RC2
2017-05-09 23:14:20 +02:00
Daniele Teti
a866a37b27
3.0.0 hydrogen RC1
2017-05-09 13:38:03 +02:00
Daniele Teti
c237c4f049
3.0.0 hydrogen
2017-05-09 10:49:43 +02:00
Daniele Teti
96dc31e97b
Added support for multiple parameter with the same name in the http standard submit.
2017-05-08 17:27:00 +02:00
Daniele Teti
4e366e5a53
Updated some demos
...
Added overload for Render(TDataSet)
Changed default serialization for Render(TDataSet)
2017-04-29 23:57:32 +02:00
Daniele Teti
980fcbfab8
FIX TRESTClient
2017-04-26 14:40:08 +02:00
Daniele Teti
52e15c4eca
refactored some ObjectsMappers responsibilities
...
Client part of Unit test doesn't compile
2017-04-24 00:21:00 +02:00
Daniele Teti
4108b63405
FIXED a bug with ftAutoInc field type
...
Updated routingsample.dproj and renders.dproj
2017-04-20 23:49:37 +02:00
Daniele Teti
53ecae82db
TestServer OK on linux. All unit tests are ok.
2017-04-14 16:43:53 +02:00
Daniele Teti
9f6675e349
Deprecation warnings for some attributes
2017-04-13 12:47:05 +02:00
Daniele Teti
aadceee80f
Adapted to the single file for StompClient
2017-04-04 13:04:29 +02:00
Ezequiel Juliano Müller
503869635e
Version 3 Settings in Sample Applications
2017-03-30 16:22:54 -03:00
Daniele Teti
fcec5e7370
FIX some demos
2017-03-30 17:00:12 +02:00
Ezequiel Juliano Müller
dde2c648b3
Correction in serializers with Currency fields. Removal of Hints.
2017-03-30 11:04:12 -03:00
Ezequiel Juliano Müller
28e37ea138
Merge branch 'pluggable_mapper' of https://github.com/danieleteti/delphimvcframework into pluggable_mapper
2017-03-30 10:56:30 -03:00
Ezequiel Juliano Müller
8764797c21
Add Deserialize DataSet (JsonDataObjects and SystemJSON)
2017-03-30 10:56:24 -03:00
Daniele Teti
1f128c443f
FIXED DataSetSerialize now serializes Currency as Number
...
UPDATED ServerSideView engine (now there is no need to do json conversion twice)
CHECKED renders.dproj
2017-03-29 23:15:22 +02:00
Ezequiel Juliano Müller
74f921cc76
Adding DataSets Serialization
2017-03-29 09:49:35 -03:00
Ezequiel Juliano Müller
80e71b3f65
Add MVCFramework.Serializer.Abstract and MVCDataSetFieldAttribute and MVCSerializeAttribute
2017-03-28 09:52:13 -03:00
Ezequiel Juliano Müller
372bf9bc13
Refactoring, standardizing names and removing unnecessary dependencies.
2017-03-23 14:51:25 -03:00
Ezequiel Juliano Müller
611f297425
Changes in unit tests
2017-03-20 17:42:28 -03:00
Ezequiel Juliano Müller
ee9659762b
Refactoring and Removing Dependencies
2017-03-20 15:08:01 -03:00
Ezequiel Juliano Müller
45595ee144
Refactoring MVCFramework.Commons
2017-03-20 09:55:46 -03:00
Ezequiel Juliano Müller
eae30a341f
Merge branch 'pluggable_mapper' of https://github.com/danieleteti/delphimvcframework into pluggable_mapper
2017-03-13 16:53:12 -03:00
Ezequiel Juliano Müller
5f34de36b1
Refactoring and Removing Dependency with SystemJSON and Mapper
2017-03-13 16:52:11 -03:00
Daniele Teti
4a1336d7ca
Removed JSONObjectToObjectFields
2017-03-07 21:42:19 +01:00
Ezequiel Juliano Müller
d0f3961bed
Add initial sample with JsonDataObjects serializer
2017-03-02 15:29:43 -03:00
Desenvolvimento
1d750b90e6
Refactoring MVCFramework.DuckTyping. Remove global variables.
2017-03-02 13:39:41 -03:00
Desenvolvimento
97d3c552ca
Add TMVCAbstractSerializer
2017-03-02 08:57:40 -03:00
Desenvolvimento
6a27680a0a
Merge branch 'pluggable_mapper' of https://github.com/danieleteti/delphimvcframework into pluggable_mapper
...
# Conflicts:
# sources/MVCFramework.Serializer.Commons.pas
2017-03-01 17:43:16 -03:00
Desenvolvimento
88b8e7da3c
Refactoring the System JSON Serializer. Adding the serializer to JsonDataObjects. Problems with some unit tests.
2017-03-01 17:40:57 -03:00
Daniele Teti
3580d5ab5e
MERGED https://github.com/danieleteti/delphimvcframework/pull/72
...
MERGED https://github.com/danieleteti/delphimvcframework/pull/73
2017-02-24 14:20:05 +01:00
Daniele Teti
c7c738a00e
Removed RenderJSON
2017-02-22 19:50:49 +01:00
Daniele Teti
51351a6f73
removed *Strict serialization type
...
added TMVCSerializerStrictJSON
2017-02-13 20:51:59 +01:00
Daniele Teti
f98d39375f
CustomTypeSerializers Refactoring
...
Added more unit test
2017-02-10 18:48:19 +01:00
Daniele Teti
c2f51d4b11
CustomTypes + UnitTests
2017-02-10 14:20:06 +01:00
Daniele Teti
4cc5b6560c
CustomTypesSerialiers
2017-02-09 19:34:12 +01:00
Daniele Teti
c80f078337
TValue de/serialization
2017-02-09 11:24:24 +01:00
Daniele Teti
9b70ee40fc
IMPLEMENTED
...
IMVCSerUnSer = interface
['{1ECA942A-E3C4-45DD-9D23-C00363B5E334}']
function SerializeObject(AObject: TObject; AIgnoredProperties: array of string): String;
function SerializeObjectStrict(AObject: TObject): String;
function SerializeDataSet(ADataSet: TDataSet; AIgnoredFields: array of string): String;
function SerializeCollection(AList: TObject; AIgnoredProperties: array of string): String;
function SerializeCollectionStrict(AList: TObject): String;
procedure DeserializeObject(ASerializedObject: String; AObject: TObject);
procedure DeserializeCollection(ASerializedObjectList: string; AList: IMVCList; AClazz: TClass);
end;
2017-02-08 18:30:32 +01:00
Daniele Teti
862f31a1ce
Added 'Renderer' in TMVCController
2017-02-08 11:42:35 +01:00
Daniele Teti
9ef9ede924
REMOVING WARNINGS
2017-02-07 16:32:54 +01:00
Daniele Teti
26c0eb5eb8
TEST OK FOR JSON SERIALIZER (BUILTIN JSON PARSER)
...
TestSerUnSerObject
TestSerUnSerObjectList
2017-02-07 16:06:58 +01:00
Daniele Teti
56b78738e4
Serializer: First TEST OK
2017-02-07 14:08:51 +01:00
Daniele Teti
c8074649a1
2.1.3 (lithium)
...
FIX https://github.com/danieleteti/delphimvcframework/issues/64
ADDED Unit Tests for avoid regressions
2017-01-29 19:02:41 +01:00
Daniele Teti
32caa1edcd
2.1.2 (helium)
...
FIX for Delphi versions who don't have TJSONBool (Delphi XE8 or older)
Added new conditional define in dmvcframework.inc: JSONBOOL (defined for Delphi Seattle+)
2017-01-29 18:40:54 +01:00
Daniele Teti
71907802f0
ADDED SEMANTIC VERSION (DMVCFRAMEWORK_VERSION const in MVCFramework.Commons.pas hold the current version)
...
Updated the IDE Expert to show the current version of the framework
FIX to the mapper about the datasets null values (needs to be chack in old Delphi versions)
FIX to the dataset boolean values
ADDED more unit tests about nullability
2017-01-29 16:11:14 +01:00
Daniele Teti
03be713c93
FIX - Now the logs are created always in the module path (by default)
2017-01-26 20:07:19 +01:00
spinettaro
72475e4b96
fixed session timeout when timeout value is 0
2017-01-20 17:29:09 +01:00
Daniele Teti
808e3902d1
Moved TMVCHTTPMethodType and TMVCHTTPMethods to MVCFramework.Commons.pas (You controllers may not compile animore without using this unit)
...
Better mobile support for RESTAdapter
Better IFDEFing
2017-01-18 21:54:16 +01:00
Daniele Teti
ccc8ee90ab
FIX OnBeforeAction (Thank you to Marco Mottadelli)
...
More unit tests
Refactoring for XE6
Updated copyright to 2017
2017-01-05 12:45:51 +01:00
Daniele Teti
4092b08179
New Conditional Defines:
...
USEFIREDAC
USEDBX
STARTEREDITION
2017-01-03 13:35:49 +01:00
Daniele Teti
32e7a8d325
Added features selection in dmvcframework.inc
...
Added MVCFramework.Patches.pas which should try to uniform interfaces of the changed classes in different versions of Delphi
2016-12-30 20:42:49 +01:00
Daniele Teti
05fb9259ae
Compilable with XE6 and older
...
New unit tests
2016-12-29 19:29:22 +01:00
Daniele Teti
3b1e19ec40
https://github.com/danieleteti/delphimvcframework/issues/63
2016-12-28 10:01:02 +01:00
spinettaro
24fa42f483
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2016-12-13 18:16:35 +01:00
spinettaro
a4a3ea533a
Set Stream position to 0, before sending the stream, in SendStream method
...
This fix stream rendering when DMVC is under apache
2016-12-13 18:16:12 +01:00
Daniele Teti
97d944a56a
Workaround for webroker apache (maybe IIS) integration
2016-12-13 15:43:54 +01:00
Daniele Teti
c8d176485f
Fix with german chars
2016-12-12 14:37:32 +01:00
Daniele Teti
7c2acc9738
Encoding fixes
...
Preparation for output compression
More unit tests
2016-12-07 19:36:03 +01:00
Daniele Teti
60ef18d148
ADDED
...
Config[TMVCConfigKey.FallbackResource]
Defines a default URL for requests that don't map to a route or a file (useful for client side web app)
The experts generates a Config[TMVCConfigKey.FallbackResource] which ponts to 'index.html'
2016-12-07 12:35:46 +01:00
Daniele Teti
81744b892e
Merge changes from https://github.com/danieleteti/delphimvcframework/pull/60
...
Some refactoring needed to be coherent to the rest of the framework
Added a new sample to chow customsession utilization
2016-12-05 15:51:05 +01:00
airtonjs
fa16b01164
Permit to use other class of session
2016-12-05 09:03:58 -04:00
Daniele Teti
9e76485268
Samples Refactoring
2016-11-27 23:18:32 +01:00
Daniele Teti
00bc5d6d8f
Small refactoring
...
New image for the IDE Expert
Added MVCDoc to articles_crud_server
2016-11-24 20:08:35 +01:00
Daniele Teti
56a7c8311d
FIX Render(Stream,False)
...
Added Ownership to TDuckTypedList
Added 2 more unit tests
2016-11-18 18:25:50 +01:00
Daniele Teti
25177d957f
All the unit tests are now merged in 1 project.
...
Submodules update, samples refactoring, build improvements.
2016-11-13 21:00:54 +01:00
Daniele Teti
119238df9e
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2016-11-07 12:24:40 +01:00
Daniele Teti
54c82554e6
ADD Cache support based on Redis
...
MVCFramework.Controllers.CacheController.pas
2016-11-07 12:24:13 +01:00
spinettaro
3f0eb0d040
added support to serialize json null value as nil in object property
...
added relative test TestJSONObjectToObjectWithNullInJSONString
2016-10-26 14:42:45 +02:00
Daniele Teti
160bb8d51e
ADDED
...
AllowedOriginURL: string = '*'
AllowsCredentials: Boolean = true
In CORS Middleware
2016-10-12 13:11:19 +02:00
danieleteti
bd10056c6f
https://github.com/danieleteti/delphimvcframework/issues/56
2016-10-11 11:39:57 +02:00
danieleteti
4d1427d859
-IDE Expert small bug fix
...
- ADDED Paremeter "ARewindStream" to procedure SendStream(AStream: TStream; AOwnStream: Boolean = true;
ARewindStream: Boolean = false); virtual;
2016-10-10 16:11:48 +02:00
danieleteti
78f635c720
Added Apache 2.4 for windows in the "apache module sample" folder.
2016-10-10 15:49:10 +02:00
danieleteti
dc690bf0e1
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework
2016-10-05 23:32:31 +02:00
danieleteti
115e856d04
DelphiREDISClient changed a method name
2016-10-05 23:32:11 +02:00
spinettaro
afe014b331
added assert to check _DefaultLogger initialization
...
initialized description string for ControllerMethods retrieved by describeserver.info
2016-10-03 18:18:48 +02:00
danieleteti
ecc4947290
ADDED LoadViewFragment
...
ADDED TMVCMediaType.TEXT_CSV
2016-10-02 17:44:45 +02:00
danieleteti
3672a73b8d
Names refactoring
...
Added TMVCController.RenderWrappedList to renders heterogeneous lists
2016-09-30 11:44:30 +02:00
spinettaro
d689e92642
added support in TMVCController and ObjectsMappers to serialize a IWrappedList
...
added link to LoggerPro in tests projects
2016-09-29 18:17:26 +02:00
MPannier
07dcef7eab
added ReleaseGlobalLogger in MVCFramework.Logger.pas
...
added ParamsAsInt64 for TMVCWebRequest
added some "more Results" in TRTTIUtils.TValueAsString
2016-09-27 14:33:51 +02:00
MPannier
af0e4fdca7
removed Iocp.Logger.pas (no longer needed)
...
Delphi XE3 adjustments
added some missing consts to paramters (thanks to FixInsight; there are a lot more hints)
2016-09-27 14:22:17 +02:00
MPannier
751069cb07
Delphi XE3 adjustments
...
corrected search path in sample projects
2016-09-27 13:49:24 +02:00
danieleteti
9eaccd9a3e
FIX for DX10 Seattle
2016-09-25 22:31:44 +02:00
danieleteti
83f5b378ed
Possibile FIX for a RTL bug. IT works now on Berlin and Seattle.
2016-09-25 22:25:06 +02:00
danieleteti
ce80bb79fd
Refactoring
2016-09-25 16:17:48 +02:00
danieleteti
c443fffa44
FIX https://github.com/danieleteti/delphimvcframework/issues/48
2016-09-20 11:27:37 +02:00
danieleteti
6842f5efec
IDE Expert: Load optimized configuration for the default generated project (MaxConnections and ListenQueue)
...
small optimization for body reading in the TWebContext
add sample for CustomAuth
2016-09-20 11:10:47 +02:00
danieleteti
0d3b591174
Added CopyRight info were not present
2016-09-18 19:19:43 +02:00
danieleteti
f0670af618
Added custom authentication and authorization middleware
2016-09-16 23:55:11 +02:00
danieleteti
33d62713df
Small FIX RESTClient
2016-09-13 19:10:34 +02:00
Ezequiel Juliano Müller
6e7db429ff
Merge branch 'master' of https://github.com/danieleteti/delphimvcframework into HEAD
...
# Conflicts:
# lib/dmustache
2016-09-06 11:02:14 -03:00
danieleteti
0f5f101802
Updated File CHANGES.TXT
2016-09-06 10:41:31 +02:00
danieleteti
6875ff3704
Added LoggerPro as git submodule
...
Updated MVCFramework.Logger.pas to use LoggerPro instead of the modified version of IOCPLogger
Added CustomLoggerSample.dproj
Removed IOCP dependencies
2016-09-06 10:33:09 +02:00
danieleteti
ef345debe5
FIX readded Pre XE7 support
2016-09-06 08:37:54 +02:00
danieleteti
be7d5d7183
Send DocumentIndex if request route = '/' and index file exists
...
FIX Charset issue on static contents
2016-09-05 15:34:55 +02:00
Ezequiel Juliano Müller
bc425918b2
Add validation for JSON Null time field conversion.
2016-09-02 11:12:53 -03:00
danieleteti
75383cf0c3
Mapped parameters names can contein "_" (underscore)
2016-08-24 15:34:29 +02:00
danieleteti
617bfe47e6
Refactoring
2016-08-09 13:11:13 +02:00
danieleteti
6cbfffdb50
Disabled STOMP Extension. Need refactoring.
2016-08-09 13:08:33 +02:00
danieleteti
5601767e04
- added method TWebContext.SessionStarted (check sample Sessions to see how it works)
...
- added method TWebContext.SessionID
- added unit test for TWebContext.SessionStarted
2016-06-28 13:44:09 +02:00
danieleteti
06e75e148b
FIX a bug in /system/describeserver.info
2016-06-23 15:18:50 +02:00
danieleteti
f9df7124c1
- added "HasError" and "Error" properties to the IRESTResponse (thank you Mathias Pannier)
...
- added "Context.Request.QueryStringParams: TStrings"
2016-06-23 12:11:11 +02:00
danieleteti
a102909941
Completed JWT Middleware (Check jsonwebtoken sample to know how to use)
2016-06-23 11:43:15 +02:00
danieleteti
1ef246a589
- Added strongly typed actions
...
- TWebContext param in the actions is optional
- In case of "action not found", the server dont returns NEVER the document index
- Refactoring
- More unit tests
- BasicDemo updated with typed actions
- Copyright updated (just formatting)
2016-06-22 17:50:31 +02:00
Ezequiel Juliano Müller
a5c1d5423b
Update Licence
2016-06-16 17:18:18 -03:00
Ezequiel Juliano Müller
04b83cc0f5
Refactoring to:
...
* Enable working with listeners in a DI context.
* Class Changes to provide a better understanding of the functionality;
* Removal singletons variables (not the framework that must manage it);
* README update;
2016-06-16 17:13:35 -03:00