Eugen
17c591ffba
Punycode URI normalization ( #2370 )
* Fix #2119 - Whenever about to send a HTTP request, normalize the URI
* Add test for IDN request in FetchLinkCardService
* Perform IDN normalization on domains before they are stored in the DB
7 years ago
Eugen
501514960a
Followers-only post federation ( #2111 )
* Make private toots get PuSHed to subscription URLs that belong to domains where you have approved followers
* Authorized followers controller, stub for bulk action
* Soft block in the background
* Add simple test for new controller
* Rename Settings::FollowersController to Settings::FollowerDomainsController, paginate results,
rename "private" post setting to "followers-only", fix pagination style, improve post privacy
preferences style, improve warning style
* Extract compose form warnings into own container, show warning when posting to followers-only with unlocked account
7 years ago
Matt Jankowski
c44a700252
Quick best practice cleanup of views/helpers ( #1546 )
* Remove trailing whitespace
* Use query methods instead of explicit .blank? checks
7 years ago
Matt Jankowski
7f0a865b05
Allow import/export of mutes list ( #1541 )
* Allow export of mutes list
* Allow importing of mutes list
* Refactor to use Settings::Exports::BaseController and DRY up exports code
7 years ago
Matt Jankowski
89e8e110c8
Imports controller errors ( #1553 )
* Add spec for settings/imports controller
* Add failing spec for settings/imports#create
* Fix broken imports
* Refactor ImportWorker
7 years ago
Jantso Porali
e30bbb1cb0
Fix for Import issue from URL ( #1416 )
7 years ago
Eugen
982fef811e
Fix #1141 , fix #1126 - Avatar/profile info fetching ( #1215 )
* Fix #1141 , fix #1126 - Work through UpdateRemoteProfileService for both <feed> and <entry> top-level tags
* Improve code quality, remove line unrelated to fix
7 years ago
Eugen
6d6a429af8
Rewrite Atom generation from stream entries to use Ox instead of Nokogiri ( #1124 )
* Rewrite Atom generation from stream entries to use Ox instead of Nokogiri::Builder
StreamEntry is now limited to only statuses, which allows some optimization. Removed
extra queries on AccountsController#show. AtomSerializer instead of AtomBuilderHelper
used in AccountsController#show, StreamEntriesController#show, StreamEntryRenderer
and PubSubHubbub::DistributionWorker
PubSubHubbub::DistributionWorker moves n+1 DomainBlock query to PubSubHubbub::DeliveryWorker
instead.
All Salmon slaps that aren't based on StreamEntry still use AtomBuilderHelper and Nokogiri
* All Salmon slaps now use Ox instead of Nokogiri. No touch from status on account
7 years ago
blackle
540d6efe88
Catch more errors in process_follows so it doesn't fail
7 years ago
Eugen Rochko
5442083b3c
Split SalmonWorker into smaller parts, move profile updating into another job
7 years ago
Eugen Rochko
5b95be1c42
Replace calls to FeedManager#inline_render and #broadcast
7 years ago
Eugen
c9ebd5d19f
Fix wrong variable used in publish channel
7 years ago
Eugen
1b8c244dff
Add proper message to PushUpdateWorker, use redis directly
7 years ago
Eugen Rochko
220bc48e8e
Only render public payload once in FanOutOnWrite
7 years ago
Kurtis Rainbolt-Greene
22dcadedb4
We're going to want these nice helper methods, lets share them with a parent class that matches Rails 5 practices (application level abstraction)
7 years ago
Kurtis Rainbolt-Greene
9638894233
Moving in the inline render
7 years ago
Kurtis Rainbolt-Greene
220051b8b2
I don't actually think we need that.
7 years ago
Kurtis Rainbolt-Greene
0069c01285
Moving the queue_at into the worker
7 years ago
Kurtis Rainbolt-Greene
96ef933820
Replacing the broadcast method with the one defined in the feed manager
7 years ago
Kurtis Rainbolt-Greene
1e96ce378e
By pushing this into a worker we can reduce the amount of time the feed manager using workers eat up a connection
7 years ago
Eugen Rochko
bda37489ac
Remove PuSH subscriptions when delivery is answered with a 4xx error
7 years ago
Eugen Rochko
6fd865c000
Spawn FeedInsertWorker to deliver status into personal feed
7 years ago
Eugen Rochko
82aaedec46
Reduce number of items in feeds, optimize regeneration worker slightly,
make regeneration worker unique, (only schedule/execute once at a time)
7 years ago
Eugen Rochko
b21f7c28f6
Move OStatus processing back into default queue
7 years ago
Eugen Rochko
b510a56c0c
Only call regeneration worker after first login after a 14 day break
7 years ago
Eugen Rochko
f722bd2387
Separate background jobs into different queues. ATTENTION: new queue "pull"
must be added to the Sidekiq invokation in your systemd file
The pull queue will handle link crawling, thread resolving, and OStatus
processing. Such tasks are more likely to hang for a longer time (due to
network requests) so it is more sensible to not make the "in-house" tasks
wait for them.
7 years ago
Eugen Rochko
b7c1b12367
Make default admin UI page reports. Add admin UI for creating a domain block
7 years ago
Eugen Rochko
e8875c6046
Import feature for following/blocking lists (addresses #62 , #177 , #201 , #454 )
7 years ago
Eugen Rochko
6b81d10030
Add digest e-mails
7 years ago
Eugen Rochko
40a4053732
Disable PuSH for blocked domains
7 years ago
Eugen Rochko
720ff55262
Adding more unit tests. Fixing Salmon slaps XML
7 years ago
Eugen Rochko
db814543c0
Take out private toot distribution out of PuSH again
7 years ago
Eugen Rochko
446aad4ce2
Make PuSH only distribute to subscriptions that match follower domains
Allow PuSH to distribute private toots with that condition
7 years ago
Eugen Rochko
00b5731ecb
After FollowService, re-fetch remote account asynchronously, do nothing
if account lock info was up to date, otherwise re-do the FollowService
with now updated information
7 years ago
Eugen Rochko
149887a0ff
Make follow requests federate
7 years ago
Eugen Rochko
19b9e1e2c3
Preheat status cache
7 years ago
Eugen Rochko
3f075c7794
API for apps to register for push notifications
7 years ago
Eugen Rochko
8a880a3d46
Make blocks create entries and unfollows instantly, but do the clean up
in the background instead. Should fix delay where blocked person
can interact with blocker for a short time before background job
gets processed
7 years ago
Eugen Rochko
cca82bf0a2
Move merging/unmerging of timelines into background. Move blocking into
background as well since it's a computationally expensive
7 years ago
Eugen Rochko
f0de621e76
Fix #463 - Fetch and display previews of URLs using OpenGraph tags
7 years ago
Eugen Rochko
6c28886317
Improve background jobs params and error handling
7 years ago
Eugen Rochko
86be6d48c9
Fix accidental distribution of hidden stream entries to PuSH subscribers
7 years ago
Eugen Rochko
49834a6e7f
Add API for retrieving blocked accounts
7 years ago
Eugen Rochko
4c6809f6ab
Adding some rescues to workers, e.g. don't fail removal job when status can't be found in the first place (already removed)
8 years ago
Eugen Rochko
0542773bca
Make unfavouriting async to prevent timeout errors from leaving orphaned records behind
8 years ago
Eugen Rochko
6de079a5af
Removing external hub completely, fix #333 fixing digit-only hashtags,
removing web app capability from non-webapp pages
8 years ago
Eugen Rochko
668013265c
Restoring old async behaviour of thread resolving as it proved to be more robust
8 years ago
Eugen Rochko
f90133d2ad
Thread resolving no longer needs to be separate from ProcessFeedService,
since that is only ever called in the background
8 years ago
Eugen Rochko
f406e01fcf
Add filters for suspended accounts
8 years ago
Eugen Rochko
58b3f4fd67
Fix #329 - avatar errors no longer prevent remote accounts from being saved
(without avatar). Also improved search position of exact matches
8 years ago