about summary refs log tree commit diff
path: root/app/services
AgeCommit message (Collapse)Author
2017-07-12Merge upstream!! #64 <3 <3kibigo!
2017-07-12Fix #4067 - Do not make HTTP round-trip when resolving local URL (#4160)Eugen Rochko
2017-07-11Revert "Wrap methods of ProcessFeedService::ProcessEntry in classes (#4151)" ↵nightpool
(#4157) This reverts commit 425acecfdb15093a265b191120fb2d4e4c4135c4.
2017-07-11Wrap methods of ProcessFeedService::ProcessEntry in classes (#4151)Akihiko Odaki (@fn_aki@pawoo.net)
ProcessFeedService::ProcessEntry had many methods, so wrap them in classes representing activities.
2017-07-11Remove redundant inclusion (#4150)Akihiko Odaki (@fn_aki@pawoo.net)
2017-07-11Fix PrecomputeFeedService for filtered statuses (#4148)Akihiko Odaki (@fn_aki@pawoo.net)
2017-07-10Rescue exceptions related to Goldfinger at FetchRemoteStatusService (#4138)abcang
2017-07-09Rescue exceptions related to Goldfinger (#4044)abcang
* Rescue exceptions related to Goldfinger * Exclude Goldfinger::SSLError
2017-07-08Use charlock_holmes instead of nkf at FetchLinkCardService (#4080)nullkal
* Specs for language detection * Use CharlockHolmes instead of NKF * Correct mistakes * Correct style * Set hint_enc instead of falling back and strip_tags * Improve specs * Add dependencies
2017-07-06replies to local-only toots default to local-only, and fix some regex bugsSurinna Curtis
2017-07-07Fix feed author not being enforced in ProcessFeedService (#4092)Eugen Rochko
Ensure the only allowed author of top-level entries in feed is the person the feed belongs to (a verified user). Ensure delete events only apply if the deleted item belonged to that user.
2017-07-07Refactor JSON templates to be generated with ActiveModelSerializers instead ↵Eugen Rochko
of Rabl (#4090)
2017-07-05Fix Nokogiri::HTML at FetchLinkCardService (#4072)abcang
2017-07-03Rescue exceptions caused by FetchLinkCardService (#4045)abcang
2017-06-30Do not raise an error if PrecomputeFeed could not find any status (#4015)Akihiko Odaki (@fn_aki@pawoo.net)
2017-06-29rescue HTTP::ConnectionError (#3992)abcang
2017-06-29Use multiple pairs for zadd in PrecomputeFeedService (#3990)Akihiko Odaki (@fn_aki@pawoo.net)
2017-06-28Overwrite old statuses with reblogs in PrecomputeFeedService (#3984)Akihiko Odaki (@fn_aki@pawoo.net)
2017-06-27Merge remote-tracking branch 'upstream/master'beatrix-bitrot
2017-06-26Eyes with variation-selector-16 now also do local-onlySurinna Curtis
2017-06-26Raise an error if salmon request response is unsatisfactory (#3960)ThibG
2017-06-26keyword muting and local only tooting WIPbeatrix-bitrot
2017-06-20Fix conversations (fixes #3869) (#3870)ThibG
* Actually create conversations given explicit URIs * Try to get the parent toot in before validation, to avoid creating a new conversation
2017-06-20Filter direct statuses in Status.as_home_timeline (#3842)Akihiko Odaki (@fn_aki@pawoo.net)
The classes using Status.as_home_timeline, namely Feed and PrecomputeFeedService are expected to filter direct statuses as FanOutWriteService does, but their filtering were incomplete or missing. This commit solves the problem by filtering direct statuses in as_home_timeline as the other similar methods such as as_public_timeline does.
2017-06-19Rename FollowRemoteAccountService to ResolveRemoteAccountService (#3847)Eugen Rochko
Rename Activitypub to ActivityPub
2017-06-15Fix #3633 by not spawning RemoteProfileUpdateWorker from ↵ThibG
FetchRemoteAccountService (#3642)
2017-06-14Fix account delete form not accepting password, update suspended (#3745)Eugen Rochko
account before removing content for quicker feedback to end-users
2017-06-14Batched remove status service (#3735)Eugen Rochko
* Make Pubsubhubbub::DistributionWorker handle both single stream entry arguments, as well as arrays of stream entries * Add BatchedRemoveStatusService, make SuspendAccountService use it * Improve method names * Add test * Add more tests * Use PuSH payloads of 100 to have a clear mapping of 1000 input statuses -> 10 PuSH payloads It was nice while it lasted
2017-06-14Account deletion (#3728)Eugen Rochko
* Add form for account deletion * If avatar or header are gone from source, remove them * Add option to have SuspendAccountService remove user record, add tests * Exclude suspended accounts from search
2017-06-14Fix #2619 - When redis feed is empty, fall back to database (#3721)Eugen Rochko
* Fix #2619 - When redis feed is empty, fall back to database * Use redis value to return feed from database only while RegenerationWorker hasn't finished running * Fix specs * Replace usage of reject!
2017-06-12Fix regression from #3672 - Do not use pipeline around zscore (#3704)Eugen Rochko
2017-06-11Fix an error when TagManager.local_url? is called with a bad URI (#3701)ThibG
TagManager.local_url? was sometimes called with an URI with a nil host, leading to a crash in TagManager.local_url?. This fixes moves the already-existing uri.host.blank? check in front to avoid this case.
2017-06-11Fix removal of status sending the original status to mentioned users instead ↵Eugen Rochko
of delete Salmon (#3672) * Fix removal of status sending the original status to mentioned users instead of delete Salmon, add test * Create remove_status_service_spec.rb
2017-06-11Refactor UpdateRemoteProfileService (#3690)Yamagishi Kazutoshi
2017-06-08Fix #3378 - If favourite/reblog already exists, return it instead of failing ↵Eugen Rochko
(#3641)
2017-06-08Fixes #3605 by returning account from database in case of race condition (#3606)ThibG
2017-06-08Improve RuboCop rules (compatibility to Code Climate) (#3636)Yamagishi Kazutoshi
https://github.com/codeclimate/codeclimate-rubocop/blob/08f8de84ebfb39caa96391e23816877278f6441c/Gemfile.lock#L38 Code Climate is using RuboCop v0.46.0. Change several rules to maintain compatibility.
2017-06-07Fix Code Climate failed (regression from #3622) (#3624)Yamagishi Kazutoshi
2017-06-07Fixes #3388 by moving re-entrant `shared_status_from_xml` before transaction ↵ThibG
block (#3622) Steps to reproduce the original issue: 1. Have two remote accounts, A that you don't follow, and B that you follow. 2. Have A post a toot and reply to it. 3. Boost A's reply from remote account B. This used to cause the local instance to get A's reply but fail to link it to the original post.
2017-06-06Fix 500 errors on searching invalid URLs (#3613)unarist
2017-06-06Try fixing ThreadResolveWorker calls (#3599)ThibG
* Try fixing ThreadResolveWorker calls From my understanding of ActiveRecord, a transaction is commited as soon as the exit of the outmost ActiveRecord.transaction block. However, inner transaction blocks will exit without the transaction being commited. In this case, ThreadResolveWorker were fired *within* a transaction block, so moving the call out of it should do the trick. However, this is somewhat fragile, as this whole codepath could be called within yet another transaction. * Set status thread within the transaction block if it is immediately available from database
2017-06-05Don't follow account if it's already followed (#3575)René Klačan
Closes https://github.com/tootsuite/mastodon/issues/3102
2017-06-04change sidekiq queueing to bulk push (#3536)takayamaki
2017-06-03Remove WarmCacheService (#3527)Yamagishi Kazutoshi
WarmCacheService is no longer used (removed with 5442083b3c44c731679fc489568bf7f70a807a39 ).
2017-05-31Misc tidying and clean ups (#3445)Matt Jankowski
* Remove trailing whitespace in i18n mailers * Use query methods instead of #present? on AR attributes * Delegate Status#account_domain method * Delegate Mention #account_username and #account_acct methods
2017-05-30Add status destroy authorization to policy (#3453)Jack Jennings
* Add status destroy authorization to policy * Create explicit unreblog status authorization
2017-05-30Move status reblog authorization into policy (#3425)Jack Jennings
2017-05-29Extract authorization policy for viewing statuses (#3150)Jack Jennings
2017-05-27Avoid comparing domains when looking for an exact match of a local account ↵happycoloredbanana
(#3336)
2017-05-27Fix some nil errors (#3338)Eugen Rochko
* Fix nil input not handled well in AuthorExtractor concern * Fix hard error in ProcessFeedService when replied-to status has been deleted * Fix nil errors in ProcessInteractionService when favourited status cannot be found