- Replaces Hackney with Finch for http requests, to improve concurrent
RPC handling under high load
- Rips out obsolete elixometer instrumentation
- Adds handling for failed prevout inflation
- Fail inflation step fast
API:
- Better RPC handling (cache credentials)
- Process transaction prevouts in dedicated Tasks
- Consume ZMQ sequence msgs
- Track mempool count precisely
- Cache prevouts for mempool transactions
- Send mempool count with every client msg, instead of reconstructing client-side
- Only send block ids over websocket, let clients fetch the full block data via http
Client:
- Simplify transaction queue to avoid setTimeouts
- improves experience in background tabs
- no longer need to hold back txs, as duplicates are now handled API-side
- Use API-supplied mempool count, instead of tracking it client-side
- Make mempoolCount a Svelte spring store, so updates transition smoothly
Fetch prevouts for solo and block transactions,
and calculate input values & tx fees.
Naive initial implementation with no caching,
so block processing is sloooooooooooooow.
Avoid sending large block data messages over websocket,
which block transaction updates, especially on lower
bandwidth connections.
Instead, only send the block id over websocket, and
then fetch over http with good caching
- simplify color handling in the vertex shader
- ditch palette-based approach
- define colors as points in a 2D projection of HCL space with fixed
chroma
- provides a good range of colors
- we get aesthetically pleasing HCL color interpolation for free
- lookup in a precomputed 2D color texture
- interpolate square vertex positions in the graphics shader instead of pre-computing in the main thread
- requires new vertex attributes 'r' and 'offset'
- allows x, y and r to be updated independently.