This project is mirrored from https://github.com/ananace/ruby-matrix-sdk.git.
Pull mirroring updated .
-
v2.7.0d406c66f · ·
Version 2.7.0 Changes since 2.6.0; - Added a bot subsystem + DSL - [An example](examples/bot_api.rb) can be found in the examples folder - Added additional useful helpers for Room and User - Fixed Client.new_for_domain - Improved the handling of MXIDs as strings - Improved handling of caches for rooms - Improved Client shutdown when using Client#start_listener_thread - Improved account data handling, with caches on both Client and Room level
-
v2.6.03b1ad4ab · ·
Version 2.6.0 Changes since 2.5.0; - Added some multi-thread usage support to the API (create your API/client with `threadsafe: :multithread/true/false`) The API will currently default to running with multi-threaded requests. In case your application is single-threaded - or never performs requests from multiple threads - then you can set `threadsafe: true/false` to support connection reuse. - Changed room finding to ignore non-canonical aliases by default - Improved room alias handling - Improved Ruby 3.0+ support - Improved debug output by supporting PP (Ruby pretty print) on all MatrixSdk objects
-
v2.5.0588e881c · ·
Version 2.5.0 Changes since 2.4.0; - Added preliminary support for the Matrix v1.1 `client/v3` API - Added some support for knocking rooms - Added mutex synchronization on API requests to avoid some threading issues - Fixed error on attempting to skip cache for certain requests - Fixed inconsistency in MXID typing for the Client abstraction - Fixed missed autoloader entries for errors - Fixed some potential issues arising from broken user-provided state data
-
v2.3.0e699d417 · ·
Version2.3.0 Changed since 2.2.0; - Added support for Ruby 3.0 (#15) - Added support for requests against the Synapse admin API - Added helper methods for checking and changing user power levels - Added a proper caching system for room data - Fixed argument error in `#get_room_messages` - Removed unfinished and broken AS abstraction
-
v2.1.31de8ec02 · ·
Version 2.1.3 Changed since 2.1.2; - Added separate state event handler as Client#on_state_event - Changed Client sync interval to by-default run at full speed - Fixed state events being sent twice if included in both timeline and state of a sync - Improved error reporting of broken 200 responses - Improved event handlers for rooms, to not depend on a specific room object instance anymore
-
v2.1.23129e8b3 · ·
Version 2.1.2 Changes since 2.1.1: - Added method for reading complete member lists for rooms, improves the CS spec adherence - Added test for state events - Fixed state event handler for rooms not actually passing events - Fixed Api#new_for_domain using a faulty URI in certain cases
-
v2.1.12be5ee9f · ·
Version 2.1.1 Changes since 2.1.0; - Fixed a crash if state event content is null (#11) - Fixed an uninitialized URI constant exception when requiring only the main library file - Fixed the Api#get_pushrules method missing an ending slash in the request URI - Fixed discovery code for client/server connections based on domain
-
v2.1.0355ae114 · ·
Version 2.1.0 Changes since 2.0.1; - Added unique query IDs as well as duration in API debug output, to make it easier to track long requests - Finished up MSC support, gotten sync over SSE working flawlessly - Exposed the #listen_forever method in the client abstraction - Fixed room access methods
-
v2.0.0f7dc0f52 · ·
Version 2.0.0 **NB**, this release includes backwards-incompatible changes. Changes since 1.5.0; - Changes room state lookup to separate specific state lookups from full state retrieval. This will require changes in client code where `#get_room_state` is called to retrieve all state, as it now requires a state key. For retrieving full room state, `#get_room_state_all` is now the method to use. - Changes some advanced parameters to named parameters, ensure your code is updated if it makes use of them - Fixes SSL verification to actually verify certs (#9) - Adds multiple CS API endpoints - Adds `:room_id` key to all room events - Adds `:self` as a valid option to the client abstraction's `#get_user` method - Separates homeserver part stringification for MXIDs - Exposes some previously private client abstraction methods (`#ensure_room`, `#next_batch`) for easier bot usage - Changes room abstraction member lookups to use `#get_room_joined_members`, reducing transferred data amounts - Fixes debug print of methods that return arrays (e.g. CS `/room/{id}/state`)
-
v1.3.09e0819c8 · ·
Version 1.3.0 Changes since 1.2.1; - Improved response handling to add accessors recursively - Removed MatrixSdk extensions from the global scope, if you've been using these in your own code you must now remember to `extend MatrixSdk::Extensions` in order for them to be available.
-
v1.2.01acda6ca · ·
Version 1.2.0 Changes since 1.1.1 - Added getters and setters for more specced room state - Fixed handling of the timeout parameter for the sync endpoint (#7) - Additionally also now allows for running sync with a nil timeout - Cleaned up the CS protocol implementation slightly, removing a mutation that's not supposed to be there - Cleaned up the gemspec slightly, no longer uses `git ls-files` - Added support for explicitly setting proxy config for API
-
v1.1.0b3dc23e0 · ·
Version 1.1.0 Changes since 1.0.1; - Changed the create_room method in the client abstraction to automatically store any created rooms - Added more CS API endpoints, exposed as #get_joined_rooms, #get_public_rooms, and #username_available? - Added a method to the client abstraction to reload all joined rooms - Added a method to the client abstraction to get a list of all public rooms - Added avatar tracking to rooms in the client abstraction - Added lazy loading of join rules and guest access for rooms in the client abstraction - Added granular error classes like MatrixSdk::MatrixNotFoundError to make error handling easier - Improved the CS API endpoint for room state retrieval - Fixed an issue in the client abstraction where it would fail to load aliases if multiple HSes have applied aliases to a room Note that this release adds a series of new error classes, subclassed off of MatrixSdk::MatrixRequestError, these are; - MatrixNotAuthorizedError for error 401 - MatrixForbiddenError for error 403 - MatrixNotFoundError for error 404 - MatrixConflictError for error 409 - MatrixTooManyRequestsError for error 429