Skip to content

Releases: matrix-org/matrix-python-sdk

v0.4.0

26 Jul 12:03
v0.4.0
Compare
Choose a tag to compare

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 native libolm 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 the access_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

22 Jun 02:25
v0.3.2
f153684
Compare
Choose a tag to compare

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

18 Apr 17:18
v0.2.0
23dcd9a
Compare
Choose a tag to compare

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

27 Mar 01:22
v0.1.0
c4cab63
Compare
Choose a tag to compare

There has been 93 commits since last release. Here are the most significant changes.

MatrixClient:

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

10 Mar 17:32
Compare
Choose a tag to compare

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

14 Oct 12:21
Compare
Choose a tag to compare

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

10 Aug 13:50
Compare
Choose a tag to compare

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.

v0.0.3

04 May 18:37
Compare
Choose a tag to compare
  • Python 3 support has been added
  • Added user objects
    • Getters/Setters for display name and avatars
  • Uploads and media events are now supported.
  • Samples are now included