* vendor: Add bimg image processing library
bimg is MIT licensed. It depends on the C library libvips which is LGPL
v2.1+ licensed. libvips must be installed separately.
* mediaapi: Add YAML config file support
* mediaapi: Add thumbnail support
* mediaapi: Add missing thumbnail files
* travis: Add ppa and install libvips-dev
* travis: Another ppa and install libvips-dev attempt
* travis: Add sudo: required for sudo apt* usage
* mediaapi/thumbnailer: Make comparison code more readable
* mediaapi: Simplify logging of thumbnail properties
* mediaapi/thumbnailer: Rename metrics to fitness
Metrics is used in the context of monitoring with Prometheus so renaming
to avoid confusion.
* mediaapi/thumbnailer: Use math.Inf() for max aspect and size
* mediaapi/thumbnailer: Limit number of parallel generators
Fall back to selecting from already-/pre-generated thumbnails or serving
the original.
* mediaapi/thumbnailer: Split bimg code into separate file
* vendor: Add github.com/nfnt/resize pure go image scaler
* mediaapi/thumbnailer: Add nfnt/resize thumbnailer
* travis: Don't install libvips-dev via ppa
* mediaapi: Add notes to README about resizers
* mediaapi: Elaborate on scaling libs in README
* Start implementing the join room API
* Hacks to get join room working
* Make the TLS fingerprint configurable
* Fix the client API proxy to handle '#' correctly
* Return a 200 OK response
* Write the join event along with current state to the room server
* Comment on the error handling
* Fix typos
* Fix tab
* Add TODO for moving authEventIDs to gomatrixserverlib
* Comment on why we ignore the key ID argument for local keys
* Avoid 'preceeded'
* Neaten the control flow
* Neaten the control flow even more
* Return pointers
* Rename err to lastErr for the loop
* Return the requested portions of current state in the query API
* Use Unique from github.com/matrix-org/util
* rewrite bulkSelectFilteredStateBlockEntries to use append for clarity
* Add test for stateKeyTupleSorter
* Replace current with a new StateEntryList rather than individually setting the fields
* Start implementing a query API for go using net/rpc
* Use a conventional JSON POST API rather than go net/rpc
net/rpc doesn't automatically handle reconnecting and we have better
logging and metrics infrastructure for monitoring HTTP apis.
* Implement the query API and add it to the integration tests
* Increase the timeout, travis seems to be a bit slow
* Clarify that state events are the things that are not returned if they are not requested
* Add utility function for converting arrays of numeric event IDs to pq Int64Arrays
* Warn people against requesting empty state keys by accident