Age | Commit message (Collapse) | Author | |
---|---|---|---|
2017-04-05 | Split SalmonWorker into smaller parts, move profile updating into another job | Eugen Rochko | |
2017-03-13 | Fix casuality of processing remote mentions such that notifications | Eugen Rochko | |
about them would be processed only after the entire status is processed | |||
2017-02-22 | Skip remote media URLs that don't have a hostname | Eugen Rochko | |
2017-02-11 | Mentions in private statuses allow mentioned people to see them | Eugen Rochko | |
2017-02-09 | Fix #614 - extra reply-boolean on statuses to account for cases when replied-to | Eugen Rochko | |
status is not in the system at time of distribution; fix #607 - reset privacy settings to defaults when cancelling replies | |||
2017-01-27 | Do 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-25 | Use <summary> to encode content warnings instead | Eugen Rochko | |
2017-01-25 | Instead 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-23 | Optional domain block attribute that prevents media attachments from being ↵ | Eugen Rochko | |
downloaded | |||
2017-01-20 | Instead of refusing to create accounts, domain blocks auto-suspend new ↵ | Eugen Rochko | |
accounts from that domain | |||
2017-01-20 | Fix preview cards layout, do preview card crawling for remote statuses | Eugen Rochko | |
2017-01-14 | Fix too late return | Eugen | |
2017-01-11 | Add ruby version to Gemfile, move devDependencies in package.json to ↵ | Eugen Rochko | |
dependencies, fix bug in process feed service | |||
2016-12-12 | Restoring old async behaviour of thread resolving as it proved to be more robust | Eugen Rochko | |
2016-12-11 | Thread resolving no longer needs to be separate from ProcessFeedService, | Eugen Rochko | |
since that is only ever called in the background | |||
2016-12-05 | Add account suspension | Eugen Rochko | |
2016-11-30 | Per-status control for unlisted mode, also federation for unlisted mode | Eugen Rochko | |
Fix #233, fix #268 | |||
2016-11-26 | Update hub URL and re-subscribe if hub URL changes | Eugen Rochko | |
2016-11-22 | Remove unneeded indices, improve error handling in background workers, don't ↵ | Eugen Rochko | |
needlessly reload reblogged status, send Devise e-mails asynchronously | |||
2016-11-21 | Call NotifyService about remote reblogs | Eugen Rochko | |
2016-11-20 | Adding unified streamable notifications | Eugen Rochko | |
2016-11-18 | Catch validation errors in ProcessFeedService so that one failing entry ↵ | Eugen Rochko | |
wouldn't stop others from going through | |||
2016-11-18 | Don't create attachments if remote file cannot be fetched | Eugen Rochko | |
2016-11-15 | Fix rubocop issues, introduce usage of frozen literal to improve performance | Eugen Rochko | |
2016-11-13 | Force utf-8 encoding when processing XML | Eugen Rochko | |
2016-11-10 | Discard misattributed remote statuses, improve timelines filter | Eugen Rochko | |
2016-11-08 | Adding more logging | Eugen Rochko | |
2016-11-08 | Fix for thread resolve service and process feed service url method | Eugen Rochko | |
2016-11-08 | Fix region setting for AWS gem | Eugen Rochko | |
2016-11-08 | Fix typo | Eugen Rochko | |
2016-11-08 | ProcessFeedService refactor | Eugen Rochko | |
2016-11-07 | Improved configuration from ENV, cleaned up timeline filter methods | Eugen Rochko | |
to be more readable, add extra logging to process feed service | |||
2016-11-05 | Adding hashtags | Eugen Rochko | |
2016-10-14 | Fix duplication of media attachments when a remote status reblogs a local one | Eugen Rochko | |
2016-10-12 | Fix up a few exceptions | Eugen Rochko | |
2016-10-10 | Fixing namespaces issue | Eugen Rochko | |
2016-10-10 | Fix namespace parsing in Atom feeds | Eugen Rochko | |
2016-10-10 | Use Account#find_remote method when possible | Eugen Rochko | |
2016-10-10 | Don't return unsaved status from ProcessFeedService | Eugen Rochko | |
2016-10-10 | Adding test for ProcessFeedService | Eugen Rochko | |
2016-10-10 | Improve process feed service | Eugen Rochko | |
2016-10-10 | Fix default assumed object type (note->activity), make stream entry ↵ | Eugen Rochko | |
threaded? check aware of orphaned replies | |||
2016-10-06 | Better comparison of "local" domain | Eugen Rochko | |
2016-10-03 | Blocking will prevent e-mail notifications from blocked user, blocks in UI | Eugen Rochko | |
2016-10-02 | Small fixes | Eugen Rochko | |
2016-09-29 | Improve code style | Eugen Rochko | |
2016-09-26 | Fix #54 - Fetch remote accounts by URL from mentions | Eugen Rochko | |
Fetching atom extracted from FetchRemoteAccountService and FetchRemoteStatusService into FetchAtomService. Mentions of the constant "http://activityschema.org/collection/public" skipped as it's not a real URL/user. | |||
2016-09-22 | Handle remote account mentions a little better by trying a URL lookup in the db | Eugen Rochko | |
2016-09-22 | Fix #51 - prevent duplicate attachments for remote statuses | Eugen Rochko | |
2016-09-21 | Fix #24 - Thread resolving for remote statuses | Eugen Rochko | |
This is a big one, so let me enumerate: Accounts as well as stream entry pages now contain Link headers that reference the Atom feed and Webfinger URL for the former and Atom entry for the latter. So you only need to HEAD those resources to get that information, no need to download and parse HTML <link>s. ProcessFeedService will now queue ThreadResolveWorker for each remote status that it cannot find otherwise. Furthermore, entries are now processed in reverse order (from bottom to top) in case a newer entry references a chronologically previous one. ThreadResolveWorker uses FetchRemoteStatusService to obtain a status and attach the child status it was queued for to it. FetchRemoteStatusService looks up the URL, first with a HEAD, tests if it's an Atom feed, in which case it processes it directly. Next for Link headers to the Atom feed, in which case that is fetched and processed. Lastly if it's HTML, it is checked for <link>s to the Atom feed, and if such is found, that is fetched and processed. The account for the status is derived from author/name attribute in the XML and the hostname in the URL (domain). FollowRemoteAccountService and ProcessFeedService are used. This means that potentially threads are resolved recursively until a dead-end is encountered, however it is performed asynchronously over background jobs, so it should be ok. |