-
Notifications
You must be signed in to change notification settings - Fork 247
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(datastore): OIDC Rework #966
Conversation
Codecov Report
@@ Coverage Diff @@
## releases/0.2.5 #966 +/- ##
==================================================
+ Coverage 65.97% 66.02% +0.05%
==================================================
Files 286 286
Lines 9786 9767 -19
Branches 396 400 +4
==================================================
- Hits 6456 6449 -7
+ Misses 3190 3180 -10
+ Partials 140 138 -2
Flags with carried forward coverage won't be shown. Click here to find out more.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few nits and comments, nothing that should block merge. Approved (assuming unit tests get fixed). I ran api integration tests with this change for sanity, worked fine.
/// | ||
/// Any [Exception] is caught and treated as a `null` token. | ||
Future<Map<String, dynamic>> get authToken async { | ||
Future<String?> get authToken async { | ||
String? token; | ||
try { | ||
token = await getLatestAuthToken(); | ||
//ignore:empty_catches | ||
} on Exception {} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know this is part of original impl, not diff here, but why swallow exceptions here? Would potential exceptions here not be useful to the caller, or would we have expected the errors caused here to be raised at another time, like plugin registration?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since the user may be using a third party plugin or something else to retrieve the token, we can't assume anything about how it will respond. For instance, it may throw an exception or just return null. The user can still catch that in their implementation if they want, since they own getLatestAuthToken
. We just want to make sure we're protected against any errors they didn't catch and treat them the same as null, since all we care about is whether or not there is a token.
When we implement logging at some point, we'll be able to relay that info, but for now there is not a great way to do that.
} | ||
} | ||
|
||
let waitResult = completer.wait(timeout: .now() + 2) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: dk if 2 can be a constant and refer to that in error message? That way, of someone changes this in the future the error message will reflect timeout.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, good callout. Fixed.
) | ||
} | ||
|
||
completer.join() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will this timeout like the ios version after 2 seconds?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nope, good catch. Fixed.
Non-blocking followup, but it might be nice to have more test coverage in the dart layer here, looks like the auth token method channel implementation is largely untested, unless I'm missing something. https://app.codecov.io/gh/aws-amplify/amplify-flutter/compare/966/diff |
@@ -23,6 +23,7 @@ import AWSPluginsCore | |||
public class SwiftAmplifyApiPlugin: NSObject, FlutterPlugin { | |||
private let bridge: ApiBridge | |||
private let graphQLSubscriptionsStreamHandler: GraphQLSubscriptionsStreamHandler | |||
static var methodchannel: FlutterMethodChannel! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
minor nit - should this be named "methodChannel"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, good catch. Fixed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great.
@ragingsquirrel3 Great idea. Added 👍 |
* fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]>
* Replace JCenter with Maven Central (#903) * Replace JCenter with Maven Central * Make uniform * Revert core * fix(datastore): remove default pagination behavior on iOS (#906) * fix: remove default pagination on ios * chore: update test to use models.length * chore: remove sort order from test * test: update datastore unit test * chore: move var declaration inside if block * feat(Auth) support preferPrivateSession flag (#897) * support preferPrivateSession flag * fix flutter format * fix unit test * create and use SignInWithWebUIOptions * update styles and doc * remove unused code Co-authored-by: Mo Malaka <[email protected]> * feat(auth): add global sign out (#782) * feat: add global sign out * chore: rmove unused code * chore: Update android unit tests * chore: update iOS unit tests * chore: add unit tests for global sign out * chore: fix formatting * chore: update amplify-android to 1.26.0 * chore: update SignOutRequest comment * chore: refactor FlutterSignOutRequest * chore: update integration test commands to allow selection (#910) * chore: update integ test commands with selection * chore: update description * chore: Revert unpub (#919) * Add unpub iOS checks * Fix port * Add logs * Run server in background * Make script foreground * Add wait before pub get * Remove sleep * Update URL * Remove from CI * Remove unpub stuff * Fix API auth for REST (#925) * chore: bump amplify-android dep to 1.28.0 (#949) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * Storage download progress (#928) Co-authored-by: Dillon Nys <[email protected]> * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * fix(datastore): Re-emit events on hot restart (#980) * Add hot restart protection * Add test * Update DataStoreHubEventStreamHandlerTests.swift Fix unit test * Add deinit for test cases * fix(datastore): replay events on Android after a hot restart (#965) * fix: replay events on Android after a hot restart * chore: use mutable list * Update formatting Co-authored-by: Jordan Nelson <[email protected]> * chore: Update issue template (#985) * chore: Update issue template Update issue template to include pubspec.lock file * Update bug_report.md * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd12602. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Fix failing tests due to missing test data Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]>
* fix(datastore): Sync Issues (aws-amplify#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue aws-amplify#395 (aws-amplify#967) * fix(datastore): OIDC Rework (aws-amplify#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]>
* Reorg + integ tests * Clean up * Update tests; attempt Android * Throw if Android * Lint amplify_flutter and amplify_core * Fix * Re-enable CI/CD lints * Fix amplify_flutter tests * Run Android lints * Fix formatting * Keep trying Android reset * Create amplify_test_flutter package * Fix API auth for REST (#925) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd12602. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Fix imports * Fix linting * Update dependencies * Add missing build tools * Update pubspecs * Revert Android changes * Use local dependencies * Update license and readme * Trigger CI * Fix imports * Fix lints * Revert amplify_flutter change * Remove unnecessary lint disable * Revert DataStore model changes; fix yellow * Revert test pkg & integ tests * Fix amplify_flutter example * Fix amplify_flutter example * Fix amplify_flutter example * Remove uuid from API plugin deps * Misc corrections Co-authored-by: Kyle <[email protected]> Co-authored-by: Hui Zhao <[email protected]> Co-authored-by: Jordan Nelson <[email protected]>
* Reorg + integ tests * Clean up * Update tests; attempt Android * Throw if Android * Lint amplify_flutter and amplify_core * Fix * Re-enable CI/CD lints * Fix amplify_flutter tests * Run Android lints * Fix formatting * Keep trying Android reset * Create amplify_test_flutter package * Fix API auth for REST (#925) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd12602. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Fix imports * Fix linting * Update dependencies * Add missing build tools * Update pubspecs * Revert Android changes * Use local dependencies * Update license and readme * Trigger CI * Fix imports * Fix lints * Revert amplify_flutter change * Remove unnecessary lint disable * Revert DataStore model changes; fix yellow * Remove uuid from API plugin deps * Misc corrections * Add license headers * Fix deps * Remove flutter test pkg for now; fix integ tests * Add flutter dependency * Fix unit tests Co-authored-by: Kyle <[email protected]> Co-authored-by: Hui Zhao <[email protected]> Co-authored-by: Jordan Nelson <[email protected]>
* Replace JCenter with Maven Central (#903) * Replace JCenter with Maven Central * Make uniform * Revert core * fix(datastore): remove default pagination behavior on iOS (#906) * fix: remove default pagination on ios * chore: update test to use models.length * chore: remove sort order from test * test: update datastore unit test * chore: move var declaration inside if block * feat(Auth) support preferPrivateSession flag (#897) * support preferPrivateSession flag * fix flutter format * fix unit test * create and use SignInWithWebUIOptions * update styles and doc * remove unused code Co-authored-by: Mo Malaka <[email protected]> * feat(auth): add global sign out (#782) * feat: add global sign out * chore: rmove unused code * chore: Update android unit tests * chore: update iOS unit tests * chore: add unit tests for global sign out * chore: fix formatting * chore: update amplify-android to 1.26.0 * chore: update SignOutRequest comment * chore: refactor FlutterSignOutRequest * chore: update integration test commands to allow selection (#910) * chore: update integ test commands with selection * chore: update description * chore: Revert unpub (#919) * Add unpub iOS checks * Fix port * Add logs * Run server in background * Make script foreground * Add wait before pub get * Remove sleep * Update URL * Remove from CI * Remove unpub stuff * Fix API auth for REST (#925) * chore: bump amplify-android dep to 1.28.0 (#949) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * Storage download progress (#928) Co-authored-by: Dillon Nys <[email protected]> * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * fix(datastore): Re-emit events on hot restart (#980) * Add hot restart protection * Add test * Update DataStoreHubEventStreamHandlerTests.swift Fix unit test * Add deinit for test cases * fix(datastore): replay events on Android after a hot restart (#965) * fix: replay events on Android after a hot restart * chore: use mutable list * Update formatting Co-authored-by: Jordan Nelson <[email protected]> * chore: Update issue template (#985) * chore: Update issue template Update issue template to include pubspec.lock file * Update bug_report.md * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd12602. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Remove spooky log messages (#1008) * Insert final newline (#1010) * fix(datastore): Android TemporalTime Save Issue (#1009) Add padding in fromString method for TemporalDateTime and TemporalTime to replace trailing “0”s removed by Android. Fix suggested by @martinzuccotti * fix(api): OIDC fixes for Android (#1028) * OIDC fixes for Android * Update comments * Fix Android unit tests * Remove debug statement * Minor cleanup * Update exception message * chore: update amplify pods to 1.15.5 (#1037) * fix(datastore): fix temporal date/time query predicates (#1027) * test: add integ tests for datetime types * fix: serialize temporal types in predicates * chore: Update integ tests for temporal types * chore: add DateTime back with deprecation note * chore: add deprecation log for DateTime types * fix: add missing import * test: add unit test for temporal type * fix: serialize values for non-primitive types * Update aws_date_time_query_predicate_test.dart * Update aws_time_query_predicate_test.dart * chore: update integ tests * Post exceptions on the main thread (#1047) * Update custom pre-sign up handler (#1051) * chore: 0.2.7 release (#1052) * 0.2.7 release * Revert bump note for plugin interface * chore: tweak integration tests, change storage assertion and use gradle version 4.0.1 for all example apps (#1040) * fix: "Reply already submitted" crashes (#1058) * Update Android * Update iOS * Fix Android unit test * Fix iOS unit tests * Fix DateTime parsing (#1062) * fix(storage): Storage.list crash on null "options" (#1061) * Fix storage crash * Remove validation message * chore: remove DateTime.now() from tests (#1060) * chore: remove datetime.now from datastore interface * chore: remove datetime.now from datastore unit tests * chore: remove datetime now from datastore integ tests * Add ProGuard rules (#1064) * fix:issue 1043 (#1044) change 12-hours based date format to 24-hours . https://developer.android.com/reference/kotlin/java/text/SimpleDateFormat#format * fix (amplify_auth_cognito): fixes swallowed usercancelled exception with hosted ui android, and updates auth exampl… (#1015) * fixes swallowed error with hosted ui android, and updates auth example app * Update packages/amplify_auth_cognito/android/src/main/kotlin/com/amazonaws/amplify/amplify_auth_cognito/AuthCognito.kt Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Noyes <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * feat(datastore): Custom Error Handler (#1032) * chore: 0.2.8 release (#1087) * chore: 0.2.8 release * Update changelogs * chore: 0.2.9 release (#1108) * chore: 0.2.9 release * Correct the info in changelogs * Fix incorrectly resolved conflict * Fix amplify_core example iOS build * Fix swift linter complained errors - Function name cannot start with upper case - Class name cannot start with lower case * Revert "Fix swift linter complained errors" This reverts commit ddceaa7. * Fix swiftlint errors * Fix some changes Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Travis Sheppard <[email protected]> Co-authored-by: hexch <[email protected]> Co-authored-by: Dustin Noyes <[email protected]> Co-authored-by: Noyes <[email protected]>
* chore(amplify_core): move model-related types from datastore interface to amplify_core (#1023) move some model-related types from datastore interface to core to support API model-based helpers * fix: serialize confirm sign up options (#1083) * fix: serialize confirm sign up options * chore: update unit test * Revert "chore(amplify_core): move model-related types from datastore interface to amplify_core (#1023)" (#1102) This reverts commit 176653e. * Merge main into release-candidate (#1113) * Replace JCenter with Maven Central (#903) * Replace JCenter with Maven Central * Make uniform * Revert core * fix(datastore): remove default pagination behavior on iOS (#906) * fix: remove default pagination on ios * chore: update test to use models.length * chore: remove sort order from test * test: update datastore unit test * chore: move var declaration inside if block * feat(Auth) support preferPrivateSession flag (#897) * support preferPrivateSession flag * fix flutter format * fix unit test * create and use SignInWithWebUIOptions * update styles and doc * remove unused code Co-authored-by: Mo Malaka <[email protected]> * feat(auth): add global sign out (#782) * feat: add global sign out * chore: rmove unused code * chore: Update android unit tests * chore: update iOS unit tests * chore: add unit tests for global sign out * chore: fix formatting * chore: update amplify-android to 1.26.0 * chore: update SignOutRequest comment * chore: refactor FlutterSignOutRequest * chore: update integration test commands to allow selection (#910) * chore: update integ test commands with selection * chore: update description * chore: Revert unpub (#919) * Add unpub iOS checks * Fix port * Add logs * Run server in background * Make script foreground * Add wait before pub get * Remove sleep * Update URL * Remove from CI * Remove unpub stuff * Fix API auth for REST (#925) * chore: bump amplify-android dep to 1.28.0 (#949) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * Storage download progress (#928) Co-authored-by: Dillon Nys <[email protected]> * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * fix(datastore): Re-emit events on hot restart (#980) * Add hot restart protection * Add test * Update DataStoreHubEventStreamHandlerTests.swift Fix unit test * Add deinit for test cases * fix(datastore): replay events on Android after a hot restart (#965) * fix: replay events on Android after a hot restart * chore: use mutable list * Update formatting Co-authored-by: Jordan Nelson <[email protected]> * chore: Update issue template (#985) * chore: Update issue template Update issue template to include pubspec.lock file * Update bug_report.md * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd12602. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Remove spooky log messages (#1008) * Insert final newline (#1010) * fix(datastore): Android TemporalTime Save Issue (#1009) Add padding in fromString method for TemporalDateTime and TemporalTime to replace trailing “0”s removed by Android. Fix suggested by @martinzuccotti * fix(api): OIDC fixes for Android (#1028) * OIDC fixes for Android * Update comments * Fix Android unit tests * Remove debug statement * Minor cleanup * Update exception message * chore: update amplify pods to 1.15.5 (#1037) * fix(datastore): fix temporal date/time query predicates (#1027) * test: add integ tests for datetime types * fix: serialize temporal types in predicates * chore: Update integ tests for temporal types * chore: add DateTime back with deprecation note * chore: add deprecation log for DateTime types * fix: add missing import * test: add unit test for temporal type * fix: serialize values for non-primitive types * Update aws_date_time_query_predicate_test.dart * Update aws_time_query_predicate_test.dart * chore: update integ tests * Post exceptions on the main thread (#1047) * Update custom pre-sign up handler (#1051) * chore: 0.2.7 release (#1052) * 0.2.7 release * Revert bump note for plugin interface * chore: tweak integration tests, change storage assertion and use gradle version 4.0.1 for all example apps (#1040) * fix: "Reply already submitted" crashes (#1058) * Update Android * Update iOS * Fix Android unit test * Fix iOS unit tests * Fix DateTime parsing (#1062) * fix(storage): Storage.list crash on null "options" (#1061) * Fix storage crash * Remove validation message * chore: remove DateTime.now() from tests (#1060) * chore: remove datetime.now from datastore interface * chore: remove datetime.now from datastore unit tests * chore: remove datetime now from datastore integ tests * Add ProGuard rules (#1064) * fix:issue 1043 (#1044) change 12-hours based date format to 24-hours . https://developer.android.com/reference/kotlin/java/text/SimpleDateFormat#format * fix (amplify_auth_cognito): fixes swallowed usercancelled exception with hosted ui android, and updates auth exampl… (#1015) * fixes swallowed error with hosted ui android, and updates auth example app * Update packages/amplify_auth_cognito/android/src/main/kotlin/com/amazonaws/amplify/amplify_auth_cognito/AuthCognito.kt Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Noyes <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * feat(datastore): Custom Error Handler (#1032) * chore: 0.2.8 release (#1087) * chore: 0.2.8 release * Update changelogs * chore: 0.2.9 release (#1108) * chore: 0.2.9 release * Correct the info in changelogs * Fix incorrectly resolved conflict * Fix amplify_core example iOS build * Fix swift linter complained errors - Function name cannot start with upper case - Class name cannot start with lower case * Revert "Fix swift linter complained errors" This reverts commit ddceaa7. * Fix swiftlint errors * Fix some changes Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Travis Sheppard <[email protected]> Co-authored-by: hexch <[email protected]> Co-authored-by: Dustin Noyes <[email protected]> Co-authored-by: Noyes <[email protected]> * Revert "chore(amplify_core): move model-related types from datastore interface to amplify_core (#1023)" (#1102) This reverts commit 176653e. * Fix amplify_impl Co-authored-by: Travis Sheppard <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Hui Zhao <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: hexch <[email protected]> Co-authored-by: Dustin Noyes <[email protected]> Co-authored-by: Noyes <[email protected]>
* break(datastore): cannot saving boolean as integer in SQLite (#895) * break(amplify_auth_cognito): throw SignedOutException (#893) * break(amplify_auth_cognito): fixes getCurrentUser disparity (#894) * GraphQL Stream -> RC (#905) * fix(amplify_auth_cognito): fixes getCurrentUser success (#911) * chore: release 0.3.0-unstable.1 (#908) * chore: release 0.3.0-rc.1 (#915) * feat(datastore): Add CustomType functionality (#847) (#920) * feat(datastore): Add CustomType functionality (#847) * feat(datastore): Add CustomType functionality * Update copyright year and reformatted some source code * Resolve comments * feat(datastore): Add CustomType support for amplify-flutter iOS * squash * Fix existing DataStore iOS unit tests * Add unit tests for iOS changes * Fix broken format * Update example App iOS project settings * Fix iOS unit tests * Resolved comments for Android implementation * Resolve comments for iOS implementation * Upgrade amplify-android to 1.26.0 * Resolve comments targeting the iOS implementation * Resolve comments * Fix embedded desrialization after merging main * Add CustomType integration tests * Upgrade amplify-android to 1.27.0 * Apply suggestions from code review Co-authored-by: Chris F <[email protected]> * resolve comments Co-authored-by: Chris F <[email protected]> * Update datastore changelog * Commit changes of schema.graphql for integration tests * Resolve comments * Fix timestamp fields may contain double value * Add ending line * Fix should be able to resolve multiple deps trees * Upgrade amplify-android to 1.28.0 * Apply suggestions from code review Co-authored-by: Chris F <[email protected]> * Simplied map transform syntax Co-authored-by: Chris F <[email protected]> * Chore/rc merge main (#1003) * Replace JCenter with Maven Central (#903) * Replace JCenter with Maven Central * Make uniform * Revert core * fix(datastore): remove default pagination behavior on iOS (#906) * fix: remove default pagination on ios * chore: update test to use models.length * chore: remove sort order from test * test: update datastore unit test * chore: move var declaration inside if block * feat(Auth) support preferPrivateSession flag (#897) * support preferPrivateSession flag * fix flutter format * fix unit test * create and use SignInWithWebUIOptions * update styles and doc * remove unused code Co-authored-by: Mo Malaka <[email protected]> * feat(auth): add global sign out (#782) * feat: add global sign out * chore: rmove unused code * chore: Update android unit tests * chore: update iOS unit tests * chore: add unit tests for global sign out * chore: fix formatting * chore: update amplify-android to 1.26.0 * chore: update SignOutRequest comment * chore: refactor FlutterSignOutRequest * chore: update integration test commands to allow selection (#910) * chore: update integ test commands with selection * chore: update description * chore: Revert unpub (#919) * Add unpub iOS checks * Fix port * Add logs * Run server in background * Make script foreground * Add wait before pub get * Remove sleep * Update URL * Remove from CI * Remove unpub stuff * Fix API auth for REST (#925) * chore: bump amplify-android dep to 1.28.0 (#949) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * Storage download progress (#928) Co-authored-by: Dillon Nys <[email protected]> * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * fix(datastore): Re-emit events on hot restart (#980) * Add hot restart protection * Add test * Update DataStoreHubEventStreamHandlerTests.swift Fix unit test * Add deinit for test cases * fix(datastore): replay events on Android after a hot restart (#965) * fix: replay events on Android after a hot restart * chore: use mutable list * Update formatting Co-authored-by: Jordan Nelson <[email protected]> * chore: Update issue template (#985) * chore: Update issue template Update issue template to include pubspec.lock file * Update bug_report.md * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd12602. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Fix failing tests due to missing test data Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> * chore: Lints (#918) * Reorg + integ tests * Clean up * Update tests; attempt Android * Throw if Android * Lint amplify_flutter and amplify_core * Fix * Re-enable CI/CD lints * Fix amplify_flutter tests * Run Android lints * Fix formatting * Keep trying Android reset * Create amplify_test_flutter package * Fix API auth for REST (#925) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd12602. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Fix imports * Fix linting * Update dependencies * Add missing build tools * Update pubspecs * Revert Android changes * Use local dependencies * Update license and readme * Trigger CI * Fix imports * Fix lints * Revert amplify_flutter change * Remove unnecessary lint disable * Revert DataStore model changes; fix yellow * Revert test pkg & integ tests * Fix amplify_flutter example * Fix amplify_flutter example * Fix amplify_flutter example * Remove uuid from API plugin deps * Misc corrections Co-authored-by: Kyle <[email protected]> Co-authored-by: Hui Zhao <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> * fix(datastore): Add auth rule provider info to generate schema (#955) * fix(datastore): Add auth rule provider info to generate schema * Covert CRLF to LF * Make provider field optional * Reformat kt file and address linter suggested issue * Adapt auth provider to Android implementation * Update test case to match the real use case * chore(test): Add test pkgs and integ tests for core (#1011) * Reorg + integ tests * Clean up * Update tests; attempt Android * Throw if Android * Lint amplify_flutter and amplify_core * Fix * Re-enable CI/CD lints * Fix amplify_flutter tests * Run Android lints * Fix formatting * Keep trying Android reset * Create amplify_test_flutter package * Fix API auth for REST (#925) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd12602. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Fix imports * Fix linting * Update dependencies * Add missing build tools * Update pubspecs * Revert Android changes * Use local dependencies * Update license and readme * Trigger CI * Fix imports * Fix lints * Revert amplify_flutter change * Remove unnecessary lint disable * Revert DataStore model changes; fix yellow * Remove uuid from API plugin deps * Misc corrections * Add license headers * Fix deps * Remove flutter test pkg for now; fix integ tests * Add flutter dependency * Fix unit tests Co-authored-by: Kyle <[email protected]> Co-authored-by: Hui Zhao <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> * chore: Melos integration tests (#1025) * Melos integ test fixes * Update test command * Datastore support read only (#1024) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. Updated all Datastore Codegen models with cli-codegen's new createdAt and updatedAt auto generated fields. * chore(datastore): Update changelog with preview instructions (#1001) * chore(datastore): Update changelog with preview instructions * Reorganize the RC changelog * Update description * chore: release 0.3.0-rc.2 (#1030) * chore: release 0.3.0-rc.2 * Update pubspec of the example app * fix(api): Rebase OIDC fixes for RC (#1036) * Rebase OIDC fixes for RC * Update changelogs * Remove dup gradle dep * chore(datastore): Update codegen generated files (#1038) * Post exceptions on the main thread (#1046) * chore(auth): CognitoUserAttributes type (#1035) * Re-land cognito attribute type * Update examples * Update doc comment * Update values * Make non-breaking * Revert "Make non-breaking" This reverts commit ccada62. * Make non-breaking * Use UserAttributeKey instead of Object * Clean up * Fix unit test * Change invalid key parsing * Copy user attributes before removing * Fix test * Rename to CognitoUserAttributeKey * Update user attribute methods to throw * Remove import * Fix integration test * chore: Update changelog date (#1053) * Update changelog date * Update meta dependency * chore: remove deprecated auth classes (#1049) * chore: remove deprecated auth classes * chore: uodate change log * Update CHANGELOG.md * Update CHANGELOG.md * chore(amplify_core): move model-related types from datastore interface to amplify_core (#1023) move some model-related types from datastore interface to core to support API model-based helpers * fix: serialize confirm sign up options (#1083) * fix: serialize confirm sign up options * chore: update unit test * Revert "chore(amplify_core): move model-related types from datastore interface to amplify_core (#1023)" (#1102) This reverts commit 176653e. * Merge main into release-candidate (#1113) * Replace JCenter with Maven Central (#903) * Replace JCenter with Maven Central * Make uniform * Revert core * fix(datastore): remove default pagination behavior on iOS (#906) * fix: remove default pagination on ios * chore: update test to use models.length * chore: remove sort order from test * test: update datastore unit test * chore: move var declaration inside if block * feat(Auth) support preferPrivateSession flag (#897) * support preferPrivateSession flag * fix flutter format * fix unit test * create and use SignInWithWebUIOptions * update styles and doc * remove unused code Co-authored-by: Mo Malaka <[email protected]> * feat(auth): add global sign out (#782) * feat: add global sign out * chore: rmove unused code * chore: Update android unit tests * chore: update iOS unit tests * chore: add unit tests for global sign out * chore: fix formatting * chore: update amplify-android to 1.26.0 * chore: update SignOutRequest comment * chore: refactor FlutterSignOutRequest * chore: update integration test commands to allow selection (#910) * chore: update integ test commands with selection * chore: update description * chore: Revert unpub (#919) * Add unpub iOS checks * Fix port * Add logs * Run server in background * Make script foreground * Add wait before pub get * Remove sleep * Update URL * Remove from CI * Remove unpub stuff * Fix API auth for REST (#925) * chore: bump amplify-android dep to 1.28.0 (#949) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * Storage download progress (#928) Co-authored-by: Dillon Nys <[email protected]> * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * fix(datastore): Re-emit events on hot restart (#980) * Add hot restart protection * Add test * Update DataStoreHubEventStreamHandlerTests.swift Fix unit test * Add deinit for test cases * fix(datastore): replay events on Android after a hot restart (#965) * fix: replay events on Android after a hot restart * chore: use mutable list * Update formatting Co-authored-by: Jordan Nelson <[email protected]> * chore: Update issue template (#985) * chore: Update issue template Update issue template to include pubspec.lock file * Update bug_report.md * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd12602. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Remove spooky log messages (#1008) * Insert final newline (#1010) * fix(datastore): Android TemporalTime Save Issue (#1009) Add padding in fromString method for TemporalDateTime and TemporalTime to replace trailing “0”s removed by Android. Fix suggested by @martinzuccotti * fix(api): OIDC fixes for Android (#1028) * OIDC fixes for Android * Update comments * Fix Android unit tests * Remove debug statement * Minor cleanup * Update exception message * chore: update amplify pods to 1.15.5 (#1037) * fix(datastore): fix temporal date/time query predicates (#1027) * test: add integ tests for datetime types * fix: serialize temporal types in predicates * chore: Update integ tests for temporal types * chore: add DateTime back with deprecation note * chore: add deprecation log for DateTime types * fix: add missing import * test: add unit test for temporal type * fix: serialize values for non-primitive types * Update aws_date_time_query_predicate_test.dart * Update aws_time_query_predicate_test.dart * chore: update integ tests * Post exceptions on the main thread (#1047) * Update custom pre-sign up handler (#1051) * chore: 0.2.7 release (#1052) * 0.2.7 release * Revert bump note for plugin interface * chore: tweak integration tests, change storage assertion and use gradle version 4.0.1 for all example apps (#1040) * fix: "Reply already submitted" crashes (#1058) * Update Android * Update iOS * Fix Android unit test * Fix iOS unit tests * Fix DateTime parsing (#1062) * fix(storage): Storage.list crash on null "options" (#1061) * Fix storage crash * Remove validation message * chore: remove DateTime.now() from tests (#1060) * chore: remove datetime.now from datastore interface * chore: remove datetime.now from datastore unit tests * chore: remove datetime now from datastore integ tests * Add ProGuard rules (#1064) * fix:issue 1043 (#1044) change 12-hours based date format to 24-hours . https://developer.android.com/reference/kotlin/java/text/SimpleDateFormat#format * fix (amplify_auth_cognito): fixes swallowed usercancelled exception with hosted ui android, and updates auth exampl… (#1015) * fixes swallowed error with hosted ui android, and updates auth example app * Update packages/amplify_auth_cognito/android/src/main/kotlin/com/amazonaws/amplify/amplify_auth_cognito/AuthCognito.kt Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Noyes <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * feat(datastore): Custom Error Handler (#1032) * chore: 0.2.8 release (#1087) * chore: 0.2.8 release * Update changelogs * chore: 0.2.9 release (#1108) * chore: 0.2.9 release * Correct the info in changelogs * Fix incorrectly resolved conflict * Fix amplify_core example iOS build * Fix swift linter complained errors - Function name cannot start with upper case - Class name cannot start with lower case * Revert "Fix swift linter complained errors" This reverts commit ddceaa7. * Fix swiftlint errors * Fix some changes Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Travis Sheppard <[email protected]> Co-authored-by: hexch <[email protected]> Co-authored-by: Dustin Noyes <[email protected]> Co-authored-by: Noyes <[email protected]> * Fix resolving conflict brought errors * Fix duplicate test member * Remove old core file Co-authored-by: Dustin Noyes <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Chris F <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Travis Sheppard <[email protected]> Co-authored-by: hexch <[email protected]> Co-authored-by: Noyes <[email protected]>
* Replace JCenter with Maven Central (#903) * Replace JCenter with Maven Central * Make uniform * Revert core * fix(datastore): remove default pagination behavior on iOS (#906) * fix: remove default pagination on ios * chore: update test to use models.length * chore: remove sort order from test * test: update datastore unit test * chore: move var declaration inside if block * feat(Auth) support preferPrivateSession flag (#897) * support preferPrivateSession flag * fix flutter format * fix unit test * create and use SignInWithWebUIOptions * update styles and doc * remove unused code Co-authored-by: Mo Malaka <[email protected]> * feat(auth): add global sign out (#782) * feat: add global sign out * chore: rmove unused code * chore: Update android unit tests * chore: update iOS unit tests * chore: add unit tests for global sign out * chore: fix formatting * chore: update amplify-android to 1.26.0 * chore: update SignOutRequest comment * chore: refactor FlutterSignOutRequest * chore: update integration test commands to allow selection (#910) * chore: update integ test commands with selection * chore: update description * chore: Revert unpub (#919) * Add unpub iOS checks * Fix port * Add logs * Run server in background * Make script foreground * Add wait before pub get * Remove sleep * Update URL * Remove from CI * Remove unpub stuff * Fix API auth for REST (#925) * chore: bump amplify-android dep to 1.28.0 (#949) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * Storage download progress (#928) Co-authored-by: Dillon Nys <[email protected]> * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * fix(datastore): Re-emit events on hot restart (#980) * Add hot restart protection * Add test * Update DataStoreHubEventStreamHandlerTests.swift Fix unit test * Add deinit for test cases * fix(datastore): replay events on Android after a hot restart (#965) * fix: replay events on Android after a hot restart * chore: use mutable list * Update formatting Co-authored-by: Jordan Nelson <[email protected]> * chore: Update issue template (#985) * chore: Update issue template Update issue template to include pubspec.lock file * Update bug_report.md * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd126027b7b3e6afa0f9ef1d037e7e380bf53a48. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Remove spooky log messages (#1008) * Insert final newline (#1010) * fix(datastore): Android TemporalTime Save Issue (#1009) Add padding in fromString method for TemporalDateTime and TemporalTime to replace trailing “0”s removed by Android. Fix suggested by @martinzuccotti * fix(api): OIDC fixes for Android (#1028) * OIDC fixes for Android * Update comments * Fix Android unit tests * Remove debug statement * Minor cleanup * Update exception message * chore: update amplify pods to 1.15.5 (#1037) * fix(datastore): fix temporal date/time query predicates (#1027) * test: add integ tests for datetime types * fix: serialize temporal types in predicates * chore: Update integ tests for temporal types * chore: add DateTime back with deprecation note * chore: add deprecation log for DateTime types * fix: add missing import * test: add unit test for temporal type * fix: serialize values for non-primitive types * Update aws_date_time_query_predicate_test.dart * Update aws_time_query_predicate_test.dart * chore: update integ tests * Post exceptions on the main thread (#1047) * Update custom pre-sign up handler (#1051) * chore: 0.2.7 release (#1052) * 0.2.7 release * Revert bump note for plugin interface * chore: tweak integration tests, change storage assertion and use gradle version 4.0.1 for all example apps (#1040) * fix: "Reply already submitted" crashes (#1058) * Update Android * Update iOS * Fix Android unit test * Fix iOS unit tests * Fix DateTime parsing (#1062) * fix(storage): Storage.list crash on null "options" (#1061) * Fix storage crash * Remove validation message * chore: remove DateTime.now() from tests (#1060) * chore: remove datetime.now from datastore interface * chore: remove datetime.now from datastore unit tests * chore: remove datetime now from datastore integ tests * chore(amplify_core): move model-related types from datastore interface to amplify_core (#1023) move some model-related types from datastore interface to core to support API model-based helpers * Add ProGuard rules (#1064) * fix: serialize confirm sign up options (#1083) * fix: serialize confirm sign up options * chore: update unit test * fix:issue 1043 (#1044) change 12-hours based date format to 24-hours . https://developer.android.com/reference/kotlin/java/text/SimpleDateFormat#format * fix (amplify_auth_cognito): fixes swallowed usercancelled exception with hosted ui android, and updates auth exampl… (#1015) * fixes swallowed error with hosted ui android, and updates auth example app * Update packages/amplify_auth_cognito/android/src/main/kotlin/com/amazonaws/amplify/amplify_auth_cognito/AuthCognito.kt Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Noyes <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * feat(datastore): Custom Error Handler (#1032) * chore: 0.2.8 release (#1087) * chore: 0.2.8 release * Update changelogs * Revert "chore(amplify_core): move model-related types from datastore interface to amplify_core (#1023)" (#1102) This reverts commit 176653ea5cd7575f6d33d9825b7505c88e908f47. * chore: 0.2.9 release (#1108) * chore: 0.2.9 release * Correct the info in changelogs * Merge main into release-candidate (#1113) * Replace JCenter with Maven Central (#903) * Replace JCenter with Maven Central * Make uniform * Revert core * fix(datastore): remove default pagination behavior on iOS (#906) * fix: remove default pagination on ios * chore: update test to use models.length * chore: remove sort order from test * test: update datastore unit test * chore: move var declaration inside if block * feat(Auth) support preferPrivateSession flag (#897) * support preferPrivateSession flag * fix flutter format * fix unit test * create and use SignInWithWebUIOptions * update styles and doc * remove unused code Co-authored-by: Mo Malaka <[email protected]> * feat(auth): add global sign out (#782) * feat: add global sign out * chore: rmove unused code * chore: Update android unit tests * chore: update iOS unit tests * chore: add unit tests for global sign out * chore: fix formatting * chore: update amplify-android to 1.26.0 * chore: update SignOutRequest comment * chore: refactor FlutterSignOutRequest * chore: update integration test commands to allow selection (#910) * chore: update integ test commands with selection * chore: update description * chore: Revert unpub (#919) * Add unpub iOS checks * Fix port * Add logs * Run server in background * Make script foreground * Add wait before pub get * Remove sleep * Update URL * Remove from CI * Remove unpub stuff * Fix API auth for REST (#925) * chore: bump amplify-android dep to 1.28.0 (#949) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * Storage download progress (#928) Co-authored-by: Dillon Nys <[email protected]> * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * fix(datastore): Re-emit events on hot restart (#980) * Add hot restart protection * Add test * Update DataStoreHubEventStreamHandlerTests.swift Fix unit test * Add deinit for test cases * fix(datastore): replay events on Android after a hot restart (#965) * fix: replay events on Android after a hot restart * chore: use mutable list * Update formatting Co-authored-by: Jordan Nelson <[email protected]> * chore: Update issue template (#985) * chore: Update issue template Update issue template to include pubspec.lock file * Update bug_report.md * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd126027b7b3e6afa0f9ef1d037e7e380bf53a48. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Remove spooky log messages (#1008) * Insert final newline (#1010) * fix(datastore): Android TemporalTime Save Issue (#1009) Add padding in fromString method for TemporalDateTime and TemporalTime to replace trailing “0”s removed by Android. Fix suggested by @martinzuccotti * fix(api): OIDC fixes for Android (#1028) * OIDC fixes for Android * Update comments * Fix Android unit tests * Remove debug statement * Minor cleanup * Update exception message * chore: update amplify pods to 1.15.5 (#1037) * fix(datastore): fix temporal date/time query predicates (#1027) * test: add integ tests for datetime types * fix: serialize temporal types in predicates * chore: Update integ tests for temporal types * chore: add DateTime back with deprecation note * chore: add deprecation log for DateTime types * fix: add missing import * test: add unit test for temporal type * fix: serialize values for non-primitive types * Update aws_date_time_query_predicate_test.dart * Update aws_time_query_predicate_test.dart * chore: update integ tests * Post exceptions on the main thread (#1047) * Update custom pre-sign up handler (#1051) * chore: 0.2.7 release (#1052) * 0.2.7 release * Revert bump note for plugin interface * chore: tweak integration tests, change storage assertion and use gradle version 4.0.1 for all example apps (#1040) * fix: "Reply already submitted" crashes (#1058) * Update Android * Update iOS * Fix Android unit test * Fix iOS unit tests * Fix DateTime parsing (#1062) * fix(storage): Storage.list crash on null "options" (#1061) * Fix storage crash * Remove validation message * chore: remove DateTime.now() from tests (#1060) * chore: remove datetime.now from datastore interface * chore: remove datetime.now from datastore unit tests * chore: remove datetime now from datastore integ tests * Add ProGuard rules (#1064) * fix:issue 1043 (#1044) change 12-hours based date format to 24-hours . https://developer.android.com/reference/kotlin/java/text/SimpleDateFormat#format * fix (amplify_auth_cognito): fixes swallowed usercancelled exception with hosted ui android, and updates auth exampl… (#1015) * fixes swallowed error with hosted ui android, and updates auth example app * Update packages/amplify_auth_cognito/android/src/main/kotlin/com/amazonaws/amplify/amplify_auth_cognito/AuthCognito.kt Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Noyes <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * feat(datastore): Custom Error Handler (#1032) * chore: 0.2.8 release (#1087) * chore: 0.2.8 release * Update changelogs * chore: 0.2.9 release (#1108) * chore: 0.2.9 release * Correct the info in changelogs * Fix incorrectly resolved conflict * Fix amplify_core example iOS build * Fix swift linter complained errors - Function name cannot start with upper case - Class name cannot start with lower case * Revert "Fix swift linter complained errors" This reverts commit ddceaa7d52202fd59f84645da145b1693e7698a8. * Fix swiftlint errors * Fix some changes Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Travis Sheppard <[email protected]> Co-authored-by: hexch <[email protected]> Co-authored-by: Dustin Noyes <[email protected]> Co-authored-by: Noyes <[email protected]> * Fix resolving conflict brought errors * Fix duplicate test member * Remove old core file * chore: Add missing license headers (#1127) * Add missing license headers * Fix formatting * Fix coroutines crash (#1132) * fix(auth): Remove duplicate AtomicResult (#1133) * Remove duplicate AtomicResult * Rename result * chore: merge RC into release/0.3.0 (#1118) * break(datastore): cannot saving boolean as integer in SQLite (#895) * break(amplify_auth_cognito): throw SignedOutException (#893) * break(amplify_auth_cognito): fixes getCurrentUser disparity (#894) * GraphQL Stream -> RC (#905) * fix(amplify_auth_cognito): fixes getCurrentUser success (#911) * chore: release 0.3.0-unstable.1 (#908) * chore: release 0.3.0-rc.1 (#915) * feat(datastore): Add CustomType functionality (#847) (#920) * feat(datastore): Add CustomType functionality (#847) * feat(datastore): Add CustomType functionality * Update copyright year and reformatted some source code * Resolve comments * feat(datastore): Add CustomType support for amplify-flutter iOS * squash * Fix existing DataStore iOS unit tests * Add unit tests for iOS changes * Fix broken format * Update example App iOS project settings * Fix iOS unit tests * Resolved comments for Android implementation * Resolve comments for iOS implementation * Upgrade amplify-android to 1.26.0 * Resolve comments targeting the iOS implementation * Resolve comments * Fix embedded desrialization after merging main * Add CustomType integration tests * Upgrade amplify-android to 1.27.0 * Apply suggestions from code review Co-authored-by: Chris F <[email protected]> * resolve comments Co-authored-by: Chris F <[email protected]> * Update datastore changelog * Commit changes of schema.graphql for integration tests * Resolve comments * Fix timestamp fields may contain double value * Add ending line * Fix should be able to resolve multiple deps trees * Upgrade amplify-android to 1.28.0 * Apply suggestions from code review Co-authored-by: Chris F <[email protected]> * Simplied map transform syntax Co-authored-by: Chris F <[email protected]> * Chore/rc merge main (#1003) * Replace JCenter with Maven Central (#903) * Replace JCenter with Maven Central * Make uniform * Revert core * fix(datastore): remove default pagination behavior on iOS (#906) * fix: remove default pagination on ios * chore: update test to use models.length * chore: remove sort order from test * test: update datastore unit test * chore: move var declaration inside if block * feat(Auth) support preferPrivateSession flag (#897) * support preferPrivateSession flag * fix flutter format * fix unit test * create and use SignInWithWebUIOptions * update styles and doc * remove unused code Co-authored-by: Mo Malaka <[email protected]> * feat(auth): add global sign out (#782) * feat: add global sign out * chore: rmove unused code * chore: Update android unit tests * chore: update iOS unit tests * chore: add unit tests for global sign out * chore: fix formatting * chore: update amplify-android to 1.26.0 * chore: update SignOutRequest comment * chore: refactor FlutterSignOutRequest * chore: update integration test commands to allow selection (#910) * chore: update integ test commands with selection * chore: update description * chore: Revert unpub (#919) * Add unpub iOS checks * Fix port * Add logs * Run server in background * Make script foreground * Add wait before pub get * Remove sleep * Update URL * Remove from CI * Remove unpub stuff * Fix API auth for REST (#925) * chore: bump amplify-android dep to 1.28.0 (#949) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * Storage download progress (#928) Co-authored-by: Dillon Nys <[email protected]> * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * fix(datastore): Re-emit events on hot restart (#980) * Add hot restart protection * Add test * Update DataStoreHubEventStreamHandlerTests.swift Fix unit test * Add deinit for test cases * fix(datastore): replay events on Android after a hot restart (#965) * fix: replay events on Android after a hot restart * chore: use mutable list * Update formatting Co-authored-by: Jordan Nelson <[email protected]> * chore: Update issue template (#985) * chore: Update issue template Update issue template to include pubspec.lock file * Update bug_report.md * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd126027b7b3e6afa0f9ef1d037e7e380bf53a48. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Fix failing tests due to missing test data Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> * chore: Lints (#918) * Reorg + integ tests * Clean up * Update tests; attempt Android * Throw if Android * Lint amplify_flutter and amplify_core * Fix * Re-enable CI/CD lints * Fix amplify_flutter tests * Run Android lints * Fix formatting * Keep trying Android reset * Create amplify_test_flutter package * Fix API auth for REST (#925) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd126027b7b3e6afa0f9ef1d037e7e380bf53a48. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Fix imports * Fix linting * Update dependencies * Add missing build tools * Update pubspecs * Revert Android changes * Use local dependencies * Update license and readme * Trigger CI * Fix imports * Fix lints * Revert amplify_flutter change * Remove unnecessary lint disable * Revert DataStore model changes; fix yellow * Revert test pkg & integ tests * Fix amplify_flutter example * Fix amplify_flutter example * Fix amplify_flutter example * Remove uuid from API plugin deps * Misc corrections Co-authored-by: Kyle <[email protected]> Co-authored-by: Hui Zhao <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> * fix(datastore): Add auth rule provider info to generate schema (#955) * fix(datastore): Add auth rule provider info to generate schema * Covert CRLF to LF * Make provider field optional * Reformat kt file and address linter suggested issue * Adapt auth provider to Android implementation * Update test case to match the real use case * chore(test): Add test pkgs and integ tests for core (#1011) * Reorg + integ tests * Clean up * Update tests; attempt Android * Throw if Android * Lint amplify_flutter and amplify_core * Fix * Re-enable CI/CD lints * Fix amplify_flutter tests * Run Android lints * Fix formatting * Keep trying Android reset * Create amplify_test_flutter package * Fix API auth for REST (#925) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd126027b7b3e6afa0f9ef1d037e7e380bf53a48. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Fix imports * Fix linting * Update dependencies * Add missing build tools * Update pubspecs * Revert Android changes * Use local dependencies * Update license and readme * Trigger CI * Fix imports * Fix lints * Revert amplify_flutter change * Remove unnecessary lint disable * Revert DataStore model changes; fix yellow * Remove uuid from API plugin deps * Misc corrections * Add license headers * Fix deps * Remove flutter test pkg for now; fix integ tests * Add flutter dependency * Fix unit tests Co-authored-by: Kyle <[email protected]> Co-authored-by: Hui Zhao <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> * chore: Melos integration tests (#1025) * Melos integ test fixes * Update test command * Datastore support read only (#1024) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. Updated all Datastore Codegen models with cli-codegen's new createdAt and updatedAt auto generated fields. * chore(datastore): Update changelog with preview instructions (#1001) * chore(datastore): Update changelog with preview instructions * Reorganize the RC changelog * Update description * chore: release 0.3.0-rc.2 (#1030) * chore: release 0.3.0-rc.2 * Update pubspec of the example app * fix(api): Rebase OIDC fixes for RC (#1036) * Rebase OIDC fixes for RC * Update changelogs * Remove dup gradle dep * chore(datastore): Update codegen generated files (#1038) * Post exceptions on the main thread (#1046) * chore(auth): CognitoUserAttributes type (#1035) * Re-land cognito attribute type * Update examples * Update doc comment * Update values * Make non-breaking * Revert "Make non-breaking" This reverts commit ccada62cb6208b28e082002aa0c994ec6b69caac. * Make non-breaking * Use UserAttributeKey instead of Object * Clean up * Fix unit test * Change invalid key parsing * Copy user attributes before removing * Fix test * Rename to CognitoUserAttributeKey * Update user attribute methods to throw * Remove import * Fix integration test * chore: Update changelog date (#1053) * Update changelog date * Update meta dependency * chore: remove deprecated auth classes (#1049) * chore: remove deprecated auth classes * chore: uodate change log * Update CHANGELOG.md * Update CHANGELOG.md * chore(amplify_core): move model-related types from datastore interface to amplify_core (#1023) move some model-related types from datastore interface to core to support API model-based helpers * fix: serialize confirm sign up options (#1083) * fix: serialize confirm sign up options * chore: update unit test * Revert "chore(amplify_core): move model-related types from datastore interface to amplify_core (#1023)" (#1102) This reverts commit 176653ea5cd7575f6d33d9825b7505c88e908f47. * Merge main into release-candidate (#1113) * Replace JCenter with Maven Central (#903) * Replace JCenter with Maven Central * Make uniform * Revert core * fix(datastore): remove default pagination behavior on iOS (#906) * fix: remove default pagination on ios * chore: update test to use models.length * chore: remove sort order from test * test: update datastore unit test * chore: move var declaration inside if block * feat(Auth) support preferPrivateSession flag (#897) * support preferPrivateSession flag * fix flutter format * fix unit test * create and use SignInWithWebUIOptions * update styles and doc * remove unused code Co-authored-by: Mo Malaka <[email protected]> * feat(auth): add global sign out (#782) * feat: add global sign out * chore: rmove unused code * chore: Update android unit tests * chore: update iOS unit tests * chore: add unit tests for global sign out * chore: fix formatting * chore: update amplify-android to 1.26.0 * chore: update SignOutRequest comment * chore: refactor FlutterSignOutRequest * chore: update integration test commands to allow selection (#910) * chore: update integ test commands with selection * chore: update description * chore: Revert unpub (#919) * Add unpub iOS checks * Fix port * Add logs * Run server in background * Make script foreground * Add wait before pub get * Remove sleep * Update URL * Remove from CI * Remove unpub stuff * Fix API auth for REST (#925) * chore: bump amplify-android dep to 1.28.0 (#949) * feat(datastore): Add ModelField ReadOnly support (#599) * feat(datastore): Add ModelField ReadOnly support ModelFields can be readOnly to support non modifiable field types. * Storage download progress (#928) Co-authored-by: Dillon Nys <[email protected]> * chore: 0.2.5 release (#975) * fix(datastore): Sync Issues (#963) * Bump iOS * Bump version * Bump version * Update Changelogs * Update changelogs * Update changelogs * fix(datastore): Remove temporary fix to issue #395 (#967) * fix(datastore): OIDC Rework (#966) * Bump version * Update Changelogs * Update changelogs * Update changelogs * Change internal OIDC implementation * Remove iOS tests for now * Remove AuthProviderTests * Update conventions * Fix whitespace * Add tests * Clean up * Clean up concurrency * Fix tests * Bump iOS versions * Clean up Android * Update changelog date * Update changelogs Co-authored-by: Hui Zhao <[email protected]> * fix(datastore): Re-emit events on hot restart (#980) * Add hot restart protection * Add test * Update DataStoreHubEventStreamHandlerTests.swift Fix unit test * Add deinit for test cases * fix(datastore): replay events on Android after a hot restart (#965) * fix: replay events on Android after a hot restart * chore: use mutable list * Update formatting Co-authored-by: Jordan Nelson <[email protected]> * chore: Update issue template (#985) * chore: Update issue template Update issue template to include pubspec.lock file * Update bug_report.md * feat(datastore): add observeQuery API (#892) * feat: dart only implementation of observeQuery * feat: use sorted list for cached item * chore: rename sorted list file * feat: move merge logic inside QuerySnapshot * chore: update logging * chore: move evaluate logic to QueryPredicate * feat: add compareTo for temporal types * chore: update examples * test: add unit tests for querySnapshot * feat: add sync status * chore: move StreamGroup * feat: batch before sync * feat: duration batching * chore: create executor * chore: add license * feat: allow for no throttling * test: add tests for throttle extension * chore: remove events from QuerySnapshot * chore: remove events from executor * chore: undo change in main for unit tests * chore: undo formatting change * chore: remove temp changes to query * chore: remove temp change in post model * chore: add missing license * chore: add missing license * chore: remove check for dup event * chore: handle non-comparable fields * chore: remove comments from temporal types * chore: remove late keyword * chore: add operators to SortedList * test: add test for withSyncStatus * test: add tests for SortedList * chore: replace StreamGroup w/ merge util * chore: update comments * test: add unit test for mergeStreams * test: add tests for observeQueryExecutor * chore: removed unused ensureInitialized calls * chore: update doc comments * fix: update query field operator comparisons * test: add tests for sort comparisons * test: query predicate comparison test * test: add test for sync status cache * test: add tests for and/or/not predicates * chore: update model * chore: address initial PR comments * chore: refactor ObserveQueryExecutor * chore: refactor SortedList to use ListMixin * feat: update merge to use sync stream controller * test: observeQuery integ tests * chore: update example app * feat: start batching after model sync started * chore: removed runQueries() from example app * chore: refactor sort order, add test * chore: update import statement * chore: refactor withSubscriptionEvent * chore: add test coverage to throttle util * chore: replace custom merge util with async * chore: address formatting issue * chore: remove unused stream util * chore: undo unrelated change * Revert test model changes * Fix test model * Bump iOS version Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * Revert "feat(datastore): Add ModelField ReadOnly support (#599)" (#994) This reverts commit fd126027b7b3e6afa0f9ef1d037e7e380bf53a48. * chore: 0.2.6 release (#993) * 0.2.6 release * Update example app pubspec * Bump Android deps * Query operator fields should be nullable * Update changelogs * fix: update predicate evaluation for nulls * test: add query predicate evaluate tests for nulls * chore: update test data * chore: regen models with cli 6.3.1 * chore: add test schema file Co-authored-by: Jordan Nelson <[email protected]> * Remove spooky log messages (#1008) * Insert final newline (#1010) * fix(datastore): Android TemporalTime Save Issue (#1009) Add padding in fromString method for TemporalDateTime and TemporalTime to replace trailing “0”s removed by Android. Fix suggested by @martinzuccotti * fix(api): OIDC fixes for Android (#1028) * OIDC fixes for Android * Update comments * Fix Android unit tests * Remove debug statement * Minor cleanup * Update exception message * chore: update amplify pods to 1.15.5 (#1037) * fix(datastore): fix temporal date/time query predicates (#1027) * test: add integ tests for datetime types * fix: serialize temporal types in predicates * chore: Update integ tests for temporal types * chore: add DateTime back with deprecation note * chore: add deprecation log for DateTime types * fix: add missing import * test: add unit test for temporal type * fix: serialize values for non-primitive types * Update aws_date_time_query_predicate_test.dart * Update aws_time_query_predicate_test.dart * chore: update integ tests * Post exceptions on the main thread (#1047) * Update custom pre-sign up handler (#1051) * chore: 0.2.7 release (#1052) * 0.2.7 release * Revert bump note for plugin interface * chore: tweak integration tests, change storage assertion and use gradle version 4.0.1 for all example apps (#1040) * fix: "Reply already submitted" crashes (#1058) * Update Android * Update iOS * Fix Android unit test * Fix iOS unit tests * Fix DateTime parsing (#1062) * fix(storage): Storage.list crash on null "options" (#1061) * Fix storage crash * Remove validation message * chore: remove DateTime.now() from tests (#1060) * chore: remove datetime.now from datastore interface * chore: remove datetime.now from datastore unit tests * chore: remove datetime now from datastore integ tests * Add ProGuard rules (#1064) * fix:issue 1043 (#1044) change 12-hours based date format to 24-hours . https://developer.android.com/reference/kotlin/java/text/SimpleDateFormat#format * fix (amplify_auth_cognito): fixes swallowed usercancelled exception with hosted ui android, and updates auth exampl… (#1015) * fixes swallowed error with hosted ui android, and updates auth example app * Update packages/amplify_auth_cognito/android/src/main/kotlin/com/amazonaws/amplify/amplify_auth_cognito/AuthCognito.kt Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Noyes <[email protected]> Co-authored-by: Dillon Nys <[email protected]> * feat(datastore): Custom Error Handler (#1032) * chore: 0.2.8 release (#1087) * chore: 0.2.8 release * Update changelogs * chore: 0.2.9 release (#1108) * chore: 0.2.9 release * Correct the info in changelogs * Fix incorrectly resolved conflict * Fix amplify_core example iOS build * Fix swift linter complained errors - Function name cannot start with upper case - Class name cannot start with lower case * Revert "Fix swift linter complained errors" This reverts commit ddceaa7d52202fd59f84645da145b1693e7698a8. * Fix swiftlint errors * Fix some changes Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Travis Sheppard <[email protected]> Co-authored-by: hexch <[email protected]> Co-authored-by: Dustin Noyes <[email protected]> Co-authored-by: Noyes <[email protected]> * Fix resolving conflict brought errors * Fix duplicate test member * Remove old core file Co-authored-by: Dustin Noyes <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Chris F <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Dillon Nys <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Travis Sheppard <[email protected]> Co-authored-by: hexch <[email protected]> Co-authored-by: Noyes <[email protected]> * chore: upgrade dependencies (#1138) - amplify-android to 1.29.1 - amplify-ios pin to 1.15.6 * fix (amplify_datastore): fix error map from ios (#1126) * fix(api): 0.3.0 fixes (#1153) * Prevent false positive of registered auth provider * Use default auth rule on Android (prevent null ex) * Safe Map cast * Fix linting * Cherry-pick #1153 * fix(amplify_auth_cognito): remove int.parse from AuthUserAttribute (#1169) * fix(amplify_auth_cognito): remove int.parse from AuthUserAttribute * fix: update unit test * chore: use toString over .key Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Su Tran <[email protected]> Co-authored-by: Mo Malaka <[email protected]> Co-authored-by: Kyle <[email protected]> Co-authored-by: Hui Zhao <[email protected]> Co-authored-by: Jordan Nelson <[email protected]> Co-authored-by: Travis Sheppard <[email protected]> Co-authored-by: hexch <[email protected]> Co-authored-by: Dustin Noyes <[email protected]> Co-authored-by: Noyes <[email protected]> Co-authored-by: Hui Zhao <[email protected]> Co-authored-by: Chris F <[email protected]>
Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.