Feature proposal #8462


Remove support for individualized like/follow streams

Added by krileon 8 months ago. Updated 3 months ago.

Target version:
Start date:
10 April 2021
Due date:
% Done:


Estimated time:


These don't need to be streams, but just be features. Centralize their configuration in global parameters and that's it. Pass the object and object_id via encrypted json data on the element (e.g. data-like="HASHED_JSON" using openssl_encrypt or something similar) so we don't need to really worry about keeping track of it.

With #8458 and this complete only Activity and Comment streams will need stream storage behavior. The rest are just features.

Actions #1

Updated by krileon 8 months ago

As for Likes/Follows restructure consult the following.

Likes will always be against object and object_id

Follows will always be against target and target_id.

This can be used to reduce their table structures further and optimize them further.

Actions #2

Updated by krileon 8 months ago

  • Description updated (diff)
Actions #3

Updated by krileon 7 months ago

All streams will send hashed object, object_id, target, and target_id for new endpoints (e.g. new activity, new comment, new like, etc..). The rest will just use respective object ids (e.g. activity id) and will build object, object_id, target, and target_id from stored values.

Actions #4

Updated by krileon 3 months ago

  • % Done changed from 0 to 50
Actions #5

Updated by krileon 3 months ago

Added support for passing "asset" as encrypted string (uses Joomla API to encrypt and decrypt). This will be used for likes/follows and no longer requires a heavy stream object to be built. The result is Likes behavior currently now has a 300% performance improvement since it's A LOT more simple code wise to process.


Also available in: Atom PDF