UNPKG

131 kBMarkdownView Raw
1Changes in [2.4.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.4.2) (2019-10-18)
2================================================================================================
3[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.4.2-rc.1...v2.4.2)
4
5 * No changes since v2.4.2-rc.1
6
7Changes in [2.4.2-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.4.2-rc.1) (2019-10-09)
8==========================================================================================================
9[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.4.1...v2.4.2-rc.1)
10
11 * Log state of Olm sessions
12 [\#1047](https://github.com/matrix-org/matrix-js-sdk/pull/1047)
13 * Add method to get access to all timelines
14 [\#1048](https://github.com/matrix-org/matrix-js-sdk/pull/1048)
15
16Changes in [2.4.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.4.1) (2019-10-01)
17================================================================================================
18[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.4.0...v2.4.1)
19
20 * Upgrade deps
21 [\#1046](https://github.com/matrix-org/matrix-js-sdk/pull/1046)
22 * Ignore crypto events with no content
23 [\#1043](https://github.com/matrix-org/matrix-js-sdk/pull/1043)
24
25Changes in [2.4.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.4.0) (2019-09-27)
26================================================================================================
27[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.4.0-rc.1...v2.4.0)
28
29 * Clean Yarn cache during release
30 [\#1045](https://github.com/matrix-org/matrix-js-sdk/pull/1045)
31
32Changes in [2.4.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.4.0-rc.1) (2019-09-25)
33==========================================================================================================
34[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.3.2...v2.4.0-rc.1)
35
36 * Remove id_server from creds for interactive auth
37 [\#1044](https://github.com/matrix-org/matrix-js-sdk/pull/1044)
38 * Remove IS details from requestToken to HS
39 [\#1041](https://github.com/matrix-org/matrix-js-sdk/pull/1041)
40 * Add support for sending MSISDN tokens to alternate URLs
41 [\#1040](https://github.com/matrix-org/matrix-js-sdk/pull/1040)
42 * Add separate 3PID add and bind APIs
43 [\#1038](https://github.com/matrix-org/matrix-js-sdk/pull/1038)
44 * Bump eslint-utils from 1.4.0 to 1.4.2
45 [\#1037](https://github.com/matrix-org/matrix-js-sdk/pull/1037)
46 * Handle WebRTC security errors as non-fatal
47 [\#1036](https://github.com/matrix-org/matrix-js-sdk/pull/1036)
48 * Check for r0.6.0 support in addition to unstable feature flags
49 [\#1035](https://github.com/matrix-org/matrix-js-sdk/pull/1035)
50 * Update room members on member event redaction
51 [\#1030](https://github.com/matrix-org/matrix-js-sdk/pull/1030)
52 * Support hidden read receipts
53 [\#1028](https://github.com/matrix-org/matrix-js-sdk/pull/1028)
54 * Do 3pid lookups in lowercase
55 [\#1029](https://github.com/matrix-org/matrix-js-sdk/pull/1029)
56 * Add Synapse admin functions for deactivating a user
57 [\#1027](https://github.com/matrix-org/matrix-js-sdk/pull/1027)
58 * Fix addPendingEvent with pending event order == chronological
59 [\#1026](https://github.com/matrix-org/matrix-js-sdk/pull/1026)
60 * Add AutoDiscovery.getRawClientConfig() for easy .well-known lookups
61 [\#1024](https://github.com/matrix-org/matrix-js-sdk/pull/1024)
62 * Don't convert errors to JSON if they are JSON already
63 [\#1025](https://github.com/matrix-org/matrix-js-sdk/pull/1025)
64 * Send id_access_token to HS for use in proxied IS requests
65 [\#1022](https://github.com/matrix-org/matrix-js-sdk/pull/1022)
66 * Clean up JSON handling in identity server requests
67 [\#1023](https://github.com/matrix-org/matrix-js-sdk/pull/1023)
68 * Use the v2 (hashed) lookup for identity server queries
69 [\#1021](https://github.com/matrix-org/matrix-js-sdk/pull/1021)
70 * Add getIdServer() & doesServerRequireIdServerParam()
71 [\#1018](https://github.com/matrix-org/matrix-js-sdk/pull/1018)
72 * Make requestToken endpoints work without ID Server
73 [\#1019](https://github.com/matrix-org/matrix-js-sdk/pull/1019)
74 * Fix setIdentityServer
75 [\#1016](https://github.com/matrix-org/matrix-js-sdk/pull/1016)
76 * Change ICE fallback server and make fallback opt-in
77 [\#1015](https://github.com/matrix-org/matrix-js-sdk/pull/1015)
78 * Throw an exception if trying to do an ID server request with no ID server
79 [\#1014](https://github.com/matrix-org/matrix-js-sdk/pull/1014)
80 * Add setIdentityServerUrl
81 [\#1013](https://github.com/matrix-org/matrix-js-sdk/pull/1013)
82 * Add matrix base API to report an event
83 [\#1011](https://github.com/matrix-org/matrix-js-sdk/pull/1011)
84 * Fix POST body for v2 IS requests
85 [\#1010](https://github.com/matrix-org/matrix-js-sdk/pull/1010)
86 * Add API for bulk lookup on the Identity Server
87 [\#1009](https://github.com/matrix-org/matrix-js-sdk/pull/1009)
88 * Remove deprecated authedRequestWithPrefix and requestWithPrefix
89 [\#1000](https://github.com/matrix-org/matrix-js-sdk/pull/1000)
90 * Add API for checking IS account info
91 [\#1007](https://github.com/matrix-org/matrix-js-sdk/pull/1007)
92 * Support rewriting push rules when our internal defaults change
93 [\#1006](https://github.com/matrix-org/matrix-js-sdk/pull/1006)
94 * Upgrade dependencies
95 [\#1005](https://github.com/matrix-org/matrix-js-sdk/pull/1005)
96
97Changes in [2.3.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.3.2) (2019-09-16)
98================================================================================================
99[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.3.2-rc.1...v2.3.2)
100
101 * [Release] Fix addPendingEvent with pending event order == chronological
102 [\#1034](https://github.com/matrix-org/matrix-js-sdk/pull/1034)
103
104Changes in [2.3.2-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.3.2-rc.1) (2019-09-13)
105==========================================================================================================
106[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.3.1...v2.3.2-rc.1)
107
108 * Synapse admin functions to release
109 [\#1033](https://github.com/matrix-org/matrix-js-sdk/pull/1033)
110 * [To Release] Add matrix base API to report an event
111 [\#1032](https://github.com/matrix-org/matrix-js-sdk/pull/1032)
112
113Changes in [2.3.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.3.1) (2019-09-12)
114================================================================================================
115[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.3.1-rc.1...v2.3.1)
116
117 * No changes since rc.1
118
119Changes in [2.3.1-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.3.1-rc.1) (2019-09-11)
120==========================================================================================================
121[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.3.0...v2.3.1-rc.1)
122
123 * Update room members on member event redaction
124 [\#1031](https://github.com/matrix-org/matrix-js-sdk/pull/1031)
125
126Changes in [2.3.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.3.0) (2019-08-05)
127================================================================================================
128[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.3.0-rc.1...v2.3.0)
129
130 * [release] Support rewriting push rules when our internal defaults change
131 [\#1008](https://github.com/matrix-org/matrix-js-sdk/pull/1008)
132
133Changes in [2.3.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.3.0-rc.1) (2019-07-31)
134==========================================================================================================
135[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.2.0...v2.3.0-rc.1)
136
137 * Add support for IS v2 API with authentication
138 [\#1002](https://github.com/matrix-org/matrix-js-sdk/pull/1002)
139 * Tombstone bugfixes
140 [\#1001](https://github.com/matrix-org/matrix-js-sdk/pull/1001)
141 * Support for MSC2140 (terms of service for IS/IM)
142 [\#988](https://github.com/matrix-org/matrix-js-sdk/pull/988)
143 * Add a request method to /devices
144 [\#994](https://github.com/matrix-org/matrix-js-sdk/pull/994)
145
146Changes in [2.2.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.2.0) (2019-07-18)
147================================================================================================
148[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.2.0-rc.2...v2.2.0)
149
150 * Upgrade lodash dependencies
151
152Changes in [2.2.0-rc.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.2.0-rc.2) (2019-07-12)
153==========================================================================================================
154[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.2.0-rc.1...v2.2.0-rc.2)
155
156 * Fix regression from 2.2.0-rc.1 in request to /devices
157 [\#995](https://github.com/matrix-org/matrix-js-sdk/pull/995)
158
159Changes in [2.2.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.2.0-rc.1) (2019-07-12)
160==========================================================================================================
161[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.1.1...v2.2.0-rc.1)
162
163 * End the verification timer when verification is done
164 [\#993](https://github.com/matrix-org/matrix-js-sdk/pull/993)
165 * Stabilize usage of stably stable APIs (in a stable way)
166 [\#990](https://github.com/matrix-org/matrix-js-sdk/pull/990)
167 * Expose original_event for /relations
168 [\#987](https://github.com/matrix-org/matrix-js-sdk/pull/987)
169 * Process ephemeral events outside timeline handling
170 [\#989](https://github.com/matrix-org/matrix-js-sdk/pull/989)
171 * Don't accept any locally known edits earlier than the last known server-side
172 aggregated edit
173 [\#986](https://github.com/matrix-org/matrix-js-sdk/pull/986)
174 * Get edit date transparently from server aggregations or local echo
175 [\#984](https://github.com/matrix-org/matrix-js-sdk/pull/984)
176 * Add a function to flag keys for backup without scheduling a backup
177 [\#982](https://github.com/matrix-org/matrix-js-sdk/pull/982)
178 * Block read marker and read receipt from advancing into pending events
179 [\#981](https://github.com/matrix-org/matrix-js-sdk/pull/981)
180 * Upgrade dependencies
181 [\#977](https://github.com/matrix-org/matrix-js-sdk/pull/977)
182 * Add default push rule to ignore reactions
183 [\#976](https://github.com/matrix-org/matrix-js-sdk/pull/976)
184 * Fix exception whilst syncing
185 [\#979](https://github.com/matrix-org/matrix-js-sdk/pull/979)
186 * Include the error object when raising Session.logged_out
187 [\#975](https://github.com/matrix-org/matrix-js-sdk/pull/975)
188
189Changes in [2.1.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.1.1) (2019-07-11)
190================================================================================================
191[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.1.0...v2.1.1)
192
193 * Process emphemeral events outside timeline handling
194 [\#989](https://github.com/matrix-org/matrix-js-sdk/pull/989)
195
196Changes in [2.1.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.1.0) (2019-07-08)
197================================================================================================
198[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.1.0-rc.1...v2.1.0)
199
200 * Fix exception whilst syncing
201 [\#979](https://github.com/matrix-org/matrix-js-sdk/pull/979)
202
203Changes in [2.1.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.1.0-rc.1) (2019-07-03)
204==========================================================================================================
205[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.0.1...v2.1.0-rc.1)
206
207 * Handle self read receipts for fixing e2e notification counts
208 [\#974](https://github.com/matrix-org/matrix-js-sdk/pull/974)
209 * Add redacts field to event.toJSON
210 [\#973](https://github.com/matrix-org/matrix-js-sdk/pull/973)
211 * Handle associated event send failures
212 [\#972](https://github.com/matrix-org/matrix-js-sdk/pull/972)
213 * Remove irrelevant debug line from timeline handling
214 [\#971](https://github.com/matrix-org/matrix-js-sdk/pull/971)
215 * Handle relations in encrypted rooms
216 [\#969](https://github.com/matrix-org/matrix-js-sdk/pull/969)
217 * Relations endpoint support
218 [\#967](https://github.com/matrix-org/matrix-js-sdk/pull/967)
219 * Disable event encryption for reactions
220 [\#968](https://github.com/matrix-org/matrix-js-sdk/pull/968)
221 * Change the known safe room version to version 4
222 [\#966](https://github.com/matrix-org/matrix-js-sdk/pull/966)
223 * Check for lazy-loading support in the spec versions instead
224 [\#965](https://github.com/matrix-org/matrix-js-sdk/pull/965)
225 * Use camelCase instead of underscore
226 [\#963](https://github.com/matrix-org/matrix-js-sdk/pull/963)
227 * Time out verification attempts after 10 minutes of inactivity
228 [\#961](https://github.com/matrix-org/matrix-js-sdk/pull/961)
229 * Don't handle key verification requests which are immediately cancelled
230 [\#962](https://github.com/matrix-org/matrix-js-sdk/pull/962)
231
232Changes in [2.0.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.0.1) (2019-06-19)
233================================================================================================
234[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.0.1-rc.2...v2.0.1)
235
236 No changes since rc.2
237
238Changes in [2.0.1-rc.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.0.1-rc.2) (2019-06-18)
239==========================================================================================================
240[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.0.1-rc.1...v2.0.1-rc.2)
241
242 * return 'sending' status for an event that is only locally redacted
243 [\#960](https://github.com/matrix-org/matrix-js-sdk/pull/960)
244 * Key verification request fixes
245 [\#954](https://github.com/matrix-org/matrix-js-sdk/pull/954)
246 * Add flag to force saving sync store
247 [\#956](https://github.com/matrix-org/matrix-js-sdk/pull/956)
248 * Expose the inhibit_login flag to register
249 [\#953](https://github.com/matrix-org/matrix-js-sdk/pull/953)
250 * Support redactions and relations of/with unsent events.
251 [\#947](https://github.com/matrix-org/matrix-js-sdk/pull/947)
252
253Changes in [2.0.1-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.0.1-rc.1) (2019-06-12)
254==========================================================================================================
255[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v2.0.0...v2.0.1-rc.1)
256
257 * Fix content uploads for modern browsers
258 [\#952](https://github.com/matrix-org/matrix-js-sdk/pull/952)
259 * Don't overlap auth submissions with polls
260 [\#951](https://github.com/matrix-org/matrix-js-sdk/pull/951)
261 * Add funding details for GitHub sponsor button
262 [\#945](https://github.com/matrix-org/matrix-js-sdk/pull/945)
263 * Fix backup sig validation with multiple sigs
264 [\#944](https://github.com/matrix-org/matrix-js-sdk/pull/944)
265 * Don't send another token request while one's in flight
266 [\#943](https://github.com/matrix-org/matrix-js-sdk/pull/943)
267 * Don't poll UI auth again until current poll finishes
268 [\#942](https://github.com/matrix-org/matrix-js-sdk/pull/942)
269 * Provide the discovered URLs when a liveliness error occurs
270 [\#938](https://github.com/matrix-org/matrix-js-sdk/pull/938)
271 * Encode event IDs when redacting events
272 [\#941](https://github.com/matrix-org/matrix-js-sdk/pull/941)
273 * add missing logger
274 [\#940](https://github.com/matrix-org/matrix-js-sdk/pull/940)
275 * verification: don't error if we don't know about some keys
276 [\#939](https://github.com/matrix-org/matrix-js-sdk/pull/939)
277 * Local echo for redactions
278 [\#937](https://github.com/matrix-org/matrix-js-sdk/pull/937)
279 * Refresh safe room versions when the server looks more modern than us
280 [\#934](https://github.com/matrix-org/matrix-js-sdk/pull/934)
281 * Add v4 as a safe room version
282 [\#935](https://github.com/matrix-org/matrix-js-sdk/pull/935)
283 * Disable guard-for-in rule
284 [\#933](https://github.com/matrix-org/matrix-js-sdk/pull/933)
285 * Extend loglevel logging for the whole project
286 [\#924](https://github.com/matrix-org/matrix-js-sdk/pull/924)
287 * fix(login): saves access_token and user_id after login for all login types
288 [\#930](https://github.com/matrix-org/matrix-js-sdk/pull/930)
289 * Do not try to request thumbnails with non-integer sizes
290 [\#929](https://github.com/matrix-org/matrix-js-sdk/pull/929)
291 * Revert "Add a bunch of debugging to .well-known IS validation"
292 [\#928](https://github.com/matrix-org/matrix-js-sdk/pull/928)
293 * Add a bunch of debugging to .well-known IS validation
294 [\#927](https://github.com/matrix-org/matrix-js-sdk/pull/927)
295
296Changes in [2.0.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v2.0.0) (2019-05-31)
297================================================================================================
298[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.2.0...v2.0.0)
299
300BREAKING CHANGES
301----------------
302
303 * This package now publishes in ES6 / ES2015 syntax to NPM
304 * Saves access_token and user_id after login for all login types
305 [\#932](https://github.com/matrix-org/matrix-js-sdk/pull/932)
306 * Fix recovery key encoding for base-x 3.0.5
307 [\#931](https://github.com/matrix-org/matrix-js-sdk/pull/931)
308
309Changes in [1.2.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.2.0) (2019-05-29)
310================================================================================================
311[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.2.0-rc.1...v1.2.0)
312
313
314Changes in [1.2.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.2.0-rc.1) (2019-05-23)
315==========================================================================================================
316[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.1.0...v1.2.0-rc.1)
317
318 * interactive-auth now handles requesting email tokens
319 [\#926](https://github.com/matrix-org/matrix-js-sdk/pull/926)
320 * allow access to unreplaced message content
321 [\#923](https://github.com/matrix-org/matrix-js-sdk/pull/923)
322 * Add method to retrieve replacing event
323 [\#922](https://github.com/matrix-org/matrix-js-sdk/pull/922)
324 * More logging when signature verification fails
325 [\#921](https://github.com/matrix-org/matrix-js-sdk/pull/921)
326 * Local echo for m.replace relations
327 [\#920](https://github.com/matrix-org/matrix-js-sdk/pull/920)
328 * Track relations as pending and remove when cancelled
329 [\#919](https://github.com/matrix-org/matrix-js-sdk/pull/919)
330 * Add stringify helper to summarise events when debugging
331 [\#916](https://github.com/matrix-org/matrix-js-sdk/pull/916)
332 * Message editing: filter out replacements for senders that are not the
333 original sender
334 [\#918](https://github.com/matrix-org/matrix-js-sdk/pull/918)
335 * Wait until decrypt before aggregating
336 [\#917](https://github.com/matrix-org/matrix-js-sdk/pull/917)
337 * Message editing: mark original event as replaced instead of replacing the
338 event object
339 [\#914](https://github.com/matrix-org/matrix-js-sdk/pull/914)
340 * Support for replacing message through m.replace relationship.
341 [\#913](https://github.com/matrix-org/matrix-js-sdk/pull/913)
342 * Use a short timeout for .well-known requests
343 [\#912](https://github.com/matrix-org/matrix-js-sdk/pull/912)
344 * Redaction and change events for relations
345 [\#911](https://github.com/matrix-org/matrix-js-sdk/pull/911)
346 * Add basic read path for relations
347 [\#910](https://github.com/matrix-org/matrix-js-sdk/pull/910)
348 * Add a concept of default push rules, using it for tombstone notifications
349 [\#860](https://github.com/matrix-org/matrix-js-sdk/pull/860)
350 * yarn upgrade
351 [\#907](https://github.com/matrix-org/matrix-js-sdk/pull/907)
352
353Changes in [1.1.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.1.0) (2019-05-07)
354================================================================================================
355[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.1.0-rc.1...v1.1.0)
356
357 * No Changes since rc.1
358
359Changes in [1.1.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.1.0-rc.1) (2019-04-30)
360==========================================================================================================
361[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.4...v1.1.0-rc.1)
362
363 * use the release version of olm 3.1.0
364 [\#903](https://github.com/matrix-org/matrix-js-sdk/pull/903)
365 * Use new Olm repo link in README
366 [\#901](https://github.com/matrix-org/matrix-js-sdk/pull/901)
367 * Support being fed a .well-known config object for validation
368 [\#897](https://github.com/matrix-org/matrix-js-sdk/pull/897)
369 * emit self-membership event at end of handling sync update
370 [\#900](https://github.com/matrix-org/matrix-js-sdk/pull/900)
371 * Use packages.matrix.org for Olm
372 [\#898](https://github.com/matrix-org/matrix-js-sdk/pull/898)
373 * Fix tests on develop
374 [\#899](https://github.com/matrix-org/matrix-js-sdk/pull/899)
375 * Stop syncing when the token is invalid
376 [\#895](https://github.com/matrix-org/matrix-js-sdk/pull/895)
377 * change event redact, POST request to PUT request
378 [\#887](https://github.com/matrix-org/matrix-js-sdk/pull/887)
379 * Expose better autodiscovery error messages
380 [\#894](https://github.com/matrix-org/matrix-js-sdk/pull/894)
381 * Explicitly guard store usage during sync startup
382 [\#892](https://github.com/matrix-org/matrix-js-sdk/pull/892)
383 * Flag v3 rooms as safe
384 [\#893](https://github.com/matrix-org/matrix-js-sdk/pull/893)
385 * Cache failed capabilities lookups for shorter amounts of time
386 [\#890](https://github.com/matrix-org/matrix-js-sdk/pull/890)
387 * Fix highlight notifications for unencrypted rooms
388 [\#891](https://github.com/matrix-org/matrix-js-sdk/pull/891)
389 * Document checking crypto state before using `hasUnverifiedDevices`
390 [\#889](https://github.com/matrix-org/matrix-js-sdk/pull/889)
391 * Add logging to sync startup path
392 [\#888](https://github.com/matrix-org/matrix-js-sdk/pull/888)
393 * Track e2e highlights better, particularly in 'Mentions Only' rooms
394 [\#886](https://github.com/matrix-org/matrix-js-sdk/pull/886)
395 * support both the incorrect and correct MAC methods
396 [\#882](https://github.com/matrix-org/matrix-js-sdk/pull/882)
397 * Refuse to set forwards pagination token on live timeline
398 [\#885](https://github.com/matrix-org/matrix-js-sdk/pull/885)
399 * Degrade `IndexedDBStore` back to memory only on failure
400 [\#884](https://github.com/matrix-org/matrix-js-sdk/pull/884)
401 * Refuse to link live timelines into the forwards/backwards position when
402 either is invalid
403 [\#877](https://github.com/matrix-org/matrix-js-sdk/pull/877)
404 * Key backup logging improvements
405 [\#883](https://github.com/matrix-org/matrix-js-sdk/pull/883)
406 * Don't assume aborts are always from txn.abort()
407 [\#880](https://github.com/matrix-org/matrix-js-sdk/pull/880)
408 * Add a bunch of logging
409 [\#878](https://github.com/matrix-org/matrix-js-sdk/pull/878)
410 * Refuse splicing the live timeline into a broken position
411 [\#873](https://github.com/matrix-org/matrix-js-sdk/pull/873)
412 * Add existence check to local storage based crypto store
413 [\#872](https://github.com/matrix-org/matrix-js-sdk/pull/872)
414
415Changes in [1.0.4](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.4) (2019-04-08)
416================================================================================================
417[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.3...v1.0.4)
418
419 * Hotfix: more logging and potential fixes for timeline corruption issue, see ticket https://github.com/vector-im/riot-web/issues/8593.
420
421Changes in [1.0.3](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.3) (2019-04-01)
422================================================================================================
423[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.3-rc.1...v1.0.3)
424
425 * Add existence check to local storage based crypto store
426 [\#874](https://github.com/matrix-org/matrix-js-sdk/pull/874)
427
428Changes in [1.0.3-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.3-rc.1) (2019-03-27)
429==========================================================================================================
430[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.2...v1.0.3-rc.1)
431
432 * Add IndexedDB existence checks
433 [\#871](https://github.com/matrix-org/matrix-js-sdk/pull/871)
434 * Emit sync errors for capturing by clients
435 [\#869](https://github.com/matrix-org/matrix-js-sdk/pull/869)
436 * Add functions for getting room upgrade history and leaving those rooms
437 [\#868](https://github.com/matrix-org/matrix-js-sdk/pull/868)
438 * Clarify the meaning of 'real name' for contribution
439 [\#867](https://github.com/matrix-org/matrix-js-sdk/pull/867)
440 * Remove `sessionStore` to `cryptoStore` migration path
441 [\#865](https://github.com/matrix-org/matrix-js-sdk/pull/865)
442 * Add debugging for spurious room version warnings
443 [\#866](https://github.com/matrix-org/matrix-js-sdk/pull/866)
444 * Add investigation notes for browser storage
445 [\#864](https://github.com/matrix-org/matrix-js-sdk/pull/864)
446 * make sure resolve object is defined before calling it
447 [\#862](https://github.com/matrix-org/matrix-js-sdk/pull/862)
448 * Rename `MatrixInMemoryStore` to `MemoryStore`
449 [\#861](https://github.com/matrix-org/matrix-js-sdk/pull/861)
450 * Use Buildkite for CI
451 [\#859](https://github.com/matrix-org/matrix-js-sdk/pull/859)
452 * only create one session at a time per device
453 [\#857](https://github.com/matrix-org/matrix-js-sdk/pull/857)
454
455Changes in [1.0.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.2) (2019-03-18)
456================================================================================================
457[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.2-rc.1...v1.0.2)
458
459 * No changes since rc.1
460
461Changes in [1.0.2-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.2-rc.1) (2019-03-13)
462==========================================================================================================
463[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.1...v1.0.2-rc.1)
464
465 * Use modern Yarn version on Travis CI
466 [\#858](https://github.com/matrix-org/matrix-js-sdk/pull/858)
467 * Switch to `yarn` for dependency management
468 [\#856](https://github.com/matrix-org/matrix-js-sdk/pull/856)
469 * More key request fixes
470 [\#855](https://github.com/matrix-org/matrix-js-sdk/pull/855)
471 * Calculate encrypted notification counts
472 [\#851](https://github.com/matrix-org/matrix-js-sdk/pull/851)
473 * Update dependencies
474 [\#854](https://github.com/matrix-org/matrix-js-sdk/pull/854)
475 * make sure key requests get sent
476 [\#850](https://github.com/matrix-org/matrix-js-sdk/pull/850)
477 * Use 'ideal' rather than 'exact' for deviceid
478 [\#852](https://github.com/matrix-org/matrix-js-sdk/pull/852)
479 * handle partially-shared sessions better
480 [\#848](https://github.com/matrix-org/matrix-js-sdk/pull/848)
481
482Changes in [1.0.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.1) (2019-03-06)
483================================================================================================
484[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.1-rc.2...v1.0.1)
485
486 * No changes since rc.2
487
488Changes in [1.0.1-rc.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.1-rc.2) (2019-03-05)
489==========================================================================================================
490[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.1-rc.1...v1.0.1-rc.2)
491
492 * dont swallow txn errors in crypto store
493 [\#853](https://github.com/matrix-org/matrix-js-sdk/pull/853)
494 * Don't swallow txn errors in crypto store
495 [\#849](https://github.com/matrix-org/matrix-js-sdk/pull/849)
496
497Changes in [1.0.1-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.1-rc.1) (2019-02-28)
498==========================================================================================================
499[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.0...v1.0.1-rc.1)
500
501 * Fix "e is undefined" masking the original error in MegolmDecryption
502 [\#847](https://github.com/matrix-org/matrix-js-sdk/pull/847)
503
504Changes in [1.0.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.0) (2019-02-14)
505================================================================================================
506[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.0-rc.2...v1.0.0)
507
508 * Try again to commit package-lock.json
509 [\#841](https://github.com/matrix-org/matrix-js-sdk/pull/841)
510
511Changes in [1.0.0-rc.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.0-rc.2) (2019-02-14)
512==========================================================================================================
513[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v1.0.0-rc.1...v1.0.0-rc.2)
514
515 * Release script: commit package-lock.json
516 [\#839](https://github.com/matrix-org/matrix-js-sdk/pull/839)
517 * Add method to force re-check of key backup
518 [\#840](https://github.com/matrix-org/matrix-js-sdk/pull/840)
519 * Fix: dont check for unverified devices in left members
520 [\#838](https://github.com/matrix-org/matrix-js-sdk/pull/838)
521
522Changes in [1.0.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v1.0.0-rc.1) (2019-02-08)
523==========================================================================================================
524[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.14.3...v1.0.0-rc.1)
525
526 * change hex SAS verification to decimal and emoji
527 [\#837](https://github.com/matrix-org/matrix-js-sdk/pull/837)
528 * Trust on decrypt
529 [\#836](https://github.com/matrix-org/matrix-js-sdk/pull/836)
530 * Always track our own devices
531 [\#835](https://github.com/matrix-org/matrix-js-sdk/pull/835)
532 * Make linting rules more consistent
533 [\#834](https://github.com/matrix-org/matrix-js-sdk/pull/834)
534 * add method to room to check for unverified devices
535 [\#833](https://github.com/matrix-org/matrix-js-sdk/pull/833)
536 * Merge redesign into develop
537 [\#831](https://github.com/matrix-org/matrix-js-sdk/pull/831)
538 * Supporting infrastructure for educated decisions on when to upgrade rooms
539 [\#830](https://github.com/matrix-org/matrix-js-sdk/pull/830)
540 * Include signature info for unknown devices
541 [\#826](https://github.com/matrix-org/matrix-js-sdk/pull/826)
542 * Flag v2 rooms as "safe"
543 [\#828](https://github.com/matrix-org/matrix-js-sdk/pull/828)
544 * Update ESLint
545 [\#821](https://github.com/matrix-org/matrix-js-sdk/pull/821)
546
547Changes in [0.14.3](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.14.3) (2019-01-22)
548==================================================================================================
549[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.14.3-rc.1...v0.14.3)
550
551 * No changes since rc.1
552
553Changes in [0.14.3-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.14.3-rc.1) (2019-01-17)
554============================================================================================================
555[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.14.2...v0.14.3-rc.1)
556
557 * Merge develop into experimental
558 [\#815](https://github.com/matrix-org/matrix-js-sdk/pull/815)
559 * Add a getAllEndToEndSessions to crypto store
560 [\#812](https://github.com/matrix-org/matrix-js-sdk/pull/812)
561 * T3chguy/fix displayname logic
562 [\#668](https://github.com/matrix-org/matrix-js-sdk/pull/668)
563 * Contributing: Note that rebase lets you mass signoff commits
564 [\#814](https://github.com/matrix-org/matrix-js-sdk/pull/814)
565 * take into account homoglyphs when calculating similar display names
566 [\#672](https://github.com/matrix-org/matrix-js-sdk/pull/672)
567 * Emit for key backup failures
568 [\#809](https://github.com/matrix-org/matrix-js-sdk/pull/809)
569 * emit oldEventId on "updatePendingEvent"
570 [\#646](https://github.com/matrix-org/matrix-js-sdk/pull/646)
571 * Add getThirdpartyUser to base api
572 [\#589](https://github.com/matrix-org/matrix-js-sdk/pull/589)
573 * Support custom status messages
574 [\#805](https://github.com/matrix-org/matrix-js-sdk/pull/805)
575 * Extra checks to avoid release script blowing up mid-process.
576 [\#749](https://github.com/matrix-org/matrix-js-sdk/pull/749)
577 * Move glob regex utilities out of the pushprocessor and into a more generic
578 place
579 [\#800](https://github.com/matrix-org/matrix-js-sdk/pull/800)
580
581Changes in [0.14.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.14.2) (2018-12-10)
582==================================================================================================
583[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.14.2-rc.1...v0.14.2)
584
585 * No changes since rc.1
586
587Changes in [0.14.2-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.14.2-rc.1) (2018-12-06)
588============================================================================================================
589[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.14.1...v0.14.2-rc.1)
590
591 * fix some assertions in e2e backup unit test
592 [\#794](https://github.com/matrix-org/matrix-js-sdk/pull/794)
593 * Config should be called with auth
594 [\#798](https://github.com/matrix-org/matrix-js-sdk/pull/798)
595 * Don't re-establish sessions with unknown devices
596 [\#792](https://github.com/matrix-org/matrix-js-sdk/pull/792)
597 * e2e key backups
598 [\#684](https://github.com/matrix-org/matrix-js-sdk/pull/684)
599 * WIP: online incremental megolm backups
600 [\#595](https://github.com/matrix-org/matrix-js-sdk/pull/595)
601 * Support for e2e key backups
602 [\#736](https://github.com/matrix-org/matrix-js-sdk/pull/736)
603 * Passphrase Support for e2e backups
604 [\#786](https://github.com/matrix-org/matrix-js-sdk/pull/786)
605 * Add 'getSsoLoginUrl' function
606 [\#783](https://github.com/matrix-org/matrix-js-sdk/pull/783)
607 * Fix: don't set the room name to null when heroes are missing.
608 [\#784](https://github.com/matrix-org/matrix-js-sdk/pull/784)
609 * Handle crypto db version upgrades
610 [\#785](https://github.com/matrix-org/matrix-js-sdk/pull/785)
611 * Restart broken Olm sessions
612 [\#780](https://github.com/matrix-org/matrix-js-sdk/pull/780)
613 * Use the last olm session that got a message
614 [\#776](https://github.com/matrix-org/matrix-js-sdk/pull/776)
615
616Changes in [0.14.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.14.1) (2018-11-22)
617==================================================================================================
618[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.14.0...v0.14.1)
619
620 * Warning when crypto DB is too new to use.
621
622Changes in [0.14.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.14.0) (2018-11-19)
623==================================================================================================
624[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.14.0-rc.1...v0.14.0)
625
626 * No changes since rc.1
627
628Changes in [0.14.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.14.0-rc.1) (2018-11-15)
629============================================================================================================
630[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.13.1...v0.14.0-rc.1)
631
632BREAKING CHANGE
633----------------
634
635 * js-sdk now uses Olm 3.0. Apps using Olm must update to 3.0 to
636 continue using Olm with the js-sdk. The js-sdk will call Olm's
637 init() method when the client is started.
638
639All Changes
640-----------
641
642 * Prevent messages from being sent if other messages have failed to send
643 [\#781](https://github.com/matrix-org/matrix-js-sdk/pull/781)
644 * A unit test for olm
645 [\#777](https://github.com/matrix-org/matrix-js-sdk/pull/777)
646 * Set access_token and user_id after login in with username and password.
647 [\#778](https://github.com/matrix-org/matrix-js-sdk/pull/778)
648 * Add function to get currently joined rooms.
649 [\#779](https://github.com/matrix-org/matrix-js-sdk/pull/779)
650 * Remove the request-only stuff we don't need anymore
651 [\#775](https://github.com/matrix-org/matrix-js-sdk/pull/775)
652 * Manually construct query strings for browser-request instances
653 [\#770](https://github.com/matrix-org/matrix-js-sdk/pull/770)
654 * Fix: correctly check for crypto being present
655 [\#769](https://github.com/matrix-org/matrix-js-sdk/pull/769)
656 * Update babel-eslint to 8.1.1
657 [\#768](https://github.com/matrix-org/matrix-js-sdk/pull/768)
658 * Support `request` in the browser and support supplying servers to try in
659 joinRoom()
660 [\#764](https://github.com/matrix-org/matrix-js-sdk/pull/764)
661 * loglevel should be a normal dependency
662 [\#767](https://github.com/matrix-org/matrix-js-sdk/pull/767)
663 * Stop devicelist when client is stopped
664 [\#766](https://github.com/matrix-org/matrix-js-sdk/pull/766)
665 * Update to WebAssembly-powered Olm
666 [\#743](https://github.com/matrix-org/matrix-js-sdk/pull/743)
667 * Logging lib. Fixes #332
668 [\#763](https://github.com/matrix-org/matrix-js-sdk/pull/763)
669 * Use new stop() method on matrix-mock-request
670 [\#765](https://github.com/matrix-org/matrix-js-sdk/pull/765)
671
672Changes in [0.13.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.13.1) (2018-11-14)
673==================================================================================================
674[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.13.0...v0.13.1)
675
676 * Add function to get currently joined rooms.
677 [\#779](https://github.com/matrix-org/matrix-js-sdk/pull/779)
678
679Changes in [0.13.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.13.0) (2018-11-15)
680==================================================================================================
681[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.12.1...v0.13.0)
682
683BREAKING CHANGE
684----------------
685 * `MatrixClient::login` now sets client `access_token` and `user_id` following successful login with username and password.
686
687Changes in [0.12.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.12.1) (2018-10-29)
688==================================================================================================
689[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.12.1-rc.1...v0.12.1)
690
691 * No changes since rc.1
692
693Changes in [0.12.1-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.12.1-rc.1) (2018-10-24)
694============================================================================================================
695[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.12.0...v0.12.1-rc.1)
696
697 * Add repository type to package.json to make it valid
698 [\#762](https://github.com/matrix-org/matrix-js-sdk/pull/762)
699 * Add getMediaConfig()
700 [\#761](https://github.com/matrix-org/matrix-js-sdk/pull/761)
701 * add new examples, to be expanded into a post
702 [\#739](https://github.com/matrix-org/matrix-js-sdk/pull/739)
703
704Changes in [0.12.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.12.0) (2018-10-16)
705==================================================================================================
706[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.12.0-rc.1...v0.12.0)
707
708 * No changes since rc.1
709
710Changes in [0.12.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.12.0-rc.1) (2018-10-11)
711============================================================================================================
712[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.11.1...v0.12.0-rc.1)
713
714BREAKING CHANGES
715----------------
716 * If js-sdk finds data in the store that is incompatible with the options currently being used,
717 it will emit sync state ERROR with an error of type InvalidStoreError. It will also stop trying
718 to sync in this situation: the app must stop the client and then either clear the store or
719 change the options (in this case, enable or disable lazy loading of members) and then start
720 the client again.
721
722All Changes
723-----------
724
725 * never replace /sync'ed memberships with OOB ones
726 [\#760](https://github.com/matrix-org/matrix-js-sdk/pull/760)
727 * Don't fail to start up if lazy load check fails
728 [\#759](https://github.com/matrix-org/matrix-js-sdk/pull/759)
729 * Make e2e work on Edge
730 [\#754](https://github.com/matrix-org/matrix-js-sdk/pull/754)
731 * throw error with same name and message over idb worker boundary
732 [\#758](https://github.com/matrix-org/matrix-js-sdk/pull/758)
733 * Default to a room version of 1 when there is no room create event
734 [\#755](https://github.com/matrix-org/matrix-js-sdk/pull/755)
735 * Silence bluebird warnings
736 [\#757](https://github.com/matrix-org/matrix-js-sdk/pull/757)
737 * allow non-ff merge from release branch into master
738 [\#750](https://github.com/matrix-org/matrix-js-sdk/pull/750)
739 * Reject with the actual error on indexeddb error
740 [\#751](https://github.com/matrix-org/matrix-js-sdk/pull/751)
741 * Update mocha to v5
742 [\#744](https://github.com/matrix-org/matrix-js-sdk/pull/744)
743 * disable lazy loading for guests as they cant create filters
744 [\#748](https://github.com/matrix-org/matrix-js-sdk/pull/748)
745 * Revert "Add getMediaLimits to client"
746 [\#745](https://github.com/matrix-org/matrix-js-sdk/pull/745)
747
748Changes in [0.11.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.11.1) (2018-10-01)
749==================================================================================================
750[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.11.1-rc.1...v0.11.1)
751
752 * No changes since rc.1
753
754Changes in [0.11.1-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.11.1-rc.1) (2018-09-27)
755============================================================================================================
756[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.11.0...v0.11.1-rc.1)
757
758 * make usage of hub compatible with latest version (2.5)
759 [\#747](https://github.com/matrix-org/matrix-js-sdk/pull/747)
760 * Detect when lazy loading has been toggled in client.startClient
761 [\#746](https://github.com/matrix-org/matrix-js-sdk/pull/746)
762 * Add getMediaLimits to client
763 [\#644](https://github.com/matrix-org/matrix-js-sdk/pull/644)
764 * Split npm start into an init and watch script
765 [\#742](https://github.com/matrix-org/matrix-js-sdk/pull/742)
766 * Revert "room name should only take canonical alias into account"
767 [\#738](https://github.com/matrix-org/matrix-js-sdk/pull/738)
768 * fix display name disambiguation with LL
769 [\#737](https://github.com/matrix-org/matrix-js-sdk/pull/737)
770 * Introduce Room.myMembership event
771 [\#735](https://github.com/matrix-org/matrix-js-sdk/pull/735)
772 * room name should only take canonical alias into account
773 [\#733](https://github.com/matrix-org/matrix-js-sdk/pull/733)
774 * state events from context response were not wrapped in a MatrixEvent
775 [\#732](https://github.com/matrix-org/matrix-js-sdk/pull/732)
776 * Reduce amount of promises created when inserting members
777 [\#724](https://github.com/matrix-org/matrix-js-sdk/pull/724)
778 * dont wait for LL members to be stored to resolve the members
779 [\#726](https://github.com/matrix-org/matrix-js-sdk/pull/726)
780 * RoomState.members emitted with wrong argument order for OOB members
781 [\#728](https://github.com/matrix-org/matrix-js-sdk/pull/728)
782
783Changes in [0.11.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.11.0) (2018-09-10)
784==================================================================================================
785[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.11.0-rc.1...v0.11.0)
786
787BREAKING CHANGES
788----------------
789 * v0.11.0-rc.1 introduced some breaking changes - see the respective release notes.
790
791No changes since rc.1
792
793Changes in [0.11.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.11.0-rc.1) (2018-09-07)
794============================================================================================================
795[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.9...v0.11.0-rc.1)
796
797 * Support for lazy loading members. This should improve performance for
798 users who joined big rooms a lot. Pass to `lazyLoadMembers = true` option when calling `startClient`.
799
800BREAKING CHANGES
801----------------
802
803 * `MatrixClient::startClient` now returns a Promise. No method should be called on the client before that promise resolves. Before this method didn't return anything.
804 * A new `CATCHUP` sync state, emitted by `MatrixClient#"sync"` and returned by `MatrixClient::getSyncState()`, when doing initial sync after the `ERROR` state. See `MatrixClient` documentation for details.
805 * `RoomState::maySendEvent('m.room.message', userId)` & `RoomState::maySendMessage(userId)` do not check the membership of the user anymore, only the power level. To check if the syncing user is allowed to write in a room, use `Room::maySendMessage()` as `RoomState` is not always aware of the syncing user's membership anymore, in case lazy loading of members is enabled.
806
807All Changes
808-----------
809
810 * Only emit CATCHUP if recovering from conn error
811 [\#727](https://github.com/matrix-org/matrix-js-sdk/pull/727)
812 * Fix docstring for sync data.error
813 [\#725](https://github.com/matrix-org/matrix-js-sdk/pull/725)
814 * Re-apply "Don't rely on members to query if syncing user can post to room"
815 [\#723](https://github.com/matrix-org/matrix-js-sdk/pull/723)
816 * Revert "Don't rely on members to query if syncing user can post to room"
817 [\#721](https://github.com/matrix-org/matrix-js-sdk/pull/721)
818 * Don't rely on members to query if syncing user can post to room
819 [\#717](https://github.com/matrix-org/matrix-js-sdk/pull/717)
820 * Fixes for room.guessDMUserId
821 [\#719](https://github.com/matrix-org/matrix-js-sdk/pull/719)
822 * Fix filepanel also filtering main timeline with LL turned on.
823 [\#716](https://github.com/matrix-org/matrix-js-sdk/pull/716)
824 * Remove lazy loaded members when leaving room
825 [\#711](https://github.com/matrix-org/matrix-js-sdk/pull/711)
826 * Fix: show spinner again while recovering from connection error
827 [\#702](https://github.com/matrix-org/matrix-js-sdk/pull/702)
828 * Add method to query LL state in client
829 [\#714](https://github.com/matrix-org/matrix-js-sdk/pull/714)
830 * Fix: also load invited members when lazy loading members
831 [\#707](https://github.com/matrix-org/matrix-js-sdk/pull/707)
832 * Pass through function to discard megolm session
833 [\#704](https://github.com/matrix-org/matrix-js-sdk/pull/704)
834
835Changes in [0.10.9](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.9) (2018-09-03)
836==================================================================================================
837[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.9-rc.2...v0.10.9)
838
839 * No changes since rc.2
840
841Changes in [0.10.9-rc.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.9-rc.2) (2018-08-31)
842============================================================================================================
843[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.9-rc.1...v0.10.9-rc.2)
844
845 * Fix for "otherMember.getAvatarUrl is not a function"
846 [\#708](https://github.com/matrix-org/matrix-js-sdk/pull/708)
847
848Changes in [0.10.9-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.9-rc.1) (2018-08-30)
849============================================================================================================
850[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.8...v0.10.9-rc.1)
851
852 * Fix DM avatar
853 [\#706](https://github.com/matrix-org/matrix-js-sdk/pull/706)
854 * Lazy loading: avoid loading members at initial sync for e2e rooms
855 [\#699](https://github.com/matrix-org/matrix-js-sdk/pull/699)
856 * Improve setRoomEncryption guard against multiple m.room.encryption st…
857 [\#700](https://github.com/matrix-org/matrix-js-sdk/pull/700)
858 * Revert "Lazy loading: don't block on setting up room crypto"
859 [\#698](https://github.com/matrix-org/matrix-js-sdk/pull/698)
860 * Lazy loading: don't block on setting up room crypto
861 [\#696](https://github.com/matrix-org/matrix-js-sdk/pull/696)
862 * Add getVisibleRooms()
863 [\#695](https://github.com/matrix-org/matrix-js-sdk/pull/695)
864 * Add wrapper around getJoinedMemberCount()
865 [\#697](https://github.com/matrix-org/matrix-js-sdk/pull/697)
866 * Api to fetch events via /room/.../event/..
867 [\#694](https://github.com/matrix-org/matrix-js-sdk/pull/694)
868 * Support for room upgrades
869 [\#693](https://github.com/matrix-org/matrix-js-sdk/pull/693)
870 * Lazy loading of room members
871 [\#691](https://github.com/matrix-org/matrix-js-sdk/pull/691)
872
873Changes in [0.10.8](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.8) (2018-08-20)
874==================================================================================================
875[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.8-rc.1...v0.10.8)
876
877 * No changes since rc.1
878
879Changes in [0.10.8-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.8-rc.1) (2018-08-16)
880============================================================================================================
881[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.7...v0.10.8-rc.1)
882
883 * Add getVersion to Room
884 [\#689](https://github.com/matrix-org/matrix-js-sdk/pull/689)
885 * Add getSyncStateData()
886 [\#680](https://github.com/matrix-org/matrix-js-sdk/pull/680)
887 * Send sync error to listener
888 [\#679](https://github.com/matrix-org/matrix-js-sdk/pull/679)
889 * make sure room.tags is always a valid object to avoid crashes
890 [\#675](https://github.com/matrix-org/matrix-js-sdk/pull/675)
891 * Fix infinite spinner upon joining a room
892 [\#673](https://github.com/matrix-org/matrix-js-sdk/pull/673)
893
894Changes in [0.10.7](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.7) (2018-07-30)
895==================================================================================================
896[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.7-rc.1...v0.10.7)
897
898 * No changes since rc.1
899
900Changes in [0.10.7-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.7-rc.1) (2018-07-24)
901============================================================================================================
902[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.6...v0.10.7-rc.1)
903
904 * encrypt for invited users if history visibility allows.
905 [\#666](https://github.com/matrix-org/matrix-js-sdk/pull/666)
906
907Changes in [0.10.6](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.6) (2018-07-09)
908==================================================================================================
909[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.6-rc.1...v0.10.6)
910
911 * No changes since rc.1
912
913Changes in [0.10.6-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.6-rc.1) (2018-07-06)
914============================================================================================================
915[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.5...v0.10.6-rc.1)
916
917 * Expose event decryption error via Event.decrypted event
918 [\#665](https://github.com/matrix-org/matrix-js-sdk/pull/665)
919 * Add decryption error codes to base.DecryptionError
920 [\#663](https://github.com/matrix-org/matrix-js-sdk/pull/663)
921
922Changes in [0.10.5](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.5) (2018-06-29)
923==================================================================================================
924[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.5-rc.1...v0.10.5)
925
926 * No changes since rc.1
927
928Changes in [0.10.5-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.5-rc.1) (2018-06-21)
929============================================================================================================
930[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.4...v0.10.5-rc.1)
931
932 * fix auth header and filename=undefined
933 [\#659](https://github.com/matrix-org/matrix-js-sdk/pull/659)
934 * allow setting the output device for webrtc calls
935 [\#650](https://github.com/matrix-org/matrix-js-sdk/pull/650)
936 * arguments true and false are actually invalid
937 [\#596](https://github.com/matrix-org/matrix-js-sdk/pull/596)
938 * fix typo where `headers` was not being used and thus sent wrong content-type
939 [\#643](https://github.com/matrix-org/matrix-js-sdk/pull/643)
940 * fix some documentation typos
941 [\#642](https://github.com/matrix-org/matrix-js-sdk/pull/642)
942
943Changes in [0.10.4](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.4) (2018-06-12)
944==================================================================================================
945[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.4-rc.1...v0.10.4)
946
947 * No changes since rc.1
948
949Changes in [0.10.4-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.4-rc.1) (2018-06-06)
950============================================================================================================
951[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.3...v0.10.4-rc.1)
952
953 * check whether notif level is undefined, because `0` is falsey
954 [\#651](https://github.com/matrix-org/matrix-js-sdk/pull/651)
955
956Changes in [0.10.3](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.3) (2018-05-25)
957==================================================================================================
958[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.3-rc.1...v0.10.3)
959
960 * No changes since v0.10.3-rc.1
961
962Changes in [0.10.3-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.3-rc.1) (2018-05-24)
963============================================================================================================
964[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.2...v0.10.3-rc.1)
965
966BREAKING CHANGE
967---------------
968
969The deprecated 'callback' parameter has been removed from MatrixBaseApis.deactivateAccount
970
971 * Add `erase` option to deactivateAccount
972 [\#649](https://github.com/matrix-org/matrix-js-sdk/pull/649)
973 * Emit Session.no_consent when M_CONSENT_NOT_GIVEN received
974 [\#647](https://github.com/matrix-org/matrix-js-sdk/pull/647)
975
976Changes in [0.10.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.2) (2018-04-30)
977==================================================================================================
978[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.2-rc.1...v0.10.2)
979
980 * No changes from rc.1
981
982Changes in [0.10.2-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.2-rc.1) (2018-04-25)
983============================================================================================================
984[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.1...v0.10.2-rc.1)
985
986 * Ignore inserts of dup inbound group sessions, pt 2
987 [\#641](https://github.com/matrix-org/matrix-js-sdk/pull/641)
988 * Ignore inserts of duplicate inbound group sessions
989 [\#639](https://github.com/matrix-org/matrix-js-sdk/pull/639)
990 * Log IDB errors
991 [\#638](https://github.com/matrix-org/matrix-js-sdk/pull/638)
992 * Remove not very useful but veryv spammy log line
993 [\#632](https://github.com/matrix-org/matrix-js-sdk/pull/632)
994 * Switch event type to m.sticker.
995 [\#628](https://github.com/matrix-org/matrix-js-sdk/pull/628)
996
997Changes in [0.10.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.1) (2018-04-12)
998==================================================================================================
999[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.0...v0.10.1)
1000
1001 * Log IDB errors
1002 [\#638](https://github.com/matrix-org/matrix-js-sdk/pull/638)
1003 * Ignore inserts of duplicate inbound group sessions
1004 [\#639](https://github.com/matrix-org/matrix-js-sdk/pull/639)
1005 * Ignore inserts of dup inbound group sessions, pt 2
1006 [\#641](https://github.com/matrix-org/matrix-js-sdk/pull/641)
1007
1008Changes in [0.10.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.0) (2018-04-11)
1009==================================================================================================
1010[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.0-rc.2...v0.10.0)
1011
1012 * No changes
1013
1014Changes in [0.10.0-rc.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.0-rc.2) (2018-04-09)
1015============================================================================================================
1016[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.10.0-rc.1...v0.10.0-rc.2)
1017
1018 * Add wrapper for group join API
1019 * Add wrapped API to set group join\_policy
1020
1021Changes in [0.10.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.10.0-rc.1) (2018-03-19)
1022============================================================================================================
1023[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.9.2...v0.10.0-rc.1)
1024
1025 * Fix duplicated state events in timeline from peek
1026 [\#630](https://github.com/matrix-org/matrix-js-sdk/pull/630)
1027 * Create indexeddb worker when starting the store
1028 [\#627](https://github.com/matrix-org/matrix-js-sdk/pull/627)
1029 * Fix indexeddb logging
1030 [\#626](https://github.com/matrix-org/matrix-js-sdk/pull/626)
1031 * Don't do /keys/changes on incremental sync
1032 [\#625](https://github.com/matrix-org/matrix-js-sdk/pull/625)
1033 * Don't mark devicelist dirty unnecessarily
1034 [\#623](https://github.com/matrix-org/matrix-js-sdk/pull/623)
1035 * Cache the joined member count for a room state
1036 [\#619](https://github.com/matrix-org/matrix-js-sdk/pull/619)
1037 * Fix JS doc
1038 [\#618](https://github.com/matrix-org/matrix-js-sdk/pull/618)
1039 * Precompute push actions for state events
1040 [\#617](https://github.com/matrix-org/matrix-js-sdk/pull/617)
1041 * Fix bug where global "Never send to unverified..." is ignored
1042 [\#616](https://github.com/matrix-org/matrix-js-sdk/pull/616)
1043 * Intern legacy top-level 'membership' field
1044 [\#615](https://github.com/matrix-org/matrix-js-sdk/pull/615)
1045 * Don't synthesize RR for m.room.redaction as causes the RR to go missing.
1046 [\#598](https://github.com/matrix-org/matrix-js-sdk/pull/598)
1047 * Make Events create Dates on demand
1048 [\#613](https://github.com/matrix-org/matrix-js-sdk/pull/613)
1049 * Stop cloning events when adding to state
1050 [\#612](https://github.com/matrix-org/matrix-js-sdk/pull/612)
1051 * De-dup code: use the initialiseState function
1052 [\#611](https://github.com/matrix-org/matrix-js-sdk/pull/611)
1053 * Create sentinel members on-demand
1054 [\#610](https://github.com/matrix-org/matrix-js-sdk/pull/610)
1055 * Some more doc on how sentinels work
1056 [\#609](https://github.com/matrix-org/matrix-js-sdk/pull/609)
1057 * Migrate room encryption store to crypto store
1058 [\#597](https://github.com/matrix-org/matrix-js-sdk/pull/597)
1059 * add parameter to getIdentityServerUrl to strip the protocol for invites
1060 [\#600](https://github.com/matrix-org/matrix-js-sdk/pull/600)
1061 * Move Device Tracking Data to Crypto Store
1062 [\#594](https://github.com/matrix-org/matrix-js-sdk/pull/594)
1063 * Optimise pushprocessor
1064 [\#591](https://github.com/matrix-org/matrix-js-sdk/pull/591)
1065 * Set event error before emitting
1066 [\#592](https://github.com/matrix-org/matrix-js-sdk/pull/592)
1067 * Add event type for stickers [WIP]
1068 [\#590](https://github.com/matrix-org/matrix-js-sdk/pull/590)
1069 * Migrate inbound sessions to cryptostore
1070 [\#587](https://github.com/matrix-org/matrix-js-sdk/pull/587)
1071 * Disambiguate names if they contain an mxid
1072 [\#588](https://github.com/matrix-org/matrix-js-sdk/pull/588)
1073 * Check for sessions in indexeddb before migrating
1074 [\#585](https://github.com/matrix-org/matrix-js-sdk/pull/585)
1075 * Emit an event for crypto store migration
1076 [\#586](https://github.com/matrix-org/matrix-js-sdk/pull/586)
1077 * Supporting fixes For making UnknownDeviceDialog not pop up automatically
1078 [\#575](https://github.com/matrix-org/matrix-js-sdk/pull/575)
1079 * Move sessions to the crypto store
1080 [\#584](https://github.com/matrix-org/matrix-js-sdk/pull/584)
1081 * Change crypto store transaction API
1082 [\#582](https://github.com/matrix-org/matrix-js-sdk/pull/582)
1083 * Add some missed copyright notices
1084 [\#581](https://github.com/matrix-org/matrix-js-sdk/pull/581)
1085 * Move Olm account to IndexedDB
1086 [\#579](https://github.com/matrix-org/matrix-js-sdk/pull/579)
1087 * Fix logging of DecryptionErrors to be more useful
1088 [\#580](https://github.com/matrix-org/matrix-js-sdk/pull/580)
1089 * [BREAKING] Change the behaviour of the unverfied devices blacklist flag
1090 [\#568](https://github.com/matrix-org/matrix-js-sdk/pull/568)
1091 * Support set_presence=offline for syncing
1092 [\#557](https://github.com/matrix-org/matrix-js-sdk/pull/557)
1093 * Consider cases where the sender may not redact their own event
1094 [\#556](https://github.com/matrix-org/matrix-js-sdk/pull/556)
1095
1096Changes in [0.9.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.9.2) (2017-12-04)
1097================================================================================================
1098[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.9.1...v0.9.2)
1099
1100
1101Changes in [0.9.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.9.1) (2017-11-17)
1102================================================================================================
1103[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.9.0...v0.9.1)
1104
1105 * Fix the force TURN option
1106 [\#577](https://github.com/matrix-org/matrix-js-sdk/pull/577)
1107
1108Changes in [0.9.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.9.0) (2017-11-15)
1109================================================================================================
1110[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.9.0-rc.1...v0.9.0)
1111
1112
1113Changes in [0.9.0-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.9.0-rc.1) (2017-11-10)
1114==========================================================================================================
1115[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.8.5...v0.9.0-rc.1)
1116
1117 * Modify addRoomToGroup to allow setting isPublic, create alias
1118 updateGroupRoomAssociation
1119 [\#567](https://github.com/matrix-org/matrix-js-sdk/pull/567)
1120 * Expose more functionality of pushprocessor
1121 [\#565](https://github.com/matrix-org/matrix-js-sdk/pull/565)
1122 * Function for working out notif trigger permission
1123 [\#566](https://github.com/matrix-org/matrix-js-sdk/pull/566)
1124 * keep track of event ID and timestamp of decrypted messages
1125 [\#555](https://github.com/matrix-org/matrix-js-sdk/pull/555)
1126 * Fix notifEvent computation
1127 [\#564](https://github.com/matrix-org/matrix-js-sdk/pull/564)
1128 * Fix power level of sentinel members
1129 [\#563](https://github.com/matrix-org/matrix-js-sdk/pull/563)
1130 * don't try to decrypt a redacted message (fixes vector-im/riot-web#3744)
1131 [\#554](https://github.com/matrix-org/matrix-js-sdk/pull/554)
1132 * Support room notifs
1133 [\#562](https://github.com/matrix-org/matrix-js-sdk/pull/562)
1134 * Fix the glob-to-regex code
1135 [\#558](https://github.com/matrix-org/matrix-js-sdk/pull/558)
1136
1137Changes in [0.8.5](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.8.5) (2017-10-16)
1138================================================================================================
1139[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.8.5-rc.1...v0.8.5)
1140
1141 * Make unknown pushrule conditions not match
1142 [\#559](https://github.com/matrix-org/matrix-js-sdk/pull/559)
1143
1144Changes in [0.8.5-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.8.5-rc.1) (2017-10-13)
1145==========================================================================================================
1146[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.8.4...v0.8.5-rc.1)
1147
1148 * Implement wrapper API for removing a room from a group
1149 [\#553](https://github.com/matrix-org/matrix-js-sdk/pull/553)
1150 * Fix typo which resulted in stuck key download requests
1151 [\#552](https://github.com/matrix-org/matrix-js-sdk/pull/552)
1152 * Store group when it's created
1153 [\#549](https://github.com/matrix-org/matrix-js-sdk/pull/549)
1154 * Luke/groups remove rooms users from summary
1155 [\#548](https://github.com/matrix-org/matrix-js-sdk/pull/548)
1156 * Clean on prepublish
1157 [\#546](https://github.com/matrix-org/matrix-js-sdk/pull/546)
1158 * Implement wrapper APIs for adding rooms to group summary
1159 [\#545](https://github.com/matrix-org/matrix-js-sdk/pull/545)
1160
1161Changes in [0.8.4](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.8.4) (2017-09-21)
1162================================================================================================
1163[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.8.3...v0.8.4)
1164
1165 * Fix build issue
1166
1167Changes in [0.8.3](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.8.3) (2017-09-20)
1168================================================================================================
1169[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.8.3-rc.1...v0.8.3)
1170
1171 * No changes
1172
1173Changes in [0.8.3-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.8.3-rc.1) (2017-09-19)
1174==========================================================================================================
1175[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.8.2...v0.8.3-rc.1)
1176
1177 * consume trailing slash when creating Matrix Client in HS and IS urls
1178 [\#526](https://github.com/matrix-org/matrix-js-sdk/pull/526)
1179 * Add ignore users API
1180 [\#539](https://github.com/matrix-org/matrix-js-sdk/pull/539)
1181 * Upgrade to jsdoc 3.5.5
1182 [\#540](https://github.com/matrix-org/matrix-js-sdk/pull/540)
1183 * Make re-emitting events much more memory efficient
1184 [\#538](https://github.com/matrix-org/matrix-js-sdk/pull/538)
1185 * Only re-emit events from Event objects if needed
1186 [\#536](https://github.com/matrix-org/matrix-js-sdk/pull/536)
1187 * Handle 'left' users in the deviceList mananagement
1188 [\#535](https://github.com/matrix-org/matrix-js-sdk/pull/535)
1189 * Factor out devicelist integration tests to a separate file
1190 [\#534](https://github.com/matrix-org/matrix-js-sdk/pull/534)
1191 * Refactor sync._sync as an async function
1192 [\#533](https://github.com/matrix-org/matrix-js-sdk/pull/533)
1193 * Add es6 to eslint environments
1194 [\#532](https://github.com/matrix-org/matrix-js-sdk/pull/532)
1195
1196Changes in [0.8.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.8.2) (2017-08-24)
1197================================================================================================
1198[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.8.1...v0.8.2)
1199
1200 * Handle m.call.* events which are decrypted asynchronously
1201 [\#530](https://github.com/matrix-org/matrix-js-sdk/pull/530)
1202 * Re-emit events from, er, Event objects
1203 [\#529](https://github.com/matrix-org/matrix-js-sdk/pull/529)
1204
1205Changes in [0.8.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.8.1) (2017-08-23)
1206================================================================================================
1207[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.8.1-rc.1...v0.8.1)
1208
1209 * [No changes]
1210
1211Changes in [0.8.1-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.8.1-rc.1) (2017-08-22)
1212==========================================================================================================
1213[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.8.0...v0.8.1-rc.1)
1214
1215 * Fix error handling in interactive-auth
1216 [\#527](https://github.com/matrix-org/matrix-js-sdk/pull/527)
1217 * Make lots of OlmDevice asynchronous
1218 [\#524](https://github.com/matrix-org/matrix-js-sdk/pull/524)
1219 * Make crypto.decryptMessage return decryption results
1220 [\#523](https://github.com/matrix-org/matrix-js-sdk/pull/523)
1221
1222Changes in [0.8.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.8.0) (2017-08-15)
1223================================================================================================
1224[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.13...v0.8.0)
1225
1226BREAKING CHANGE
1227---------------
1228
1229In order to support a move to a more scalable storage backend, we need to make
1230a number of the APIs related end-to-end encryption asynchronous.
1231
1232This release of the JS-SDK includes the following changes which will affect
1233applications which support end-to-end encryption:
1234
12351. `MatrixClient` now provides a new (asynchronous) method,
1236 `initCrypto`. Applications which support end-to-end encryption must call
1237 this method (and wait for it to complete) before calling `startClient`, to
1238 give the crypto layer a chance to initialise.
1239
12402. The following APIs have been changed to return promises:
1241
1242 * `MatrixClient.getStoredDevicesForUser`
1243 * `MatrixClient.getStoredDevice`
1244 * `MatrixClient.setDeviceVerified`
1245 * `MatrixClient.setDeviceBlocked`
1246 * `MatrixClient.setDeviceKnown`
1247 * `MatrixClient.getEventSenderDeviceInfo`
1248 * `MatrixClient.isEventSenderVerified`
1249 * `MatrixClient.importRoomKeys`
1250
1251 Applications using the results of any of the above methods will need to be
1252 updated to wait for the result of the promise.
1253
1254
12553. `MatrixClient.listDeviceKeys` has been removed altogether. It's been
1256 deprecated for some time. Applications using it should instead be changed to
1257 use `MatrixClient.getStoredDevices`, which is similar but returns its results
1258 in a slightly different format.
1259
1260
1261 * Make bits of `olmlib` asynchronous
1262 [\#521](https://github.com/matrix-org/matrix-js-sdk/pull/521)
1263 * Make some of DeviceList asynchronous
1264 [\#520](https://github.com/matrix-org/matrix-js-sdk/pull/520)
1265 * Make methods in crypto/algorithms async
1266 [\#519](https://github.com/matrix-org/matrix-js-sdk/pull/519)
1267 * Avoid sending unencrypted messages in e2e room
1268 [\#518](https://github.com/matrix-org/matrix-js-sdk/pull/518)
1269 * Make tests wait for syncs to happen
1270 [\#517](https://github.com/matrix-org/matrix-js-sdk/pull/517)
1271 * Make a load of methods in the 'Crypto' module asynchronous
1272 [\#510](https://github.com/matrix-org/matrix-js-sdk/pull/510)
1273 * Set `rawDisplayName` to `userId` if membership has `displayname=null`
1274 [\#515](https://github.com/matrix-org/matrix-js-sdk/pull/515)
1275 * Refactor handling of crypto events for async
1276 [\#508](https://github.com/matrix-org/matrix-js-sdk/pull/508)
1277 * Let event decryption be asynchronous
1278 [\#509](https://github.com/matrix-org/matrix-js-sdk/pull/509)
1279 * Transform `async` functions to bluebird promises
1280 [\#511](https://github.com/matrix-org/matrix-js-sdk/pull/511)
1281 * Add more group APIs
1282 [\#512](https://github.com/matrix-org/matrix-js-sdk/pull/512)
1283 * Retrying test: wait for localEchoUpdated event
1284 [\#507](https://github.com/matrix-org/matrix-js-sdk/pull/507)
1285 * Fix member events breaking on timeline reset, 2
1286 [\#504](https://github.com/matrix-org/matrix-js-sdk/pull/504)
1287 * Make bits of the js-sdk api asynchronous
1288 [\#503](https://github.com/matrix-org/matrix-js-sdk/pull/503)
1289 * Yet more js-sdk test deflakification
1290 [\#499](https://github.com/matrix-org/matrix-js-sdk/pull/499)
1291 * Fix racy 'matrixclient retrying' test
1292 [\#497](https://github.com/matrix-org/matrix-js-sdk/pull/497)
1293 * Fix spamming of key-share-requests
1294 [\#495](https://github.com/matrix-org/matrix-js-sdk/pull/495)
1295 * Add progress handler to `uploadContent`
1296 [\#500](https://github.com/matrix-org/matrix-js-sdk/pull/500)
1297 * Switch matrix-js-sdk to bluebird
1298 [\#490](https://github.com/matrix-org/matrix-js-sdk/pull/490)
1299 * Fix some more flakey tests
1300 [\#492](https://github.com/matrix-org/matrix-js-sdk/pull/492)
1301 * make the npm test script windows-friendly
1302 [\#489](https://github.com/matrix-org/matrix-js-sdk/pull/489)
1303 * Fix a bunch of races in the tests
1304 [\#488](https://github.com/matrix-org/matrix-js-sdk/pull/488)
1305 * Fix early return in MatrixClient.setGuestAccess
1306 [\#487](https://github.com/matrix-org/matrix-js-sdk/pull/487)
1307 * Remove testUtils.failTest
1308 [\#486](https://github.com/matrix-org/matrix-js-sdk/pull/486)
1309 * Add test:watch script
1310 [\#485](https://github.com/matrix-org/matrix-js-sdk/pull/485)
1311 * Make it possible to use async/await
1312 [\#484](https://github.com/matrix-org/matrix-js-sdk/pull/484)
1313 * Remove m.new_device support
1314 [\#483](https://github.com/matrix-org/matrix-js-sdk/pull/483)
1315 * Use access-token in header
1316 [\#478](https://github.com/matrix-org/matrix-js-sdk/pull/478)
1317 * Sanity-check response from /thirdparty/protocols
1318 [\#482](https://github.com/matrix-org/matrix-js-sdk/pull/482)
1319 * Avoid parsing plain-text errors as JSON
1320 [\#479](https://github.com/matrix-org/matrix-js-sdk/pull/479)
1321 * Use external mock-request
1322 [\#481](https://github.com/matrix-org/matrix-js-sdk/pull/481)
1323 * Fix some races in the tests
1324 [\#480](https://github.com/matrix-org/matrix-js-sdk/pull/480)
1325 * Fall back to MemoryCryptoStore if indexeddb fails
1326 [\#475](https://github.com/matrix-org/matrix-js-sdk/pull/475)
1327 * Fix load failure in firefox when indexedDB is disabled
1328 [\#474](https://github.com/matrix-org/matrix-js-sdk/pull/474)
1329 * Fix a race in a test
1330 [\#471](https://github.com/matrix-org/matrix-js-sdk/pull/471)
1331 * Avoid throwing an unhandled error when the indexeddb is deleted
1332 [\#470](https://github.com/matrix-org/matrix-js-sdk/pull/470)
1333 * fix jsdoc
1334 [\#469](https://github.com/matrix-org/matrix-js-sdk/pull/469)
1335 * Handle m.forwarded_room_key events
1336 [\#468](https://github.com/matrix-org/matrix-js-sdk/pull/468)
1337 * Improve error reporting from indexeddbstore.clearDatabase
1338 [\#466](https://github.com/matrix-org/matrix-js-sdk/pull/466)
1339 * Implement sharing of megolm keys
1340 [\#454](https://github.com/matrix-org/matrix-js-sdk/pull/454)
1341 * Process received room key requests
1342 [\#449](https://github.com/matrix-org/matrix-js-sdk/pull/449)
1343 * Send m.room_key_request events when we fail to decrypt an event
1344 [\#448](https://github.com/matrix-org/matrix-js-sdk/pull/448)
1345
1346Changes in [0.7.13](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.13) (2017-06-22)
1347==================================================================================================
1348[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.12...v0.7.13)
1349
1350 * Fix failure on Tor browser
1351 [\#473](https://github.com/matrix-org/matrix-js-sdk/pull/473)
1352 * Fix issues with firefox private browsing
1353 [\#472](https://github.com/matrix-org/matrix-js-sdk/pull/472)
1354
1355Changes in [0.7.12](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.12) (2017-06-19)
1356==================================================================================================
1357[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.12-rc.1...v0.7.12)
1358
1359 * No changes
1360
1361
1362Changes in [0.7.12-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.12-rc.1) (2017-06-15)
1363============================================================================================================
1364[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.11...v0.7.12-rc.1)
1365
1366 * allow setting iceTransportPolicy to relay through forceTURN option
1367 [\#462](https://github.com/matrix-org/matrix-js-sdk/pull/462)
1368
1369Changes in [0.7.11](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.11) (2017-06-12)
1370==================================================================================================
1371[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.11-rc.1...v0.7.11)
1372
1373 * Add a bunch of logging around sending messages
1374 [\#460](https://github.com/matrix-org/matrix-js-sdk/pull/460)
1375
1376Changes in [0.7.11-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.11-rc.1) (2017-06-09)
1377============================================================================================================
1378[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.10...v0.7.11-rc.1)
1379
1380 * Make TimelineWindow.load resolve quicker if we have the events
1381 [\#458](https://github.com/matrix-org/matrix-js-sdk/pull/458)
1382 * Stop peeking when a matrix client is stopped
1383 [\#451](https://github.com/matrix-org/matrix-js-sdk/pull/451)
1384 * Update README: Clarify how to install libolm
1385 [\#450](https://github.com/matrix-org/matrix-js-sdk/pull/450)
1386
1387Changes in [0.7.10](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.10) (2017-06-02)
1388==================================================================================================
1389[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.9...v0.7.10)
1390
1391 * BREAKING CHANGE: The SDK no longer ``require``s ``olm`` - instead it expects
1392 libolm to be provided as an ``Olm`` global. This will only affect
1393 applications which use end-to-end encryption. See the
1394 [README](README.md#end-to-end-encryption-support) for details.
1395
1396 * indexeddb-crypto-store: fix db deletion
1397 [\#447](https://github.com/matrix-org/matrix-js-sdk/pull/447)
1398 * Load Olm from the global rather than requiring it.
1399 [\#446](https://github.com/matrix-org/matrix-js-sdk/pull/446)
1400
1401Changes in [0.7.9](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.9) (2017-06-01)
1402================================================================================================
1403[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.8...v0.7.9)
1404
1405 * Initial framework for indexeddb-backed crypto store
1406 [\#445](https://github.com/matrix-org/matrix-js-sdk/pull/445)
1407 * Factor out reEmit to a common module
1408 [\#444](https://github.com/matrix-org/matrix-js-sdk/pull/444)
1409 * crypto/algorithms/base.js: Convert to es6
1410 [\#443](https://github.com/matrix-org/matrix-js-sdk/pull/443)
1411 * maySendRedactionForEvent for userId
1412 [\#435](https://github.com/matrix-org/matrix-js-sdk/pull/435)
1413 * MatrixClient: add getUserId()
1414 [\#441](https://github.com/matrix-org/matrix-js-sdk/pull/441)
1415 * Run jsdoc on a custom babeling of the source
1416 [\#442](https://github.com/matrix-org/matrix-js-sdk/pull/442)
1417 * Add in a public api getStoredDevice allowing clients to get a specific
1418 device
1419 [\#439](https://github.com/matrix-org/matrix-js-sdk/pull/439)
1420
1421Changes in [0.7.8](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.8) (2017-05-22)
1422================================================================================================
1423[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.8-rc.1...v0.7.8)
1424
1425 * No changes
1426
1427
1428Changes in [0.7.8-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.8-rc.1) (2017-05-19)
1429==========================================================================================================
1430[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.7...v0.7.8-rc.1)
1431
1432 * Attempt to rework the release-tarball-signing stuff
1433 [\#438](https://github.com/matrix-org/matrix-js-sdk/pull/438)
1434 * ability to specify webrtc audio/video inputs for the lib to request
1435 [\#427](https://github.com/matrix-org/matrix-js-sdk/pull/427)
1436 * make screen sharing call FF friendly :D
1437 [\#434](https://github.com/matrix-org/matrix-js-sdk/pull/434)
1438 * Fix race in device list updates
1439 [\#431](https://github.com/matrix-org/matrix-js-sdk/pull/431)
1440 * WebRTC: Support recvonly for video for those without a webcam
1441 [\#424](https://github.com/matrix-org/matrix-js-sdk/pull/424)
1442 * Update istanbul to remove minimatch DoS Warning
1443 [\#422](https://github.com/matrix-org/matrix-js-sdk/pull/422)
1444 * webrtc/call: Make it much less likely that callIds collide locally
1445 [\#423](https://github.com/matrix-org/matrix-js-sdk/pull/423)
1446 * Automatically complete dummy auth
1447 [\#420](https://github.com/matrix-org/matrix-js-sdk/pull/420)
1448 * Don't leave the gh-pages branch checked out
1449 [\#418](https://github.com/matrix-org/matrix-js-sdk/pull/418)
1450
1451Changes in [0.7.7](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.7) (2017-04-25)
1452================================================================================================
1453[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.7-rc.1...v0.7.7)
1454
1455 * No changes
1456
1457
1458Changes in [0.7.7-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.7-rc.1) (2017-04-21)
1459==========================================================================================================
1460[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.6...v0.7.7-rc.1)
1461
1462 * Automatically complete dummy auth
1463 [\#420](https://github.com/matrix-org/matrix-js-sdk/pull/420)
1464
1465
1466Changes in [0.7.6](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.6) (2017-04-12)
1467================================================================================================
1468[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.6-rc.2...v0.7.6)
1469
1470 * No changes
1471
1472Changes in [0.7.6-rc.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.6-rc.2) (2017-04-10)
1473==========================================================================================================
1474[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.6-rc.1...v0.7.6-rc.2)
1475
1476 * Add feature detection for webworkers
1477 [\#416](https://github.com/matrix-org/matrix-js-sdk/pull/416)
1478 * Fix release script
1479 [\#415](https://github.com/matrix-org/matrix-js-sdk/pull/415)
1480
1481Changes in [0.7.6-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.6-rc.1) (2017-04-07)
1482==========================================================================================================
1483[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.5...v0.7.6-rc.1)
1484
1485 * Make indexeddb save after the first sync
1486 [\#414](https://github.com/matrix-org/matrix-js-sdk/pull/414)
1487 * Make indexeddb startup faster
1488 [\#413](https://github.com/matrix-org/matrix-js-sdk/pull/413)
1489 * Add ability to do indexeddb sync work in webworker
1490 [\#412](https://github.com/matrix-org/matrix-js-sdk/pull/412)
1491 * Move more functionality to the indexeddb backend
1492 [\#409](https://github.com/matrix-org/matrix-js-sdk/pull/409)
1493 * Indicate syncState ERROR after many failed /syncs
1494 [\#410](https://github.com/matrix-org/matrix-js-sdk/pull/410)
1495 * Further reorganising of indexeddb sync code
1496 [\#407](https://github.com/matrix-org/matrix-js-sdk/pull/407)
1497 * Change interface of IndexedDBStore: hide internals
1498 [\#406](https://github.com/matrix-org/matrix-js-sdk/pull/406)
1499 * Don't be SYNCING until updating from the server
1500 [\#405](https://github.com/matrix-org/matrix-js-sdk/pull/405)
1501 * Don't log the entire /sync response
1502 [\#403](https://github.com/matrix-org/matrix-js-sdk/pull/403)
1503 * webrtc/call: Assign MediaStream to video element srcObject
1504 [\#402](https://github.com/matrix-org/matrix-js-sdk/pull/402)
1505 * Fix undefined reference in http-api
1506 [\#400](https://github.com/matrix-org/matrix-js-sdk/pull/400)
1507 * Add copyright header to event-timeline.js
1508 [\#382](https://github.com/matrix-org/matrix-js-sdk/pull/382)
1509 * client: fix docs for user-scoped account_data events
1510 [\#397](https://github.com/matrix-org/matrix-js-sdk/pull/397)
1511 * Add a CONTRIBUTING for js-sdk
1512 [\#399](https://github.com/matrix-org/matrix-js-sdk/pull/399)
1513 * Fix leaking room state objects on limited sync responses
1514 [\#395](https://github.com/matrix-org/matrix-js-sdk/pull/395)
1515 * Extend 'ignoreFailure' to be 'background'
1516 [\#396](https://github.com/matrix-org/matrix-js-sdk/pull/396)
1517 * Add x_show_msisdn parameter to register calls
1518 [\#388](https://github.com/matrix-org/matrix-js-sdk/pull/388)
1519 * Update event redaction to keep sender and origin_server_ts
1520 [\#394](https://github.com/matrix-org/matrix-js-sdk/pull/394)
1521 * Handle 'limited' timeline responses in the SyncAccumulator
1522 [\#393](https://github.com/matrix-org/matrix-js-sdk/pull/393)
1523 * Give a better error message if the HS doesn't support msisdn registeration
1524 [\#391](https://github.com/matrix-org/matrix-js-sdk/pull/391)
1525 * Add getEmailSid
1526 [\#383](https://github.com/matrix-org/matrix-js-sdk/pull/383)
1527 * Add m.login.email.identity support to UI auth
1528 [\#380](https://github.com/matrix-org/matrix-js-sdk/pull/380)
1529 * src/client.js: Fix incorrect roomId reference in VoIP glare code
1530 [\#381](https://github.com/matrix-org/matrix-js-sdk/pull/381)
1531 * add .editorconfig
1532 [\#379](https://github.com/matrix-org/matrix-js-sdk/pull/379)
1533 * Store account data in the same way as room data
1534 [\#377](https://github.com/matrix-org/matrix-js-sdk/pull/377)
1535 * Upload one-time keys on /sync rather than a timer
1536 [\#376](https://github.com/matrix-org/matrix-js-sdk/pull/376)
1537 * Increase the WRITE_DELAY on database syncing
1538 [\#374](https://github.com/matrix-org/matrix-js-sdk/pull/374)
1539 * Make deleteAllData() return a Promise
1540 [\#373](https://github.com/matrix-org/matrix-js-sdk/pull/373)
1541 * Don't include banned users in the room name
1542 [\#372](https://github.com/matrix-org/matrix-js-sdk/pull/372)
1543 * Support IndexedDB as a backing store
1544 [\#363](https://github.com/matrix-org/matrix-js-sdk/pull/363)
1545 * Poll /sync with a short timeout while catching up
1546 [\#370](https://github.com/matrix-org/matrix-js-sdk/pull/370)
1547 * Make test coverage work again
1548 [\#368](https://github.com/matrix-org/matrix-js-sdk/pull/368)
1549 * Add docs to event
1550 [\#367](https://github.com/matrix-org/matrix-js-sdk/pull/367)
1551 * Keep the device-sync token more up-to-date
1552 [\#366](https://github.com/matrix-org/matrix-js-sdk/pull/366)
1553 * Fix race conditions in device list download
1554 [\#365](https://github.com/matrix-org/matrix-js-sdk/pull/365)
1555 * Fix the unban method
1556 [\#364](https://github.com/matrix-org/matrix-js-sdk/pull/364)
1557 * Spread out device verification work
1558 [\#362](https://github.com/matrix-org/matrix-js-sdk/pull/362)
1559 * Clean up/improve e2e logging
1560 [\#361](https://github.com/matrix-org/matrix-js-sdk/pull/361)
1561 * Fix decryption of events whose key arrives later
1562 [\#360](https://github.com/matrix-org/matrix-js-sdk/pull/360)
1563 * Invalidate device lists when encryption is enabled in a room
1564 [\#359](https://github.com/matrix-org/matrix-js-sdk/pull/359)
1565 * Switch from jasmine to mocha + expect + lolex
1566 [\#358](https://github.com/matrix-org/matrix-js-sdk/pull/358)
1567 * Install source-map-support in each test
1568 [\#356](https://github.com/matrix-org/matrix-js-sdk/pull/356)
1569 * searchMessageText: avoid setting keys=undefined
1570 [\#357](https://github.com/matrix-org/matrix-js-sdk/pull/357)
1571 * realtime-callbacks: pass `global` as `this`
1572 [\#355](https://github.com/matrix-org/matrix-js-sdk/pull/355)
1573 * Make the tests work without olm
1574 [\#354](https://github.com/matrix-org/matrix-js-sdk/pull/354)
1575 * Tests: Factor out TestClient and use it in crypto tests
1576 [\#353](https://github.com/matrix-org/matrix-js-sdk/pull/353)
1577 * Fix some lint
1578 [\#352](https://github.com/matrix-org/matrix-js-sdk/pull/352)
1579 * Make a sig for source tarballs when releasing
1580 [\#351](https://github.com/matrix-org/matrix-js-sdk/pull/351)
1581 * When doing a pre-release, don't bother merging to master and develop.
1582 [\#350](https://github.com/matrix-org/matrix-js-sdk/pull/350)
1583
1584Changes in [0.7.5](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.5) (2017-02-04)
1585================================================================================================
1586[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.5-rc.3...v0.7.5)
1587
1588No changes from 0.7.5-rc.3
1589
1590Changes in [0.7.5-rc.3](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.5-rc.3) (2017-02-03)
1591==========================================================================================================
1592[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.5-rc.2...v0.7.5-rc.3)
1593
1594 * Include DeviceInfo in deviceVerificationChanged events
1595 [a3cc8eb](https://github.com/matrix-org/matrix-js-sdk/commit/a3cc8eb1f6d165576a342596f638316721cb26b6)
1596 * Fix device list update
1597 [5fd7410](https://github.com/matrix-org/matrix-js-sdk/commit/5fd74109ffc56b73deb40c2604d84c38b8032c40)
1598
1599
1600Changes in [0.7.5-rc.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.5-rc.2) (2017-02-03)
1601==========================================================================================================
1602[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.5-rc.1...v0.7.5-rc.2)
1603
1604 * Use the device change notifications interface
1605 [\#348](https://github.com/matrix-org/matrix-js-sdk/pull/348)
1606 * Rewrite the device key query logic
1607 [\#347](https://github.com/matrix-org/matrix-js-sdk/pull/347)
1608
1609Changes in [0.7.5-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.5-rc.1) (2017-02-03)
1610==========================================================================================================
1611[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.4...v0.7.5-rc.1)
1612
1613 * Support for blacklisting unverified devices, both per-room and globally
1614 [\#336](https://github.com/matrix-org/matrix-js-sdk/pull/336)
1615 * track errors when events can't be sent
1616 [\#349](https://github.com/matrix-org/matrix-js-sdk/pull/349)
1617 * Factor out device list management
1618 [\#346](https://github.com/matrix-org/matrix-js-sdk/pull/346)
1619 * Support for warning users when unknown devices show up
1620 [\#335](https://github.com/matrix-org/matrix-js-sdk/pull/335)
1621 * Enable sourcemaps in browserified distro
1622 [\#345](https://github.com/matrix-org/matrix-js-sdk/pull/345)
1623 * Record all e2e room settings in localstorage
1624 [\#344](https://github.com/matrix-org/matrix-js-sdk/pull/344)
1625 * Make Olm work with browserified js-sdk
1626 [\#340](https://github.com/matrix-org/matrix-js-sdk/pull/340)
1627 * Make browserify a dev dependency
1628 [\#339](https://github.com/matrix-org/matrix-js-sdk/pull/339)
1629 * Allow single line brace-style
1630 [\#338](https://github.com/matrix-org/matrix-js-sdk/pull/338)
1631 * Turn on comma-dangle for function calls
1632 [\#333](https://github.com/matrix-org/matrix-js-sdk/pull/333)
1633 * Add prefer-const
1634 [\#331](https://github.com/matrix-org/matrix-js-sdk/pull/331)
1635 * Support for importing and exporting megolm sessions
1636 [\#326](https://github.com/matrix-org/matrix-js-sdk/pull/326)
1637 * Fix linting on all tests
1638 [\#329](https://github.com/matrix-org/matrix-js-sdk/pull/329)
1639 * Fix ESLint warnings and errors
1640 [\#325](https://github.com/matrix-org/matrix-js-sdk/pull/325)
1641 * BREAKING CHANGE: Remove WebStorageStore
1642 [\#324](https://github.com/matrix-org/matrix-js-sdk/pull/324)
1643
1644Changes in [0.7.4](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.4) (2017-01-16)
1645================================================================================================
1646[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.4-rc.1...v0.7.4)
1647
1648 * Fix non-conference calling
1649
1650Changes in [0.7.4-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.4-rc.1) (2017-01-13)
1651==========================================================================================================
1652[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.3...v0.7.4-rc.1)
1653
1654 * Remove babel-polyfill
1655 [\#321](https://github.com/matrix-org/matrix-js-sdk/pull/321)
1656 * Update build process for ES6
1657 [\#320](https://github.com/matrix-org/matrix-js-sdk/pull/320)
1658 * 'babel' is not a babel package anymore
1659 [\#319](https://github.com/matrix-org/matrix-js-sdk/pull/319)
1660 * Add Babel for ES6 support
1661 [\#318](https://github.com/matrix-org/matrix-js-sdk/pull/318)
1662 * Move screen sharing check/error
1663 [\#317](https://github.com/matrix-org/matrix-js-sdk/pull/317)
1664 * release.sh: Bail early if there are uncommitted changes
1665 [\#316](https://github.com/matrix-org/matrix-js-sdk/pull/316)
1666
1667Changes in [0.7.3](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.3) (2017-01-04)
1668================================================================================================
1669[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.2...v0.7.3)
1670
1671 * User presence list feature
1672 [\#310](https://github.com/matrix-org/matrix-js-sdk/pull/310)
1673 * Allow clients the ability to set a default local timeout
1674 [\#313](https://github.com/matrix-org/matrix-js-sdk/pull/313)
1675 * Add API to delete threepid
1676 [\#312](https://github.com/matrix-org/matrix-js-sdk/pull/312)
1677
1678Changes in [0.7.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.2) (2016-12-15)
1679================================================================================================
1680[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.1...v0.7.2)
1681
1682 * Bump to Olm 2.0
1683 [\#309](https://github.com/matrix-org/matrix-js-sdk/pull/309)
1684 * Sanity check payload length before encrypting
1685 [\#307](https://github.com/matrix-org/matrix-js-sdk/pull/307)
1686 * Remove dead _sendPingToDevice function
1687 [\#308](https://github.com/matrix-org/matrix-js-sdk/pull/308)
1688 * Add setRoomDirectoryVisibilityAppService
1689 [\#306](https://github.com/matrix-org/matrix-js-sdk/pull/306)
1690 * Update release script to do signed releases
1691 [\#305](https://github.com/matrix-org/matrix-js-sdk/pull/305)
1692 * e2e: Wait for pending device lists
1693 [\#304](https://github.com/matrix-org/matrix-js-sdk/pull/304)
1694 * Start a new megolm session when devices are blacklisted
1695 [\#303](https://github.com/matrix-org/matrix-js-sdk/pull/303)
1696 * E2E: Download our own devicelist on startup
1697 [\#302](https://github.com/matrix-org/matrix-js-sdk/pull/302)
1698
1699Changes in [0.7.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.1) (2016-12-09)
1700================================================================================================
1701[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.1-rc.1...v0.7.1)
1702
1703No changes
1704
1705
1706Changes in [0.7.1-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.1-rc.1) (2016-12-05)
1707==========================================================================================================
1708[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.7.0...v0.7.1-rc.1)
1709
1710 * Avoid NPE when no sessionStore is given
1711 [\#300](https://github.com/matrix-org/matrix-js-sdk/pull/300)
1712 * Improve decryption error messages
1713 [\#299](https://github.com/matrix-org/matrix-js-sdk/pull/299)
1714 * Revert "Use native Array.isArray when available."
1715 [\#283](https://github.com/matrix-org/matrix-js-sdk/pull/283)
1716 * Use native Array.isArray when available.
1717 [\#282](https://github.com/matrix-org/matrix-js-sdk/pull/282)
1718
1719Changes in [0.7.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.7.0) (2016-11-18)
1720================================================================================================
1721[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.6.4...v0.7.0)
1722
1723 * Avoid a packetstorm of device queries on startup
1724 [\#297](https://github.com/matrix-org/matrix-js-sdk/pull/297)
1725 * E2E: Check devices to share keys with on each send
1726 [\#295](https://github.com/matrix-org/matrix-js-sdk/pull/295)
1727 * Apply unknown-keyshare mitigations
1728 [\#296](https://github.com/matrix-org/matrix-js-sdk/pull/296)
1729 * distinguish unknown users from deviceless users
1730 [\#294](https://github.com/matrix-org/matrix-js-sdk/pull/294)
1731 * Allow starting client with initialSyncLimit = 0
1732 [\#293](https://github.com/matrix-org/matrix-js-sdk/pull/293)
1733 * Make timeline-window _unpaginate public and rename to unpaginate
1734 [\#289](https://github.com/matrix-org/matrix-js-sdk/pull/289)
1735 * Send a STOPPED sync updated after call to stopClient
1736 [\#286](https://github.com/matrix-org/matrix-js-sdk/pull/286)
1737 * Fix bug in verifying megolm event senders
1738 [\#292](https://github.com/matrix-org/matrix-js-sdk/pull/292)
1739 * Handle decryption of events after they arrive
1740 [\#288](https://github.com/matrix-org/matrix-js-sdk/pull/288)
1741 * Fix examples.
1742 [\#287](https://github.com/matrix-org/matrix-js-sdk/pull/287)
1743 * Add a travis.yml
1744 [\#278](https://github.com/matrix-org/matrix-js-sdk/pull/278)
1745 * Encrypt all events, including 'm.call.*'
1746 [\#277](https://github.com/matrix-org/matrix-js-sdk/pull/277)
1747 * Ignore reshares of known megolm sessions
1748 [\#276](https://github.com/matrix-org/matrix-js-sdk/pull/276)
1749 * Log to the console on unknown session
1750 [\#274](https://github.com/matrix-org/matrix-js-sdk/pull/274)
1751 * Make it easier for SDK users to wrap prevailing the 'request' function
1752 [\#273](https://github.com/matrix-org/matrix-js-sdk/pull/273)
1753
1754Changes in [0.6.4](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.6.4) (2016-11-04)
1755================================================================================================
1756[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.6.4-rc.2...v0.6.4)
1757
1758 * Change release script to pass version by environment variable
1759
1760
1761Changes in [0.6.4-rc.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.6.4-rc.2) (2016-11-02)
1762==========================================================================================================
1763[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.6.4-rc.1...v0.6.4-rc.2)
1764
1765 * Add getRoomTags method to client
1766 [\#236](https://github.com/matrix-org/matrix-js-sdk/pull/236)
1767
1768Changes in [0.6.4-rc.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.6.4-rc.1) (2016-11-02)
1769==========================================================================================================
1770[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.6.3...v0.6.4-rc.1)
1771
1772Breaking Changes
1773----------------
1774 * Bundled version of the JS SDK are no longer versioned along with
1775 source files in the dist/ directory. As of this release, they
1776 will be included in the release tarball, but not the source
1777 repository.
1778
1779Other Changes
1780-------------
1781 * More fixes to the release script
1782 [\#272](https://github.com/matrix-org/matrix-js-sdk/pull/272)
1783 * Update the release process to use github releases
1784 [\#271](https://github.com/matrix-org/matrix-js-sdk/pull/271)
1785 * Don't package the world when we release
1786 [\#270](https://github.com/matrix-org/matrix-js-sdk/pull/270)
1787 * Add ability to set a filter prior to the first /sync
1788 [\#269](https://github.com/matrix-org/matrix-js-sdk/pull/269)
1789 * Sign one-time keys, and verify their signatures
1790 [\#243](https://github.com/matrix-org/matrix-js-sdk/pull/243)
1791 * Check for duplicate message indexes for group messages
1792 [\#241](https://github.com/matrix-org/matrix-js-sdk/pull/241)
1793 * Rotate megolm sessions
1794 [\#240](https://github.com/matrix-org/matrix-js-sdk/pull/240)
1795 * Check recipient and sender in Olm messages
1796 [\#239](https://github.com/matrix-org/matrix-js-sdk/pull/239)
1797 * Consistency checks for E2E device downloads
1798 [\#237](https://github.com/matrix-org/matrix-js-sdk/pull/237)
1799 * Support User-Interactive auth for delete device
1800 [\#235](https://github.com/matrix-org/matrix-js-sdk/pull/235)
1801 * Utility to help with interactive auth
1802 [\#234](https://github.com/matrix-org/matrix-js-sdk/pull/234)
1803 * Fix sync breaking when an invalid filterId is in localStorage
1804 [\#228](https://github.com/matrix-org/matrix-js-sdk/pull/228)
1805
1806Changes in [0.6.3](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.6.3) (2016-10-12)
1807================================================================================================
1808[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.6.2...v0.6.3)
1809
1810Breaking Changes
1811----------------
1812 * Add a 'RECONNECTING' state to the sync states. This is an additional state
1813 between 'SYNCING' and 'ERROR', so most clients should not notice.
1814
1815Other Changes
1816----------------
1817 * Fix params getting replaced on register calls
1818 [\#233](https://github.com/matrix-org/matrix-js-sdk/pull/233)
1819 * Fix potential 30s delay on reconnect
1820 [\#232](https://github.com/matrix-org/matrix-js-sdk/pull/232)
1821 * uploadContent: Attempt some consistency between browser and node
1822 [\#230](https://github.com/matrix-org/matrix-js-sdk/pull/230)
1823 * Fix error handling on uploadContent
1824 [\#229](https://github.com/matrix-org/matrix-js-sdk/pull/229)
1825 * Fix uploadContent for node.js
1826 [\#226](https://github.com/matrix-org/matrix-js-sdk/pull/226)
1827 * Don't emit ERROR until a keepalive poke fails
1828 [\#223](https://github.com/matrix-org/matrix-js-sdk/pull/223)
1829 * Function to get the fallback url for interactive auth
1830 [\#224](https://github.com/matrix-org/matrix-js-sdk/pull/224)
1831 * Revert "Handle the first /sync failure differently."
1832 [\#222](https://github.com/matrix-org/matrix-js-sdk/pull/222)
1833
1834Changes in [0.6.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.6.2) (2016-10-05)
1835================================================================================================
1836[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.6.1...v0.6.2)
1837
1838 * Check dependencies aren't on develop in release.sh
1839 [\#221](https://github.com/matrix-org/matrix-js-sdk/pull/221)
1840 * Fix checkTurnServers leak on logout
1841 [\#220](https://github.com/matrix-org/matrix-js-sdk/pull/220)
1842 * Fix leak of file upload objects
1843 [\#219](https://github.com/matrix-org/matrix-js-sdk/pull/219)
1844 * crypto: remove duplicate code
1845 [\#218](https://github.com/matrix-org/matrix-js-sdk/pull/218)
1846 * Add API for 3rd party location lookup
1847 [\#217](https://github.com/matrix-org/matrix-js-sdk/pull/217)
1848 * Handle the first /sync failure differently.
1849 [\#216](https://github.com/matrix-org/matrix-js-sdk/pull/216)
1850
1851Changes in [0.6.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.6.1) (2016-09-21)
1852================================================================================================
1853[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.6.0...v0.6.1)
1854
1855 * Fix the ed25519 key checking
1856 [\#215](https://github.com/matrix-org/matrix-js-sdk/pull/215)
1857 * Add MatrixClient.getEventSenderDeviceInfo()
1858 [\#214](https://github.com/matrix-org/matrix-js-sdk/pull/214)
1859
1860Changes in [0.6.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.6.0) (2016-09-21)
1861================================================================================================
1862[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.5.6...v0.6.0)
1863
1864 * Pull user device list on join
1865 [\#212](https://github.com/matrix-org/matrix-js-sdk/pull/212)
1866 * Fix sending of oh_hais on bad sessions
1867 [\#213](https://github.com/matrix-org/matrix-js-sdk/pull/213)
1868 * Support /publicRooms pagination
1869 [\#211](https://github.com/matrix-org/matrix-js-sdk/pull/211)
1870 * Update the olm library version to 1.3.0
1871 [\#205](https://github.com/matrix-org/matrix-js-sdk/pull/205)
1872 * Comment what the logic in uploadKeys does
1873 [\#209](https://github.com/matrix-org/matrix-js-sdk/pull/209)
1874 * Include keysProved and keysClaimed in the local echo for events we send.
1875 [\#210](https://github.com/matrix-org/matrix-js-sdk/pull/210)
1876 * Check if we need to upload new one-time keys every 10 minutes
1877 [\#208](https://github.com/matrix-org/matrix-js-sdk/pull/208)
1878 * Reset oneTimeKey to null on each loop iteration.
1879 [\#207](https://github.com/matrix-org/matrix-js-sdk/pull/207)
1880 * Add getKeysProved and getKeysClaimed methods to MatrixEvent.
1881 [\#206](https://github.com/matrix-org/matrix-js-sdk/pull/206)
1882 * Send a 'm.new_device' when we get a message for an unknown group session
1883 [\#204](https://github.com/matrix-org/matrix-js-sdk/pull/204)
1884 * Introduce EventTimelineSet, filtered timelines and global notif timeline.
1885 [\#196](https://github.com/matrix-org/matrix-js-sdk/pull/196)
1886 * Wrap the crypto event handlers in try/catch blocks
1887 [\#203](https://github.com/matrix-org/matrix-js-sdk/pull/203)
1888 * Show warnings on to-device decryption fail
1889 [\#202](https://github.com/matrix-org/matrix-js-sdk/pull/202)
1890 * s/Displayname/DisplayName/
1891 [\#201](https://github.com/matrix-org/matrix-js-sdk/pull/201)
1892 * OH HAI
1893 [\#200](https://github.com/matrix-org/matrix-js-sdk/pull/200)
1894 * Share the current ratchet with new members
1895 [\#199](https://github.com/matrix-org/matrix-js-sdk/pull/199)
1896 * Move crypto bits into a subdirectory
1897 [\#198](https://github.com/matrix-org/matrix-js-sdk/pull/198)
1898 * Refactor event handling in Crypto
1899 [\#197](https://github.com/matrix-org/matrix-js-sdk/pull/197)
1900 * Don't create Olm sessions proactively
1901 [\#195](https://github.com/matrix-org/matrix-js-sdk/pull/195)
1902 * Use to-device events for key sharing
1903 [\#194](https://github.com/matrix-org/matrix-js-sdk/pull/194)
1904 * README: callbacks deprecated
1905 [\#193](https://github.com/matrix-org/matrix-js-sdk/pull/193)
1906 * Fix sender verification for megolm messages
1907 [\#192](https://github.com/matrix-org/matrix-js-sdk/pull/192)
1908 * Use `ciphertext` instead of `body` in megolm events
1909 [\#191](https://github.com/matrix-org/matrix-js-sdk/pull/191)
1910 * Add debug methods to get the state of OlmSessions
1911 [\#189](https://github.com/matrix-org/matrix-js-sdk/pull/189)
1912 * MatrixClient.getStoredDevicesForUser
1913 [\#190](https://github.com/matrix-org/matrix-js-sdk/pull/190)
1914 * Olm-related cleanups
1915 [\#188](https://github.com/matrix-org/matrix-js-sdk/pull/188)
1916 * Update to fixed olmlib
1917 [\#187](https://github.com/matrix-org/matrix-js-sdk/pull/187)
1918 * always play audio out of the remoteAudioElement if it exists.
1919 [\#186](https://github.com/matrix-org/matrix-js-sdk/pull/186)
1920 * Fix exceptions where HTMLMediaElement loads and plays race
1921 [\#185](https://github.com/matrix-org/matrix-js-sdk/pull/185)
1922 * Reset megolm session when people join/leave the room
1923 [\#183](https://github.com/matrix-org/matrix-js-sdk/pull/183)
1924 * Fix exceptions when dealing with redactions
1925 [\#184](https://github.com/matrix-org/matrix-js-sdk/pull/184)
1926
1927Changes in [0.5.6](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.5.6) (2016-08-28)
1928================================================================================================
1929[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.5.5...v0.5.6)
1930
1931 * Put all of the megolm keys in one room message
1932 [\#182](https://github.com/matrix-org/matrix-js-sdk/pull/182)
1933 * Reinstate device blocking for simple Olm
1934 [\#181](https://github.com/matrix-org/matrix-js-sdk/pull/181)
1935 * support for unpacking megolm keys
1936 [\#180](https://github.com/matrix-org/matrix-js-sdk/pull/180)
1937 * Send out megolm keys when we start a megolm session
1938 [\#179](https://github.com/matrix-org/matrix-js-sdk/pull/179)
1939 * Change the result structure for ensureOlmSessionsForUsers
1940 [\#178](https://github.com/matrix-org/matrix-js-sdk/pull/178)
1941 * Factor out a function for doing olm encryption
1942 [\#177](https://github.com/matrix-org/matrix-js-sdk/pull/177)
1943 * Move DeviceInfo and DeviceVerification to separate module
1944 [\#175](https://github.com/matrix-org/matrix-js-sdk/pull/175)
1945 * Make encryption asynchronous
1946 [\#176](https://github.com/matrix-org/matrix-js-sdk/pull/176)
1947 * Added ability to set and get status_msg for presence.
1948 [\#167](https://github.com/matrix-org/matrix-js-sdk/pull/167)
1949 * Megolm: don't dereference nullable object
1950 [\#174](https://github.com/matrix-org/matrix-js-sdk/pull/174)
1951 * Implement megolm encryption/decryption
1952 [\#173](https://github.com/matrix-org/matrix-js-sdk/pull/173)
1953 * Update our push rules when they come down stream
1954 [\#170](https://github.com/matrix-org/matrix-js-sdk/pull/170)
1955 * Factor Olm encryption/decryption out to new classes
1956 [\#172](https://github.com/matrix-org/matrix-js-sdk/pull/172)
1957 * Make DeviceInfo more useful, and refactor crypto methods to use it
1958 [\#171](https://github.com/matrix-org/matrix-js-sdk/pull/171)
1959 * Move login and register methods into base-apis
1960 [\#169](https://github.com/matrix-org/matrix-js-sdk/pull/169)
1961 * Remove defaultDeviceDisplayName from MatrixClient options
1962 [\#168](https://github.com/matrix-org/matrix-js-sdk/pull/168)
1963
1964Changes in [0.5.5](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.5.5) (2016-08-11)
1965================================================================================================
1966[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.5.4...v0.5.5)
1967
1968 * Add room.getAliases() and room.getCanonicalAlias
1969 * Add API calls `/register/email/requestToken`, `/account/password/email/requestToken` and `/account/3pid/email/requestToken`
1970 * Add `User.currentlyActive` and `User.lastPresenceTs` events for changes in fields on the User object
1971 * Add `logout` and `deactivateAccount`
1972
1973 * Make sure we actually stop the sync loop on logout
1974 [\#166](https://github.com/matrix-org/matrix-js-sdk/pull/166)
1975 * Zero is a valid power level
1976 [\#164](https://github.com/matrix-org/matrix-js-sdk/pull/164)
1977 * Verify e2e keys on download
1978 [\#163](https://github.com/matrix-org/matrix-js-sdk/pull/163)
1979 * Factor crypto stuff out of MatrixClient
1980 [\#162](https://github.com/matrix-org/matrix-js-sdk/pull/162)
1981 * Refactor device key upload
1982 [\#161](https://github.com/matrix-org/matrix-js-sdk/pull/161)
1983 * Wrappers for devices API
1984 [\#158](https://github.com/matrix-org/matrix-js-sdk/pull/158)
1985 * Add deactivate account function
1986 [\#160](https://github.com/matrix-org/matrix-js-sdk/pull/160)
1987 * client.listDeviceKeys: Expose device display name
1988 [\#159](https://github.com/matrix-org/matrix-js-sdk/pull/159)
1989 * Add `logout`
1990 [\#157](https://github.com/matrix-org/matrix-js-sdk/pull/157)
1991 * Fix email registration
1992 [\#156](https://github.com/matrix-org/matrix-js-sdk/pull/156)
1993 * Factor out MatrixClient methods to MatrixBaseApis
1994 [\#155](https://github.com/matrix-org/matrix-js-sdk/pull/155)
1995 * Fix some broken tests
1996 [\#154](https://github.com/matrix-org/matrix-js-sdk/pull/154)
1997 * make jenkins fail the build if the tests fail
1998 [\#153](https://github.com/matrix-org/matrix-js-sdk/pull/153)
1999 * deviceId-related fixes
2000 [\#152](https://github.com/matrix-org/matrix-js-sdk/pull/152)
2001 * /login, /register: Add device_id and initial_device_display_name
2002 [\#151](https://github.com/matrix-org/matrix-js-sdk/pull/151)
2003 * Support global account_data
2004 [\#150](https://github.com/matrix-org/matrix-js-sdk/pull/150)
2005 * Add more events to User
2006 [\#149](https://github.com/matrix-org/matrix-js-sdk/pull/149)
2007 * Add API calls for other requestToken endpoints
2008 [\#148](https://github.com/matrix-org/matrix-js-sdk/pull/148)
2009 * Add register-specific request token endpoint
2010 [\#147](https://github.com/matrix-org/matrix-js-sdk/pull/147)
2011 * Set a valid SPDX license identifier in package.json
2012 [\#139](https://github.com/matrix-org/matrix-js-sdk/pull/139)
2013 * Configure encryption on m.room.encryption events
2014 [\#145](https://github.com/matrix-org/matrix-js-sdk/pull/145)
2015 * Implement device blocking
2016 [\#146](https://github.com/matrix-org/matrix-js-sdk/pull/146)
2017 * Clearer doc for setRoomDirectoryVisibility
2018 [\#144](https://github.com/matrix-org/matrix-js-sdk/pull/144)
2019 * crypto: use memberlist to derive recipient list
2020 [\#143](https://github.com/matrix-org/matrix-js-sdk/pull/143)
2021 * Support for marking devices as unverified
2022 [\#142](https://github.com/matrix-org/matrix-js-sdk/pull/142)
2023 * Add Olm as an optionalDependency
2024 [\#141](https://github.com/matrix-org/matrix-js-sdk/pull/141)
2025 * Add room.getAliases() and room.getCanonicalAlias()
2026 [\#140](https://github.com/matrix-org/matrix-js-sdk/pull/140)
2027 * Change how MatrixEvent manages encrypted events
2028 [\#138](https://github.com/matrix-org/matrix-js-sdk/pull/138)
2029 * Catch exceptions when encrypting events
2030 [\#137](https://github.com/matrix-org/matrix-js-sdk/pull/137)
2031 * Support for marking devices as verified
2032 [\#136](https://github.com/matrix-org/matrix-js-sdk/pull/136)
2033 * Various matrix-client refactorings and fixes
2034 [\#134](https://github.com/matrix-org/matrix-js-sdk/pull/134)
2035
2036Changes in [0.5.4](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.5.4) (2016-06-02)
2037================================================================================================
2038[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.5.3...v0.5.4)
2039
2040 * Correct fix for https://github.com/vector-im/vector-web/issues/1039
2041 * Make release.sh work on OSX
2042
2043
2044Changes in [0.5.3](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.5.3) (2016-06-02)
2045================================================================================================
2046[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.5.2...v0.5.3)
2047
2048 * Add support for the openid interface
2049 [\#133](https://github.com/matrix-org/matrix-js-sdk/pull/133)
2050 * Bugfix for HTTP upload content when running on node
2051 [\#129](https://github.com/matrix-org/matrix-js-sdk/pull/129)
2052 * Ignore missing profile (displayname and avatar_url) fields on
2053 presence events, rather than overwriting existing valid profile
2054 data from membership events or elsewhere.
2055 Fixes https://github.com/vector-im/vector-web/issues/1039
2056
2057Changes in [0.5.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.5.2) (2016-04-19)
2058================================================================================================
2059[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.5.1...v0.5.2)
2060
2061 * Track the absolute time that presence events are received, so that the
2062 relative lastActiveAgo value is meaningful.
2063 [\#128](https://github.com/matrix-org/matrix-js-sdk/pull/128)
2064 * Refactor the addition of events to rooms
2065 [\#127](https://github.com/matrix-org/matrix-js-sdk/pull/127)
2066 * Clean up test shutdown
2067 [\#126](https://github.com/matrix-org/matrix-js-sdk/pull/126)
2068 * Add methods to get (and set) pushers
2069 [\#125](https://github.com/matrix-org/matrix-js-sdk/pull/125)
2070 * URL previewing support
2071 [\#122](https://github.com/matrix-org/matrix-js-sdk/pull/122)
2072 * Avoid paginating forever in private rooms
2073 [\#124](https://github.com/matrix-org/matrix-js-sdk/pull/124)
2074 * Fix a bug where we recreated sync filters
2075 [\#123](https://github.com/matrix-org/matrix-js-sdk/pull/123)
2076 * Implement HTTP timeouts in realtime
2077 [\#121](https://github.com/matrix-org/matrix-js-sdk/pull/121)
2078
2079Changes in [0.5.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.5.1) (2016-03-30)
2080================================================================================================
2081[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.5.0...v0.5.1)
2082
2083 * Only count joined members for the member count in notifications.
2084 [\#119](https://github.com/matrix-org/matrix-js-sdk/pull/119)
2085 * Add maySendEvent to match maySendStateEvent
2086 [\#118](https://github.com/matrix-org/matrix-js-sdk/pull/118)
2087
2088Changes in [0.5.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.5.0) (2016-03-22)
2089================================================================================================
2090[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.4.2...v0.5.0)
2091
2092**BREAKING CHANGES**:
2093 * `opts.pendingEventOrdering`==`end` is no longer supported in the arguments to
2094 `MatrixClient.startClient()`. Instead we provide a `detached` option, which
2095 puts pending events into a completely separate list in the Room, accessible
2096 via `Room.getPendingEvents()`.
2097 [\#111](https://github.com/matrix-org/matrix-js-sdk/pull/111)
2098
2099Other improvements:
2100 * Log the stack when we get a sync error
2101 [\#109](https://github.com/matrix-org/matrix-js-sdk/pull/109)
2102 * Refactor transmitted-messages code
2103 [\#110](https://github.com/matrix-org/matrix-js-sdk/pull/110)
2104 * Add a method to the js sdk to look up 3pids on the ID server.
2105 [\#113](https://github.com/matrix-org/matrix-js-sdk/pull/113)
2106 * Support for cancelling pending events
2107 [\#112](https://github.com/matrix-org/matrix-js-sdk/pull/112)
2108 * API to stop peeking
2109 [\#114](https://github.com/matrix-org/matrix-js-sdk/pull/114)
2110 * update store user metadata based on membership events rather than presence
2111 [\#116](https://github.com/matrix-org/matrix-js-sdk/pull/116)
2112 * Include a counter in generated transaction IDs
2113 [\#115](https://github.com/matrix-org/matrix-js-sdk/pull/115)
2114 * get/setRoomVisibility API
2115 [\#117](https://github.com/matrix-org/matrix-js-sdk/pull/117)
2116
2117Changes in [0.4.2](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v0.4.2) (2016-03-17)
2118================================================================================================
2119[Full Changelog](https://github.com/matrix-org/matrix-js-sdk/compare/v0.4.1...v0.4.2)
2120
2121 * Try again if a pagination request gives us no new messages
2122 [\#98](https://github.com/matrix-org/matrix-js-sdk/pull/98)
2123 * Add a delay before we start polling the connectivity check endpoint
2124 [\#99](https://github.com/matrix-org/matrix-js-sdk/pull/99)
2125 * Clean up a codepath that was only used for crypto messages
2126 [\#101](https://github.com/matrix-org/matrix-js-sdk/pull/101)
2127 * Add maySendStateEvent method, ported from react-sdk (but fixed).
2128 [\#94](https://github.com/matrix-org/matrix-js-sdk/pull/94)
2129 * Add Session.logged_out event
2130 [\#100](https://github.com/matrix-org/matrix-js-sdk/pull/100)
2131 * make presence work when peeking.
2132 [\#103](https://github.com/matrix-org/matrix-js-sdk/pull/103)
2133 * Add RoomState.mayClientSendStateEvent()
2134 [\#104](https://github.com/matrix-org/matrix-js-sdk/pull/104)
2135 * Fix displaynames for member join events
2136 [\#108](https://github.com/matrix-org/matrix-js-sdk/pull/108)
2137
2138Changes in 0.4.1
2139================
2140
2141Improvements:
2142 * Check that `/sync` filters are correct before reusing them, and recreate
2143 them if not (https://github.com/matrix-org/matrix-js-sdk/pull/85).
2144 * Fire a `Room.timelineReset` event when a room's timeline is reset by a gappy
2145 `/sync` (https://github.com/matrix-org/matrix-js-sdk/pull/87,
2146 https://github.com/matrix-org/matrix-js-sdk/pull/93).
2147 * Make `TimelineWindow.load()` faster in the simple case of loading the live
2148 timeline (https://github.com/matrix-org/matrix-js-sdk/pull/88).
2149 * Update room-name calculation code to use the name of the sender of the
2150 invite when invited to a room
2151 (https://github.com/matrix-org/matrix-js-sdk/pull/89).
2152 * Don't reset the timeline when we join a room after peeking into it
2153 (https://github.com/matrix-org/matrix-js-sdk/pull/91).
2154 * Fire `Room.localEchoUpdated` events as local echoes progress through their
2155 transmission process (https://github.com/matrix-org/matrix-js-sdk/pull/95,
2156 https://github.com/matrix-org/matrix-js-sdk/pull/97).
2157 * Avoid getting stuck in a pagination loop when the server sends us only
2158 messages we've already seen
2159 (https://github.com/matrix-org/matrix-js-sdk/pull/96).
2160
2161New methods:
2162 * Add `MatrixClient.setPushRuleActions` to set the actions for a push
2163 notification rule (https://github.com/matrix-org/matrix-js-sdk/pull/90)
2164 * Add `RoomState.maySendStateEvent` which determines if a given user has
2165 permission to send a state event
2166 (https://github.com/matrix-org/matrix-js-sdk/pull/94)
2167
2168Changes in 0.4.0
2169================
2170
2171**BREAKING CHANGES**:
2172 * `RoomMember.getAvatarUrl()` and `MatrixClient.mxcUrlToHttp()` now return the
2173 empty string when given anything other than an mxc:// URL. This ensures that
2174 clients never inadvertantly reference content directly, leaking information
2175 to third party servers. The `allowDirectLinks` option is provided if the client
2176 wants to allow such links.
2177 * Add a 'bindEmail' option to register()
2178
2179Improvements:
2180 * Support third party invites
2181 * More appropriate naming for third party invite rooms
2182 * Poll the 'versions' endpoint to re-establish connectivity
2183 * Catch exceptions when syncing
2184 * Room tag support
2185 * Generate implicit read receipts
2186 * Support CAS login
2187 * Guest access support
2188 * Never return non-mxc URLs by default
2189 * Ability to cancel file uploads
2190 * Use the Matrix C/S API v2 with r0 prefix
2191 * Account data support
2192 * Support non-contiguous event timelines
2193 * Support new unread counts
2194 * Local echo for read-receipts
2195
2196
2197New methods:
2198 * Add method to fetch URLs not on the home or identity server
2199 * Method to get the last receipt for a user
2200 * Method to get all known users
2201 * Method to delete an alias
2202
2203
2204Changes in 0.3.0
2205================
2206
2207 * `MatrixClient.getAvatarUrlForMember` has been removed and replaced with
2208 `RoomMember.getAvatarUrl`. Arguments remain the same except the homeserver
2209 URL must now be supplied from `MatrixClient.getHomeserverUrl()`.
2210
2211 ```javascript
2212 // before
2213 var url = client.getAvatarUrlForMember(member, width, height, resize, allowDefault)
2214 // after
2215 var url = member.getAvatarUrl(client.getHomeserverUrl(), width, height, resize, allowDefault)
2216 ```
2217 * `MatrixClient.getAvatarUrlForRoom` has been removed and replaced with
2218 `Room.getAvatarUrl`. Arguments remain the same except the homeserver
2219 URL must now be supplied from `MatrixClient.getHomeserverUrl()`.
2220
2221 ```javascript
2222 // before
2223 var url = client.getAvatarUrlForRoom(room, width, height, resize, allowDefault)
2224 // after
2225 var url = room.getAvatarUrl(client.getHomeserverUrl(), width, height, resize, allowDefault)
2226 ```
2227
2228 * `s/Room.getMembersWithMemership/Room.getMembersWithMem`b`ership/g`
2229
2230New methods:
2231 * Added support for sending receipts via
2232 `MatrixClient.sendReceipt(event, receiptType, callback)` and
2233 `MatrixClient.sendReadReceipt(event, callback)`.
2234 * Added support for receiving receipts via
2235 `Room.getReceiptsForEvent(event)` and `Room.getUsersReadUpTo(event)`. Receipts
2236 can be directly added to a `Room` using `Room.addReceipt(event)` though the
2237 `MatrixClient` does this for you.
2238 * Added support for muting local video and audio via the new methods
2239 `MatrixCall.setMicrophoneMuted()`, `MatrixCall.isMicrophoneMuted(muted)`,
2240 `MatrixCall.isLocalVideoMuted()` and `Matrix.setLocalVideoMuted(muted)`.
2241 * Added **experimental** support for screen-sharing in Chrome via
2242 `MatrixCall.placeScreenSharingCall(remoteVideoElement, localVideoElement)`.
2243 * Added ability to perform server-side searches using
2244 `MatrixClient.searchMessageText(opts)` and `MatrixClient.search(opts)`.
2245
2246Improvements:
2247 * Improve the performance of initial sync processing from `O(n^2)` to `O(n)`.
2248 * `Room.name` will now take into account `m.room.canonical_alias` events.
2249 * `MatrixClient.startClient` now takes an Object `opts` rather than a Number in
2250 a backwards-compatible way. This `opts` allows syncing configuration options
2251 to be specified including `includeArchivedRooms` and `resolveInvitesToProfiles`.
2252 * `Room` objects which represent room invitations will now have state populated
2253 from `invite_room_state` if it is included in the `m.room.member` event.
2254 * `Room.getAvatarUrl` will now take into account `m.room.avatar` events.
2255
2256Changes in 0.2.2
2257================
2258
2259Bug fixes:
2260 * Null pointer fixes for VoIP calling and push notification processing.
2261 * Set the `Content-Type` to `application/octet-stream` in the event that the
2262 file object has no `type`.
2263
2264New methods:
2265 * Added `MatrixClient.getCasServer()` which calls through to the HTTP endpoint
2266 `/login/cas`.
2267 * Added `MatrixClient.loginWithCas(ticket, service)` which logs in with the
2268 type `m.login.cas`.
2269 * Added `MatrixClient.getHomeserverUrl()` which returns the URL passed in the
2270 constructor.
2271 * Added `MatrixClient.getIdentityServerUrl()` which returns the URL passed in
2272 the constructor.
2273 * Added `getLastModifiedTime()` to `RoomMember`, `RoomState` and `User` objects.
2274 This makes it easier to see if the object in question has changed, which can
2275 be used to improve performance by only rendering when these objects change.
2276
2277Changes in 0.2.1
2278================
2279
2280**BREAKING CHANGES**
2281 * `MatrixClient.joinRoom` has changed from `(roomIdOrAlias, callback)` to
2282 `(roomIdOrAlias, opts, callback)`.
2283
2284Bug fixes:
2285 * The `Content-Type` of file uploads is now explicitly set, without relying
2286 on the browser to do it for us.
2287
2288Improvements:
2289 * The `MatrixScheduler.RETRY_BACKOFF_RATELIMIT` function will not retry when
2290 the response is a 400,401,403.
2291 * The text returned from a room invite now includes who the invite was from.
2292 * There is now a try/catch block around the `request` function which will
2293 reject/errback appropriately if an exception is thrown synchronously in it.
2294
2295New methods:
2296 * `MatrixClient.createAlias(alias, roomId)`
2297 * `MatrixClient.getRoomIdForAlias(alias)`
2298 * `MatrixClient.sendNotice(roomId, body, txnId, callback)`
2299 * `MatrixClient.sendHtmlNotice(roomId, body, htmlBody, callback)`
2300
2301Modified methods:
2302 * `MatrixClient.joinRoom(roomIdOrAlias, opts)` where `opts` can include a
2303 `syncRoom: true|false` flag to control whether a room initial sync is
2304 performed after joining the room.
2305 * `MatrixClient.getAvatarUrlForMember` has a new last arg `allowDefault` which
2306 returns the default identicon URL if `true`.
2307 * `MatrixClient.getAvatarUrlForRoom` has a new last arg `allowDefault` which
2308 is passed through to the default identicon generation for
2309 `getAvatarUrlForMember`.
2310
2311
2312Changes in 0.2.0
2313================
2314
2315**BREAKING CHANGES**:
2316 * `MatrixClient.setPowerLevel` now expects a `MatrixEvent` and not an `Object`
2317 for the `event` parameter.
2318
2319New features:
2320 * Added `EventStatus.QUEUED` which is set on an event when it is waiting to be
2321 sent by the scheduler and there are other events in front.
2322 * Added support for processing push rules on an event. This can be obtained by
2323 calling `MatrixClient.getPushActionsForEvent(event)`.
2324 * Added WebRTC support. Outbound calls can be made via
2325 `call = global.createNewMatrixCall(MatrixClient, roomId)` followed by
2326 `call.placeVoiceCall()` or `call.placeVideoCall(remoteEle, localEle)`.
2327 Inbound calls will be received via the event `"Call.incoming"` which provides
2328 a call object which can be followed with `call.answer()` or `call.hangup()`.
2329 * Added the ability to upload files to the media repository.
2330 * Added the ability to change the client's password.
2331 * Added the ability to register with an email via an identity server.
2332 * Handle presence events by updating the associated `User` object.
2333 * Handle redaction events.
2334 * Added infrastructure for supporting End-to-End encryption. E2E is *NOT*
2335 available in this version.
2336
2337New methods:
2338 * `MatrixClient.getUser(userId)`
2339 * `MatrixClient.getPushActionsForEvent(event)`
2340 * `MatrixClient.setPassword(auth, newPassword)`
2341 * `MatrixClient.loginWithSAML2(relayState, callback)`
2342 * `MatrixClient.getAvatarUrlForMember(member, w, h, method)`
2343 * `MatrixClient.mxcUrlToHttp(url, w, h, method)`
2344 * `MatrixClient.getAvatarUrlForRoom(room, w, h, method)`
2345 * `MatrixClient.uploadContent(file, callback)`
2346 * `Room.getMembersWithMembership(membership)`
2347 * `MatrixScheduler.getQueueForEvent(event)`
2348 * `MatrixScheduler.removeEventFromQueue(event)`
2349 * `$DATA_STORE.setSyncToken(token)`
2350 * `$DATA_STORE.getSyncToken()`
2351
2352Crypto infrastructure (crypto is *NOT* available in this version):
2353 * `global.CRYPTO_ENABLED`
2354 * `MatrixClient.isCryptoEnabled()`
2355 * `MatrixClient.uploadKeys(maxKeys)`
2356 * `MatrixClient.downloadKeys(userIds, forceDownload)`
2357 * `MatrixClient.listDeviceKeys(userId)`
2358 * `MatrixClient.setRoomEncryption(roomId, config)`
2359 * `MatrixClient.isRoomEncrypted(roomId)`
2360
2361New classes:
2362 * `MatrixCall`
2363 * `WebStorageStore` - *WIP; unstable*
2364 * `WebStorageSessionStore` - *WIP; unstable*
2365
2366Bug fixes:
2367 * Member name bugfix: Fixed an issue which prevented `RoomMember.name` being
2368 disambiguated if there was exactly 1 other person with the same display name.
2369 * Member name bugfix: Disambiguate both clashing display names with user IDs in
2370 the event of a clash.
2371 * Room state bugfix: Fixed a bug which incorrectly overwrote power levels
2372 locally for a room.
2373 * Room name bugfix: Ignore users who have left the room when determining a room
2374 name.
2375 * Events bugfix: Fixed a bug which prevented the `sender` and `target`
2376 properties from being set.
2377
2378Changes in 0.1.1
2379================
2380
2381**BREAKING CHANGES**:
2382 * `Room.calculateRoomName` is now private. Use `Room.recalculate` instead, and
2383 access the calculated name via `Room.name`.
2384 * `new MatrixClient(...)` no longer creates a `MatrixInMemoryStore` if
2385 `opts.store` is not specified. Instead, the `createClient` global function
2386 creates it and passes it to the constructor. This change will not affect
2387 users who have always used `createClient` to create a `MatrixClient`.
2388 * `"Room"` events will now be emitted when the Room has *finished* being
2389 populated with state rather than at the moment of creation. This will fire
2390 when the SDK encounters a room it doesn't know about (just arrived from the
2391 event stream; e.g. a room invite) and will also fire after syncing room
2392 state (e.g. after calling joinRoom).
2393 * `MatrixClient.joinRoom` now returns a `Room` object when resolved, not an
2394 object with a `room_id` property.
2395 * `MatrixClient.scrollback` now expects a `Room` arg instead of a `room_id`
2396 and `from` token. Construct a `new Room(roomId)` if you want to continue
2397 using this directly, then set the pagination token using
2398 `room.oldState.paginationToken = from`. It now resolves to a `Room` object
2399 instead of the raw HTTP response.
2400
2401New properties:
2402 * `User.events`
2403 * `RoomMember.events`
2404
2405New methods:
2406 * `Room.hasMembershipState(userId, membership)`
2407 * `MatrixClient.resendEvent(event, room)`
2408
2409New features:
2410 * Local echo. When you send an event using the SDK it will immediately be
2411 added to `Room.timeline` with the `event.status` of `EventStatus.SENDING`.
2412 When the event is finally sent, this status will be removed.
2413 * Not sent status. When an event fails to send using the SDK, it will have the
2414 `event.status` of `EventStatus.NOT_SENT`.
2415 * Retries. If events fail to send, they will be automatically retried.
2416 * Manual resending. Events which failed to send can be passed to
2417 `MatrixClient.resendEvent(event, room)` to resend them.
2418 * Queueing. Messages sent in quick succession will be queued to preserve the
2419 order in which they were submitted.
2420 * Room state is automatcally synchronised when joining a room (including if
2421 another device joins a room).
2422 * Scrollback. You can request earlier events in a room using
2423 `MatrixClient.scrollback(room, limit, callback)`.
2424
2425Bug fixes:
2426 * Fixed a bug which prevented the event stream from polling. Some devices will
2427 black hole requests when they hibernate, meaning that the callbacks will
2428 never fire. We now maintain a local timer to forcibly restart the request.
2429
\No newline at end of file