Skip to content

Latest commit

 

History

History
643 lines (408 loc) · 38.7 KB

CHANGELOG.md

File metadata and controls

643 lines (408 loc) · 38.7 KB

Changelog

Full Changelog

Fixed bugs:

  • Error on Android Build #551

Full Changelog

Fixed bugs:

  • Not compiling on fresh new Android project #550
  • Error inside Realtime client subscription after hot restart #531

Full Changelog

  • Updated ably-cocoa dependency to 1.2.33

Fixed bugs:

  • The title field in the push notification should be nullable #532

Full Changelog

  • Updated ably-android dependency to 1.2.40

Fixed bugs:

  • Crash on IPhone 7 plus #527

Full Changelog

Fixed bugs:

  • Message extras deserialization not working #523

Full Changelog

This release improves support for Android 19

  • Updated ably-android dependency to 1.2.38

Full Changelog

This release includes a new privacy manifest as required under new Apple guidelines.

  • Updated ably-cocoa dependency to 1.2.30

Full Changelog

This release contains Ably Push Notification improvements

  • Updated ably-cocoa dependency to 1.2.29
  • Updated ably-android dependency to 1.2.36

Full Changelog

  • Updated ably-cocoa dependency to 1.2.27

Full Changelog

Fixed bugs:

  • When the app comes back to the foreground from the background #504

Closed issues:

  • How do we get connectionId from connection? #502
  • Implement no-connection-serial #438

Full Changelog

  • ably-cocoa dependency is bumped to 1.2.24

Full Changelog

Closed issues:

  • setOnBackgroundMessage not getting along with async/await #496

Full Changelog

  • ably-android dependency is bumped to 1.2.33

Full Changelog

  • ably-cocoa dependency is bumped to 1.2.23

Closed issues:

  • clear clientId after deregistration

Full Changelog

Closed issues:

  • loading LocalDevice hit Unhandled Exception #491

Full Changelog

Closed issues:

  • prevent app crash during method channel call #489
  • fix numbers strategy for Gson to prevent changing int to double #486
  • int value is changed to double on Android #461

Full Changelog

Closed issues:

  • [Android] Encrypted channels periodically throws java.util.ConcurrentModificationException #483
  • Replace Cocoa client options calls to addAgent:version with agents property set #448

Full Changelog

Closed issues:

  • Ably causes runner to crash in XCode 15 #480
  • Does it work for flutter web #476
  • Update android decoder for updated clientOptions #472

Full Changelog

Fixed bugs:

  • Fix java/android custom fallbacks #470

Full Changelog

Fixed bugs:

  • Realtime connection with authUrl causes crash on iOS #465

Full Changelog

Implemented enhancements:

  • Added new Auth methods: 'requestToken', 'authorize','createTokenRequest' #460

Fixed bugs:

  • authHeaders type conversion on Android Plugin is incorrect #444
  • iOS _CastError exception #355

