about summary refs log tree commit diff
path: root/app/services/process_feed_service.rb
AgeCommit message (Collapse)Author
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
2017-05-22Similarly to #2426, put creation of remote statuses in a transaction, (#3233)Eugen Rochko
so that public timeline/caching would not encounter incomplete data
2017-05-18Fetch remote image using http.rb (#3114)Yamagishi Kazutoshi
2017-05-17Fix #2572 - Resolve preview cards for remote statuses as well as local ones ↵Eugen Rochko
(#3088)
2017-05-16Make faster ProcessFeedService (#3080)Shunsuke Michii
* Add index accounts on uri. * Remove a blank line.
2017-05-12Add conversation model, <ostatus:conversation /> (#3016)Eugen Rochko
* Add <ostatus:conversation /> tag to Atom input/output Only uses ref attribute (not href) because href would be the alternate link that's always included also. Creates new conversation for every non-reply status. Carries over conversation for every reply. Keeps remote URIs verbatim, generates local URIs on the fly like the rest of them. * Fix conversation migration * More spec coverage for status before_create * Prevent n+1 query when generating Atom with the new conversations * Improve code style * Remove redundant local variable
2017-05-11Fix #1426 - Trim long usernames in public follower/following lists (#2993)Eugen Rochko
Fix #2221 - Catch OpenSSL exceptions when loading remote avatars/headers/attachments Don't strip "rel" attribute from <a> tags when sanitizing (microformats)
2017-05-04Likely fix #2458, fix #2031 - handle out-of-order deletes for statuses (#2734)Eugen Rochko
* Likely fix #2458, fix #2031 - handle out-of-order deletes for statuses If a delete arrives before the original status, cache that information for 6h, and if the original status arrives in that window, ignore it * Add test case
2017-05-03Fix #2706 - Always respond with 200 to PuSH payloads (#2733)Eugen Rochko
Fix #2196 - Respond with 201 when Salmon accepted, 400 when unverified Fix #2629 - Correctly handle confirm_domain? for local accounts Unify rules for extracting author acct from XML, prefer <email>, fall back to <name> + <uri> (see also #2017, #2172)
2017-04-30Downgrade rubocop 0.48.1 => 0.46.0 (#2628)yhirano
* downgrade rubocop 0.48.1 => 0.46.0 * exclude vendor/**/* from rubocop target files * add frozen_string_literal comment line * fix percent literal delimited by ( and ) * fix alignment * remove comment disabling unknown cop
2017-04-27Improve shared status verification (#2525)Eugen Rochko
* Instead of parsing shared status contents verbatim, make roundtrip to purported original URL. Confirm that the "original" URL is from the same domain as the author it claims to be from. * Fix obvious typo, add comment * Use URI look-up first * Add test, update Goldfinger dependency to make less useless HTTP requests per Webfinger lookup
2017-04-25Punycode URI normalization (#2370)Eugen
* 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-16Add language detection (#1772)Eugen
* Add language detection via WhatLanguage and (de)serialization of it through Atom * Fix default language in ProcessFeedService * Re-add newline before 'react-rails' Gem to fix groupings Fixes Code Climate issue
2017-04-16Fix #1813 - Alleviate extra requests when processing mentions (#1938)Eugen
The <link rel="mentioned" /> tag refers to accounts by href. So we were matching the DB by the url attribute, and falling back to HTTP look-up. However, GS and Mastodon use profile URLs as URIs, too, and the match for that was missing. This could potentially alleviate some extra network requests
2017-04-16Make file attachment on MediaAttachment optional (#1865)Eugen
Create MediaAttachment but without actual file download when domain is blocked with reject_media set to true Clean up old media files when creating a new domain block with reject_media set to true Return remote_url in media attachments API if local file is not present Undo domain block action in admin UI Ability to enable reject_media from admin UI
2017-04-15Allow running mastodon on a different domain as the one used for identifying ↵ThibG
users (#1267) * Allow running mastodon on a different domain as the one used for identifying users * Alter documentation of WEB_DOMAIN to make clear it shouldn't be used unless the admin knows what they are doing * Compare to web_domain instead of local_domain when dealing with feeds/API * Correctly identify mentions to local accounts Mentions URLs point to the person's web profile, i.e., the user page served on WEB_DOMAIN.
2017-04-08Fix #1141, fix #1126 - Avatar/profile info fetching (#1215)Eugen
* 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-05Split SalmonWorker into smaller parts, move profile updating into another jobEugen Rochko
2017-03-13Fix casuality of processing remote mentions such that notificationsEugen Rochko
about them would be processed only after the entire status is processed
2017-02-22Skip remote media URLs that don't have a hostnameEugen Rochko
2017-02-11Mentions in private statuses allow mentioned people to see themEugen Rochko
2017-02-09Fix #614 - extra reply-boolean on statuses to account for cases when replied-toEugen Rochko
status is not in the system at time of distribution; fix #607 - reset privacy settings to defaults when cancelling replies
2017-01-27Do not run FetchLinkCardService on local URLs, increase file size limit to 8MB,Eugen Rochko
fix ProcessFeedService pushing status into distribution if called a second time while the first is still running (i.e. when a PuSH comes after a Salmon slap), fix not running escape on spoiler text before emojify
2017-01-25Use <summary> to encode content warnings insteadEugen Rochko
2017-01-25Instead of using spoiler boolean and spoiler_text, simply check for ↵Eugen Rochko
non-blank spoiler_text Federate spoiler_text using warning attribute on <content /> instead of a <category term="spoiler" /> Clean up schema file from accidental development migrations
2017-01-23Optional domain block attribute that prevents media attachments from being ↵Eugen Rochko
downloaded
2017-01-20Instead of refusing to create accounts, domain blocks auto-suspend new ↵Eugen Rochko
accounts from that domain
2017-01-20Fix preview cards layout, do preview card crawling for remote statusesEugen Rochko
2017-01-14Fix too late returnEugen
2017-01-11Add ruby version to Gemfile, move devDependencies in package.json to ↵Eugen Rochko
dependencies, fix bug in process feed service
2016-12-12Restoring old async behaviour of thread resolving as it proved to be more robustEugen Rochko
2016-12-11Thread resolving no longer needs to be separate from ProcessFeedService,Eugen Rochko
since that is only ever called in the background
2016-12-05Add account suspensionEugen Rochko
2016-11-30Per-status control for unlisted mode, also federation for unlisted modeEugen Rochko
Fix #233, fix #268
2016-11-26Update hub URL and re-subscribe if hub URL changesEugen Rochko
2016-11-22Remove unneeded indices, improve error handling in background workers, don't ↵Eugen Rochko
needlessly reload reblogged status, send Devise e-mails asynchronously
2016-11-21Call NotifyService about remote reblogsEugen Rochko
2016-11-20Adding unified streamable notificationsEugen Rochko
2016-11-18Catch validation errors in ProcessFeedService so that one failing entry ↵Eugen Rochko
wouldn't stop others from going through
2016-11-18Don't create attachments if remote file cannot be fetchedEugen Rochko
2016-11-15Fix rubocop issues, introduce usage of frozen literal to improve performanceEugen Rochko
2016-11-13Force utf-8 encoding when processing XMLEugen Rochko
2016-11-10Discard misattributed remote statuses, improve timelines filterEugen Rochko
2016-11-08Adding more loggingEugen Rochko
2016-11-08Fix for thread resolve service and process feed service url methodEugen Rochko
2016-11-08Fix region setting for AWS gemEugen Rochko
2016-11-08Fix typoEugen Rochko
2016-11-08ProcessFeedService refactorEugen Rochko
2016-11-07Improved configuration from ENV, cleaned up timeline filter methodsEugen Rochko
to be more readable, add extra logging to process feed service
2016-11-05Adding hashtagsEugen Rochko