This repository was archived by the owner on Mar 18, 2021. It is now read-only.
Releases: stablekernel/aqueduct
Releases · stablekernel/aqueduct
3.2.0
Adds read method to Serializable for filtering, ignoring or rejecting keys.
Fixes issues with Dart 2.1.1 mirror type checking changes
Adds like matcher expression
Escapes postgres special characters in LIKE expressions for all other string matcher expressions
Fixes security vulnerability where a specific authorization header value would be associated with the wrong token in rare cases (credit to Philipp Schiffmann)
Adds Validate.constant to properties that use the @PrimaryKey annotation.
Allows Validate annotations to be added to belongs-to relationship properties; the validation is run on the foreign key.
Allows any type - e.g. Map<String, dynamic> - to be bound with Bind.body.
3.1.0
- Adds the implicit authorization grant flow via the AuthRedirectController type.
- Deprecates AuthCodeController in favor of AuthRedirectController.
- Improves speed of many database CLI commands
- Improves error messaging of the CLI; no longer includes stack trace for expected errors.
- Allows self-referencing and cyclical relationships between managed objects
- Autoincrementing managed object properties are no longer consumed in ManagedObject.readFromMap.
- Fixes bug where ManagedObjects cannot have mixins
- Adds ManagedContext.insertObject, ManagedContext.insertObjects and ManagedContext.fetchObjectWithID.
3.0.2
See changelog.
3.0.1
See changelog
Aqueduct 3
See changelog.
Performance and Tooling
- Adds
aqueduct db schemato print an application's data model. - Adds
aqueduct document servethat serves the API documentation for an application. - Adds
--machineflag toaqueducttool to only emit machine-readable output. - Adds
defaultDelaytoMockHTTPServer. Defaults to null for no delay. - Adds
defaultResponsetoMockHTTPServer. Defaults to a 503 response instead of a 200. - Adds option to set a custom delay for a specific response in
MockHTTPServer'squeueResponsefunction. - Performance improvements
Table-wide unique constraints
- Adds
HTTPRequestBody.maxSizeto limit HTTP request body sizes. Defaults to 10MB. - Adds
ManagedTableAttributesto configure underlying database table to use multiple columns to test for uniqueness.
Response Modifiers
- Adds
Request.addResponseModifierto allow middleware to modify responses.
Improve Test Framework
- Adds
Response.bufferOutputto control whether the HTTP response bytes are buffered. - Adds
whereNotto apply an inverse to otherQuery.whereexpression, e.g.whereNot(whereIn(["a", "b"])). - Fixes bug where subclassing
ManagedObjectControllerdidn't work. - Renames
ResourceRegistrytoServiceRegistry. - Improves feedback and interface for
package:aqueduct/test.dart.
User-based scoping, ORM aggregate functions
- Adds
Request.acceptableContentTypesandRequest.acceptsContentTypefor convenient usage of Accept header. - Adds
AuthStorage.allowedScopesForAuthenticatableto provide user attribute-based scoping, e.g. roles. - Adds
Query.forEntityandManagedObjectController.forEntityto dynamically instantiate these types, i.e. use runtime values to build the query. - Adds
PersistentStore.newQuery- allows aPersistentStoreimplementation to provide its own implementation ofQueryspecific to its underlying database. - Adds
Query.reduceto perform aggregate functions on database tables, e.g. sum, average, maximum, etc. enums may be used as persistent properties inManagedObject<T>. The underlying database will store them a strings.- Speed of generating a template project has been greatly improved.