We have generalized collections around our search engine. For that introducing the Collection component.
This structure has the following implication:
Collection -> OrderedCollection
|-> Notes (known as Feed)
|-> Actors (known as Circle)
|-> Other Object (known as Collection of ...)
|-> Attachments: AttachmentCollection
|-> Tags: TagCollection
And it allow us to centralise the scope system in the core, ensuring that no actor will have access to notes or other objects that shouldn't be able to see.
Finally, with this, a plugin such as Note Type Feed Filter can be useful in every note collection (feed).
It also allows plugins such as ActivityPub to translate every collection automatically.
We also introduced the Circle component, which has a UI similar to the
Attachments Collections,
and enables circle mentions with @#circle_name
.