Skip to content
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): remove default pagination behavior on iOS #906

Merged

Conversation

Jordan-Nelson
Copy link
Member

Issue #, if available: #891

Description of changes:

  • remove the default behavior in QueryPaginationBuilder on iOS to use a page of 0 and a limit of 100

Amplify-flutter, Amplify-iOS, and Amplify-Android all allow for null/nil page sizes in the query() API. Amplify-iOS and Amplify-iOS do not provide any default behavior if null/nil is provided. Currently in Amplify-flutter there are default values used on iOS, but not Android.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@Jordan-Nelson Jordan-Nelson requested a review from a team as a code owner September 22, 2021 21:04
Copy link
Member

@HuiSF HuiSF left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for fixing this discrepancy! One nit-picking comment.

@@ -18,7 +18,7 @@ import Amplify

public class QueryPaginationBuilder {

static func fromSerializedMap(_ serializedMap: [String: Any]?) -> QueryPaginationInput {
static func fromSerializedMap(_ serializedMap: [String: Any]?) -> QueryPaginationInput? {
var page: UInt = 0, limit: UInt = QueryPaginationInput.defaultLimit;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: can probably move var page: UInt = 0, limit: UInt = QueryPaginationInput.defaultLimit; into the if let data = serializedMap block.

Copy link
Contributor

@dnys1 dnys1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@codecov-commenter
Copy link

Codecov Report

Merging #906 (a51bb12) into main (7841253) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #906   +/-   ##
=======================================
  Coverage   65.91%   65.92%           
=======================================
  Files         283      283           
  Lines        9734     9736    +2     
  Branches      395      395           
=======================================
+ Hits         6416     6418    +2     
  Misses       3179     3179           
  Partials      139      139           
Flag Coverage Δ
android-unit-tests 63.24% <ø> (ø)
flutter-unit-tests 55.63% <ø> (ø)
ios-unit-tests 71.42% <100.00%> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
...s/Classes/types/query/QueryPaginationBuilder.swift 100.00% <100.00%> (ø)

@Jordan-Nelson Jordan-Nelson merged commit 4997779 into aws-amplify:main Sep 23, 2021
dnys1 added a commit that referenced this pull request Oct 1, 2021
* chore: make .gitignore more specific for amplify dirs and tweak integration test melos tasks (#711)

* chore(auth): User attributes/sign up docs (#697)

* feat(amplify): Null Safety Core (#492)

Null Safety upgrade for (to min Dart 2.12):
Core
Flutter
All Plugin Interface Packages

* feat(amplify_auth): Null Safety Auth (#536)

* feat(amplify_analytics): Null safety (#483)

* feat(amplify_storage_s3): Null safety (#485)

* feat(amplify_api): Null safety api (#484)

* fix: Broken Unit Tests

* fix: upgrade Auth changes to null safety

* fix: Broken Auth Unit Tests

* fix(amplify_auth_cognito): fixes auth null safety issues (#613)

* Example app null safety fixes (#617)

* Null safety master fixes pr (#614)

* chore(release): 0.2.0-nullsafety.0 (#622)

* Version Update to 0.2.0-nullsafety.0

* Update amplify.dart

Co-authored-by: Dustin Noyes <[email protected]>

* Update FlutterFetchCognitoAuthSessionResult.kt (#653)

* Null safety datastore (#649)

* chore: release 0.2.0-nullsafety.1 (#656)

* bug(datastore): HubEvent null check (#670)

* Fix HubEventElements for NS

* Refactor and add tests

* Null safety master rebase (#676)

* chore: pin Amplify iOS to '~> 1.9.2' (#589)

* set amplify ios to '~> 1.9'

* set amplify ios to '~> 1.9.2'

* add 'ObjectMapper' back to podspec

Co-authored-by: Ashish Nanda <[email protected]>

* chore: foundation for integration tests and basic auth suite with signIn and signOut (#568)

* feat(auth): add updateUserAttributes (batch) (#601)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

Co-authored-by: Chris F <[email protected]>

* chore(amplify_api): add httpStatusCode property to ApiException when available from REST response (#590)

Add integer property httpStatusCode to ApiException. In android and iOS, look for the status code in the response/error object and add to the serialized map. In flutter, add the new property to the serialization logic specifically for ApiException.

* fix(auth): Add clientMetadata to confirmSignUp API options (#619)

* Chore: remove check for duplicate error in Storage (#618)

* remove check for dup err cb

* bump amplify-android to version 1.17.8

* fix(auth): iOS/Android user attribute inconsistencies  (#620)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

* iOS: handle missing and custom attributes

* add constant for customKeyPrefix

Co-authored-by: Chris F <[email protected]>

* Add support of DataStore custom configuration (#610)

* refactor: Minor refactor of DataStore methods

* Free up `configure` method for native passthrough

* Move observe configuration into its own explicit method

* Corrected observe setup method in swift to call the invokeMethod callback so the call can be properly awaited upon in dart layer

* Broaden `configureDataStore` naming to convey more than model provider being able to be configured through this method

* Allow plugins to be added in parallel instead of in a series

* Update unit tests to correctly assert observe call result

* Remove setUpObserve API. Restore setUpObserve call to configure

* feat(datastore) Allow configure DataStore with custom configuration

* Reintroduce configureModelProvider as deprecated method

* chore(datastore) Add unit tests for custom DataStore configuration

* Update configure to not throw error if DataStore plugin is not found

* Split datastore configuration unit tests by use cases

Co-authored-by: Chris Fang <[email protected]>

* Use "flutter pub" in melos.yaml (and everywhere else) (#603)

* Use dart pub in melos.yaml

* Fix all references to 'pub _' with 'flutter pub _'

* Work around hanging build; don't install in postbootstrap

* fix(tests): add --no-pub to integration tests (#637)

* add --no-pub to integration tests

* fix typo

* fix: CONTRIBUTING Dead Links (#630)

* fix(amplify_auth_cognito): adds userAttributes to confirmSignIn (#607)

* chore: Add CircleCI badge (#631)

* chore: Add CircleCI badge

* fix: changed badge hyperlink

* fix: badage now points towards master branch

* Update README.md

Co-authored-by: Jordan Nelson <[email protected]>

Co-authored-by: Jordan Nelson <[email protected]>

* chore: upgrade amplify-android to 1.19.0 (#650)

* fix: amplify-ios version bump (#648)

* fix: amplify-ios version bump ~> 1.11.0 (#665)

* chore: release 0.1.6 (#667)

* fix: amplify-ios version bump ~> 1.11.0

* chore: release 0.1.6

* Update CHANGELOG.md

Co-authored-by: Noyes <[email protected]>

* Pagination with Datastore #500 (#673)

* Fix compile errors

* Fix broken unit tests

* Fix Android Unit Tests

* fix(amplify_datastore): force cast exception codegen

1) add new exception for force cast in codegen models

# Conflicts:
#	packages/amplify_datastore_plugin_interface/lib/src/publicTypes.dart

* Fix ios unit tests

This file was corrupted during the rebase

* Update codegen models to latest

* PR Comments

* Fix Android Unit Tests

* Last PR Comment

Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>

* fix(amplify_datstore): mprovider compile issue (#681)

* chore: remove deprecated method - configureModelProvider

* Revert "chore: remove deprecated method - configureModelProvider"

This reverts commit 00dbc7a.

* Revert "Revert "chore: remove deprecated method - configureModelProvider"" (#682)

remove deprecated method - configureModelProvider

Co-authored-by: Chris Fang <[email protected]>

* fix(Auth): Remove use of TypeToken (#683)

* remove use of type token from auth session

* remove TypeToken from exception util

* fix(auth): update user attribute serialization (#684)

* update user attr res serialization

* update unit tests

* Fix enum string function (#687)

* Fix enum string function

* Update logic

* Revert "Update logic"

This reverts commit 75d257a.

* fix(auth): uses nextStep helper for signInResult on Android (#689)

* chore: release 0.2.0 (#690)

* Revert "Merge branch 'master' into null-safety-master"

This reverts commit 5e7fd30, reversing
changes made to bf394bb.

* Update docs

* Add user attributes

* Update tests

* Revert minor change

* Merge branch 'master' into chore/user-attributes-ns

* Add export

Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>

* chore(amplify_api): add GraphQL integration tests (#694)

* chore(CI): enable formatting in CI w/ code changes (#570)

* enable formatting in CI

* diable analyze

* split up format and analyze

* chore: melos run format

* chore: empty commit to re-run CI

* chore(auth): integration tests for user attributes (#640)

* handle missing or empty signUpOptions

* add android unit test

* fix iOS tests

* add integration tests for auth.signUp

* remove unused imports, formatting

* add integration tests for user attributes

* add integration tests

* update auth category after NS changes

* update auth category for NS changes

* update unit test for NS changes

* update unit tests for NS changes

* address PR comments

* remove extra parens

* Apply SignUpRequest changes from code review

* add test for invalid attr value

* add user attribute confirmation test

* add fetchUserAttributes group

* remove test for email confirmation

* chore(api): Add API response headers/status (#721)

* Add API response headers/status

* Clean up

* Ensure proper deserialization

* Fix ios tests

* remove unnecessary default

* Add iOS status/headers + tests

* Remove empty body fix

* Missing status code

* Add license comments

* Clean up iOS tests

* Add RestException tests

* Add deprecation warning

* Fix example encoding

* Add Flutter plugin tests

* Rename file

* chore(amplify_datastore): make SubscriptionEvent directly available via datastore plugin by adding to publicTypes in interface (#728)

* fix(datastore): not serializing enum type in a predicate (#726)

* chore(amplify_storage_s3): add storage integration tests and update example app (#734)

* chore(auth): add integration test coverage for auth (#724)

* chore(auth): add integ tests for auth hub

* chore(auth): add integ test for update password

* chore(auth): add integ test for sign up exceptions

* chore(auth): test exceptions in signIn, signOut

* chore(auth): add fetch session integration tests

* chore(auth): add integ tests for getCurrentUser

* chore: formatting in get_current_user

* chore: formatting in fetch_session

* chore: refactor setup for update password tests

* chore: update fetch session test to check for null

* fix typos in comments

* chore: address PR feedback

* chore: fix formatting issues

* chore(datastore): add integration tests for datastore (#753)

* chore: add integration tests for datastore

* chore: address pr comments

* chore: configure datastore before each test

* chore: refactor save test

* chore: fix formatting

* chore: update name to configureDataStore

* Release updates 0.2.1 (#756)

* chore: Update Changelog for 0.2.1 release

* chore: Update Pubspec version to 0.2.1

Also update amplify.dart to return 0.2.1 for version string

* Update changelog

* chore: set min flutter version to '>1.20.0' in packages where set to … (#757)

* feat(amplify_auth_cognito): enables clientMetadata for signUp (#713)

* fix(datastore): Query nested model causes column not found sql error (#761)

* Reformat source code

* fix(datastore): Query nested model causes column not found sql error

* Optimize method interface to clarify the purpose

* Optimize method interface

* Added relationship check ensure the field conversion happens only for BelongsTo

* bug(analytics): Force session start (#764)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* fix(analytics): Typo (#765)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* Fix iOS method name

* feat(amplify_auth_cognito): Auth Devices API (#735)

* Add platform code

* Clean up

* Add licenses

* Fix error handling

* Add logging and update threading logic

* Add iOS unit tests

* Clean up

* Add tests to project

* Fix unit tests

* chore(datastore): Remove redundant files for the datastore example (#762)

* feat(datastore): Populate belongs-to nested models (#658)

* feat(datastore): Populate has-one and belongs-to nested models

* Nest data under serializedData key and persist modelName

* Resolve comment

* Update packages/amplify_datastore/example/ios/unit_tests/resources/SchemaData.swift

Co-authored-by: Chris F <[email protected]>

* chore(amplify_api): add support for apiName to GraphQL requests (#553)

* fix(amplify_api): prevent some fatal REST errors in Android

Throw ApiException in android when PUT, POST, and PATCH REST requests have no body to prevent fatal error (#661).

* chore(release): 0.2.2 (#781)

* chore(release): missing dependency (#783)

* Bump analytics version

* Fix PR #

* Bump all versions

* Missing bump

* Pin collections

* chore: skip FlutterURLSessionTests (#795)

* chore(lints): Add amplify_lints package (#808)

* Add lints package

* Add missing readme item

* feat(auth): add options to resendSignUpCode (#738)

* feat(auth): add options to resendSignUpCode

* fix: add type export for sing up code options

* chore: fix formatting issues

* chore: update comments for consistency

* chore: rename private method names for consistency

* chore: update comments for consistency

* chore: make ResendSignUpCodeOptions abstract

* chore: update ResendSignUpCodeRequest serializeAsMap

* chore: update ios test

* chore update doc comments

* chore: bump amplify-android to 1.24.0

* chore: remove star import

* feat(auth): add support for options to resetPassword, confirmResetPassword (#743)

* chore: rename confirmPassword to confirmResetPassword

* chore: fix grammatical errors in docs

* feat(auth): add options support for resetPassword, confirmResetPassword

* chore: rename private methods for consistency

* chore: update comments for consistency

* chore: update ios tests

* chore: fix comments

* chore: handle deprecated methods

* separate out deprecated class

* chore: update serializeAsMap for consistency

* chore: properly deprecate confirmPassword

* chore: add deprecation annotation to interface

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* feat(auth): add options to updateAttribute, updateAttributes, resendUserAttributeConfirmationCode (#775)

* chore: move attribute types to new dir

* chore: rename fetch attribute classes

* feat: add client metadata to user attribute methods

* deprecate renamed types

* chore: update comments for consistency

* chore: rename methods, tests

* chore: break out depracted classes, make new classes abstract

* chore: revert star import

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* chore: remove empty line

* fix(amplify_auth_cognito): throws signedout exception (#730)

* fix(amplify_datastore): ios send modelProviderVersion (#439)

Co-authored-by: Hui Zhao <[email protected]>

* feat(datastore): Add start and stop APIs (#811)

* Convert file to LF mode

* feat(datastore): Add start and stop APIs

* Add docs

* Resolve comments

* chore(analytics): Apply lints (#810)

* Clean up pinpoint

* Clean up pinpoint dart

* Enable CI for analytics

* Add iOS linting

* Clean up

* Update iOS script

* Fix Android melos script

* Update CI order

* Small changes

* Update type

* Add iOS whitespace rules

* Update type

* Apply updated rules

* feat(auth): OIDC/Lambda Support (#777)

* OIDC/Lambda support

* Clean up

* Fix iOS test

* Add unit tests

* Fix Android test

* Fix Android tests

* Refactor and remove AuthToken from the public API

* Remove concurrent guards

* Clean up

* chore: upgrade amplify-android 1.24.1 (#829)

* fix(datastore): cannot saving boolean as integer in SQLite (#754)

* fix(datastore): cannot saving boolean as integer in SQLite

* fix unit test

* Apply the fix to double type field as well

* fix(datastore): return null for list field in nested model (#843)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent (#647)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent

* Print unrecognized event details in iOS

* Resolve comments

* chore(api): Apply lints (#812)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Revert license date

* Revert "Revert license date"

This reverts commit 1b93b3f.

* test(DataStore): add local integration tests for datastore (#831)

* chore: add new model types for tests

* test: add tests for model types

* chore: update models for relationship tests

* test: add tests for hasOne, belongsTo

* chore: update models for hasMany tests

* test: add tests for hasMany relationship

* test: add query predicate test for string type

* test: add test for updating an existing model

* chore: skip flaky test on Android

* chore: clean up string predicate tests

* test: add integ tests for int/double query predicates

* chore: remove unused model

* chore: update tests after fix of #511

* chore: refactor model type tests

* chore: add provisioning script

* chore: update relationship tests

* chore: remove skipped test in save

* chore: add delay before clearing datastore

* test: add bool query predicate tests

* chore: update issue link for skipped test

* chore: update test w/ fix of #834

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

* chore: update testQueryPredicate for all models

* chore: update comment in bool query tests

* test: add test cases for unicode

* chore: update bool model generation

* chore: update testModelOperations to use getModelType

* test: add edge cases for model type tests

* chore: remove unneeded Map.from

* test: add edge cases to query predicate tests

* chore: update int/double predicate tests to use <>=

* chore: remove unneeded configure calls

* chore: update string between() test

* chore: update relationship tests to check for single model

* test: update observe tests to test all events

* chore: add notes to equality checks

* chore: remove const from test

* chore: remove hard coded length

Co-authored-by: Chris F <[email protected]>

* fix(api): OIDC/Lambda Fixes (#862)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Merge branch 'datastore/multiauth' into chore/api-lints

* Revert multiauth

* Fix updateTokens

* Fix GraphQL error decoding

* Fix formatting

* Clean up

* Clean up

* Clean up

* Fix analysis for Flutter 2.5.0

* break(amplify_auth_cognito): fixes getCurrentUser disparity (#773)

* fix(amplify_datastore): iOS json deserialization (#806)

iOS ONLY fix.  Android was unaffected.

Ensure nested model int types are returned as int instead of double

Consolidate duplicated code for extracting values from Json during serialization step

* chore(release): 0.2.3 (#866)

* fix(example) updates amplify dependencies (#867)

* test(DataStore): add additional local integration tests for datastore (#844)

* Revert "Merge branch 'release-candidate' into main" (#871)

This reverts commit a88a109, reversing
changes made to 324ebad.

* fix: Cocoapods relative import (#874)

* Fix Cocoapods relative import

* Update dependencies

* Add lints license

* Update amplify_flutter

* 0.2.4

* fix(example): Update dependencies (#875)

* Update example app

* Add example app to CI

* Update iOS settings

* chore: Enable release checks via unpub (#876)

* Add unpub step to CI builds

* Fix CI config

* Fix CI script

* Add yq

* Fix brew

* Add yq on Android

* Add new workflows

* Fix yml

* Fix yml

* Fix yml

* Fix curl cmd

* Fix docker compose check

* Fix yml

* Fix yml

* Update path search

* Fix melos setup

* Fix yq script

* Switch executor flow

* Fix

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Update launcher

* Fix ref

* Test

* Fix versions

* Fix example version

* Fix remote build

* Fix dev dependency versioning

* Fix script order

* Use local project for seeding deps

* Add dummy configs back

* Reenable full pipeline

* Fix melos command

* Update step name

* Merge main

* fix: Melos bootstrap should not fail (#887)

* Fix postbootstrap

* Fix example app

* 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)

Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: José Sánchez <[email protected]>
Co-authored-by: Su Tran <[email protected]>
dnys1 added a commit that referenced this pull request Oct 5, 2021
* chore: make .gitignore more specific for amplify dirs and tweak integration test melos tasks (#711)

* feat: ✨ first snippet for the amplify authenticator

* chore(auth): User attributes/sign up docs (#697)

* feat(amplify): Null Safety Core (#492)

Null Safety upgrade for (to min Dart 2.12):
Core
Flutter
All Plugin Interface Packages

* feat(amplify_auth): Null Safety Auth (#536)

* feat(amplify_analytics): Null safety (#483)

* feat(amplify_storage_s3): Null safety (#485)

* feat(amplify_api): Null safety api (#484)

* fix: Broken Unit Tests

* fix: upgrade Auth changes to null safety

* fix: Broken Auth Unit Tests

* fix(amplify_auth_cognito): fixes auth null safety issues (#613)

* Example app null safety fixes (#617)

* Null safety master fixes pr (#614)

* chore(release): 0.2.0-nullsafety.0 (#622)

* Version Update to 0.2.0-nullsafety.0

* Update amplify.dart

Co-authored-by: Dustin Noyes <[email protected]>

* Update FlutterFetchCognitoAuthSessionResult.kt (#653)

* Null safety datastore (#649)

* chore: release 0.2.0-nullsafety.1 (#656)

* bug(datastore): HubEvent null check (#670)

* Fix HubEventElements for NS

* Refactor and add tests

* Null safety master rebase (#676)

* chore: pin Amplify iOS to '~> 1.9.2' (#589)

* set amplify ios to '~> 1.9'

* set amplify ios to '~> 1.9.2'

* add 'ObjectMapper' back to podspec

Co-authored-by: Ashish Nanda <[email protected]>

* chore: foundation for integration tests and basic auth suite with signIn and signOut (#568)

* feat(auth): add updateUserAttributes (batch) (#601)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

Co-authored-by: Chris F <[email protected]>

* chore(amplify_api): add httpStatusCode property to ApiException when available from REST response (#590)

Add integer property httpStatusCode to ApiException. In android and iOS, look for the status code in the response/error object and add to the serialized map. In flutter, add the new property to the serialization logic specifically for ApiException.

* fix(auth): Add clientMetadata to confirmSignUp API options (#619)

* Chore: remove check for duplicate error in Storage (#618)

* remove check for dup err cb

* bump amplify-android to version 1.17.8

* fix(auth): iOS/Android user attribute inconsistencies  (#620)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

* iOS: handle missing and custom attributes

* add constant for customKeyPrefix

Co-authored-by: Chris F <[email protected]>

* Add support of DataStore custom configuration (#610)

* refactor: Minor refactor of DataStore methods

* Free up `configure` method for native passthrough

* Move observe configuration into its own explicit method

* Corrected observe setup method in swift to call the invokeMethod callback so the call can be properly awaited upon in dart layer

* Broaden `configureDataStore` naming to convey more than model provider being able to be configured through this method

* Allow plugins to be added in parallel instead of in a series

* Update unit tests to correctly assert observe call result

* Remove setUpObserve API. Restore setUpObserve call to configure

* feat(datastore) Allow configure DataStore with custom configuration

* Reintroduce configureModelProvider as deprecated method

* chore(datastore) Add unit tests for custom DataStore configuration

* Update configure to not throw error if DataStore plugin is not found

* Split datastore configuration unit tests by use cases

Co-authored-by: Chris Fang <[email protected]>

* Use "flutter pub" in melos.yaml (and everywhere else) (#603)

* Use dart pub in melos.yaml

* Fix all references to 'pub _' with 'flutter pub _'

* Work around hanging build; don't install in postbootstrap

* fix(tests): add --no-pub to integration tests (#637)

* add --no-pub to integration tests

* fix typo

* fix: CONTRIBUTING Dead Links (#630)

* fix(amplify_auth_cognito): adds userAttributes to confirmSignIn (#607)

* chore: Add CircleCI badge (#631)

* chore: Add CircleCI badge

* fix: changed badge hyperlink

* fix: badage now points towards master branch

* Update README.md

Co-authored-by: Jordan Nelson <[email protected]>

Co-authored-by: Jordan Nelson <[email protected]>

* chore: upgrade amplify-android to 1.19.0 (#650)

* fix: amplify-ios version bump (#648)

* fix: amplify-ios version bump ~> 1.11.0 (#665)

* chore: release 0.1.6 (#667)

* fix: amplify-ios version bump ~> 1.11.0

* chore: release 0.1.6

* Update CHANGELOG.md

Co-authored-by: Noyes <[email protected]>

* Pagination with Datastore #500 (#673)

* Fix compile errors

* Fix broken unit tests

* Fix Android Unit Tests

* fix(amplify_datastore): force cast exception codegen

1) add new exception for force cast in codegen models

# Conflicts:
#	packages/amplify_datastore_plugin_interface/lib/src/publicTypes.dart

* Fix ios unit tests

This file was corrupted during the rebase

* Update codegen models to latest

* PR Comments

* Fix Android Unit Tests

* Last PR Comment

Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>

* fix(amplify_datstore): mprovider compile issue (#681)

* chore: remove deprecated method - configureModelProvider

* Revert "chore: remove deprecated method - configureModelProvider"

This reverts commit 00dbc7a.

* Revert "Revert "chore: remove deprecated method - configureModelProvider"" (#682)

remove deprecated method - configureModelProvider

Co-authored-by: Chris Fang <[email protected]>

* fix(Auth): Remove use of TypeToken (#683)

* remove use of type token from auth session

* remove TypeToken from exception util

* fix(auth): update user attribute serialization (#684)

* update user attr res serialization

* update unit tests

* Fix enum string function (#687)

* Fix enum string function

* Update logic

* Revert "Update logic"

This reverts commit 75d257a.

* fix(auth): uses nextStep helper for signInResult on Android (#689)

* chore: release 0.2.0 (#690)

* Revert "Merge branch 'master' into null-safety-master"

This reverts commit 5e7fd30, reversing
changes made to bf394bb.

* Update docs

* Add user attributes

* Update tests

* Revert minor change

* Merge branch 'master' into chore/user-attributes-ns

* Add export

Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>

* docs: 📝 update of license & project's description

* feat(amplify_auth_cognito): add initial example app for the authenticator

* iOS & Android files

* feat(amplify_authenticator): screens implementation -Sign In, Sign Up & Confirm Sign Up

* dependecies & project's name updated

* chore(amplify_api): add GraphQL integration tests (#694)

* feat(amplify_authenticator): button disable for auth calls

* chore(CI): enable formatting in CI w/ code changes (#570)

* enable formatting in CI

* diable analyze

* split up format and analyze

* chore: melos run format

* chore: empty commit to re-run CI

* Fix: user not able to sign out

* closing brace

* test directory deleted

* fix: AuthFormField(type: 'password') is able to hide values

* feat: default & custom validators

* chore(auth): integration tests for user attributes (#640)

* handle missing or empty signUpOptions

* add android unit test

* fix iOS tests

* add integration tests for auth.signUp

* remove unused imports, formatting

* add integration tests for user attributes

* add integration tests

* update auth category after NS changes

* update auth category for NS changes

* update unit test for NS changes

* update unit tests for NS changes

* address PR comments

* remove extra parens

* Apply SignUpRequest changes from code review

* add test for invalid attr value

* add user attribute confirmation test

* add fetchUserAttributes group

* remove test for email confirmation

* chore(api): Add API response headers/status (#721)

* Add API response headers/status

* Clean up

* Ensure proper deserialization

* Fix ios tests

* remove unnecessary default

* Add iOS status/headers + tests

* Remove empty body fix

* Missing status code

* Add license comments

* Clean up iOS tests

* Add RestException tests

* Add deprecation warning

* Fix example encoding

* Add Flutter plugin tests

* Rename file

* refactor: signin, signup & confirm signup view models

* docs: initial documentation

* chore: keys in form fields and buttons

* chore: keys in form fields and buttons

* chore(amplify_datastore): make SubscriptionEvent directly available via datastore plugin by adding to publicTypes in interface (#728)

* fix(datastore): not serializing enum type in a predicate (#726)

* test: integration test setup

* feat: custom form field

* refactor: nullable auth variables in confirm sign up, sign in and sign up view models

* refactor: boilerplate from example app

* refactor: amplify_configure.dart deleted

* test: sign in screen integration testing

* doc: public members

* refactor: form field keys

* refactor: using types

* refactor: sign out method

* refactor: handle result from sign in / up calls

* chore(amplify_storage_s3): add storage integration tests and update example app (#734)

* chore(auth): add integration test coverage for auth (#724)

* chore(auth): add integ tests for auth hub

* chore(auth): add integ test for update password

* chore(auth): add integ test for sign up exceptions

* chore(auth): test exceptions in signIn, signOut

* chore(auth): add fetch session integration tests

* chore(auth): add integ tests for getCurrentUser

* chore: formatting in get_current_user

* chore: formatting in fetch_session

* chore: refactor setup for update password tests

* chore: update fetch session test to check for null

* fix typos in comments

* chore: address PR feedback

* chore: fix formatting issues

* test: sign in integration testing

* test: sign up integration testing

* refactor: enums in signup, signin and confirm_signup form fields

* feat: confirm sign in screen

* Update amplify_authenticator.dart

* refactor: late keyword removed

* refactor: getCurrentUser() method

* refactor: return type of currentUser method

* print() removed

* refactor: copy/paste error

* refactor: non-null types

* refactor: non-null type

* refactor: void Function()

* refactor: return null types in form field types

* refactor: null return type

* Update signin_types.dart

* refactor: null return type

* refactor: pr comments

* chore(datastore): add integration tests for datastore (#753)

* chore: add integration tests for datastore

* chore: address pr comments

* chore: configure datastore before each test

* chore: refactor save test

* chore: fix formatting

* chore: update name to configureDataStore

* test: confirm sign in integration test

* Release updates 0.2.1 (#756)

* chore: Update Changelog for 0.2.1 release

* chore: Update Pubspec version to 0.2.1

Also update amplify.dart to return 0.2.1 for version string

* Update changelog

* refactor: code removed

* chore: set min flutter version to '>1.20.0' in packages where set to … (#757)

* fix: unsed code

* fix

* feat: display exceptions widget

* feat(amplify_auth_cognito): enables clientMetadata for signUp (#713)

* Extra lines removed

* extra lines

* chore: extra lines

* fix(datastore): Query nested model causes column not found sql error (#761)

* Reformat source code

* fix(datastore): Query nested model causes column not found sql error

* Optimize method interface to clarify the purpose

* Optimize method interface

* Added relationship check ensure the field conversion happens only for BelongsTo

* bug(analytics): Force session start (#764)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* fix(analytics): Typo (#765)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* Fix iOS method name

* feat: username alias

This change will allow a customer to pass in an username alias to setup the initial auth flow of their apps

* feat: resend code button in confirm sign up screen |

Now the username is automatically setup in the username form field.

* feat(amplify_auth_cognito): Auth Devices API (#735)

* Add platform code

* Clean up

* Add licenses

* Fix error handling

* Add logging and update threading logic

* Add iOS unit tests

* Clean up

* Add tests to project

* Fix unit tests

* feat: rest password option enabled

screen to request the change of password with username

* feat: reset password screen

users can reset their password by setting up a new one and passing a confirmation code

* chore(datastore): Remove redundant files for the datastore example (#762)

* feat(datastore): Populate belongs-to nested models (#658)

* feat(datastore): Populate has-one and belongs-to nested models

* Nest data under serializedData key and persist modelName

* Resolve comment

* Update packages/amplify_datastore/example/ios/unit_tests/resources/SchemaData.swift

Co-authored-by: Chris F <[email protected]>

* feat: confirm sign in with new password screen

* fix(authenticator): SignInFormField pointing to the same instance |
form field in SendCodeScreen was pointing to the same instance in a form field in the SignInScreen

* fix: form field pointing to same instance

* refactor: update password

* refactor: keys

* chore(amplify_api): add support for apiName to GraphQL requests (#553)

* fix(amplify_api): prevent some fatal REST errors in Android

Throw ApiException in android when PUT, POST, and PATCH REST requests have no body to prevent fatal error (#661).

* refactor: branch conflicts

* fix: confirm password username attribute

* fix: second clause for non-Amplify exceptions

* refactor: clearException method for clearing all exceptions in the
exception controller.

* refactor: clearException method

* refactor: non null exception controller

* fix: throw error when signInStep == 'CONFIRM_SIGN_IN_WITH_CUSTOM_CHALLENGE'

* refactor: error objects

* feat: user is signed in after confirm sign up and when sign up respone is 'DONE'

* chore(release): 0.2.2 (#781)

* feat: confirm sign in auth flow

* refactor: show sign in screen after sign out

* refactor: const variable

* chore: unnecessary enum deleted

* refactor: non-null & final declaration

* chore: commented code removed

* refactor: VMs updated based on the triggered state

* refactor: resend code method

* refactor: validators in form fields

* fix: null value in a variable at confirm sign up VM

* refactor: authenticator container padding

* refactor: else clause in Authenticator Stream Builder

* refactor: username alias optional

* doc: finders in intergarion testion

* doc: finders

* doc: username alias doc

* refactor: inherited forms

* chore(release): missing dependency (#783)

* Bump analytics version

* Fix PR #

* Bump all versions

* Missing bump

* Pin collections

* fix: overflow in exception widget

* fix: validation in confirm sign up form fields.

* refactor: null check (!)  removed from inherited forms

* feat: loading state in sign out button if there's any exception.

* fix: overflow in buttons

* chore: commented code removed

* refactor: public methods in AuthBloc

* fix: unsued code

* chore: skip FlutterURLSessionTests (#795)

* chore(lints): Add amplify_lints package (#808)

* Add lints package

* Add missing readme item

* feat(auth): add options to resendSignUpCode (#738)

* feat(auth): add options to resendSignUpCode

* fix: add type export for sing up code options

* chore: fix formatting issues

* chore: update comments for consistency

* chore: rename private method names for consistency

* chore: update comments for consistency

* chore: make ResendSignUpCodeOptions abstract

* chore: update ResendSignUpCodeRequest serializeAsMap

* chore: update ios test

* chore update doc comments

* chore: bump amplify-android to 1.24.0

* chore: remove star import

* feat(auth): add support for options to resetPassword, confirmResetPassword (#743)

* chore: rename confirmPassword to confirmResetPassword

* chore: fix grammatical errors in docs

* feat(auth): add options support for resetPassword, confirmResetPassword

* chore: rename private methods for consistency

* chore: update comments for consistency

* chore: update ios tests

* chore: fix comments

* chore: handle deprecated methods

* separate out deprecated class

* chore: update serializeAsMap for consistency

* chore: properly deprecate confirmPassword

* chore: add deprecation annotation to interface

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* feat(auth): add options to updateAttribute, updateAttributes, resendUserAttributeConfirmationCode (#775)

* chore: move attribute types to new dir

* chore: rename fetch attribute classes

* feat: add client metadata to user attribute methods

* deprecate renamed types

* chore: update comments for consistency

* chore: rename methods, tests

* chore: break out depracted classes, make new classes abstract

* chore: revert star import

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* chore: remove empty line

* fix(amplify_auth_cognito): throws signedout exception (#730)

* fix(amplify_datastore): ios send modelProviderVersion (#439)

Co-authored-by: Hui Zhao <[email protected]>

* feat(datastore): Add start and stop APIs (#811)

* Convert file to LF mode

* feat(datastore): Add start and stop APIs

* Add docs

* Resolve comments

* chore(analytics): Apply lints (#810)

* Clean up pinpoint

* Clean up pinpoint dart

* Enable CI for analytics

* Add iOS linting

* Clean up

* Update iOS script

* Fix Android melos script

* Update CI order

* Small changes

* Update type

* Add iOS whitespace rules

* Update type

* Apply updated rules

* feat(auth): OIDC/Lambda Support (#777)

* OIDC/Lambda support

* Clean up

* Fix iOS test

* Add unit tests

* Fix Android test

* Fix Android tests

* Refactor and remove AuthToken from the public API

* Remove concurrent guards

* Clean up

* chore: upgrade amplify-android 1.24.1 (#829)

* fix(datastore): cannot saving boolean as integer in SQLite (#754)

* fix(datastore): cannot saving boolean as integer in SQLite

* fix unit test

* Apply the fix to double type field as well

* fix(datastore): return null for list field in nested model (#843)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent (#647)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent

* Print unrecognized event details in iOS

* Resolve comments

* chore(api): Apply lints (#812)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Revert license date

* Revert "Revert license date"

This reverts commit 1b93b3f.

* test(DataStore): add local integration tests for datastore (#831)

* chore: add new model types for tests

* test: add tests for model types

* chore: update models for relationship tests

* test: add tests for hasOne, belongsTo

* chore: update models for hasMany tests

* test: add tests for hasMany relationship

* test: add query predicate test for string type

* test: add test for updating an existing model

* chore: skip flaky test on Android

* chore: clean up string predicate tests

* test: add integ tests for int/double query predicates

* chore: remove unused model

* chore: update tests after fix of #511

* chore: refactor model type tests

* chore: add provisioning script

* chore: update relationship tests

* chore: remove skipped test in save

* chore: add delay before clearing datastore

* test: add bool query predicate tests

* chore: update issue link for skipped test

* chore: update test w/ fix of #834

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

* chore: update testQueryPredicate for all models

* chore: update comment in bool query tests

* test: add test cases for unicode

* chore: update bool model generation

* chore: update testModelOperations to use getModelType

* test: add edge cases for model type tests

* chore: remove unneeded Map.from

* test: add edge cases to query predicate tests

* chore: update int/double predicate tests to use <>=

* chore: remove unneeded configure calls

* chore: update string between() test

* chore: update relationship tests to check for single model

* test: update observe tests to test all events

* chore: add notes to equality checks

* chore: remove const from test

* chore: remove hard coded length

Co-authored-by: Chris F <[email protected]>

* fix(api): OIDC/Lambda Fixes (#862)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Merge branch 'datastore/multiauth' into chore/api-lints

* Revert multiauth

* Fix updateTokens

* Fix GraphQL error decoding

* Fix formatting

* Clean up

* Clean up

* Clean up

* Fix analysis for Flutter 2.5.0

* break(amplify_auth_cognito): fixes getCurrentUser disparity (#773)

* fix(amplify_datastore): iOS json deserialization (#806)

iOS ONLY fix.  Android was unaffected.

Ensure nested model int types are returned as int instead of double

Consolidate duplicated code for extracting values from Json during serialization step

* chore(release): 0.2.3 (#866)

* fix(example) updates amplify dependencies (#867)

* test(DataStore): add additional local integration tests for datastore (#844)

* Revert "Merge branch 'release-candidate' into main" (#871)

This reverts commit a88a109, reversing
changes made to 324ebad.

* fix: Cocoapods relative import (#874)

* Fix Cocoapods relative import

* Update dependencies

* Add lints license

* Update amplify_flutter

* 0.2.4

* fix(example): Update dependencies (#875)

* Update example app

* Add example app to CI

* Update iOS settings

* chore: Enable release checks via unpub (#876)

* Add unpub step to CI builds

* Fix CI config

* Fix CI script

* Add yq

* Fix brew

* Add yq on Android

* Add new workflows

* Fix yml

* Fix yml

* Fix yml

* Fix curl cmd

* Fix docker compose check

* Fix yml

* Fix yml

* Update path search

* Fix melos setup

* Fix yq script

* Switch executor flow

* Fix

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Update launcher

* Fix ref

* Test

* Fix versions

* Fix example version

* Fix remote build

* Fix dev dependency versioning

* Fix script order

* Use local project for seeding deps

* Add dummy configs back

* Reenable full pipeline

* Fix melos command

* Update step name

* Merge main

* fix: Melos bootstrap should not fail (#887)

* Fix postbootstrap

* Fix example app

* 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

* Linting + reorg

* Rename

* Clean up

* Improve customizability

* Integrate Jordan's changes

* Clean up

* Clean up

* Clean up

* Revert attribute changes

* Fix API auth for REST (#925)

* Clean up

* Clean up

* Remove print

* Update authenticator config

* Add generated package to melos ignore

* Fix amplify_flutter test

* Fix validators

Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Israel Arcos <[email protected]>
Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: israx <[email protected]>
Co-authored-by: José Sánchez <[email protected]>
Co-authored-by: Su Tran <[email protected]>
dnys1 added a commit that referenced this pull request Oct 27, 2021
* 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]>
dnys1 added a commit to dnys1/amplify-flutter that referenced this pull request Nov 10, 2021
* chore: make .gitignore more specific for amplify dirs and tweak integration test melos tasks (aws-amplify#711)

* chore(auth): User attributes/sign up docs (aws-amplify#697)

* feat(amplify): Null Safety Core (aws-amplify#492)

Null Safety upgrade for (to min Dart 2.12):
Core
Flutter
All Plugin Interface Packages

* feat(amplify_auth): Null Safety Auth (aws-amplify#536)

* feat(amplify_analytics): Null safety (aws-amplify#483)

* feat(amplify_storage_s3): Null safety (aws-amplify#485)

* feat(amplify_api): Null safety api (aws-amplify#484)

* fix: Broken Unit Tests

* fix: upgrade Auth changes to null safety

* fix: Broken Auth Unit Tests

* fix(amplify_auth_cognito): fixes auth null safety issues (aws-amplify#613)

* Example app null safety fixes (aws-amplify#617)

* Null safety master fixes pr (aws-amplify#614)

* chore(release): 0.2.0-nullsafety.0 (aws-amplify#622)

* Version Update to 0.2.0-nullsafety.0

* Update amplify.dart

Co-authored-by: Dustin Noyes <[email protected]>

* Update FlutterFetchCognitoAuthSessionResult.kt (aws-amplify#653)

* Null safety datastore (aws-amplify#649)

* chore: release 0.2.0-nullsafety.1 (aws-amplify#656)

* bug(datastore): HubEvent null check (aws-amplify#670)

* Fix HubEventElements for NS

* Refactor and add tests

* Null safety master rebase (aws-amplify#676)

* chore: pin Amplify iOS to '~> 1.9.2' (aws-amplify#589)

* set amplify ios to '~> 1.9'

* set amplify ios to '~> 1.9.2'

* add 'ObjectMapper' back to podspec

Co-authored-by: Ashish Nanda <[email protected]>

* chore: foundation for integration tests and basic auth suite with signIn and signOut (aws-amplify#568)

* feat(auth): add updateUserAttributes (batch) (aws-amplify#601)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

Co-authored-by: Chris F <[email protected]>

* chore(amplify_api): add httpStatusCode property to ApiException when available from REST response (aws-amplify#590)

Add integer property httpStatusCode to ApiException. In android and iOS, look for the status code in the response/error object and add to the serialized map. In flutter, add the new property to the serialization logic specifically for ApiException.

* fix(auth): Add clientMetadata to confirmSignUp API options (aws-amplify#619)

* Chore: remove check for duplicate error in Storage (aws-amplify#618)

* remove check for dup err cb

* bump amplify-android to version 1.17.8

* fix(auth): iOS/Android user attribute inconsistencies  (aws-amplify#620)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

* iOS: handle missing and custom attributes

* add constant for customKeyPrefix

Co-authored-by: Chris F <[email protected]>

* Add support of DataStore custom configuration (aws-amplify#610)

* refactor: Minor refactor of DataStore methods

* Free up `configure` method for native passthrough

* Move observe configuration into its own explicit method

* Corrected observe setup method in swift to call the invokeMethod callback so the call can be properly awaited upon in dart layer

* Broaden `configureDataStore` naming to convey more than model provider being able to be configured through this method

* Allow plugins to be added in parallel instead of in a series

* Update unit tests to correctly assert observe call result

* Remove setUpObserve API. Restore setUpObserve call to configure

* feat(datastore) Allow configure DataStore with custom configuration

* Reintroduce configureModelProvider as deprecated method

* chore(datastore) Add unit tests for custom DataStore configuration

* Update configure to not throw error if DataStore plugin is not found

* Split datastore configuration unit tests by use cases

Co-authored-by: Chris Fang <[email protected]>

* Use "flutter pub" in melos.yaml (and everywhere else) (aws-amplify#603)

* Use dart pub in melos.yaml

* Fix all references to 'pub _' with 'flutter pub _'

* Work around hanging build; don't install in postbootstrap

* fix(tests): add --no-pub to integration tests (aws-amplify#637)

* add --no-pub to integration tests

* fix typo

* fix: CONTRIBUTING Dead Links (aws-amplify#630)

* fix(amplify_auth_cognito): adds userAttributes to confirmSignIn (aws-amplify#607)

* chore: Add CircleCI badge (aws-amplify#631)

* chore: Add CircleCI badge

* fix: changed badge hyperlink

* fix: badage now points towards master branch

* Update README.md

Co-authored-by: Jordan Nelson <[email protected]>

Co-authored-by: Jordan Nelson <[email protected]>

* chore: upgrade amplify-android to 1.19.0 (aws-amplify#650)

* fix: amplify-ios version bump (aws-amplify#648)

* fix: amplify-ios version bump ~> 1.11.0 (aws-amplify#665)

* chore: release 0.1.6 (aws-amplify#667)

* fix: amplify-ios version bump ~> 1.11.0

* chore: release 0.1.6

* Update CHANGELOG.md

Co-authored-by: Noyes <[email protected]>

* Pagination with Datastore aws-amplify#500 (aws-amplify#673)

* Fix compile errors

* Fix broken unit tests

* Fix Android Unit Tests

* fix(amplify_datastore): force cast exception codegen

1) add new exception for force cast in codegen models

* Fix ios unit tests

This file was corrupted during the rebase

* Update codegen models to latest

* PR Comments

* Fix Android Unit Tests

* Last PR Comment

Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>

* fix(amplify_datstore): mprovider compile issue (aws-amplify#681)

* chore: remove deprecated method - configureModelProvider

* Revert "chore: remove deprecated method - configureModelProvider"

This reverts commit 00dbc7a.

* Revert "Revert "chore: remove deprecated method - configureModelProvider"" (aws-amplify#682)

remove deprecated method - configureModelProvider

Co-authored-by: Chris Fang <[email protected]>

* fix(Auth): Remove use of TypeToken (aws-amplify#683)

* remove use of type token from auth session

* remove TypeToken from exception util

* fix(auth): update user attribute serialization (aws-amplify#684)

* update user attr res serialization

* update unit tests

* Fix enum string function (aws-amplify#687)

* Fix enum string function

* Update logic

* Revert "Update logic"

This reverts commit 75d257a.

* fix(auth): uses nextStep helper for signInResult on Android (aws-amplify#689)

* chore: release 0.2.0 (aws-amplify#690)

* Revert "Merge branch 'master' into null-safety-master"

This reverts commit 5e7fd30, reversing
changes made to bf394bb.

* Update docs

* Add user attributes

* Update tests

* Revert minor change

* Merge branch 'master' into chore/user-attributes-ns

* Add export

Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>

* chore(amplify_api): add GraphQL integration tests (aws-amplify#694)

* chore(CI): enable formatting in CI w/ code changes (aws-amplify#570)

* enable formatting in CI

* diable analyze

* split up format and analyze

* chore: melos run format

* chore: empty commit to re-run CI

* chore(auth): integration tests for user attributes (aws-amplify#640)

* handle missing or empty signUpOptions

* add android unit test

* fix iOS tests

* add integration tests for auth.signUp

* remove unused imports, formatting

* add integration tests for user attributes

* add integration tests

* update auth category after NS changes

* update auth category for NS changes

* update unit test for NS changes

* update unit tests for NS changes

* address PR comments

* remove extra parens

* Apply SignUpRequest changes from code review

* add test for invalid attr value

* add user attribute confirmation test

* add fetchUserAttributes group

* remove test for email confirmation

* chore(api): Add API response headers/status (aws-amplify#721)

* Add API response headers/status

* Clean up

* Ensure proper deserialization

* Fix ios tests

* remove unnecessary default

* Add iOS status/headers + tests

* Remove empty body fix

* Missing status code

* Add license comments

* Clean up iOS tests

* Add RestException tests

* Add deprecation warning

* Fix example encoding

* Add Flutter plugin tests

* Rename file

* chore(amplify_datastore): make SubscriptionEvent directly available via datastore plugin by adding to publicTypes in interface (aws-amplify#728)

* fix(datastore): not serializing enum type in a predicate (aws-amplify#726)

* chore(amplify_storage_s3): add storage integration tests and update example app (aws-amplify#734)

* chore(auth): add integration test coverage for auth (aws-amplify#724)

* chore(auth): add integ tests for auth hub

* chore(auth): add integ test for update password

* chore(auth): add integ test for sign up exceptions

* chore(auth): test exceptions in signIn, signOut

* chore(auth): add fetch session integration tests

* chore(auth): add integ tests for getCurrentUser

* chore: formatting in get_current_user

* chore: formatting in fetch_session

* chore: refactor setup for update password tests

* chore: update fetch session test to check for null

* fix typos in comments

* chore: address PR feedback

* chore: fix formatting issues

* chore(datastore): add integration tests for datastore (aws-amplify#753)

* chore: add integration tests for datastore

* chore: address pr comments

* chore: configure datastore before each test

* chore: refactor save test

* chore: fix formatting

* chore: update name to configureDataStore

* Release updates 0.2.1 (aws-amplify#756)

* chore: Update Changelog for 0.2.1 release

* chore: Update Pubspec version to 0.2.1

Also update amplify.dart to return 0.2.1 for version string

* Update changelog

* chore: set min flutter version to '>1.20.0' in packages where set to … (aws-amplify#757)

* feat(amplify_auth_cognito): enables clientMetadata for signUp (aws-amplify#713)

* fix(datastore): Query nested model causes column not found sql error (aws-amplify#761)

* Reformat source code

* fix(datastore): Query nested model causes column not found sql error

* Optimize method interface to clarify the purpose

* Optimize method interface

* Added relationship check ensure the field conversion happens only for BelongsTo

* bug(analytics): Force session start (aws-amplify#764)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* fix(analytics): Typo (aws-amplify#765)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* Fix iOS method name

* feat(amplify_auth_cognito): Auth Devices API (aws-amplify#735)

* Add platform code

* Clean up

* Add licenses

* Fix error handling

* Add logging and update threading logic

* Add iOS unit tests

* Clean up

* Add tests to project

* Fix unit tests

* chore(datastore): Remove redundant files for the datastore example (aws-amplify#762)

* feat(datastore): Populate belongs-to nested models (aws-amplify#658)

* feat(datastore): Populate has-one and belongs-to nested models

* Nest data under serializedData key and persist modelName

* Resolve comment

* Update packages/amplify_datastore/example/ios/unit_tests/resources/SchemaData.swift

Co-authored-by: Chris F <[email protected]>

* chore(amplify_api): add support for apiName to GraphQL requests (aws-amplify#553)

* fix(amplify_api): prevent some fatal REST errors in Android

Throw ApiException in android when PUT, POST, and PATCH REST requests have no body to prevent fatal error (aws-amplify#661).

* chore(release): 0.2.2 (aws-amplify#781)

* chore(release): missing dependency (aws-amplify#783)

* Bump analytics version

* Fix PR #

* Bump all versions

* Missing bump

* Pin collections

* chore: skip FlutterURLSessionTests (aws-amplify#795)

* chore(lints): Add amplify_lints package (aws-amplify#808)

* Add lints package

* Add missing readme item

* feat(auth): add options to resendSignUpCode (aws-amplify#738)

* feat(auth): add options to resendSignUpCode

* fix: add type export for sing up code options

* chore: fix formatting issues

* chore: update comments for consistency

* chore: rename private method names for consistency

* chore: update comments for consistency

* chore: make ResendSignUpCodeOptions abstract

* chore: update ResendSignUpCodeRequest serializeAsMap

* chore: update ios test

* chore update doc comments

* chore: bump amplify-android to 1.24.0

* chore: remove star import

* feat(auth): add support for options to resetPassword, confirmResetPassword (aws-amplify#743)

* chore: rename confirmPassword to confirmResetPassword

* chore: fix grammatical errors in docs

* feat(auth): add options support for resetPassword, confirmResetPassword

* chore: rename private methods for consistency

* chore: update comments for consistency

* chore: update ios tests

* chore: fix comments

* chore: handle deprecated methods

* separate out deprecated class

* chore: update serializeAsMap for consistency

* chore: properly deprecate confirmPassword

* chore: add deprecation annotation to interface

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* feat(auth): add options to updateAttribute, updateAttributes, resendUserAttributeConfirmationCode (aws-amplify#775)

* chore: move attribute types to new dir

* chore: rename fetch attribute classes

* feat: add client metadata to user attribute methods

* deprecate renamed types

* chore: update comments for consistency

* chore: rename methods, tests

* chore: break out depracted classes, make new classes abstract

* chore: revert star import

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* chore: remove empty line

* fix(amplify_auth_cognito): throws signedout exception (aws-amplify#730)

* fix(amplify_datastore): ios send modelProviderVersion (aws-amplify#439)

Co-authored-by: Hui Zhao <[email protected]>

* feat(datastore): Add start and stop APIs (aws-amplify#811)

* Convert file to LF mode

* feat(datastore): Add start and stop APIs

* Add docs

* Resolve comments

* chore(analytics): Apply lints (aws-amplify#810)

* Clean up pinpoint

* Clean up pinpoint dart

* Enable CI for analytics

* Add iOS linting

* Clean up

* Update iOS script

* Fix Android melos script

* Update CI order

* Small changes

* Update type

* Add iOS whitespace rules

* Update type

* Apply updated rules

* feat(auth): OIDC/Lambda Support (aws-amplify#777)

* OIDC/Lambda support

* Clean up

* Fix iOS test

* Add unit tests

* Fix Android test

* Fix Android tests

* Refactor and remove AuthToken from the public API

* Remove concurrent guards

* Clean up

* chore: upgrade amplify-android 1.24.1 (aws-amplify#829)

* fix(datastore): cannot saving boolean as integer in SQLite (aws-amplify#754)

* fix(datastore): cannot saving boolean as integer in SQLite

* fix unit test

* Apply the fix to double type field as well

* fix(datastore): return null for list field in nested model (aws-amplify#843)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent (aws-amplify#647)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent

* Print unrecognized event details in iOS

* Resolve comments

* chore(api): Apply lints (aws-amplify#812)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Revert license date

* Revert "Revert license date"

This reverts commit 1b93b3f.

* test(DataStore): add local integration tests for datastore (aws-amplify#831)

* chore: add new model types for tests

* test: add tests for model types

* chore: update models for relationship tests

* test: add tests for hasOne, belongsTo

* chore: update models for hasMany tests

* test: add tests for hasMany relationship

* test: add query predicate test for string type

* test: add test for updating an existing model

* chore: skip flaky test on Android

* chore: clean up string predicate tests

* test: add integ tests for int/double query predicates

* chore: remove unused model

* chore: update tests after fix of aws-amplify#511

* chore: refactor model type tests

* chore: add provisioning script

* chore: update relationship tests

* chore: remove skipped test in save

* chore: add delay before clearing datastore

* test: add bool query predicate tests

* chore: update issue link for skipped test

* chore: update test w/ fix of aws-amplify#834

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

* chore: update testQueryPredicate for all models

* chore: update comment in bool query tests

* test: add test cases for unicode

* chore: update bool model generation

* chore: update testModelOperations to use getModelType

* test: add edge cases for model type tests

* chore: remove unneeded Map.from

* test: add edge cases to query predicate tests

* chore: update int/double predicate tests to use <>=

* chore: remove unneeded configure calls

* chore: update string between() test

* chore: update relationship tests to check for single model

* test: update observe tests to test all events

* chore: add notes to equality checks

* chore: remove const from test

* chore: remove hard coded length

Co-authored-by: Chris F <[email protected]>

* fix(api): OIDC/Lambda Fixes (aws-amplify#862)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Merge branch 'datastore/multiauth' into chore/api-lints

* Revert multiauth

* Fix updateTokens

* Fix GraphQL error decoding

* Fix formatting

* Clean up

* Clean up

* Clean up

* Fix analysis for Flutter 2.5.0

* break(amplify_auth_cognito): fixes getCurrentUser disparity (aws-amplify#773)

* fix(amplify_datastore): iOS json deserialization (aws-amplify#806)

iOS ONLY fix.  Android was unaffected.

Ensure nested model int types are returned as int instead of double

Consolidate duplicated code for extracting values from Json during serialization step

* chore(release): 0.2.3 (aws-amplify#866)

* fix(example) updates amplify dependencies (aws-amplify#867)

* test(DataStore): add additional local integration tests for datastore (aws-amplify#844)

* Revert "Merge branch 'release-candidate' into main" (aws-amplify#871)

This reverts commit a88a109, reversing
changes made to 324ebad.

* fix: Cocoapods relative import (aws-amplify#874)

* Fix Cocoapods relative import

* Update dependencies

* Add lints license

* Update amplify_flutter

* 0.2.4

* fix(example): Update dependencies (aws-amplify#875)

* Update example app

* Add example app to CI

* Update iOS settings

* chore: Enable release checks via unpub (aws-amplify#876)

* Add unpub step to CI builds

* Fix CI config

* Fix CI script

* Add yq

* Fix brew

* Add yq on Android

* Add new workflows

* Fix yml

* Fix yml

* Fix yml

* Fix curl cmd

* Fix docker compose check

* Fix yml

* Fix yml

* Update path search

* Fix melos setup

* Fix yq script

* Switch executor flow

* Fix

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Update launcher

* Fix ref

* Test

* Fix versions

* Fix example version

* Fix remote build

* Fix dev dependency versioning

* Fix script order

* Use local project for seeding deps

* Add dummy configs back

* Reenable full pipeline

* Fix melos command

* Update step name

* Merge main

* fix: Melos bootstrap should not fail (aws-amplify#887)

* Fix postbootstrap

* Fix example app

* Replace JCenter with Maven Central (aws-amplify#903)

* Replace JCenter with Maven Central

* Make uniform

* Revert core

* fix(datastore): remove default pagination behavior on iOS (aws-amplify#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 (aws-amplify#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 (aws-amplify#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 (aws-amplify#910)

* chore: update integ test commands with selection

* chore: update description

* chore: Revert unpub (aws-amplify#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 (aws-amplify#925)

Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: José Sánchez <[email protected]>
Co-authored-by: Su Tran <[email protected]>
dnys1 added a commit to dnys1/amplify-flutter that referenced this pull request Nov 10, 2021
* chore: make .gitignore more specific for amplify dirs and tweak integration test melos tasks (aws-amplify#711)

* feat: ✨ first snippet for the amplify authenticator

* chore(auth): User attributes/sign up docs (aws-amplify#697)

* feat(amplify): Null Safety Core (aws-amplify#492)

Null Safety upgrade for (to min Dart 2.12):
Core
Flutter
All Plugin Interface Packages

* feat(amplify_auth): Null Safety Auth (aws-amplify#536)

* feat(amplify_analytics): Null safety (aws-amplify#483)

* feat(amplify_storage_s3): Null safety (aws-amplify#485)

* feat(amplify_api): Null safety api (aws-amplify#484)

* fix: Broken Unit Tests

* fix: upgrade Auth changes to null safety

* fix: Broken Auth Unit Tests

* fix(amplify_auth_cognito): fixes auth null safety issues (aws-amplify#613)

* Example app null safety fixes (aws-amplify#617)

* Null safety master fixes pr (aws-amplify#614)

* chore(release): 0.2.0-nullsafety.0 (aws-amplify#622)

* Version Update to 0.2.0-nullsafety.0

* Update amplify.dart

Co-authored-by: Dustin Noyes <[email protected]>

* Update FlutterFetchCognitoAuthSessionResult.kt (aws-amplify#653)

* Null safety datastore (aws-amplify#649)

* chore: release 0.2.0-nullsafety.1 (aws-amplify#656)

* bug(datastore): HubEvent null check (aws-amplify#670)

* Fix HubEventElements for NS

* Refactor and add tests

* Null safety master rebase (aws-amplify#676)

* chore: pin Amplify iOS to '~> 1.9.2' (aws-amplify#589)

* set amplify ios to '~> 1.9'

* set amplify ios to '~> 1.9.2'

* add 'ObjectMapper' back to podspec

Co-authored-by: Ashish Nanda <[email protected]>

* chore: foundation for integration tests and basic auth suite with signIn and signOut (aws-amplify#568)

* feat(auth): add updateUserAttributes (batch) (aws-amplify#601)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

Co-authored-by: Chris F <[email protected]>

* chore(amplify_api): add httpStatusCode property to ApiException when available from REST response (aws-amplify#590)

Add integer property httpStatusCode to ApiException. In android and iOS, look for the status code in the response/error object and add to the serialized map. In flutter, add the new property to the serialization logic specifically for ApiException.

* fix(auth): Add clientMetadata to confirmSignUp API options (aws-amplify#619)

* Chore: remove check for duplicate error in Storage (aws-amplify#618)

* remove check for dup err cb

* bump amplify-android to version 1.17.8

* fix(auth): iOS/Android user attribute inconsistencies  (aws-amplify#620)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

* iOS: handle missing and custom attributes

* add constant for customKeyPrefix

Co-authored-by: Chris F <[email protected]>

* Add support of DataStore custom configuration (aws-amplify#610)

* refactor: Minor refactor of DataStore methods

* Free up `configure` method for native passthrough

* Move observe configuration into its own explicit method

* Corrected observe setup method in swift to call the invokeMethod callback so the call can be properly awaited upon in dart layer

* Broaden `configureDataStore` naming to convey more than model provider being able to be configured through this method

* Allow plugins to be added in parallel instead of in a series

* Update unit tests to correctly assert observe call result

* Remove setUpObserve API. Restore setUpObserve call to configure

* feat(datastore) Allow configure DataStore with custom configuration

* Reintroduce configureModelProvider as deprecated method

* chore(datastore) Add unit tests for custom DataStore configuration

* Update configure to not throw error if DataStore plugin is not found

* Split datastore configuration unit tests by use cases

Co-authored-by: Chris Fang <[email protected]>

* Use "flutter pub" in melos.yaml (and everywhere else) (aws-amplify#603)

* Use dart pub in melos.yaml

* Fix all references to 'pub _' with 'flutter pub _'

* Work around hanging build; don't install in postbootstrap

* fix(tests): add --no-pub to integration tests (aws-amplify#637)

* add --no-pub to integration tests

* fix typo

* fix: CONTRIBUTING Dead Links (aws-amplify#630)

* fix(amplify_auth_cognito): adds userAttributes to confirmSignIn (aws-amplify#607)

* chore: Add CircleCI badge (aws-amplify#631)

* chore: Add CircleCI badge

* fix: changed badge hyperlink

* fix: badage now points towards master branch

* Update README.md

Co-authored-by: Jordan Nelson <[email protected]>

Co-authored-by: Jordan Nelson <[email protected]>

* chore: upgrade amplify-android to 1.19.0 (aws-amplify#650)

* fix: amplify-ios version bump (aws-amplify#648)

* fix: amplify-ios version bump ~> 1.11.0 (aws-amplify#665)

* chore: release 0.1.6 (aws-amplify#667)

* fix: amplify-ios version bump ~> 1.11.0

* chore: release 0.1.6

* Update CHANGELOG.md

Co-authored-by: Noyes <[email protected]>

* Pagination with Datastore aws-amplify#500 (aws-amplify#673)

* Fix compile errors

* Fix broken unit tests

* Fix Android Unit Tests

* fix(amplify_datastore): force cast exception codegen

1) add new exception for force cast in codegen models

* Fix ios unit tests

This file was corrupted during the rebase

* Update codegen models to latest

* PR Comments

* Fix Android Unit Tests

* Last PR Comment

Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>

* fix(amplify_datstore): mprovider compile issue (aws-amplify#681)

* chore: remove deprecated method - configureModelProvider

* Revert "chore: remove deprecated method - configureModelProvider"

This reverts commit 00dbc7a.

* Revert "Revert "chore: remove deprecated method - configureModelProvider"" (aws-amplify#682)

remove deprecated method - configureModelProvider

Co-authored-by: Chris Fang <[email protected]>

* fix(Auth): Remove use of TypeToken (aws-amplify#683)

* remove use of type token from auth session

* remove TypeToken from exception util

* fix(auth): update user attribute serialization (aws-amplify#684)

* update user attr res serialization

* update unit tests

* Fix enum string function (aws-amplify#687)

* Fix enum string function

* Update logic

* Revert "Update logic"

This reverts commit 75d257a.

* fix(auth): uses nextStep helper for signInResult on Android (aws-amplify#689)

* chore: release 0.2.0 (aws-amplify#690)

* Revert "Merge branch 'master' into null-safety-master"

This reverts commit 5e7fd30, reversing
changes made to bf394bb.

* Update docs

* Add user attributes

* Update tests

* Revert minor change

* Merge branch 'master' into chore/user-attributes-ns

* Add export

Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>

* docs: 📝 update of license & project's description

* feat(amplify_auth_cognito): add initial example app for the authenticator

* iOS & Android files

* feat(amplify_authenticator): screens implementation -Sign In, Sign Up & Confirm Sign Up

* dependecies & project's name updated

* chore(amplify_api): add GraphQL integration tests (aws-amplify#694)

* feat(amplify_authenticator): button disable for auth calls

* chore(CI): enable formatting in CI w/ code changes (aws-amplify#570)

* enable formatting in CI

* diable analyze

* split up format and analyze

* chore: melos run format

* chore: empty commit to re-run CI

* Fix: user not able to sign out

* closing brace

* test directory deleted

* fix: AuthFormField(type: 'password') is able to hide values

* feat: default & custom validators

* chore(auth): integration tests for user attributes (aws-amplify#640)

* handle missing or empty signUpOptions

* add android unit test

* fix iOS tests

* add integration tests for auth.signUp

* remove unused imports, formatting

* add integration tests for user attributes

* add integration tests

* update auth category after NS changes

* update auth category for NS changes

* update unit test for NS changes

* update unit tests for NS changes

* address PR comments

* remove extra parens

* Apply SignUpRequest changes from code review

* add test for invalid attr value

* add user attribute confirmation test

* add fetchUserAttributes group

* remove test for email confirmation

* chore(api): Add API response headers/status (aws-amplify#721)

* Add API response headers/status

* Clean up

* Ensure proper deserialization

* Fix ios tests

* remove unnecessary default

* Add iOS status/headers + tests

* Remove empty body fix

* Missing status code

* Add license comments

* Clean up iOS tests

* Add RestException tests

* Add deprecation warning

* Fix example encoding

* Add Flutter plugin tests

* Rename file

* refactor: signin, signup & confirm signup view models

* docs: initial documentation

* chore: keys in form fields and buttons

* chore: keys in form fields and buttons

* chore(amplify_datastore): make SubscriptionEvent directly available via datastore plugin by adding to publicTypes in interface (aws-amplify#728)

* fix(datastore): not serializing enum type in a predicate (aws-amplify#726)

* test: integration test setup

* feat: custom form field

* refactor: nullable auth variables in confirm sign up, sign in and sign up view models

* refactor: boilerplate from example app

* refactor: amplify_configure.dart deleted

* test: sign in screen integration testing

* doc: public members

* refactor: form field keys

* refactor: using types

* refactor: sign out method

* refactor: handle result from sign in / up calls

* chore(amplify_storage_s3): add storage integration tests and update example app (aws-amplify#734)

* chore(auth): add integration test coverage for auth (aws-amplify#724)

* chore(auth): add integ tests for auth hub

* chore(auth): add integ test for update password

* chore(auth): add integ test for sign up exceptions

* chore(auth): test exceptions in signIn, signOut

* chore(auth): add fetch session integration tests

* chore(auth): add integ tests for getCurrentUser

* chore: formatting in get_current_user

* chore: formatting in fetch_session

* chore: refactor setup for update password tests

* chore: update fetch session test to check for null

* fix typos in comments

* chore: address PR feedback

* chore: fix formatting issues

* test: sign in integration testing

* test: sign up integration testing

* refactor: enums in signup, signin and confirm_signup form fields

* feat: confirm sign in screen

* Update amplify_authenticator.dart

* refactor: late keyword removed

* refactor: getCurrentUser() method

* refactor: return type of currentUser method

* print() removed

* refactor: copy/paste error

* refactor: non-null types

* refactor: non-null type

* refactor: void Function()

* refactor: return null types in form field types

* refactor: null return type

* Update signin_types.dart

* refactor: null return type

* refactor: pr comments

* chore(datastore): add integration tests for datastore (aws-amplify#753)

* chore: add integration tests for datastore

* chore: address pr comments

* chore: configure datastore before each test

* chore: refactor save test

* chore: fix formatting

* chore: update name to configureDataStore

* test: confirm sign in integration test

* Release updates 0.2.1 (aws-amplify#756)

* chore: Update Changelog for 0.2.1 release

* chore: Update Pubspec version to 0.2.1

Also update amplify.dart to return 0.2.1 for version string

* Update changelog

* refactor: code removed

* chore: set min flutter version to '>1.20.0' in packages where set to … (aws-amplify#757)

* fix: unsed code

* fix

* feat: display exceptions widget

* feat(amplify_auth_cognito): enables clientMetadata for signUp (aws-amplify#713)

* Extra lines removed

* extra lines

* chore: extra lines

* fix(datastore): Query nested model causes column not found sql error (aws-amplify#761)

* Reformat source code

* fix(datastore): Query nested model causes column not found sql error

* Optimize method interface to clarify the purpose

* Optimize method interface

* Added relationship check ensure the field conversion happens only for BelongsTo

* bug(analytics): Force session start (aws-amplify#764)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* fix(analytics): Typo (aws-amplify#765)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* Fix iOS method name

* feat: username alias

This change will allow a customer to pass in an username alias to setup the initial auth flow of their apps

* feat: resend code button in confirm sign up screen |

Now the username is automatically setup in the username form field.

* feat(amplify_auth_cognito): Auth Devices API (aws-amplify#735)

* Add platform code

* Clean up

* Add licenses

* Fix error handling

* Add logging and update threading logic

* Add iOS unit tests

* Clean up

* Add tests to project

* Fix unit tests

* feat: rest password option enabled

screen to request the change of password with username

* feat: reset password screen

users can reset their password by setting up a new one and passing a confirmation code

* chore(datastore): Remove redundant files for the datastore example (aws-amplify#762)

* feat(datastore): Populate belongs-to nested models (aws-amplify#658)

* feat(datastore): Populate has-one and belongs-to nested models

* Nest data under serializedData key and persist modelName

* Resolve comment

* Update packages/amplify_datastore/example/ios/unit_tests/resources/SchemaData.swift

Co-authored-by: Chris F <[email protected]>

* feat: confirm sign in with new password screen

* fix(authenticator): SignInFormField pointing to the same instance |
form field in SendCodeScreen was pointing to the same instance in a form field in the SignInScreen

* fix: form field pointing to same instance

* refactor: update password

* refactor: keys

* chore(amplify_api): add support for apiName to GraphQL requests (aws-amplify#553)

* fix(amplify_api): prevent some fatal REST errors in Android

Throw ApiException in android when PUT, POST, and PATCH REST requests have no body to prevent fatal error (aws-amplify#661).

* refactor: branch conflicts

* fix: confirm password username attribute

* fix: second clause for non-Amplify exceptions

* refactor: clearException method for clearing all exceptions in the
exception controller.

* refactor: clearException method

* refactor: non null exception controller

* fix: throw error when signInStep == 'CONFIRM_SIGN_IN_WITH_CUSTOM_CHALLENGE'

* refactor: error objects

* feat: user is signed in after confirm sign up and when sign up respone is 'DONE'

* chore(release): 0.2.2 (aws-amplify#781)

* feat: confirm sign in auth flow

* refactor: show sign in screen after sign out

* refactor: const variable

* chore: unnecessary enum deleted

* refactor: non-null & final declaration

* chore: commented code removed

* refactor: VMs updated based on the triggered state

* refactor: resend code method

* refactor: validators in form fields

* fix: null value in a variable at confirm sign up VM

* refactor: authenticator container padding

* refactor: else clause in Authenticator Stream Builder

* refactor: username alias optional

* doc: finders in intergarion testion

* doc: finders

* doc: username alias doc

* refactor: inherited forms

* chore(release): missing dependency (aws-amplify#783)

* Bump analytics version

* Fix PR #

* Bump all versions

* Missing bump

* Pin collections

* fix: overflow in exception widget

* fix: validation in confirm sign up form fields.

* refactor: null check (!)  removed from inherited forms

* feat: loading state in sign out button if there's any exception.

* fix: overflow in buttons

* chore: commented code removed

* refactor: public methods in AuthBloc

* fix: unsued code

* chore: skip FlutterURLSessionTests (aws-amplify#795)

* chore(lints): Add amplify_lints package (aws-amplify#808)

* Add lints package

* Add missing readme item

* feat(auth): add options to resendSignUpCode (aws-amplify#738)

* feat(auth): add options to resendSignUpCode

* fix: add type export for sing up code options

* chore: fix formatting issues

* chore: update comments for consistency

* chore: rename private method names for consistency

* chore: update comments for consistency

* chore: make ResendSignUpCodeOptions abstract

* chore: update ResendSignUpCodeRequest serializeAsMap

* chore: update ios test

* chore update doc comments

* chore: bump amplify-android to 1.24.0

* chore: remove star import

* feat(auth): add support for options to resetPassword, confirmResetPassword (aws-amplify#743)

* chore: rename confirmPassword to confirmResetPassword

* chore: fix grammatical errors in docs

* feat(auth): add options support for resetPassword, confirmResetPassword

* chore: rename private methods for consistency

* chore: update comments for consistency

* chore: update ios tests

* chore: fix comments

* chore: handle deprecated methods

* separate out deprecated class

* chore: update serializeAsMap for consistency

* chore: properly deprecate confirmPassword

* chore: add deprecation annotation to interface

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* feat(auth): add options to updateAttribute, updateAttributes, resendUserAttributeConfirmationCode (aws-amplify#775)

* chore: move attribute types to new dir

* chore: rename fetch attribute classes

* feat: add client metadata to user attribute methods

* deprecate renamed types

* chore: update comments for consistency

* chore: rename methods, tests

* chore: break out depracted classes, make new classes abstract

* chore: revert star import

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* chore: remove empty line

* fix(amplify_auth_cognito): throws signedout exception (aws-amplify#730)

* fix(amplify_datastore): ios send modelProviderVersion (aws-amplify#439)

Co-authored-by: Hui Zhao <[email protected]>

* feat(datastore): Add start and stop APIs (aws-amplify#811)

* Convert file to LF mode

* feat(datastore): Add start and stop APIs

* Add docs

* Resolve comments

* chore(analytics): Apply lints (aws-amplify#810)

* Clean up pinpoint

* Clean up pinpoint dart

* Enable CI for analytics

* Add iOS linting

* Clean up

* Update iOS script

* Fix Android melos script

* Update CI order

* Small changes

* Update type

* Add iOS whitespace rules

* Update type

* Apply updated rules

* feat(auth): OIDC/Lambda Support (aws-amplify#777)

* OIDC/Lambda support

* Clean up

* Fix iOS test

* Add unit tests

* Fix Android test

* Fix Android tests

* Refactor and remove AuthToken from the public API

* Remove concurrent guards

* Clean up

* chore: upgrade amplify-android 1.24.1 (aws-amplify#829)

* fix(datastore): cannot saving boolean as integer in SQLite (aws-amplify#754)

* fix(datastore): cannot saving boolean as integer in SQLite

* fix unit test

* Apply the fix to double type field as well

* fix(datastore): return null for list field in nested model (aws-amplify#843)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent (aws-amplify#647)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent

* Print unrecognized event details in iOS

* Resolve comments

* chore(api): Apply lints (aws-amplify#812)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Revert license date

* Revert "Revert license date"

This reverts commit 1b93b3f.

* test(DataStore): add local integration tests for datastore (aws-amplify#831)

* chore: add new model types for tests

* test: add tests for model types

* chore: update models for relationship tests

* test: add tests for hasOne, belongsTo

* chore: update models for hasMany tests

* test: add tests for hasMany relationship

* test: add query predicate test for string type

* test: add test for updating an existing model

* chore: skip flaky test on Android

* chore: clean up string predicate tests

* test: add integ tests for int/double query predicates

* chore: remove unused model

* chore: update tests after fix of aws-amplify#511

* chore: refactor model type tests

* chore: add provisioning script

* chore: update relationship tests

* chore: remove skipped test in save

* chore: add delay before clearing datastore

* test: add bool query predicate tests

* chore: update issue link for skipped test

* chore: update test w/ fix of aws-amplify#834

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

* chore: update testQueryPredicate for all models

* chore: update comment in bool query tests

* test: add test cases for unicode

* chore: update bool model generation

* chore: update testModelOperations to use getModelType

* test: add edge cases for model type tests

* chore: remove unneeded Map.from

* test: add edge cases to query predicate tests

* chore: update int/double predicate tests to use <>=

* chore: remove unneeded configure calls

* chore: update string between() test

* chore: update relationship tests to check for single model

* test: update observe tests to test all events

* chore: add notes to equality checks

* chore: remove const from test

* chore: remove hard coded length

Co-authored-by: Chris F <[email protected]>

* fix(api): OIDC/Lambda Fixes (aws-amplify#862)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Merge branch 'datastore/multiauth' into chore/api-lints

* Revert multiauth

* Fix updateTokens

* Fix GraphQL error decoding

* Fix formatting

* Clean up

* Clean up

* Clean up

* Fix analysis for Flutter 2.5.0

* break(amplify_auth_cognito): fixes getCurrentUser disparity (aws-amplify#773)

* fix(amplify_datastore): iOS json deserialization (aws-amplify#806)

iOS ONLY fix.  Android was unaffected.

Ensure nested model int types are returned as int instead of double

Consolidate duplicated code for extracting values from Json during serialization step

* chore(release): 0.2.3 (aws-amplify#866)

* fix(example) updates amplify dependencies (aws-amplify#867)

* test(DataStore): add additional local integration tests for datastore (aws-amplify#844)

* Revert "Merge branch 'release-candidate' into main" (aws-amplify#871)

This reverts commit a88a109, reversing
changes made to 324ebad.

* fix: Cocoapods relative import (aws-amplify#874)

* Fix Cocoapods relative import

* Update dependencies

* Add lints license

* Update amplify_flutter

* 0.2.4

* fix(example): Update dependencies (aws-amplify#875)

* Update example app

* Add example app to CI

* Update iOS settings

* chore: Enable release checks via unpub (aws-amplify#876)

* Add unpub step to CI builds

* Fix CI config

* Fix CI script

* Add yq

* Fix brew

* Add yq on Android

* Add new workflows

* Fix yml

* Fix yml

* Fix yml

* Fix curl cmd

* Fix docker compose check

* Fix yml

* Fix yml

* Update path search

* Fix melos setup

* Fix yq script

* Switch executor flow

* Fix

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Update launcher

* Fix ref

* Test

* Fix versions

* Fix example version

* Fix remote build

* Fix dev dependency versioning

* Fix script order

* Use local project for seeding deps

* Add dummy configs back

* Reenable full pipeline

* Fix melos command

* Update step name

* Merge main

* fix: Melos bootstrap should not fail (aws-amplify#887)

* Fix postbootstrap

* Fix example app

* Replace JCenter with Maven Central (aws-amplify#903)

* Replace JCenter with Maven Central

* Make uniform

* Revert core

* fix(datastore): remove default pagination behavior on iOS (aws-amplify#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 (aws-amplify#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 (aws-amplify#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 (aws-amplify#910)

* chore: update integ test commands with selection

* chore: update description

* chore: Revert unpub (aws-amplify#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

* Linting + reorg

* Rename

* Clean up

* Improve customizability

* Integrate Jordan's changes

* Clean up

* Clean up

* Clean up

* Revert attribute changes

* Fix API auth for REST (aws-amplify#925)

* Clean up

* Clean up

* Remove print

* Update authenticator config

* Add generated package to melos ignore

* Fix amplify_flutter test

* Fix validators

Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Israel Arcos <[email protected]>
Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: israx <[email protected]>
Co-authored-by: José Sánchez <[email protected]>
Co-authored-by: Su Tran <[email protected]>
@Jordan-Nelson Jordan-Nelson deleted the fix/datastore/pagination-default branch November 11, 2021 19:11
HuiSF added a commit that referenced this pull request Nov 18, 2021
* 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]>
dnys1 added a commit that referenced this pull request Nov 19, 2021
* 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]>
HuiSF added a commit that referenced this pull request Nov 23, 2021
* 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]>
dnys1 added a commit that referenced this pull request Dec 6, 2021
* 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]>
dnys1 added a commit that referenced this pull request Dec 7, 2021
* feat(amplify_auth_cognito): first snippet for the amplify authenticator (#719)

* feat: Amplify authenticator (#725)

* feat(amplify_authenticator) confirmSignIn screen (#758)

* Amplify authenticator (#776)

* fix(amplify_authenticator): text overflow & validation fixes (#786)

* feat(amplify_authenticator): text customization (#788)

* fix(amplify_authenticator): removes test default value (#792)

* fix(amplify_authenticator): _authService.confirmSignIn not handling signInStep  (#793)

* fix(amplify_authenticator): adds password confirmation widget (#799)

* feat(amplify_flutter): AmplifyConfig Dart class with getter and instantiation (#838)

* fix(amplify_authenticator) default form typos and other fixes (#886)

Co-authored-by: Noyes <[email protected]>

* feat(amplify_authenticator): configured signup fields and password validation (#899)

* feat(authenticator): add support for verify user (#870)

* feat: verify user attributes after sign in

* chore: use authEventStream to set attr data

* chore: break out user verification

* chore: clean up unused code, comments

* chore: update exception handling fetching attributes

* chore: refactor getUnverifiedAttributeKeys

* chore: refactor passing state to verifyUser

* Merge main -> authenticator (#929)

* chore: make .gitignore more specific for amplify dirs and tweak integration test melos tasks (#711)

* chore(auth): User attributes/sign up docs (#697)

* feat(amplify): Null Safety Core (#492)

Null Safety upgrade for (to min Dart 2.12):
Core
Flutter
All Plugin Interface Packages

* feat(amplify_auth): Null Safety Auth (#536)

* feat(amplify_analytics): Null safety (#483)

* feat(amplify_storage_s3): Null safety (#485)

* feat(amplify_api): Null safety api (#484)

* fix: Broken Unit Tests

* fix: upgrade Auth changes to null safety

* fix: Broken Auth Unit Tests

* fix(amplify_auth_cognito): fixes auth null safety issues (#613)

* Example app null safety fixes (#617)

* Null safety master fixes pr (#614)

* chore(release): 0.2.0-nullsafety.0 (#622)

* Version Update to 0.2.0-nullsafety.0

* Update amplify.dart

Co-authored-by: Dustin Noyes <[email protected]>

* Update FlutterFetchCognitoAuthSessionResult.kt (#653)

* Null safety datastore (#649)

* chore: release 0.2.0-nullsafety.1 (#656)

* bug(datastore): HubEvent null check (#670)

* Fix HubEventElements for NS

* Refactor and add tests

* Null safety master rebase (#676)

* chore: pin Amplify iOS to '~> 1.9.2' (#589)

* set amplify ios to '~> 1.9'

* set amplify ios to '~> 1.9.2'

* add 'ObjectMapper' back to podspec

Co-authored-by: Ashish Nanda <[email protected]>

* chore: foundation for integration tests and basic auth suite with signIn and signOut (#568)

* feat(auth): add updateUserAttributes (batch) (#601)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

Co-authored-by: Chris F <[email protected]>

* chore(amplify_api): add httpStatusCode property to ApiException when available from REST response (#590)

Add integer property httpStatusCode to ApiException. In android and iOS, look for the status code in the response/error object and add to the serialized map. In flutter, add the new property to the serialization logic specifically for ApiException.

* fix(auth): Add clientMetadata to confirmSignUp API options (#619)

* Chore: remove check for duplicate error in Storage (#618)

* remove check for dup err cb

* bump amplify-android to version 1.17.8

* fix(auth): iOS/Android user attribute inconsistencies  (#620)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

* iOS: handle missing and custom attributes

* add constant for customKeyPrefix

Co-authored-by: Chris F <[email protected]>

* Add support of DataStore custom configuration (#610)

* refactor: Minor refactor of DataStore methods

* Free up `configure` method for native passthrough

* Move observe configuration into its own explicit method

* Corrected observe setup method in swift to call the invokeMethod callback so the call can be properly awaited upon in dart layer

* Broaden `configureDataStore` naming to convey more than model provider being able to be configured through this method

* Allow plugins to be added in parallel instead of in a series

* Update unit tests to correctly assert observe call result

* Remove setUpObserve API. Restore setUpObserve call to configure

* feat(datastore) Allow configure DataStore with custom configuration

* Reintroduce configureModelProvider as deprecated method

* chore(datastore) Add unit tests for custom DataStore configuration

* Update configure to not throw error if DataStore plugin is not found

* Split datastore configuration unit tests by use cases

Co-authored-by: Chris Fang <[email protected]>

* Use "flutter pub" in melos.yaml (and everywhere else) (#603)

* Use dart pub in melos.yaml

* Fix all references to 'pub _' with 'flutter pub _'

* Work around hanging build; don't install in postbootstrap

* fix(tests): add --no-pub to integration tests (#637)

* add --no-pub to integration tests

* fix typo

* fix: CONTRIBUTING Dead Links (#630)

* fix(amplify_auth_cognito): adds userAttributes to confirmSignIn (#607)

* chore: Add CircleCI badge (#631)

* chore: Add CircleCI badge

* fix: changed badge hyperlink

* fix: badage now points towards master branch

* Update README.md

Co-authored-by: Jordan Nelson <[email protected]>

Co-authored-by: Jordan Nelson <[email protected]>

* chore: upgrade amplify-android to 1.19.0 (#650)

* fix: amplify-ios version bump (#648)

* fix: amplify-ios version bump ~> 1.11.0 (#665)

* chore: release 0.1.6 (#667)

* fix: amplify-ios version bump ~> 1.11.0

* chore: release 0.1.6

* Update CHANGELOG.md

Co-authored-by: Noyes <[email protected]>

* Pagination with Datastore #500 (#673)

* Fix compile errors

* Fix broken unit tests

* Fix Android Unit Tests

* fix(amplify_datastore): force cast exception codegen

1) add new exception for force cast in codegen models

* Fix ios unit tests

This file was corrupted during the rebase

* Update codegen models to latest

* PR Comments

* Fix Android Unit Tests

* Last PR Comment

Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>

* fix(amplify_datstore): mprovider compile issue (#681)

* chore: remove deprecated method - configureModelProvider

* Revert "chore: remove deprecated method - configureModelProvider"

This reverts commit 00dbc7a5fa3248c78c6379eb0d1d12109808c4eb.

* Revert "Revert "chore: remove deprecated method - configureModelProvider"" (#682)

remove deprecated method - configureModelProvider

Co-authored-by: Chris Fang <[email protected]>

* fix(Auth): Remove use of TypeToken (#683)

* remove use of type token from auth session

* remove TypeToken from exception util

* fix(auth): update user attribute serialization (#684)

* update user attr res serialization

* update unit tests

* Fix enum string function (#687)

* Fix enum string function

* Update logic

* Revert "Update logic"

This reverts commit 75d257a3daab80ff62977ca72f47fb76099463c0.

* fix(auth): uses nextStep helper for signInResult on Android (#689)

* chore: release 0.2.0 (#690)

* Revert "Merge branch 'master' into null-safety-master"

This reverts commit 5e7fd304a517189ffc24254e9b9f74a28032b994, reversing
changes made to bf394bb958b6add00ecdc2b12061545b6cccf313.

* Update docs

* Add user attributes

* Update tests

* Revert minor change

* Merge branch 'master' into chore/user-attributes-ns

* Add export

Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>

* chore(amplify_api): add GraphQL integration tests (#694)

* chore(CI): enable formatting in CI w/ code changes (#570)

* enable formatting in CI

* diable analyze

* split up format and analyze

* chore: melos run format

* chore: empty commit to re-run CI

* chore(auth): integration tests for user attributes (#640)

* handle missing or empty signUpOptions

* add android unit test

* fix iOS tests

* add integration tests for auth.signUp

* remove unused imports, formatting

* add integration tests for user attributes

* add integration tests

* update auth category after NS changes

* update auth category for NS changes

* update unit test for NS changes

* update unit tests for NS changes

* address PR comments

* remove extra parens

* Apply SignUpRequest changes from code review

* add test for invalid attr value

* add user attribute confirmation test

* add fetchUserAttributes group

* remove test for email confirmation

* chore(api): Add API response headers/status (#721)

* Add API response headers/status

* Clean up

* Ensure proper deserialization

* Fix ios tests

* remove unnecessary default

* Add iOS status/headers + tests

* Remove empty body fix

* Missing status code

* Add license comments

* Clean up iOS tests

* Add RestException tests

* Add deprecation warning

* Fix example encoding

* Add Flutter plugin tests

* Rename file

* chore(amplify_datastore): make SubscriptionEvent directly available via datastore plugin by adding to publicTypes in interface (#728)

* fix(datastore): not serializing enum type in a predicate (#726)

* chore(amplify_storage_s3): add storage integration tests and update example app (#734)

* chore(auth): add integration test coverage for auth (#724)

* chore(auth): add integ tests for auth hub

* chore(auth): add integ test for update password

* chore(auth): add integ test for sign up exceptions

* chore(auth): test exceptions in signIn, signOut

* chore(auth): add fetch session integration tests

* chore(auth): add integ tests for getCurrentUser

* chore: formatting in get_current_user

* chore: formatting in fetch_session

* chore: refactor setup for update password tests

* chore: update fetch session test to check for null

* fix typos in comments

* chore: address PR feedback

* chore: fix formatting issues

* chore(datastore): add integration tests for datastore (#753)

* chore: add integration tests for datastore

* chore: address pr comments

* chore: configure datastore before each test

* chore: refactor save test

* chore: fix formatting

* chore: update name to configureDataStore

* Release updates 0.2.1 (#756)

* chore: Update Changelog for 0.2.1 release

* chore: Update Pubspec version to 0.2.1

Also update amplify.dart to return 0.2.1 for version string

* Update changelog

* chore: set min flutter version to '>1.20.0' in packages where set to … (#757)

* feat(amplify_auth_cognito): enables clientMetadata for signUp (#713)

* fix(datastore): Query nested model causes column not found sql error (#761)

* Reformat source code

* fix(datastore): Query nested model causes column not found sql error

* Optimize method interface to clarify the purpose

* Optimize method interface

* Added relationship check ensure the field conversion happens only for BelongsTo

* bug(analytics): Force session start (#764)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* fix(analytics): Typo (#765)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* Fix iOS method name

* feat(amplify_auth_cognito): Auth Devices API (#735)

* Add platform code

* Clean up

* Add licenses

* Fix error handling

* Add logging and update threading logic

* Add iOS unit tests

* Clean up

* Add tests to project

* Fix unit tests

* chore(datastore): Remove redundant files for the datastore example (#762)

* feat(datastore): Populate belongs-to nested models (#658)

* feat(datastore): Populate has-one and belongs-to nested models

* Nest data under serializedData key and persist modelName

* Resolve comment

* Update packages/amplify_datastore/example/ios/unit_tests/resources/SchemaData.swift

Co-authored-by: Chris F <[email protected]>

* chore(amplify_api): add support for apiName to GraphQL requests (#553)

* fix(amplify_api): prevent some fatal REST errors in Android

Throw ApiException in android when PUT, POST, and PATCH REST requests have no body to prevent fatal error (#661).

* chore(release): 0.2.2 (#781)

* chore(release): missing dependency (#783)

* Bump analytics version

* Fix PR #

* Bump all versions

* Missing bump

* Pin collections

* chore: skip FlutterURLSessionTests (#795)

* chore(lints): Add amplify_lints package (#808)

* Add lints package

* Add missing readme item

* feat(auth): add options to resendSignUpCode (#738)

* feat(auth): add options to resendSignUpCode

* fix: add type export for sing up code options

* chore: fix formatting issues

* chore: update comments for consistency

* chore: rename private method names for consistency

* chore: update comments for consistency

* chore: make ResendSignUpCodeOptions abstract

* chore: update ResendSignUpCodeRequest serializeAsMap

* chore: update ios test

* chore update doc comments

* chore: bump amplify-android to 1.24.0

* chore: remove star import

* feat(auth): add support for options to resetPassword, confirmResetPassword (#743)

* chore: rename confirmPassword to confirmResetPassword

* chore: fix grammatical errors in docs

* feat(auth): add options support for resetPassword, confirmResetPassword

* chore: rename private methods for consistency

* chore: update comments for consistency

* chore: update ios tests

* chore: fix comments

* chore: handle deprecated methods

* separate out deprecated class

* chore: update serializeAsMap for consistency

* chore: properly deprecate confirmPassword

* chore: add deprecation annotation to interface

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* feat(auth): add options to updateAttribute, updateAttributes, resendUserAttributeConfirmationCode (#775)

* chore: move attribute types to new dir

* chore: rename fetch attribute classes

* feat: add client metadata to user attribute methods

* deprecate renamed types

* chore: update comments for consistency

* chore: rename methods, tests

* chore: break out depracted classes, make new classes abstract

* chore: revert star import

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* chore: remove empty line

* fix(amplify_auth_cognito): throws signedout exception (#730)

* fix(amplify_datastore): ios send modelProviderVersion (#439)

Co-authored-by: Hui Zhao <[email protected]>

* feat(datastore): Add start and stop APIs (#811)

* Convert file to LF mode

* feat(datastore): Add start and stop APIs

* Add docs

* Resolve comments

* chore(analytics): Apply lints (#810)

* Clean up pinpoint

* Clean up pinpoint dart

* Enable CI for analytics

* Add iOS linting

* Clean up

* Update iOS script

* Fix Android melos script

* Update CI order

* Small changes

* Update type

* Add iOS whitespace rules

* Update type

* Apply updated rules

* feat(auth): OIDC/Lambda Support (#777)

* OIDC/Lambda support

* Clean up

* Fix iOS test

* Add unit tests

* Fix Android test

* Fix Android tests

* Refactor and remove AuthToken from the public API

* Remove concurrent guards

* Clean up

* chore: upgrade amplify-android 1.24.1 (#829)

* fix(datastore): cannot saving boolean as integer in SQLite (#754)

* fix(datastore): cannot saving boolean as integer in SQLite

* fix unit test

* Apply the fix to double type field as well

* fix(datastore): return null for list field in nested model (#843)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent (#647)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent

* Print unrecognized event details in iOS

* Resolve comments

* chore(api): Apply lints (#812)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29658d5cba4ef66209eaa05ecf1ba7ebaaf.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Revert license date

* Revert "Revert license date"

This reverts commit 1b93b3f382b7379b8f5ed66ca11468114ee504cc.

* test(DataStore): add local integration tests for datastore (#831)

* chore: add new model types for tests

* test: add tests for model types

* chore: update models for relationship tests

* test: add tests for hasOne, belongsTo

* chore: update models for hasMany tests

* test: add tests for hasMany relationship

* test: add query predicate test for string type

* test: add test for updating an existing model

* chore: skip flaky test on Android

* chore: clean up string predicate tests

* test: add integ tests for int/double query predicates

* chore: remove unused model

* chore: update tests after fix of #511

* chore: refactor model type tests

* chore: add provisioning script

* chore: update relationship tests

* chore: remove skipped test in save

* chore: add delay before clearing datastore

* test: add bool query predicate tests

* chore: update issue link for skipped test

* chore: update test w/ fix of #834

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

* chore: update testQueryPredicate for all models

* chore: update comment in bool query tests

* test: add test cases for unicode

* chore: update bool model generation

* chore: update testModelOperations to use getModelType

* test: add edge cases for model type tests

* chore: remove unneeded Map.from

* test: add edge cases to query predicate tests

* chore: update int/double predicate tests to use <>=

* chore: remove unneeded configure calls

* chore: update string between() test

* chore: update relationship tests to check for single model

* test: update observe tests to test all events

* chore: add notes to equality checks

* chore: remove const from test

* chore: remove hard coded length

Co-authored-by: Chris F <[email protected]>

* fix(api): OIDC/Lambda Fixes (#862)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29658d5cba4ef66209eaa05ecf1ba7ebaaf.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Merge branch 'datastore/multiauth' into chore/api-lints

* Revert multiauth

* Fix updateTokens

* Fix GraphQL error decoding

* Fix formatting

* Clean up

* Clean up

* Clean up

* Fix analysis for Flutter 2.5.0

* break(amplify_auth_cognito): fixes getCurrentUser disparity (#773)

* fix(amplify_datastore): iOS json deserialization (#806)

iOS ONLY fix.  Android was unaffected.

Ensure nested model int types are returned as int instead of double

Consolidate duplicated code for extracting values from Json during serialization step

* chore(release): 0.2.3 (#866)

* fix(example) updates amplify dependencies (#867)

* test(DataStore): add additional local integration tests for datastore (#844)

* Revert "Merge branch 'release-candidate' into main" (#871)

This reverts commit a88a10947b0b5030b06ec01135f71b1c3561de8e, reversing
changes made to 324ebad1904ebebc46e26432a93642b2776698ba.

* fix: Cocoapods relative import (#874)

* Fix Cocoapods relative import

* Update dependencies

* Add lints license

* Update amplify_flutter

* 0.2.4

* fix(example): Update dependencies (#875)

* Update example app

* Add example app to CI

* Update iOS settings

* chore: Enable release checks via unpub (#876)

* Add unpub step to CI builds

* Fix CI config

* Fix CI script

* Add yq

* Fix brew

* Add yq on Android

* Add new workflows

* Fix yml

* Fix yml

* Fix yml

* Fix curl cmd

* Fix docker compose check

* Fix yml

* Fix yml

* Update path search

* Fix melos setup

* Fix yq script

* Switch executor flow

* Fix

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Update launcher

* Fix ref

* Test

* Fix versions

* Fix example version

* Fix remote build

* Fix dev dependency versioning

* Fix script order

* Use local project for seeding deps

* Add dummy configs back

* Reenable full pipeline

* Fix melos command

* Update step name

* Merge main

* fix: Melos bootstrap should not fail (#887)

* Fix postbootstrap

* Fix example app

* 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)

Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: José Sánchez <[email protected]>
Co-authored-by: Su Tran <[email protected]>

* chore(authenticator): Clean up (#931)

* chore: make .gitignore more specific for amplify dirs and tweak integration test melos tasks (#711)

* feat: :sparkles: first snippet for the amplify authenticator

* chore(auth): User attributes/sign up docs (#697)

* feat(amplify): Null Safety Core (#492)

Null Safety upgrade for (to min Dart 2.12):
Core
Flutter
All Plugin Interface Packages

* feat(amplify_auth): Null Safety Auth (#536)

* feat(amplify_analytics): Null safety (#483)

* feat(amplify_storage_s3): Null safety (#485)

* feat(amplify_api): Null safety api (#484)

* fix: Broken Unit Tests

* fix: upgrade Auth changes to null safety

* fix: Broken Auth Unit Tests

* fix(amplify_auth_cognito): fixes auth null safety issues (#613)

* Example app null safety fixes (#617)

* Null safety master fixes pr (#614)

* chore(release): 0.2.0-nullsafety.0 (#622)

* Version Update to 0.2.0-nullsafety.0

* Update amplify.dart

Co-authored-by: Dustin Noyes <[email protected]>

* Update FlutterFetchCognitoAuthSessionResult.kt (#653)

* Null safety datastore (#649)

* chore: release 0.2.0-nullsafety.1 (#656)

* bug(datastore): HubEvent null check (#670)

* Fix HubEventElements for NS

* Refactor and add tests

* Null safety master rebase (#676)

* chore: pin Amplify iOS to '~> 1.9.2' (#589)

* set amplify ios to '~> 1.9'

* set amplify ios to '~> 1.9.2'

* add 'ObjectMapper' back to podspec

Co-authored-by: Ashish Nanda <[email protected]>

* chore: foundation for integration tests and basic auth suite with signIn and signOut (#568)

* feat(auth): add updateUserAttributes (batch) (#601)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

Co-authored-by: Chris F <[email protected]>

* chore(amplify_api): add httpStatusCode property to ApiException when available from REST response (#590)

Add integer property httpStatusCode to ApiException. In android and iOS, look for the status code in the response/error object and add to the serialized map. In flutter, add the new property to the serialization logic specifically for ApiException.

* fix(auth): Add clientMetadata to confirmSignUp API options (#619)

* Chore: remove check for duplicate error in Storage (#618)

* remove check for dup err cb

* bump amplify-android to version 1.17.8

* fix(auth): iOS/Android user attribute inconsistencies  (#620)

* feat: add auth.updateUserAttributes

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* address pr comments

* refactor android user attributes

* consolidate user attr logic on iOS

* refactor deliveryDetails serialization

* add missing newline

* revert missing attribute changes

* update serializeAuthUpdateAttributeResult for nil

* move comment to to of file

* bump amplify-android to 1.17.7

* iOS: handle missing and custom attributes

* add constant for customKeyPrefix

Co-authored-by: Chris F <[email protected]>

* Add support of DataStore custom configuration (#610)

* refactor: Minor refactor of DataStore methods

* Free up `configure` method for native passthrough

* Move observe configuration into its own explicit method

* Corrected observe setup method in swift to call the invokeMethod callback so the call can be properly awaited upon in dart layer

* Broaden `configureDataStore` naming to convey more than model provider being able to be configured through this method

* Allow plugins to be added in parallel instead of in a series

* Update unit tests to correctly assert observe call result

* Remove setUpObserve API. Restore setUpObserve call to configure

* feat(datastore) Allow configure DataStore with custom configuration

* Reintroduce configureModelProvider as deprecated method

* chore(datastore) Add unit tests for custom DataStore configuration

* Update configure to not throw error if DataStore plugin is not found

* Split datastore configuration unit tests by use cases

Co-authored-by: Chris Fang <[email protected]>

* Use "flutter pub" in melos.yaml (and everywhere else) (#603)

* Use dart pub in melos.yaml

* Fix all references to 'pub _' with 'flutter pub _'

* Work around hanging build; don't install in postbootstrap

* fix(tests): add --no-pub to integration tests (#637)

* add --no-pub to integration tests

* fix typo

* fix: CONTRIBUTING Dead Links (#630)

* fix(amplify_auth_cognito): adds userAttributes to confirmSignIn (#607)

* chore: Add CircleCI badge (#631)

* chore: Add CircleCI badge

* fix: changed badge hyperlink

* fix: badage now points towards master branch

* Update README.md

Co-authored-by: Jordan Nelson <[email protected]>

Co-authored-by: Jordan Nelson <[email protected]>

* chore: upgrade amplify-android to 1.19.0 (#650)

* fix: amplify-ios version bump (#648)

* fix: amplify-ios version bump ~> 1.11.0 (#665)

* chore: release 0.1.6 (#667)

* fix: amplify-ios version bump ~> 1.11.0

* chore: release 0.1.6

* Update CHANGELOG.md

Co-authored-by: Noyes <[email protected]>

* Pagination with Datastore #500 (#673)

* Fix compile errors

* Fix broken unit tests

* Fix Android Unit Tests

* fix(amplify_datastore): force cast exception codegen

1) add new exception for force cast in codegen models

* Fix ios unit tests

This file was corrupted during the rebase

* Update codegen models to latest

* PR Comments

* Fix Android Unit Tests

* Last PR Comment

Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>

* fix(amplify_datstore): mprovider compile issue (#681)

* chore: remove deprecated method - configureModelProvider

* Revert "chore: remove deprecated method - configureModelProvider"

This reverts commit 00dbc7a5fa3248c78c6379eb0d1d12109808c4eb.

* Revert "Revert "chore: remove deprecated method - configureModelProvider"" (#682)

remove deprecated method - configureModelProvider

Co-authored-by: Chris Fang <[email protected]>

* fix(Auth): Remove use of TypeToken (#683)

* remove use of type token from auth session

* remove TypeToken from exception util

* fix(auth): update user attribute serialization (#684)

* update user attr res serialization

* update unit tests

* Fix enum string function (#687)

* Fix enum string function

* Update logic

* Revert "Update logic"

This reverts commit 75d257a3daab80ff62977ca72f47fb76099463c0.

* fix(auth): uses nextStep helper for signInResult on Android (#689)

* chore: release 0.2.0 (#690)

* Revert "Merge branch 'master' into null-safety-master"

This reverts commit 5e7fd304a517189ffc24254e9b9f74a28032b994, reversing
changes made to bf394bb958b6add00ecdc2b12061545b6cccf313.

* Update docs

* Add user attributes

* Update tests

* Revert minor change

* Merge branch 'master' into chore/user-attributes-ns

* Add export

Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>

* docs: :memo: update of license & project's description

* feat(amplify_auth_cognito): add initial example app for the authenticator

* iOS & Android files

* feat(amplify_authenticator): screens implementation -Sign In, Sign Up & Confirm Sign Up

* dependecies & project's name updated

* chore(amplify_api): add GraphQL integration tests (#694)

* feat(amplify_authenticator): button disable for auth calls

* chore(CI): enable formatting in CI w/ code changes (#570)

* enable formatting in CI

* diable analyze

* split up format and analyze

* chore: melos run format

* chore: empty commit to re-run CI

* Fix: user not able to sign out

* closing brace

* test directory deleted

* fix: AuthFormField(type: 'password') is able to hide values

* feat: default & custom validators

* chore(auth): integration tests for user attributes (#640)

* handle missing or empty signUpOptions

* add android unit test

* fix iOS tests

* add integration tests for auth.signUp

* remove unused imports, formatting

* add integration tests for user attributes

* add integration tests

* update auth category after NS changes

* update auth category for NS changes

* update unit test for NS changes

* update unit tests for NS changes

* address PR comments

* remove extra parens

* Apply SignUpRequest changes from code review

* add test for invalid attr value

* add user attribute confirmation test

* add fetchUserAttributes group

* remove test for email confirmation

* chore(api): Add API response headers/status (#721)

* Add API response headers/status

* Clean up

* Ensure proper deserialization

* Fix ios tests

* remove unnecessary default

* Add iOS status/headers + tests

* Remove empty body fix

* Missing status code

* Add license comments

* Clean up iOS tests

* Add RestException tests

* Add deprecation warning

* Fix example encoding

* Add Flutter plugin tests

* Rename file

* refactor: signin, signup & confirm signup view models

* docs: initial documentation

* chore: keys in form fields and buttons

* chore: keys in form fields and buttons

* chore(amplify_datastore): make SubscriptionEvent directly available via datastore plugin by adding to publicTypes in interface (#728)

* fix(datastore): not serializing enum type in a predicate (#726)

* test: integration test setup

* feat: custom form field

* refactor: nullable auth variables in confirm sign up, sign in and sign up view models

* refactor: boilerplate from example app

* refactor: amplify_configure.dart deleted

* test: sign in screen integration testing

* doc: public members

* refactor: form field keys

* refactor: using types

* refactor: sign out method

* refactor: handle result from sign in / up calls

* chore(amplify_storage_s3): add storage integration tests and update example app (#734)

* chore(auth): add integration test coverage for auth (#724)

* chore(auth): add integ tests for auth hub

* chore(auth): add integ test for update password

* chore(auth): add integ test for sign up exceptions

* chore(auth): test exceptions in signIn, signOut

* chore(auth): add fetch session integration tests

* chore(auth): add integ tests for getCurrentUser

* chore: formatting in get_current_user

* chore: formatting in fetch_session

* chore: refactor setup for update password tests

* chore: update fetch session test to check for null

* fix typos in comments

* chore: address PR feedback

* chore: fix formatting issues

* test: sign in integration testing

* test: sign up integration testing

* refactor: enums in signup, signin and confirm_signup form fields

* feat: confirm sign in screen

* Update amplify_authenticator.dart

* refactor: late keyword removed

* refactor: getCurrentUser() method

* refactor: return type of currentUser method

* print() removed

* refactor: copy/paste error

* refactor: non-null types

* refactor: non-null type

* refactor: void Function()

* refactor: return null types in form field types

* refactor: null return type

* Update signin_types.dart

* refactor: null return type

* refactor: pr comments

* chore(datastore): add integration tests for datastore (#753)

* chore: add integration tests for datastore

* chore: address pr comments

* chore: configure datastore before each test

* chore: refactor save test

* chore: fix formatting

* chore: update name to configureDataStore

* test: confirm sign in integration test

* Release updates 0.2.1 (#756)

* chore: Update Changelog for 0.2.1 release

* chore: Update Pubspec version to 0.2.1

Also update amplify.dart to return 0.2.1 for version string

* Update changelog

* refactor: code removed

* chore: set min flutter version to '>1.20.0' in packages where set to … (#757)

* fix: unsed code

* fix

* feat: display exceptions widget

* feat(amplify_auth_cognito): enables clientMetadata for signUp (#713)

* Extra lines removed

* extra lines

* chore: extra lines

* fix(datastore): Query nested model causes column not found sql error (#761)

* Reformat source code

* fix(datastore): Query nested model causes column not found sql error

* Optimize method interface to clarify the purpose

* Optimize method interface

* Added relationship check ensure the field conversion happens only for BelongsTo

* bug(analytics): Force session start (#764)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* fix(analytics): Typo (#765)

* Force session start

* Add iOS no-op

* Update comment

* Mark internal method protected

* Fix iOS method name

* feat: username alias

This change will allow a customer to pass in an username alias to setup the initial auth flow of their apps

* feat: resend code button in confirm sign up screen |

Now the username is automatically setup in the username form field.

* feat(amplify_auth_cognito): Auth Devices API (#735)

* Add platform code

* Clean up

* Add licenses

* Fix error handling

* Add logging and update threading logic

* Add iOS unit tests

* Clean up

* Add tests to project

* Fix unit tests

* feat: rest password option enabled

screen to request the change of password with username

* feat: reset password screen

users can reset their password by setting up a new one and passing a confirmation code

* chore(datastore): Remove redundant files for the datastore example (#762)

* feat(datastore): Populate belongs-to nested models (#658)

* feat(datastore): Populate has-one and belongs-to nested models

* Nest data under serializedData key and persist modelName

* Resolve comment

* Update packages/amplify_datastore/example/ios/unit_tests/resources/SchemaData.swift

Co-authored-by: Chris F <[email protected]>

* feat: confirm sign in with new password screen

* fix(authenticator): SignInFormField pointing to the same instance |
form field in SendCodeScreen was pointing to the same instance in a form field in the SignInScreen

* fix: form field pointing to same instance

* refactor: update password

* refactor: keys

* chore(amplify_api): add support for apiName to GraphQL requests (#553)

* fix(amplify_api): prevent some fatal REST errors in Android

Throw ApiException in android when PUT, POST, and PATCH REST requests have no body to prevent fatal error (#661).

* refactor: branch conflicts

* fix: confirm password username attribute

* fix: second clause for non-Amplify exceptions

* refactor: clearException method for clearing all exceptions in the
exception controller.

* refactor: clearException method

* refactor: non null exception controller

* fix: throw error when signInStep == 'CONFIRM_SIGN_IN_WITH_CUSTOM_CHALLENGE'

* refactor: error objects

* feat: user is signed in after confirm sign up and when sign up respone is 'DONE'

* chore(release): 0.2.2 (#781)

* feat: confirm sign in auth flow

* refactor: show sign in screen after sign out

* refactor: const variable

* chore: unnecessary enum deleted

* refactor: non-null & final declaration

* chore: commented code removed

* refactor: VMs updated based on the triggered state

* refactor: resend code method

* refactor: validators in form fields

* fix: null value in a variable at confirm sign up VM

* refactor: authenticator container padding

* refactor: else clause in Authenticator Stream Builder

* refactor: username alias optional

* doc: finders in intergarion testion

* doc: finders

* doc: username alias doc

* refactor: inherited forms

* chore(release): missing dependency (#783)

* Bump analytics version

* Fix PR #

* Bump all versions

* Missing bump

* Pin collections

* fix: overflow in exception widget

* fix: validation in confirm sign up form fields.

* refactor: null check (!)  removed from inherited forms

* feat: loading state in sign out button if there's any exception.

* fix: overflow in buttons

* chore: commented code removed

* refactor: public methods in AuthBloc

* fix: unsued code

* chore: skip FlutterURLSessionTests (#795)

* chore(lints): Add amplify_lints package (#808)

* Add lints package

* Add missing readme item

* feat(auth): add options to resendSignUpCode (#738)

* feat(auth): add options to resendSignUpCode

* fix: add type export for sing up code options

* chore: fix formatting issues

* chore: update comments for consistency

* chore: rename private method names for consistency

* chore: update comments for consistency

* chore: make ResendSignUpCodeOptions abstract

* chore: update ResendSignUpCodeRequest serializeAsMap

* chore: update ios test

* chore update doc comments

* chore: bump amplify-android to 1.24.0

* chore: remove star import

* feat(auth): add support for options to resetPassword, confirmResetPassword (#743)

* chore: rename confirmPassword to confirmResetPassword

* chore: fix grammatical errors in docs

* feat(auth): add options support for resetPassword, confirmResetPassword

* chore: rename private methods for consistency

* chore: update comments for consistency

* chore: update ios tests

* chore: fix comments

* chore: handle deprecated methods

* separate out deprecated class

* chore: update serializeAsMap for consistency

* chore: properly deprecate confirmPassword

* chore: add deprecation annotation to interface

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* feat(auth): add options to updateAttribute, updateAttributes, resendUserAttributeConfirmationCode (#775)

* chore: move attribute types to new dir

* chore: rename fetch attribute classes

* feat: add client metadata to user attribute methods

* deprecate renamed types

* chore: update comments for consistency

* chore: rename methods, tests

* chore: break out depracted classes, make new classes abstract

* chore: revert star import

* chore: bump amplify-android to 1.24.0

* chore: apply suggestions from code review

* chore: remove empty line

* fix(amplify_auth_cognito): throws signedout exception (#730)

* fix(amplify_datastore): ios send modelProviderVersion (#439)

Co-authored-by: Hui Zhao <[email protected]>

* feat(datastore): Add start and stop APIs (#811)

* Convert file to LF mode

* feat(datastore): Add start and stop APIs

* Add docs

* Resolve comments

* chore(analytics): Apply lints (#810)

* Clean up pinpoint

* Clean up pinpoint dart

* Enable CI for analytics

* Add iOS linting

* Clean up

* Update iOS script

* Fix Android melos script

* Update CI order

* Small changes

* Update type

* Add iOS whitespace rules

* Update type

* Apply updated rules

* feat(auth): OIDC/Lambda Support (#777)

* OIDC/Lambda support

* Clean up

* Fix iOS test

* Add unit tests

* Fix Android test

* Fix Android tests

* Refactor and remove AuthToken from the public API

* Remove concurrent guards

* Clean up

* chore: upgrade amplify-android 1.24.1 (#829)

* fix(datastore): cannot saving boolean as integer in SQLite (#754)

* fix(datastore): cannot saving boolean as integer in SQLite

* fix unit test

* Apply the fix to double type field as well

* fix(datastore): return null for list field in nested model (#843)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent (#647)

* fix(datastore): Better loggin on unhandled DataStoreHubEvent

* Print unrecognized event details in iOS

* Resolve comments

* chore(api): Apply lints (#812)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29658d5cba4ef66209eaa05ecf1ba7ebaaf.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Revert license date

* Revert "Revert license date"

This reverts commit 1b93b3f382b7379b8f5ed66ca11468114ee504cc.

* test(DataStore): add local integration tests for datastore (#831)

* chore: add new model types for tests

* test: add tests for model types

* chore: update models for relationship tests

* test: add tests for hasOne, belongsTo

* chore: update models for hasMany tests

* test: add tests for hasMany relationship

* test: add query predicate test for string type

* test: add test for updating an existing model

* chore: skip flaky test on Android

* chore: clean up string predicate tests

* test: add integ tests for int/double query predicates

* chore: remove unused model

* chore: update tests after fix of #511

* chore: refactor model type tests

* chore: add provisioning script

* chore: update relationship tests

* chore: remove skipped test in save

* chore: add delay before clearing datastore

* test: add bool query predicate tests

* chore: update issue link for skipped test

* chore: update test w/ fix of #834

* Apply suggestions from code review

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

Co-authored-by: Chris F <[email protected]>

* Update packages/amplify_datastore/example/integration_test/model_type_test.dart

* chore: update testQueryPredicate for all models

* chore: update comment in bool query tests

* test: add test cases for unicode

* chore: update bool model generation

* chore: update testModelOperations to use getModelType

* test: add edge cases for model type tests

* chore: remove unneeded Map.from

* test: add edge cases to query predicate tests

* chore: update int/double predicate tests to use <>=

* chore: remove unneeded configure calls

* chore: update string between() test

* chore: update relationship tests to check for single model

* test: update observe tests to test all events

* chore: add notes to equality checks

* chore: remove const from test

* chore: remove hard coded length

Co-authored-by: Chris F <[email protected]>

* fix(api): OIDC/Lambda Fixes (#862)

* Clean up pinpoint

* Clean up pinpoint dart

* Update iOS script

* Update CI order

* Add Dart lints to API

* Apply Android/iOS lints to API

* Rename uuid

* Small changes

* Fix scripts

* Clean up

* Fix unit tests

* Continue impl

* Fix android unit tests

* Remove duplicate lint check

* Fix analytics app

* Adjust java options

* Bump java RAM

* Remove concurrency

* Disable gradle daemon

* Update gradle properties

* Update gradle config

* Revert "Update gradle config"

This reverts commit a43ad29658d5cba4ef66209eaa05ecf1ba7ebaaf.

* Revert gradle changes

* Disable gradle daemon

* Add kotlin style flags

* Disable gradle daemon

* Bump JVM memory

* Change daemon setting

* Adjust JVM memory

* Lint debug only

* Fix API tests

* Bump deps and fix coverage script

* Fix Gradle version

* Revert unnecessary changes

* Update melos postclean files

* Enable fatal infos

* Fix analyze scope

* Fix postbootstrap

* Fix missing sample app

* Fix order in CI

* Revert add sample app

* Revert order change

* Merge branch 'datastore/multiauth' into chore/api-lints

* Revert multiauth

* Fix updateTokens

* Fix GraphQL error decoding

* Fix formatting

* Clean up

* Clean up

* Clean up

* Fix analysis for Flutter 2.5.0

* break(amplify_auth_cognito): fixes getCurrentUser disparity (#773)

* fix(amplify_datastore): iOS json deserialization (#806)

iOS ONLY fix.  Android was unaffected.

Ensure nested model int types are returned as int instead of double

Consolidate duplicated code for extracting values from Json during serialization step

* chore(release): 0.2.3 (#866)

* fix(example) updates amplify dependencies (#867)

* test(DataStore): add additional local integration tests for datastore (#844)

* Revert "Merge branch 'release-candidate' into main" (#871)

This reverts commit a88a10947b0b5030b06ec01135f71b1c3561de8e, reversing
changes made to 324ebad1904ebebc46e26432a93642b2776698ba.

* fix: Cocoapods relative import (#874)

* Fix Cocoapods relative import

* Update dependencies

* Add lints license

* Update amplify_flutter

* 0.2.4

* fix(example): Update dependencies (#875)

* Update example app

* Add example app to CI

* Update iOS settings

* chore: Enable release checks via unpub (#876)

* Add unpub step to CI builds

* Fix CI config

* Fix CI script

* Add yq

* Fix brew

* Add yq on Android

* Add new workflows

* Fix yml

* Fix yml

* Fix yml

* Fix curl cmd

* Fix docker compose check

* Fix yml

* Fix yml

* Update path search

* Fix melos setup

* Fix yq script

* Switch executor flow

* Fix

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Try again

* Update launcher

* Fix ref

* Test

* Fix versions

* Fix example version

* Fix remote build

* Fix dev dependency versioning

* Fix script order

* Use local project for seeding deps

* Add dummy configs back

* Reenable full pipeline

* Fix melos command

* Update step name

* Merge main

* fix: Melos bootstrap should not fail (#887)

* Fix postbootstrap

* Fix example app

* 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

* Linting + reorg

* Rename

* Clean up

* Improve customizability

* Integrate Jordan's changes

* Clean up

* Clean up

* Clean up

* Revert attribute changes

* Fix API auth for REST (#925)

* Clean up

* Clean up

* Remove print

* Update authenticator config

* Add generated package to melos ignore

* Fix amplify_flutter test

* Fix validators

Co-authored-by: Travis Sheppard <[email protected]>
Co-authored-by: Israel Arcos <[email protected]>
Co-authored-by: Kyle <[email protected]>
Co-authored-by: Dustin Noyes <[email protected]>
Co-authored-by: Mo Malaka <[email protected]>
Co-authored-by: Leonardo Custodio <[email protected]>
Co-authored-by: Jordan Nelson <[email protected]>
Co-authored-by: Ashish Nanda <[email protected]>
Co-authored-by: Chris F <[email protected]>
Co-authored-by: Hui Zhao <[email protected]>
Co-authored-by: Chris Fang <[email protected]>
Co-authored-by: A.J. Gardner <[email protected]>
Co-authored-by: Elijah Quartey <[email protected]>
Co-authored-by: Noyes <[email protected]>
Co-authored-by: israx <[email protected]>
Co-authored-by: José Sánchez <[email protected]>
Co-authored-by: Su Tran <[email protected]>

* feat(amplify_authenticator): remember device widget (#959)

* chore(authenticator): Hosted UI, themeing (#951)

* Initial theme and hosted UI work

* Improve button code

* Fixes

* Fix layout + banner issues

* Minor fixes

* Clean up

* Temp fix for Android cancellation

* Update themeing

* Use amplify config for social buttons

* Clean up. Temp: disable amplify theme.

* chore(authenticator): Update localizations (#992)

* Initial theme and hosted UI work

* Improve button code

* Fixes

* Fix layout + banner issues

* Minor fixes

* Clean up

* Temp fix for Android cancellation

* Refactor localizations

* Update localizations

* Update themeing

* Use amplify config for social buttons

* Clean up. Temp: disable amplify theme.

* Update generator

* Update translations and example app

* Fix example app

* Fix authenticator form key (#1012)

* Amplify authenticator/formfield refactor (#1020)

* chore(authenticator): Translations and lint fixes (#1031)

* Translations and lint fixes

* Revert

* Fix initial value

* fix: resend signup code (#1029)

* fix: resend signup code

* feat: display message after resendSignUpCode

* makes custom SignUpField hintText required (#1041)

* fix: check attr verification after confirm sign in (#1019)

* Fix rebase

* Update to amplify-authenticator

* Fix format

* Fix RC update

* chore(authenticator): Re-theme (#1074)

* Initial theme work

* Fix sizing

* UI tweak

* Remove top-level license

* Update translations

* Fix button

* Change default theme

* chore(authenticator): Update username attributes (#1077)

* Initial theme work

* Fix sizing

* UI tweak

* Remove top-level license

* Update translations

* Fix button

* Update username attributes

* Revert auth bloc changes

* Add missing license

* fix: remove scaffold if state is authenticated (#1078)

* UsernameType doc comments (#1080)

* chore(authenticator): Support user's Material theme (#1079)

* Initial theme work

* Fix sizing

* UI tweak

* Remove top-level license

* Update translations

* Fix button

* Update username attributes

* Revert auth bloc changes

* Add missing license

* Create AmplifyTheme wrapper over Theme

* Clean up

* chore: merge release-candidate into amplify-authenticator (#1086)

* 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

Co-authored-by: Travis Sheppard <[email protected]>

* chore(authenticator): Dark mode (#1084)

* Initial theme work

* Fix sizing

* UI tweak

* Remove top-level license

* Update translations

* Fix button

* Update username attributes

* Revert auth bloc changes

* Add missing license

* Create AmplifyTheme wrapper over Theme

* Clean up

* Add dark mode

* Fix social buttons

* feat(amplify_authenticator): adds search bar in dial code lookup, and additional country localizations (#1081)

* chore(authenticator): UI fixes (#1089)

* UI fixes

* Fix verify user form

* Clean up

* Fix social buttons

* Fix indicator

* Use card for all screens

* Clean up social buttons

* Clean up phone field

* Center social buttons

* Add phone dropdown to all phone fields

* Fix phone number fields

* Fix phone number formatting

* Update social button padding

* Fix dropdown formatting

* Fix username attributes

* Fix info messages

* UI fixes

* Fix confirm sign in flow

* Remove remember device

* Clean up

* Add exception handler

* Clean up

* Clear username on switch

* fix: do not show verify user if at least one attribute is verified (#1088)

* fix: do not show verify user if at least one attr is verified

* chore: update comment

* fix: only consider existing attributes

* fix(amplify_authenticator) uses session for _authLoad (#1072)

* feat: Authenticator UI updates (#1093)

* UI fixes

* Fix verify user form

* Clean up

* Fix social buttons

* Fix indicator

* Use card for all screens

* Clean up social buttons

* Clean up phone field

* Center social buttons

* Add phone dropdown to all phone fields

* Fix phone number fields

* Fix phone number formatting

* Update social button padding

* Fix dropdown formatting

* Fix username attributes

* Fix info messages

* UI fixes

* Fix confirm sign in flow

* Remove remember device

* Clean up

* Add exception handler

* Clean up

* feat: remove the material card and ui updates

* chore: inline tabs

* feat: update button order and spacing

Co-authored-by: Dillon Nys <[email protected]>

* fix: update verify user validation message and display code sent message (#1095)

* fix: use the correct string for the validator

* feat: show send code message on verify user

* fix(amplify_authenticator): updates username on switch state (#1097)

* chore(authenticator): Update social buttons look (#1098)

* Update social buttons look

* Revert gitignore

* chore(authenticator): Custom fields (#1096)

* Add required attrs; clean up form fields

* Turn off autocorrect

* Update to (optional)

* Rename to displayPriority

* Update sorting

* Clean up

* feat(authenticator): update date time field ui and handle onTap (#1099)

* feat: update datetime field ui and handle onTap

* update initialEntryMode

* chore(authenticator): Feedback fixes (#1100)

* Use username field for confirm sign up

* No validation for optional fields

* Fix phone number validation

* Fix missing required values

* Fix obscure text

* Clean up form field

* Fix banner not showing

* Fix isOptional

* Always require code

* chore(authenticator): Add exception banner location (#1101)

* Use username field for confirm sign up

* No validation for optional fields

* Fix phone number validation

* Fix missing required values

* Fix obscure text

* Clean up form field

* Fix banner not showing

* Fix isOptional

* Add exception banner location

* Revert changes

* Fixes

* Update icon color

* fix(authenticator): update theme _isDark for material t…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants