Oneric 
								
							 
						 
						
							
							
							
							
								
							
							
								13e2a811ec 
								
							 
						 
						
							
							
								
								Avoid accumulation of stale data in websockets  
							
							... 
							
							
							
							We’ve received reports of some specific instances slowly accumulating
more and more binary data over time up to OOMs and globally setting
ERL_FULLSWEEP_AFTER=0 has proven to be an effective countermeasure.
However, this incurs increased cpu perf costs everywhere and is
thus not suitable to apply out of the box.
Apparently long-lived Phoenix websocket processes are known to
often cause exactly this by getting into a state unfavourable
for the garbage collector.
Therefore it seems likely affected instances are using timeline
streaming and do so in just the right way to trigger this. We
can tune the garbage collector just for websocket processes
and use a more lenient value of 20 to keep the added perf cost
in check.
Testing on one affected instance appears to confirm this theory
Ref.:
  https://www.erlang.org/doc/man/erlang#ghlink-process_flag-2-idp226 
  https://blog.guzman.codes/using-phoenix-channels-high-memory-usage-save-money-with-erlfullsweepafter 
  https://git.pleroma.social/pleroma/pleroma/-/merge_requests/4060 
Tested-by: bjo 
							
						 
						
							2024-06-22 22:22:33 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Tusooa Zhu 
								
							 
						 
						
							
							
							
							
								
							
							
								95e4018c1a 
								
							 
						 
						
							
							
								
								Disconnect streaming sessions when token is revoked  
							
							... 
							
							
							
							Use Websockex to replace websocket_client
