Releases: ananace/ruby-matrix-sdk
Releases · ananace/ruby-matrix-sdk
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
Version 2.0.1
Changes since 2.0.0;
- Add code for handling non-final MSC's in protocols
- Currently implementing clients parts of MSC2018 for Sync over Server Sent Events
Version 2.0.0
NB, this release includes backwards-incompatible changes.
Changes since 1.5.0;
- Changed 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. - Changed some advanced parameters to named parameters, ensure your code is updated if it makes use of them
- Fixed SSL verification to actually verify certs (#9)
- Added multiple CS API endpoints
- Added
:room_id
key to all room events - Added
:self
as a valid option to the client abstraction's#get_user
method - Separated homeserver part stringification for MXIDs
- Exposed some previously private client abstraction methods (
#ensure_room
,#next_batch
) for easier bot usage - Changed room abstraction member lookups to use
#get_room_joined_members
, reducing transferred data amounts - Fixed debug print of methods that return arrays (e.g. CS
/room/{id}/state
)
Version 1.5.0
Changes since 1.4.0;
- Added error event to the client abstraction, for handling errors in the background listener
- Added an
open_timeout
setter to the API - Fixed an overly aggressive filter for event handlers
Version 1.4.0
Changes since 1.3.0;
- Added the option to change the logger globally or per-object
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.
Version 1.2.1
Changes since 1.2.0;
- Fixed mxc download URL generation
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
Version 1.1.1
Changes since 1.1.0;
- Fixed a faulty include which broke the single implemented S2S endpoint
- Replaced the room name handling with a cached lazy loading system
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