-
Notifications
You must be signed in to change notification settings - Fork 16
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
Pilot implementation for Realtime event based API's - ConnectionStateChange #6
Conversation
0c862fe
to
c11e35d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good.
Any chance you could help me run this locally and test with some instructions? Perhaps in the example README?
Also, as requested in other PRs, it would be great to see the Dart IDL README include docs as you go along, in line with the other SDKs.
android/src/main/java/io/ably/flutter/plugin/AblyEventStreamHandler.java
Show resolved
Hide resolved
android/src/main/java/io/ably/flutter/plugin/AblyEventStreamHandler.java
Show resolved
Hide resolved
android/src/main/java/io/ably/flutter/plugin/AblyEventStreamHandler.java
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've made a first round of comments but I need to go for a few hours so wanted to get these in front of you @tiholic so discussion can start. I'll be back later on to contribute further.
android/src/main/java/io/ably/flutter/plugin/AblyEventStreamHandler.java
Show resolved
Hide resolved
android/src/main/java/io/ably/flutter/plugin/AblyEventStreamHandler.java
Show resolved
Hide resolved
android/src/main/java/io/ably/flutter/plugin/AblyEventStreamHandler.java
Show resolved
Hide resolved
You need to rebase your commits against the target branch as there are conflicts which may be making review harder. Thanks! |
7e01bd4
to
6f8c575
Compare
@QuintinWillison rebase complete |
- _Nullable to nullable - making sure argument name placeholder and selector signature are in sync #6 (comment)
- `.fromKey` and `.fromOptions` are removed from high level interface #2 (comment) - Getting rid of XXXBase and XXX as it is only required for ably-java since it supports plain java and android #2 (comment)
- Getting rid of XXXBase and XXX as it is only required for ably-java (since it supports plain java and android) #2 (comment)
- adding new streams_channel dependency for handling multiple streams - reverting old dev dependency versions due to pub get conflict
…mplemented event channels
- _Nullable to nullable - making sure argument name placeholder and selector signature are in sync #6 (comment)
1542ced
to
3027da0
Compare
@mattheworiordan @QuintinWillison Updated README with "how to run example" and "API usage" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not clear why we have designed the API in a way that deviates so significantly from all other SDKs. See https://www.ably.io/documentation/quick-start-guide and choose different languages to see. We have very good consistency across the board, yet Dart has deviated significantly with a new plugin object, and all static object types exposed at the root level (i.e. Ably.
in an IDE will surface every object type now).
Can you explain why the API is presented in this way?
What decision was made that justified deviating from the norm?
Addressing: https://github.com/ably/ably-flutter/pull/6/files/9f9a3f8df536495a6a9607eee2396c6d58e89abf#r430215959 https://github.com/ably/ably-flutter/pull/6/files/9f9a3f8df536495a6a9607eee2396c6d58e89abf#r430214818 https://github.com/ably/ably-flutter/pull/6/files/9f9a3f8df536495a6a9607eee2396c6d58e89abf#r430215097
Ok re separate PR to address comments. Looking forward to seeing an API that follows the Ably IDL. |
remove env from README
Shedding light on RTE6a drawback and suggestion on overcoming that from SDK users end
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we've deliberated over this particular PR long enough already. We understand the constraints and it delivers the functionality required in a Dart (/ Flutter) idiomatic manner. Let's get it merged and move this repository forward!
Will be addressing in a separate PR ( #15 )
- _Nullable to nullable - making sure argument name placeholder and selector signature are in sync #6 (comment)
Hoping to solve this error in workflow environment: Unhandled exception: Invalid argument (uri): Unknown package: Instance of '_SimpleUri' #0 _resolveUri.<anonymous closure> (package:dartdoc/src/generator/resource_loader.dart:34:9) #1 _RootZone.runUnary (dart:async/zone.dart:1612:54) #2 _FutureListener.handleValue (dart:async/future_impl.dart:152:18) #3 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:704:45) #4 Future._propagateToListeners (dart:async/future_impl.dart:733:32) #5 Future._completeWithValue (dart:async/future_impl.dart:539:5) #6 Future._asyncCompleteWithValue.<anonymous closure> (dart:async/future_impl.dart:577:7) #7 _microtaskLoop (dart:async/schedule_microtask.dart:40:21) #8 _startMicrotaskLoop (dart:async/schedule_microtask.dart:49:5) #9 _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:120:13) #10 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:185:5) Error: Process completed with exit code 255.
Realtime events workflow based on Streams handled for both Android and iOS.
ConnectionStateChange
is fully supportedCodecPair<Type>(encoder, decoder)
Known Issues - Applies only for Event Streams: