Patchwork: reduce patchwork bloat todo list

Created on 28 Sep 2018  路  4Comments  路  Source: ssbc/patchwork

A todo list extracted from my post on ssb (%nM6J0gYlKkXF7Y+KazYpPUEgHxksx5oD4/ToXl7gKlU=.sha256)

  • [x] add intersectionBindingViewport option to mutant that uses the Intersection Observer API to only bind child elements when they are in the viewport (see https://github.com/mmckegg/mutant/pull/25)
  • [x] merge used patchcore modules directly into patchwork
  • [x] add sbot plugins for getting and streaming like/backlinks counts
  • [x] create pull-mutant-value (takes a pull stream, and the value will be the last item emitted from the stream, will end the stream if the observable is no longer being observed, and restart the stream if new listeners are added)
  • [x] refactor like counters to work with the like count directly, then retrieve the feed IDs on demand (when sheet is loaded)
  • [x] add sbot plugin for getting and streaming about states
  • [x] replace about.obs and others with these new pull-mutant-value streams
  • [x] fix gatherings editor to work async
  • [x] rewrite about suggest to run on backend (avoid caching suggestions on frontend)
  • [x] move rollup generation to server for all feed views (based on patchtron -- a lot of refactor work being glossed over here)
  • [x] realtime update notifications for new feeds (current master has regression here)
  • [x] redo scroller to use intersection observers (current method is using _heaps as_ cpu)
  • [x] follow/blocking pipelining in feed streams (to avoid single lookup at start of query, will make it easier to handle realtime streams when friend/subscription graph changes)
  • [x] handle hiding replies when author blocked by root (another regression)
  • [x] handle feed options (or remove?) [removing for now]
  • [x] redo thread view to fix jitter on thread view load (streaming? sbot based?) and remove old backlinks cache
  • [x] move channel subscriber counting to server (and remove old subscription cache) [the lack of this is causing new posts/likes to trigger a slight pause in the interface while the channels are reranked]
  • [x] move channel cache to backend
  • [x] fix initial load when upgrading from Patchwork v3.11.x (following/contacts never loads, until restart)
  • [x] move all contact resolution (follows, etc) to server [maybe fixing this will solve the initial load after upgrade problem]
  • [x] fix rendering of blogs [regression]
  • [x] remove unused indexes and sbot plugins
  • [x] fix all channels view regression [this is now the 150 most recent channels page 馃槅 ... user experience of the old page was bad anyway --- we need something much improved for channel discovery, we need something much better for channels... whatever]
performance enhancement

Most helpful comment

This list keeps growing, but usually I'm at least half done!

All 4 comments

This list keeps growing, but usually I'm at least half done!

List is done!!!! 馃帀

I'm closing this, and making individual issues for anything else that comes up related going forward.

Probably gonna build a pre-release and see how it works!

Super proud of you for going through this entire list and very excited to try it out, thanks a ton for all of your work on this!

:heart:

Woo! Congratulations :)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

nicohansi picture nicohansi  路  8Comments

mmckegg picture mmckegg  路  5Comments

Gaffen picture Gaffen  路  4Comments

celesteh picture celesteh  路  8Comments

skippednote picture skippednote  路  6Comments