Skip to content

2.0.0

Compare
Choose a tag to compare
@owenpearson owenpearson released this 29 Jun 17:18
· 139 commits to main since this release
2e40e1b

New ably-python realtime client: This new release features our first ever python realtime client! Currently the realtime client only supports realtime message subscription. Check out the README for usage examples. There have been some minor breaking changes from the 1.2 version, please consult the migration guide for instructions on how to upgrade to 2.0.

Full Changelog

  • refactor!: add mandatory version param to Rest.request #500
  • bump api_version to 2.0, add DeviceDetails.deviceSecret #507
  • Include cause in AblyException.str result #508
  • feat!: use api v3 and untyped stats #505
  • Implement add_request_ids client option #399
  • Improve logger output upon disconnection #492
  • Fix an issue where in some cases the client was unable to recover after loss of connectivity #493
  • Remove soft-deprecated APIs #482
  • Improve realtime client typings #476
  • Improve REST client typings #477
  • Stop raising KeyError when releasing a channel which doesn't exist #474
  • Allow token auth methods for realtime constructor #425
  • Send AUTH protocol message when Auth.authorize called on realtime client #427
  • Reauth upon inbound AUTH protocol message #428
  • Handle connection request failure due to token error #445
  • Handle token ERROR response to a resume request #444
  • Handle DISCONNECTED messages containing token errors #443
  • Pass clientId as query string param when opening a new connection #449
  • Validate clientId in ClientOptions #448
  • Apply Auth#clientId only after a realtime connection has been established #409
  • Channels should transition to INITIALIZED if Connection.connect called from terminal state #411
  • Calling connect while CLOSING should start connect on a new transport #410
  • Handle realtime channel errors #455
  • Resend protocol messages for pending channels upon resume #347
  • Attempt to resume connection when disconnected unexpectedly #346
  • Handle CONNECTED messages once connected #345
  • Implement maxIdleInterval #344
  • Implement realtime connectivity check #343
  • Use fallback realtime hosts when encountering an appropriate error #342
  • Add fallbackHosts client option for realtime clients #341
  • Implement connectionStateTtl #340
  • Implement disconnectedRetryTimeout #339
  • Handle recoverable connection opening errors #338
  • Implement channelRetryTimeout #442
  • Queue protocol messages when connection state is CONNECTING or DISCONNECTED #418
  • Propagate connection interruptions to realtime channels #417
  • Spec compliance: Realtime.connect should be sync #413
  • Emit update event on additional ATTACHED message #386
  • Set the ATTACH_RESUME flag on unclean attach #385
  • Handle fatal resume error #384
  • Handle invalid resume response #383
  • Handle clean resume response #382
  • Send resume query param when reconnecting within connectionStateTtl #381
  • Immediately reattempt connection when unexpectedly disconnected #380
  • Clear connection state when connectionStateTtl elapsed #379
  • Refactor websocket async tasks into WebSocketTransport class #373
  • Send version transport param #368
  • Clear Connection.error_reason when Connection.connect is called #367
  • Fix a bug with realtime_host configuration #358
  • Create Basic Api Key connection #311
  • Send Ably-Agent header in realtime connection #314
  • Close client service #315
  • Implement EventEmitter interface on Connection #316
  • Finish tasks gracefully on failed connection #317
  • Implement realtime ping #318
  • Realtime channel attach/detach #319
  • Add auto_connect implementation and client option #325
  • RealtimeChannel subscribe/unsubscribe #326
  • ConnectionStateChange #327
  • Improve realtime logging #330
  • Update readme with realtime documentation [#334](334](#334)
  • Use string-based enums #351
  • Add environment client option for realtime #335
  • EventEmitter: allow signatures with no event arg #350