Test that server will disconnect websocket upon token revocation
Lint
Execute session disconnect in background
Refactor streamer test
allow multi-streams
rebase websocket change 
							
						 
						
							2022-08-27 19:07:48 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									floatingghost 
								
							 
						 
						
							
							
							
							
								
							
							
								11ec9daa5b 
								
							 
						 
						
							
							
								
								API compatibility with fedibird, frontend config ( #163 )  
							
							... 
							
							
							
							Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/163  
							
						 
						
							2022-08-17 00:22:59 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									floatingghost 
								
							 
						 
						
							
							
							
							
								
							
							
								cb6e7359af 
								
							 
						 
						
							
							
								
								add bubble timeline ( #100 )  
							
							... 
							
							
							
							Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/100  
							
						 
						
							2022-07-22 14:55:38 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Haelwenn (lanodan) Monnier 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a17910a6c6 
								
							 
						 
						
							
							
								
								CI: Bump lint stage to elixir-1.12  
							
							... 
							
							
							
							Elixir 1.12 changed formatting rules, this allows to avoid having to rollback to run `mix format` 
							
						 
						
							2021-10-06 08:11:05 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Haelwenn (lanodan) Monnier 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c4439c630f 
								
							 
						 
						
							
							
								
								Bump Copyright to 2021  
							
							... 
							
							
							
							grep -rl '# Copyright © .* Pleroma' * | xargs sed -i 's;Copyright © .* Pleroma .*;Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/ >;' 
							
						 
						
							2021-01-13 07:49:50 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ivan Tashkinov 
								
							 
						 
						
							
							
							
							
								
							
							
								60b025b782 
								
							 
						 
						
							
							
								
								[ #2074 ] OAuth scope checking in Streaming API.  
							
							
							
						 
						
							2020-09-19 19:16:55 +03:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									rinpatch 
								
							 
						 
						
							
							
							
							
								
							
							
								01fa68fe45 
								
							 
						 
						
							
							
								
								Websocket handler: fix never matching code on failed auth  
							
							... 
							
							
							
							`:cowboy_req.reply` does not return tuples since 2.0, see
https://ninenines.eu/docs/en/cowboy/2.4/manual/cowboy_req.reply/  
							
						 
						
							2020-09-10 21:26:52 +03:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									rinpatch 
								
							 
						 
						
							
							
							
							
								
							
							
								e16e8f9816 
								
							 
						 
						
							
							
								
								Websocket handler: do not raise if handler is terminated before switching protocols  
							
							... 
							
							
							
							Closes  #2131  
						
							2020-09-10 21:14:23 +03:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									rinpatch 
								
							 
						 
						
							
							
							
							
								
							
							
								cb06e98da2 
								
							 
						 
						
							
							
								
								websocket handler: Do not log client ping frames as errors  
							
							
							
						 
						
							2020-09-10 21:14:23 +03:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									href 
								
							 
						 
						
							
							
							
							
								
							
							
								e6d8cacf2d 
								
							 
						 
						
							
							
								
								Expand and authorize streams in Streamer directly  
							
							
							
						 
						
							2020-05-12 18:04:47 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									href 
								
							 
						 
						
							
							
							
							
								
							
							
								e2b15e8ad3 
								
							 
						 
						
							
							
								
								Fix streamer timeout ( closes   #1753 ).  
							
							... 
							
							
							
							Cowboy handles automatically responding to the client's ping, but
doesn't automatically send a :ping frame to the client. 
							
						 
						
							2020-05-11 16:51:34 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									rinpatch 
								
							 
						 
						
							
							
							
							
								
							
							
								eb1f2fcbc6 
								
							 
						 
						
							
							
								
								Streamer: Fix wrong argument order when rendering activities to authenticated user  
							
							... 
							
							
							
							Closes  #1747  
						
							2020-05-07 16:13:24 +03:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									href 
								
							 
						 
						
							
							
							
							
								
							
							
								9491ba3e49 
								
							 
						 
						
							
							
								
								Streamer rework  
							
							
							
						 
						
							2020-05-07 09:13:32 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Felder 
								
							 
						 
						
							
							
							
							
								
							
							
								05da5f5cca 
								
							 
						 
						
							
							
								
								Update Copyrights  
							
							
							
						 
						
							2020-03-03 16:44:49 -06:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									kaniini 
								
							 
						 
						
							
							
							
							
								
							
							
								733b73b71c 
								
							 
						 
						
							
							
								
								Apply suggestion to lib/pleroma/web/mastodon_api/websocket_handler.ex  
							
							
							
						 
						
							2019-10-18 04:36:37 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									kPherox 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								5bd0717de2 
								
							 
						 
						
							
							
								
								Add Sec-WebSocket-Protocol to response header  
							
							
							
						 
						
							2019-10-15 21:09:44 +09:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Egor Kislitsyn 
								
							 
						 
						
							
							
							
							
								
							
							
								96816ceaa2 
								
							 
						 
						
							
							
								
								Revert "Merge branch 'revert-4fabf83a' into 'develop'"  
							
							... 
							
							
							
							This reverts commit fe7fd331264fabf83ad0 
							
						 
						
							2019-09-16 17:55:04 +07:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									kaniini 
								
							 
						 
						
							
							
							
							
								
							
							
								c623b4324d 
								
							 
						 
						
							
							
								
								Revert "Merge branch 'streamer-refactoring' into 'develop'"  
							
							... 
							
							
							
							This reverts merge request !1653  
							
						 
						
							2019-09-16 09:09:21 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Steven Fuchs 
								
							 
						 
						
							
							
							
							
								
							
							
								aab264db82 
								
							 
						 
						
							
							
								
								Streamer refactoring  
							
							
							
						 
						
							2019-09-16 07:44:03 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Haelwenn (lanodan) Monnier 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e174614eb9 
								
							 
						 
						
							
							
								
								MastoAPI Streaming: Keep compatibility with access_token  
							
							
							
						 
						
							2019-07-07 08:49:29 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									KokaKiwi 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a7885748c7 
								
							 
						 
						
							
							
								
								MastoAPI streaming: Replace access_token with Sec-WebSocket-Protocol  
							
							
							
						 
						
							2019-07-06 20:29:17 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Maksim 
								
							 
						 
						
							
							
							
							
								
							
							
								a04bf131e0 
								
							 
						 
						
							
							
								
								[ #570 ] add user:notification stream  
							
							
							
						 
						
							2019-06-16 10:33:25 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Egor 
								
							 
						 
						
							
							
							
							
								
							
							
								b9cdf6d3b9 
								
							 
						 
						
							
							
								
								Use User.get_cached* everywhere  
							
							
							
						 
						
							2019-04-22 07:20:43 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Egor Kislitsyn 
								
							 
						 
						
							
							
							
							
								
							
							
								1b3d921921 
								
							 
						 
						
							
							
								
								change Repo.get(User, id) => User.get_by_id(id)  
							
							
							
						 
						
							2019-04-02 17:01:26 +07:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Haelwenn (lanodan) Monnier 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a3a9cec483 
								
							 
						 
						
							
							
								
								[Credo] fix Credo.Check.Readability.AliasOrder  
							
							
							
						 
						
							2019-03-13 04:26:54 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									William Pitcock 
								
							 
						 
						
							
							
							
							
								
							
							
								28b4093233 
								
							 
						 
						
							
							
								
								mastodon websocket: return errors using ok, not stop  
							
							
							
						 
						
							2019-02-28 16:23:55 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									William Pitcock 
								
							 
						 
						
							
							
							
							
								
							
							
								388a3f4ca2 
								
							 
						 
						
							
							
								
								mastodon websocket: bring back infinity timeout  
							
							
							
						 
						
							2019-02-28 16:23:24 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									William Pitcock 
								
							 
						 
						
							
							
							
							
								
							
							
								f1d37a5e23 
								
							 
						 
						
							
							
								
								mastodon websocket: use pattern match to get query data, robustly handle errors  
							
							
							
						 
						
							2019-02-28 16:02:48 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									William Pitcock 
								
							 
						 
						
							
							
							
							
								
							
							
								bc53dff5b6 
								
							 
						 
						
							
							
								
								mastodon api: websocket: update code for cowboy 2.x  
							
							
							
						 
						
							2019-02-28 15:44:12 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Haelwenn (lanodan) Monnier 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								6a6a5b3251 
								
							 
						 
						
							
							
								
								de-group alias/es  
							
							
							
						 
						
							2019-02-09 16:31:17 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Haelwenn (lanodan) Monnier 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8bcfac93a8 
								
							 
						 
						
							
							
								
								Make credo happy  
							
							
							
						 
						
							2019-02-09 14:59:20 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									William Pitcock 
								
							 
						 
						
							
							
							
							
								
							
							
								980b5288ed 
								
							 
						 
						
							
							
								
								update copyright years to 2019  
							
							
							
						 
						
							2018-12-31 15:41:47 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									William Pitcock 
								
							 
						 
						
							
							
							
							
								
							
							
								2791ce9a1f 
								
							 
						 
						
							
							
								
								add license boilerplate to pleroma core  
							
							
							
						 
						
							2018-12-23 20:56:42 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									href 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								77b5154c82 
								
							 
						 
						
							
							
								
								Cowboy handler for Mastodon WebSocket  
							
							
							
						 
						
							2018-12-17 17:06:18 +01:00