Exclusive Lists: Difference between revisions

3,032 bytes added ,  19:53, 6 October 2023
no edit summary
(→‎Discord: new section)
 
No edit summary
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Project
|Description=Accounts on lists marked as exclusive do not appear on the home feed
|Part Of=Mastodon/Hacking
|Parts=
|Contributors=Lina, Jonny
|Has Git Repository=https://github.com/NeuromatchAcademy/mastodon
|Completion Status=Completed
|Active Status=Completed
|Approval Status=Provisional
}}
* Initial Pull Request: [[Has Pull Request::https://github.com/NeuromatchAcademy/mastodon/pull/12]]
* Merged Pull Request after [[Lina]] did some git parkour to rebase from upstream: [[Has Pull Request::https://github.com/NeuromatchAcademy/mastodon/pull/20]]
* Ops Log: [[Tech_WG/Ops_Diary#23-05-19]]
== Description ==
It is useful to be able to have separable feeds, and to be able to follow some people but for one reason or another not have them in your home feed. This hack lets you follow people and only show their posts within specific "exclusive" lists.
=== Examples ===
This could be the case when, eg.
* You follow someone in a specific context --- eg. a reading group, a journalist that covers a specific topic area, [[Monsterdon]] etc.
* You follow someone who posts a lot! which is normal! but maybe they go on the list of high frequency posters.
* You want to keep your home feed very focused to your close friends, and for everyone else to have their own feeds
== Usage ==
=== Web ===
On any list, open the "options" panel and enable the "hide these posts from home" option:
[[File:Exclusive lists.png|class=img-responsive]]
=== API ===
Use any of the standard create/update commands using <code>exclusive</code> as a boolean parameter.
See the [https://docs.joinmastodon.org/methods/lists/ Lists API documentation]
Eg. to make an exclusive list:
<pre>
POST https://mastodon.instance/api/v1/lists?title=MyList&exclusive=true
</pre>
== Discord ==
== Discord ==


Line 30: Line 78:
So for the sake of us learning to write tests here, I don't think we need to aim for full adversarial coverage of the feature, but just get the basics: "when an account is in an exclusive list, their posts dont show up on the home feed." judging from the other tests, it looks like we'll have to also test for boosts from them, but since it's not like a block we don't have to test a bunch of edge cases like interactions.
So for the sake of us learning to write tests here, I don't think we need to aim for full adversarial coverage of the feature, but just get the basics: "when an account is in an exclusive list, their posts dont show up on the home feed." judging from the other tests, it looks like we'll have to also test for boosts from them, but since it's not like a block we don't have to test a bunch of edge cases like interactions.
|Link=https://discord.com/channels/1049136631065628772/1086754322433450075/1086768028085141535
|Link=https://discord.com/channels/1049136631065628772/1086754322433450075/1086768028085141535
}}{{Message
|Author=sneakers-the-rat
|Avatar=https://cdn.discordapp.com/avatars/305044217393053697/2970b22bd769d0cd0ee1de79be500e85.png?size=1024
|Date Sent=23-05-20 05:46:32
|Channel=techwg-ops
|Text=[[Tech WG/Ops Diary#23-05-19]]: We are attempting to [[Upgrade Mastodon]] to 4.1.2 and also merge in [[Exclusive Lists]], wish us luck.
We begin with what is probably the worst way to do it based on the conversation in <#1049184335514828860> , specifically:
* main -> dev,
* upstream -> dev,
* dev -> pr,
* pr -> dev,
* dev -> main
https://discord.com/channels/1049136631065628772/1049184335514828860/1109355378178789396
|Link=https://discord.com/channels/1049136631065628772/1052452072806686751/1109356466130931765
}}{{Message
|Author=sneakers-the-rat
|Avatar=https://cdn.discordapp.com/avatars/305044217393053697/2970b22bd769d0cd0ee1de79be500e85.png?size=1024
|Date Sent=23-05-23 01:35:39
|Channel=techwg-ops
|Text=[[Tech WG/Ops Diary#23-05-22]]: What up it's me and we're about to deploy [[Exclusive Lists]] and update to 4.1.2. starting by making a linode backup and then following instructions on https://github.com/mastodon/mastodon/releases/tag/v4.1.2
|Link=https://discord.com/channels/1049136631065628772/1052452072806686751/1110380495335870505
}}
}}