diff options
-rw-r--r-- | CHANGELOG.md | 34 | ||||
-rw-r--r-- | README.md | 2 | ||||
-rw-r--r-- | mix.exs | 2 |
3 files changed, 36 insertions, 2 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index fd29e5d..5857b3e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,37 @@ +0.3.0 +===== + +Breaking changes: + +- The `Polyjuice.Client` module has been reworked. + - Rather than creating a `Polyjuice.Client` struct, + `Polyjuice.Client.start_link` should be called to start the client, and + `Polyjuice.Client.API.stop` should be called to stop it. Read the + documentation for `Polyjuice.Client.start_link` for more information. + - The sync process is started automatically (but can be disabled). + - A new client does not need to be created when the access token changes + (e.g. on login) + - A new `Polyjuice.Client.LowLevel` module has been added for situations + where the old `Polyjuice.Client` would work better. +- The `Polyjuice.Client.Endpoint.HttpSpec` struct now takes `path` and `query` + parameters rather than a `url` parameter. Several helper methods have been + added for creating the structs. +- `Polyjuice.Client.Endpoint.Proto.http_spec/1` method no longer takes a + `base_url` parameter. +- `prefix_r0` and `prefix_unstable` have been moved from `Polyjuice.Client` to + `Polyjuice.Client.Endpoint.HttpSpec`. +- Endpoints that used to return `{:ok}` now return `:ok` instead. + +Features: + +- Add media upload/download methods. (`Polyjuice.Client.Media`) +- Room requests are queued, to ensure that messages are sent in order. +- New methods for leaving/forgetting rooms. (`Polyjuice.Client.Room.leave` and + `Polyjuice.Client.Room.forget`) +- The `Polyjuice.Client` client sends events on login and logout. +- Add methods for server discovery using `.well-known` + (`Polyjuice.Client.WellKnown`) + 0.2.3 ===== @@ -10,7 +10,7 @@ dependencies in `mix.exs`: ```elixir def deps do [ - {:polyjuice_client, "~> 0.1.0"} + {:polyjuice_client, "~> 0.3.0"} ] end ``` @@ -5,7 +5,7 @@ defmodule PolyjuiceClient.MixProject do [ app: :polyjuice_client, description: "Client library for the Matrix.org communications protocol", - version: "0.2.3", + version: "0.3.0", elixir: "~> 1.7", start_permanent: Mix.env() == :prod, deps: deps(), |