* If messageId changes and network ID doesn't, remove 'old' message_id
* Boot nodes/connection when no recent messages received for it
* Separate task needed for soketto recv to avoid cancel-safety issues with new interval
* Wee tidy up
* cargo fmt
* Add some logging around node adding/removing
* Another log info msg
* a bit of tidy up
* bump stale node timeout to 60s
* A second attempt to avoid the flume memory leak, since the first didn't actually work
* No luck with second flume fix, so revert to futures::mpsc in a few places)
* cargo fmt
* Add a comment to cover use of into_stream
* Tweak rolling_total test to also confirm capacity doesn't go nuts
* Use Jemalloc
* Avoid flume's into_stream and use a workaround for now
* cargo fmt
* Improve comments now that there's an issue to point to
* Handle subscription by hash in the frontend
* Forward-ported backend changes
* Fix unit tests
* Remove unused `chains_by_label`
* fmt
* Updated but failing E2E tests
* subscribe by genesis hash in tests
* fmt
* Copy `BlockHash` instead of returning a ref
* Pin chains by genesisHash
Co-authored-by: James Wilson <james@jsdw.me>
* Beef up error reporting of IP and location info
* Tidy up error reporting after some manual testing of it
* Don't cache erroneous locations; try again when asked again
* cargo fmt
* Only remove the feed that disconnected to not break the rest...
* use multimap struct to avoid sync issues between feed and chain
* add a remove test, too
* cargo fmt
* fix name of test
* move multimap to common so we can doctest it and add 'unique' to name
* cargo fmt
* Return old key if value moved to make uniqueness more obvious