Revision history for Net-Async-Matrix
0.19 2017/04/04 16:25:19
[CHANGES]
* Rebuild internals to use /sync rather than /initialSync + /events
* Add first-class exposed API to encapsulate "room state"
* Improvements to formatted message utility functions
* Added some simple one-method example scripts
* Support sending and receiving m.read receipts
* Configurable amount of initial backlog to request from homeserver
at first sync
* Have $state->members only return non-"leave" state members
* Support monospace tags in build_formatted_message
* Added ->convert_mxc_url
0.18 2015/07/22 16:44:56
[CHANGES]
* Turn off HTTP pipelining by default
* Include the Matrix user_id in the Notifier name, for logging
identification
[BUGFIXES]
* Placate synapse bug involving duplicate rooms in initialSync result
* Use JSON::MaybeXS also in unit tests
0.17 2015/04/30 16:07:30
[CHANGES]
* Configurable longpoll timeout
* Give Rooms a startup future so users can await the initialSync of a
room
* Allow message sending using transaction IDs
* Use JSON::MaybeXS so we have a chance of faster JSON parsing
[BUGFIXES]
* Don't crash if ->stop is called twice
* Avoid a race condition if a new room event arrives before we finish
the room initialSync
* Fix to optional dependency in test skip logic
* Ensure that ->stop/re->start doesn't crash
0.16 2015/02/18 20:08:08
[CHANGES]
* Support m.notice and the various attachment types (m.file, audio,
video) in bundled client.pl
* Added ->upload method
0.15 2015/02/03 16:33:49
[CHANGES]
* Add an option to disable the evenstream for the case of lightweight
send-only clients
* Support m.notice
0.14 2015/01/09 19:25:06
[CHANGES]
* Support typing notifications
0.13 2014/12/10 17:08:42
[CHANGES]
* Initial start at some unit tests
[BUGFIXES]
* 'use URI' since it's needed
* Clear the (global and room) initialSync futures if the operation
fails so that the next call will re-attempt it
0.12 2014/12/02 15:50:18
[CHANGES]
* Cope with new m.room.power_levels event format
* Allow applications to handle new/unrecognised events by adding
'on_unknown_events' event
[BUGFIXES]
* Don't emit rich formatted messages if there are no actual
formatting tags set on the String::Tagged instance
0.11 2014/11/14 18:25:06
[CHANGES]
* Support formatted messages in the "org.matrix.custom.html" format
by conversion to/from String::Tagged::Formatting instances
* Display formatted messages and image URLs in the client
0.10 2014/11/04 16:15:31
[CHANGES]
* Extracted 'make_room' as a subclassable method
* Use new Net::Async::HTTP 0.36 ability to store SSL parameters
* Pass $event as another param in on{_back,}_message so that new
timestamp API is visible
[BUGFIXES]
* Declare correct version of IaNotifier in Build.PL
* Not all '/register' alternatives will have 'stages'
* Fix to ->join_room ensuring that $room itself is always returned
0.09 2014/10/07 18:05:58
[CHANGES]
* Many more events are handled and reported via on_state:
+ m.room.aliases
+ m.room.join_rules
+ m.room.*_level
* Added ability to send invites and an event for incoming invites
* Room membership change events now also include the member making
the change as well as the member the change is about
* Allow setting room names and topics, adding and removing aliases,
and changing member and room power levels
[BUGFIXES]
* Fetch full room initial state on join or create before invoking
on_state_synced event
0.08 2014/09/24 17:09:50
[CHANGES]
* Added $room->joined_members, to allow filtering of other states
(invitees, kicks/bans)
* Fix ->register for new Registration API, including multi-stage
flows
* Added $room->leave
* Client improvements
+ per-room commands: /me and /leave
+ display a user total count on the user list for a room
0.07 2014/09/22 17:05:01
[CHANGES]
* Support /register Matrix API with user_id + password
* Fix on_membership event argument order to match on_state_change
0.06 2014/09/19 17:35:40
[CHANGES]
* New room event model to handle back-pagination as well as forward
events
* Support room names and topics
* Much improvement to 'client.pl' - nicer formatting, room topics,
put member joins/leaves/renames in the event log
* Support /login Matrix API with user_id + password
0.05 2014/09/10 11:25:22
[CHANGES]
* Split room 'on_member' events into separate events for membership
vs. presence
* Various neatenings and improvements in included 'client.pl' script
[BUGFIXES]
* Apply a timeout for longpoll so we don't end up waiting forever
* Invoke ->log method of containing $matrix object, not toplevel
main::log()
0.04 2014/09/04 18:10:00
[CHANGES]
* Many and various improvements to the display of the sample client
* Added 'on_synced_*' events to Room objects, removed 'on_room_synced'
from Matrix object
0.03 2014/09/03 16:30:54
[CHANGES]
* Many more updates for current Matrix API
* Split 'on_room_add' into on_room_new + on_room_synced events
* Support SSL
0.02 2014/08/27 19:30:34
[CHANGES]
* Updates for latest Matrix REST API
* ->create_room to return a new Room object
* Document the user and membership structs
* Initial sync of rooms when joining
* Don't store room alias names
* Added $room->members
* Allow setting default on_room_* event handlers
[BUGFIXES]
* Remember to fill in request content body of event stream requests,
so wrappers around NaHTTP still see it
0.01 2014/08/23 10:29:11
First version, released on an unsuspecting world.