Closed issues:

  • How to handle when user auth changes? [#459](https://github .com//issues/459)
  • Expose href from ErrorInfo in bubbled exceptions #441
  • java.util.HashMap cannot be cast to io.ably.lib.types.Param #439

Merged pull requests:

  • Add numbers strategy for Gson to prevent changing int to double #462 (Afur)
  • Expose error info in AblyException toString #447 (davyskiba)

Full Changelog

Fixed bugs:

  • Update ably-android dependency to version 1.2.13 or later #430, fixed in: Update ably-android to 1.2.15 #435 (JakubJankowski)
  • Android application got crash on notification receive in killed state using Ably notifications #429, fixed in: Main thread fix #431 (ikbalkaya) - reverting the change made under #291, released at version 1.2.9
  • Building Example App on Android fails #418, fixed in: Fix missing App ID build error in example app #421 (ikurek)
  • Fix for running didFinishLaunchingWithOptions #433 (Neelansh-ns)

Closed issues:

  • Deprecated API usage warning for fallbackHostsUseDefault #416, fixed in: Added lint ignore on deprecated fields #423 (ikurek)

Full Changelog

Implemented enhancements:

  • Add Flutter and/or Dart runtime version to Ably-Agent header, if possible #286
  • Throw errors instead of returning null when serialization/ deserialization fails #149
  • Custom Transport Parameters (Params) #108

Fixed bugs:

  • Check requirements and update for Flutter 3.0.0 #394
  • Upgrade ably-java dependency to version 1.2.12 #385
  • Swift Compiler Error (Xcode): Definition conflicts with previous value #347
  • Update errorReason on Realtime.connection #120
  • Logging and error handling for ObjC stream listeners #399
  • Fixed argument error in Swift implementation of Crypto.generateRandomKey #377
  • Fixed iOS push module compilation issue on some versions of XCode #373
  • Updated realtime connection to update errorReason #365

Closed issues:

  • Check compatibility with XCode 13 #389
  • Document public members of classes #380
  • Ably iOS interferes with firebase_messaging #378
  • Sort named constructor parameters alphabetically #351
  • Use named arguments for options classes and make all fields private #61

Full Changelog

Implemented enhancements:

  • Drop support for Android v1 embedding API #178
  • Defaults: Generate environment fallbacks #47

Fixed bugs:

  • Android only - Returning a TokenDetails with 'issued' and 'expires' values in epoch milliseconds throws java error #356
  • Fix AblyException assigning 'Message' to 'Code' field #349
  • Investigate and fix encryption in sample app #334
  • Execution failed for task ':ably_flutter:compileDebugJavaWithJavac' while running integration test for android device #322
  • Realtime types (e.g. RealtimeHistoryParams) extending Rest ones (e.g. RestHistoryParams) can cause problems (crashes) #241
  • Fix LogHandler (use it) #238
  • Broken dartdoc link generated from readme #110

Closed issues:

  • Ably interferes with firebase_messaging #346
  • Missing link to ApplicationState in documentation #335
  • Write integration tests for realtime channel specs #332
  • Consider Simplifying AblyMessage #329
  • Upgrade firebase-messaging to version 23.0.0 #320
  • Example App should be able to build and run without Firebase configured via google-services.json #318
  • No need for GitHub workflows to explicitly run flutter pub get in the example folder #317
  • Example App should be able to build and run without ABLY_API_KEY #316
  • resultForDeactivate and resultForActivate are set to null in some situations in Android plugin #304
  • Test device activation, subscription, receiving messages and deactivation #153
  • Add docstring for "spec" folder #29

Full Changelog

Fixed bugs:

  • Android: IllegalStateException in Crypto CBCCipher's decrypt method #314, fixed by updating to ably-android version 1.2.11 #319 (QuintinWillison)
  • Android: java.lang.ArrayIndexOutOfBoundsException thrown by AblyInstanceStore's setPaginatedResult method #308, fixed in #321 (QuintinWillison)
  • ChannelStateChange property resumed should not be nullable #297, fixed in #313 (ikurek)
  • Deprecated Android embedding version #311, fixed in #312 (ikurek)

Merged pull requests:

  • Readme enchancements for example app #309 (ikurek)

Full Changelog

Reverted Bug Fix:

We made a change, released in version 1.2.9, which we suspect has been causing issues for some customers. This release reverts that change.

Fixed bugs:

  • Customer reporting issue with NPE on Android push notifications #298

Merged pull requests:

Full Changelog

Bug Fix:

This bug affects customers using message content encryption alongisde channel history for a single Ably client instance. It only affects the iOS runtime (not an issue on Android). History REST requests, on iOS only, were incorrectly returning encrypted payloads, despite encryption having been enabled via the Realtime channel setOptions API.

Full Changelog

Bug Fixes:

Bug Fix: Push activation not completing on iOS when running in release configuration #276, fixed in #277 (ben-xD)

Full Changelog

Implemented enhancements:

  • Replace optional fields with default values #230
  • Refactor example app to be more readable #212
  • AuthCallback and InstanceStore Refactoring and documentation #250 (ben-xD)
  • Serialize LogLevel using constants #244 (ben-xD)
  • Replace deprecated method calls in tests #243 (ben-xD)
  • Example app: Paginated results viewer widget #242 (ben-xD)
  • Example app: Move out Realtime and Rest UI to separate widget and service #240 (ben-xD)
  • Example app: Extract System Details sliver into new widget #239 (ben-xD)
  • Hide API key secret inside API key UI #237 (ben-xD)
  • Rename pushSetOnBackgroundMessage to pushBackgroundFlutterApplicationReadyOnAndroid #236 (ben-xD)
  • Add default values to ClientOptions #233 (ben-xD)

Fixed bugs:

  • Clear iOS platform instances synchronously #249 (ben-xD)

Closed issues:

  • 1.2.6 java.lang.NullPointerException when stream fails to close #274
  • 1.2.6 java.lang.NullPointerException when using token auth #272
  • setMockMethodCallHandler is deprecated. Use tester.binding.defaultBinaryMessenger.setMockDecodedMessageHandler instead #173

Merged pull requests:

  • Rename inconsistent methods to be more consistent #248 (ben-xD)
  • Use Objective-C standard style for LogLevel enum #246 (ben-xD)
  • Platform encapsulation #235 (ben-xD)

Full Changelog

Implemented enhancements:

  • Make the symmetric encryption UI more usable #229 (ben-xD)
  • Improve android logging: Remove unnecessary print statements, and use Log.w where necessary #228 (ben-xD)
  • iOS: add notification in RemoteMessage #224 (ben-xD)
  • Fix setOptions to complete the Future (previously did not call result.success) and remove side effects in example app #222 (ben-xD)

Fixed bugs:

  • iOS push notifications error handling: Stop sending FlutterError through MethodChannel. It is not supported and crashes the app. #214
  • Explicitly check types of tokenDetails, instead of using macro which … #256 (ben-xD)

Merged pull requests:

  • Docs improvement for Android push notifications #227 (ben-xD)
  • Reduce dart analysis warnings and hints and remove "Interface" classes (e.g. RealtimeInterface) #213 (ben-xD)
  • Remove unnecessary abstract classes #193 (ben-xD)

Full Changelog

Implemented enhancements:

  • Enhancement/push UI improvement for debugging #218 (ben-xD)

Fixed bugs:

  • Handle error cases on iOS correctly, and simplify code #221 (ben-xD)
  • Fix app crashing when app is not yet started on some devices #215 (ben-xD)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • Fix app crashing when receiving multiple push notifications #208 (ben-xD)

Merged pull requests:

  • Update flutter_local_notifications to avoid bintray dependency resolution error #210 (ben-xD)
  • Simplify state in example app #202 (ben-xD)

This release lowers the minimum version of Flutter required to use Ably Flutter to 2.2.3.

Full Changelog

Merged pull requests:

  • Copy unawaited implementation into Ably Flutter to fix build failures for Flutter 2.2.3 #198 (ben-xD)

This release adds support for push notifications, including device activation with Ably (including device registration with APNs / FCM), subscribing devices for push notifications and handling the push notifications in your Flutter application, without writing iOS or Android code. Check out the push notifications documentation for more information. We also fixed some bugs that were either reported in Github issues or found internally.

Full Changelog

Implemented enhancements:

  • Update to latest ably-android version #147
  • Implement Push Notifications listener #141
  • Implement RSC7d (Ably-Agent header) #100
  • Push Notifications Device Registration (activation) and device subscription #107

Fixed bugs:

  • Remove timeouts for platform method calls #171
  • Token Authentication with authCallback in Android: java.lang.Exception: Invalid authCallback response #156
  • AuthCallback error: java.lang.Exception: Invalid authCallback response on Flutter Android #121

Closed issues:

  • Can not set RealTimeChannelOptions params #182
  • java lang Invalid authCallback response #181
  • Replace package:pedantic with package:flutter_lints #168
  • Push Registrations cannot be updated on Android: fails with No authentication information provided #167
  • Implement activation/ deactivation/ updating lifecycle method #154
  • Connect to Ably Realtime using socket_io_client #148
  • Failing Android build: The plugin ably_flutter could not be built URGENT #129
  • Add support for symmetric encryption #127
  • Lint rule to enforce strict raw types #85
  • Add linting rules #30

Merged pull requests:

  • Fix 2 Channel options bugs #191 (ben-xD)
  • Fix RealtimeChannelOptions to avoid forcing cipher argument #190 (ben-xD)
  • Refactoring: Move classes into separate files #189 (ben-xD)
  • Add ably agent header #188 (ben-xD)
  • Update Ably-cocoa dependency to 1.2.6 #186 (ben-xD)
  • Bug fix: Reactivating devices for Push #185 (ben-xD)
  • Push Notifications documentation enhancement #177 (ben-xD)
  • Handle Push Notifications in Dart, including foreground messages, background messages and notification taps #166 (ben-xD)
  • Fix invalid authCallback response when using token authentication #164 (ben-xD)
  • Use image URLs instead of relative paths, and add note to CONTRIBUTING.md #163 (ben-xD)
  • Clarify documentation about when device uses APNs production/ development device tokens #161 (ben-xD)
  • Add documentation for token authentication #155 (ben-xD)
  • Push notifications (activation and subscription) #140 (ben-xD)

This is a preview release of v1.2.2, which adds support for push notifications, including device activation with Ably (including device registration with APNs / FCM) and subscribing devices for push notifications. Check out the dedicated documentation (PushNotifications.md) and the example app (push_notification_service.dart) for more information.

Full Changelog

Implemented enhancements:

  • Push Notifications Device Registration (activation) and device subscription #107

Merged pull requests:

  • Add documentation for token authentication #155 (ben-xD)
  • Push notifications (activation and subscription) #140 (ben-xD)

Full Changelog

Implemented enhancements:

  • Migrate to null safety #82

Closed issues:

  • Investigate libraries that can help leverage our push implementation #142
  • Could not find method coreLibraryDesugaring() for arguments #130
  • Create code snippets for homepage (flutter) #124
  • Make this SDK ready for the first non-preview release #102
  • Activate and getting Push Notifications #54

Merged pull requests:

  • Bump ws from 5.2.2 to 5.2.3 in /example/test_harness #145 (dependabot[bot])
  • Skip 1 failing test, fix 1 failing test and schedule tests on main twice a day #144 (ben-xD)
  • Refactor large files into 1 file per class #138 (ben-xD)
  • Add instructions for M1 macs and fixing ruby fatal error for example apps #137 (ben-xD)
  • Migrate to null-safety #136 (tiholic)

Full Changelog

Merged pull requests:

  • Add support message extras and its extensions [TM2i] #123 (tiholic), fixing #11
  • add docs for rest and realtime presence #114 (tiholic)
  • REST - Channels & publishing messages #45 (tiholic)

Full Changelog

Implemented enhancements:

  • Presence subscription example #53
  • typed Message#data #35

Fixed bugs:

  • compilation error on iOS #112

Merged pull requests:

Full Changelog

With this release we are conforming our version numbering to match that used in our other client libraries. This reflects the fact that this plugin is heading towards compliance with version 1.2 of our Features Specification, also aligning with the underlying implementations of ably-cocoa and ably-java.

Fixed bugs:

  • Unhandled TimeoutException error being thrown occassionally #72

Closed issues:

  • native dart implementation #76
  • Improve our "pub points" score on pub.dev #65
  • Ably Flutter - Error building for android: target SDK less than 24 #25

Merged pull requests:

Conforming to pub.dev recommendations, following initial upload to the platform.

The first, development preview of our Flutter plugin, wrapping our iOS Cocoa and Android client libraries.

Supported functionality

  • Create a REST or Realtime instance by passing ClientOptions:
    • ClientOptions can be created by passing an API token (ClientOptions.fromKey)
    • defaultTokenParams, authCallback and logHandler are not supported yet
  • Get a REST channel and publish messages
  • Listen for Realtime connection state changes using a stream subscription
  • Listen for Realtime channel state changes using a stream subscription
  • Connect and disconnect Realtime channels
  • Attach and detach Realtime channels
  • Subscribe for messages on a Realtime channel using a stream subscription
  • Publishing messages on a Realtime channel

Merged pull requests:

* This Changelog was generated with assistance from the github_changelog_generator