Releases: matrix-org/matrix-python-sdk
v0.4.0
This is a new release to address the incompatibility between matrix-python v0.3.2 and Synapse v1.38.0+. See #320 for the full details.
Changes since v0.3.2:
-
Experimental support for encrypted rooms has been implemented. Note that
the functionality is disabled by default, but can be enabled by first
installing the nativelibolm
library (v3.0.0+), then the
encryption-related python dependencies with:pip install matrix-client[e2e]
-
Add an option (
use_authorization_header
) for sending auth tokens using the HTTP Authorization
header instead of theaccess_token
query parameter. -
Add the ability to set the room name and whether room federation is allowed with
create_room()
. -
Catch MissingSchema errors that could be raised by the http library
(see issue #221 for details). -
Add
urllib3
as an explicit dependency. -
Include the SDK version in the User Agent of requests.
-
Speed up membership handling code in rooms.
-
Use lexicographical sort to room displayname calculation.
-
Add a new method,
whoami
, for determining the Matrix ID of the
currently authenticated user. -
Better support for global vs. per-room display names.
-
Better handling of users who lack a display name.
-
Add support for specifying a filename when uploading media.
-
Numerous fixes to the tests.
v0.3.2
User-facing changes since v0.2.0:
- Can now set join_rules and guest_access for rooms #174
- Fix crash of listener thread for HTTP errors <500 #183
- Deprecate getter and setter methods #196
- Fix exception when retrieving avatar that doesn't exist #202
- Fix ignoring state events coming down timeline in /sync #199
- Add Api endpoints necessary for e2ee #209 #212 #222
- Make full_state sync parameter actually work #227
- Fix room member list getting corrupted any time display_name property
retrieved #231 - Combine login methods to single method with kwargs #229
- Allow specifying device_id on login #229
- Fix many potential bugs especially in cases with multiple MatrixHttpApi
- objects #236
A lot of the things above might seem inconsequential, but many of these were
rather hideous bugs. Stability of the sdk should be greatly improved after this
update. After updating, please make sure to update your code to deal with
deprecation warnings; deprecated functionality will likely be replaced in the
next release.
Many thanks to @Zil0, @Matrixcoffee, @DylanVanAssche, @Androbin, @pik,
@AnothonyOfSeattlle, @Half-Shot, and @pcppcp for all their help with this
release.
v0.2.0
Changes since last release (roughly in order of importance):
- Workaround added for matrix-org/synapse#3054 issue. #189
- SDK uses requests session now. #186
- SDK now issues warnings for deprecated flows. #173
- Documentation Makefile fixed to error properly on systems without
sphinx. #185 - Example tweaked for readbility. #188
Thanks to @eternal-flame-AD, @ulope, @Androbin, @ntolazzi, and
@yuvallanger for their work on this SDK.
v0.1.0
There has been 93 commits since last release. Here are the most significant changes.
MatrixClient:
- b1c46ce Send file method.
- 3b094e6 b544a46 Pass exception handler to listening methods.
- 1dc2760 Support guest registration.
- 3039e32 fb73ee9 Redact room message.
- c5f360f Get human readable room display name.
- 7a3c04d c74bb10 Add support for power levels.
- 53add77 3bdc7fa Add event callbacks for presence updates.
- 3446d68 Handler for "m.room.member" event.
- 06ba97e Fix bad_sync_timeout to be a reasonable starting value.
- 49284e4 Handle case where user leaves room in _process_state_events.
API:
- b03625b Use r0 path by default.
- 3eb42d5 Add timestamps support.
- aaef411 Add forget_room method.
- 997eb99 Add identity attribute.
- 99aa557 Add handling for exceptions raised by requests library.
Many thanks to @rlp10, @Half-Shot, @non-Jedi, @mytbk, @simonklb, @pik, @psaavedra, @WolfeCub, @delijati, @Cadair, @jfrederickson, @anewusername, @rrigby, @ara4n, @lordievader and @Matrixcoffee. And a special thanks to @Zil0 for putting together this changelog.
v0.0.6
The major changes are (we have ~90 odd commits between this and 0.0.5v, so this is just a highlighted list.
MatrixClient:
- 7d76a1a Add get/add/delete endpoints for tags
- 81e79d1 Add account_data global and room specific endpoints
- 72c83d8 f87721b Add methods for setting the room name and topic
- 2b37ef0 7070ee5 Add methods for getting and setting room aliases
- 1429e20 Add logout functionality
- d09f700 Send audio/video methods
- 172a7de Add support for sending location events
- ad330ae Add support for ephemeral events
- 34a5910 Add support for sending html formatted messages
- 8ec9230 Allow setting a displayname & avatar for a user per-room.
API:
- eb6f27b Retry requests on ratelimit.
- 710455b Get room id from alias
- de49e17 Get membership event of a user from a room.
- b741c46 Add get_filter, create_filter methods to api
Samples:
Thanks to @pik, @galpressman, @JaniM, @anewusername, @gufogio, @RojavaCrypto, @sim6 and @enckse
v0.0.5
MatrixClient:
- 7d53b76 Specify a user_id when giving an existing token to the constructor.
- cd610fc Listen in for room events using client listeners.
- a150a79 Send any type of state event to a room.
- abb137b Added listeners for join and invite rooms.
- 1228a7a Set type filters on listeners and listen for state events.
API:
- 5de3ab7 Fixed issue where the transaction id would not be unique
Thanks to @dovf, @sargon, @widhx, @SShrike and @gergelypolonkai for contributing.
v0.0.4
Changes:
- Documentation can now be generated with sphinx
- Added documentation for matrix_client/client.py
- Basic tests written
API
- Fixed issue with urlpase ( #27 )
- Deprecated /initialSync and /events
- Added support for /sync
- Fixed typo in media_upload
- Fixed c&p typo in set_avatar_url
MatrixClient
- Will no longer crash on a failed sync, and will backoff if a failure occurs.
- Rooms now have a limited event history to avoid eating away at memory
- New helper function
get_friendly_name
for rooms.