Do `npm install` on js-sdk rather than `npm run build`, which will hopefully
mean that `browserify` gets installed before we try to run it.
The README says we should use `npm install` for the react-sdk too, so let's do
that, and bring the travis and jenkins builds into sync with the README.
This reverts commit f9db7f017d64e6bb4021fd04bfb99162b008bd79, reversing
changes made to 71b149de760724d8329b260de222aea507b70fe8.
This caused `number is not defined`
Otherwise Chrome thinks you're working on a new file every time
you refresh and therefore closes source tabs and removes
breakpoints which is very annoying. It also allegedly makes
webpack-dev-server run out of memory because it has to remember
all the different files.
This will ensure that errors, unsent messages, etc. will be allowed enough height to display their contents from within the status bar without being chopped.
Fixes#3041
This seeks to fix the intermittent failure of the "MatrixClient rehydrated from
stored credentials" tests.
The problem appears to be that the 'load_completed' is sometimes taking a while
to come through from the dispatcher - or rather, it is taking a long time to
get *sent* to the dispatcher: the chain of `q().then().catch().done()` in
componentDidMount can take a while to happen.
As a workaround, give the test a few goes when waiting for us to start
syncing. It's not ideal to be poking into the internal state of MatrixChat like
this, but it'll do for now.
The promise would resolve immediately, nulling out `flushPromise`. This would
then immediately be set from `new Promise((resolve, reject) => {...})` turning
it back into non-null `flushPromise`. The resolve handler was called so the
next `flush()` would see "oh yes, there is a non-null `flushPromise`" then
promptly try to set `flushAgainPromise` which chains off the resolved
`flushPromise` which relied on `flushPromise` being `null`ed out after
`resolve()`, causing the chained `flush()` to see "oh yes, there is a non-null
`flushPromise`" which... ad infinitum.
This PR fixes it by making the nulling out asynchronous but the fact it took
me this long to debug this issue indicates to me that this is a terrible piece
of code. Will re-write.