Eugen
87f7a3922c
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
2017-04-25 02:47:31 +02:00
Eugen
f89e26bdd5
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
2017-04-24 00:38:37 +02:00
Matt Jankowski
d1ebb63c54
Quick best practice cleanup of views/helpers ( #1546 )
...
* Remove trailing whitespace
* Use query methods instead of explicit .blank? checks
2017-04-12 18:24:18 +02:00
Matt Jankowski
bf7306636e
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
2017-04-12 18:20:44 +02:00
Matt Jankowski
db979ebcee
Imports controller errors ( #1553 )
...
* Add spec for settings/imports controller
* Add failing spec for settings/imports#create
* Fix broken imports
* Refactor ImportWorker
2017-04-11 21:40:14 +02:00
Jantso Porali
4def9924d7
Fix for Import issue from URL ( #1416 )
2017-04-10 12:49:34 +02:00
Eugen
697e4da6cb
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
2017-04-08 13:26:03 +02:00
Eugen
24c77e57b2
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
2017-04-07 05:56:56 +02:00
blackle
70f485a9e7
Catch more errors in process_follows so it doesn't fail
2017-04-05 20:04:13 -04:00
Eugen Rochko
cd68e54a7d
Split SalmonWorker into smaller parts, move profile updating into another job
2017-04-05 21:43:10 +02:00
Eugen Rochko
5189ce9cd1
Replace calls to FeedManager#inline_render and #broadcast
2017-04-05 19:45:18 +02:00
Eugen
54329947ab
Fix wrong variable used in publish channel
2017-04-05 18:58:32 +02:00
Eugen
b9ddfff8f6
Add proper message to PushUpdateWorker, use redis directly
2017-04-05 18:48:41 +02:00
Eugen
d67e1fe44d
Merge branch 'master' into broadcast-to-worker
2017-04-05 18:44:33 +02:00
Eugen Rochko
8f38353c4d
Only render public payload once in FanOutOnWrite
2017-04-05 14:26:17 +02:00
Kurtis Rainbolt-Greene
192f855952
We're going to want these nice helper methods, lets share them with a parent class that matches Rails 5 practices (application level abstraction)
2017-04-04 21:14:37 -07:00
Kurtis Rainbolt-Greene
bea03b4553
Moving in the inline render
2017-04-04 20:51:18 -07:00
Kurtis Rainbolt-Greene
dd66bce930
I don't actually think we need that.
2017-04-04 20:48:22 -07:00
Kurtis Rainbolt-Greene
7d887cea4b
Moving the queue_at into the worker
2017-04-04 20:39:14 -07:00
Kurtis Rainbolt-Greene
4f2985cddc
Replacing the broadcast method with the one defined in the feed manager
2017-04-04 20:36:03 -07:00
Kurtis Rainbolt-Greene
de1bb4bd56
By pushing this into a worker we can reduce the amount of time the feed manager using workers eat up a connection
2017-04-04 20:23:40 -07:00
Eugen Rochko
d2b7daf6bb
Remove PuSH subscriptions when delivery is answered with a 4xx error
2017-04-05 02:34:33 +02:00
Eugen Rochko
fa2a1af90a
Spawn FeedInsertWorker to deliver status into personal feed
2017-04-04 19:21:37 +02:00
Eugen Rochko
e60c473917
Reduce number of items in feeds, optimize regeneration worker slightly,
...
make regeneration worker unique, (only schedule/execute once at a time)
2017-04-04 13:58:34 +02:00
Eugen Rochko
1484df2db5
Move OStatus processing back into default queue
2017-04-04 13:02:49 +02:00
Eugen Rochko
7a56845060
Only call regeneration worker after first login after a 14 day break
2017-04-04 02:00:10 +02:00
Eugen Rochko
8eca42b265
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.
2017-04-04 00:53:20 +02:00
Eugen Rochko
6ebe31e716
Make default admin UI page reports. Add admin UI for creating a domain block
2017-04-03 18:55:06 +02:00
Eugen Rochko
244da78105
Import feature for following/blocking lists (addresses #62 , #177 , #201 , #454 )
2017-03-30 19:42:33 +02:00
Eugen Rochko
0cb5a2a0a7
Add digest e-mails
2017-03-04 00:00:48 +01:00
Eugen Rochko
94a6dfab3a
Disable PuSH for blocked domains
2017-02-14 04:01:37 +01:00
Eugen Rochko
8550d32165
Adding more unit tests. Fixing Salmon slaps XML
2017-02-12 17:30:15 +01:00
Eugen Rochko
79f3ee31df
Take out private toot distribution out of PuSH again
2017-02-12 01:31:04 +01:00
Eugen Rochko
ffd58aad9d
Make PuSH only distribute to subscriptions that match follower domains
...
Allow PuSH to distribute private toots with that condition
2017-02-11 15:41:39 +01:00
Eugen Rochko
1e66536797
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
2017-02-11 14:25:01 +01:00
Eugen Rochko
59c8c2b28a
Make follow requests federate
2017-02-11 02:58:00 +01:00
Eugen Rochko
efa4065029
Preheat status cache
2017-02-05 17:24:18 +01:00
Eugen Rochko
9327d05bf7
API for apps to register for push notifications
2017-01-29 01:30:32 +01:00
Eugen Rochko
ea8b548ee9
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
2017-01-24 21:40:41 +01:00
Eugen Rochko
98660a76d9
Move merging/unmerging of timelines into background. Move blocking into
...
background as well since it's a computationally expensive
2017-01-23 21:29:34 +01:00
Eugen Rochko
f748a91ec7
Fix #463 - Fetch and display previews of URLs using OpenGraph tags
2017-01-20 01:00:14 +01:00
Eugen Rochko
a893746e5a
Improve background jobs params and error handling
2017-01-05 03:28:21 +01:00
Eugen Rochko
0471207cc3
Fix accidental distribution of hidden stream entries to PuSH subscribers
2017-01-03 00:44:23 +01:00
Eugen Rochko
2bc6e7c96e
Add API for retrieving blocked accounts
2016-12-29 20:12:32 +01:00
Eugen Rochko
0f4c9d1124
Adding some rescues to workers, e.g. don't fail removal job when status can't be found in the first place (already removed)
2016-12-19 09:31:12 +01:00
Eugen Rochko
b2945b025f
Make unfavouriting async to prevent timeout errors from leaving orphaned records behind
2016-12-19 09:12:29 +01:00
Eugen Rochko
9d4f96f440
Removing external hub completely, fix #333 fixing digit-only hashtags,
...
removing web app capability from non-webapp pages
2016-12-18 12:24:37 +01:00
Eugen Rochko
b7c2c5d81d
Restoring old async behaviour of thread resolving as it proved to be more robust
2016-12-12 21:12:19 +01:00
Eugen Rochko
fb36684678
Thread resolving no longer needs to be separate from ProcessFeedService,
...
since that is only ever called in the background
2016-12-11 22:23:11 +01:00
Eugen Rochko
7752662f97
Add filters for suspended accounts
2016-12-06 18:03:30 +01:00