Skip to content

DelphiMVCFramework 3.1.0-lithium

Compare
Choose a tag to compare
@danieleteti danieleteti released this 08 Jan 14:33
· 1643 commits to master since this release

What's New in 3.1.0 lithium

  • New! Added TMVCActiveRecord framework (check sample activerecord_showcase and activerecord_crud)
  • New! Added TMVCActiveRecordController (check sample activerecord_crud)
  • Automatic permissions handling for TMVCActiveRecordController (check sample activerecord_crud)
  • EntityProcessor for TMVCActiveRecordController (check sample activerecord_crud)
  • Config[TMVCConfigKey.FallbackResource] is served only if request path is empty or /.
  • New! Now the JSON-RPC executor provides methods to handle HTTP headers for JSON-RPC requests and notifications.
  • 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
  • 404 and 500 status code returns always a text/plain content-type
  • Refactored ISAPI sample
  • 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!
  • New! Added MAX_REQUEST_SIZE for limiting the size of the incoming HTTP requests. IDE Expert is updated too!
  • New! Added method TMVCJsonDataObjectsSerializer.ListToJsonArray
  • New! TMVCResponse for handle generic (non error) response
  • New! TMVCErrorResponse for handle generic error response
  • New! Added class TMVCActiveRecordList used in the manual TMVCActiveRecord programming
  • New! Added gzip compression support in addition to deflate in TCompressionMiddleware
  • FIX for issue #143
  • FIX for issue #141
  • Removed deprecated methods in IRESTResponse
  • FIX misspelled header name in IRESTResponse
  • New! Added gzip and deflate support in TRestClient when reading responses
  • TCompressionMiddleware has been renamed in TMVCCompressionMiddleware
  • New! TMVCCompressionMiddleware is added by IDE Expert by default
  • Removed the old JSON serializer based on `System.JSON.pas', now the only available JSON serializer is based on JsonDataObjects parser (Thank you Andreas Hausladen).
  • Changed! Custom Types Serializer must be registered by media-type only, without charset definition (e.g. just application/json and not application/json;charset=utf-8)
  • Changed! IMVCTypeSerializer is more powerful and simple to use!
  • Sending wrongly formatted JSON now returns a more correctly 400 Bad Request and not 500 Internal Server Error as in the previous versions
  • New! Support for Spring4d nullable types (check samples\renders_spring4d_nullables)
  • New! TMVCJSONRPCPublisher allows to easily expose plain Delphi objects (and even datamodules) through a JSON-RPC 2.0 interface!
  • Breaking Change! The JSON RPC Client layer is now interface based.