Commit Graph

234 Commits (128dcdf68a84f1152d773ce50a8f8ac9b1ea7fd4)

Author SHA1 Message Date
Eugen Rochko ef9e827c54 Adding follow requests API 2016-12-26 19:30:45 +01:00
Eugen Rochko 1ed3bb3a02 Don't show statuses to blocked users 2016-12-26 19:13:56 +01:00
Eugen Rochko 9e0bd72434 Fix account timelines bug 2016-12-23 01:13:16 +01:00
Eugen Rochko a3680345b7 Hide follow/unfollow button from public page if follow already requested 2016-12-22 23:07:46 +01:00
Eugen Rochko 238233440f Follow call on locked account creates follow request instead
Reflect "requested" relationship in API and UI
Reflect inability of private posts to be reblogged in the UI
Disable Webfinger for locked accounts
2016-12-22 23:03:57 +01:00
Eugen Rochko 11e2159859 Merge branch 'master' into development 2016-12-22 11:35:00 +01:00
Eugen Rochko 8038c663b0 Ensure that reblogs and favs always refer to the original status rather than a reblog wrapper 2016-12-22 11:34:05 +01:00
Eugen Rochko d417da7d3a Private visibility on statuses prevents non-followers from seeing those
Filters out hidden stream entries from Atom feed
Blocks now generate hidden stream entries, can be used to federate blocks
Private statuses cannot be reblogged (generates generic 422 error for now)
POST /api/v1/statuses now takes visibility=(public|unlisted|private) param instead of unlisted boolean
Statuses JSON now contains visibility=(public|unlisted|private) field
2016-12-21 20:04:13 +01:00
Eugen Rochko 6d7f3be2f6 Add OEmbed iframe HTML, convert emojis on public pages, increase size of attachment thumbnails 2016-12-18 15:20:39 +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 ebfe460e82 Downsize attachment previews, but improve quality from 80 to 90 2016-12-07 12:09:20 +01:00
Eugen Rochko 88218c83d5 Add suspend account functionality to admin UI 2016-12-06 18:22:59 +01:00
Eugen Rochko a4d3947c88 Fix 2016-12-06 00:24:33 +01:00
Eugen Rochko ca0757a6cf Add account suspension 2016-12-05 22:59:30 +01:00
Eugen Rochko 303044f899 Downsize originals in media attachments, small fixes 2016-12-05 17:13:44 +01:00
Eugen Rochko e5e702a976 Adding configurable e-mail blacklist 2016-12-04 19:07:02 +01:00
Eugen Rochko 595f592304 Do not autoplay videos, display play button instead. Use expiring links when using S3. Do not keep originals
for avatars/headers, resize avatars down to 120x120 instead of 300x300. Set cache headers on S3 stuff, also
make it private (aka only accessible via expiring links to prevent hotlinking)
2016-12-04 12:28:10 +01:00
Eugen Rochko 047bdf6fe0 Improve notification model 2016-12-03 20:04:19 +01:00
Eugen Rochko 2d4ce8a867 Fix #248 - Reload all accounts when fetching from cache 2016-12-03 18:21:26 +01:00
Eugen Rochko 23a4f93345 Fix #323 - self-replies to appear in public timelines again 2016-12-02 14:33:20 +01:00
Eugen Rochko 211049ae59 Fix #329 - avatar errors no longer prevent remote accounts from being saved
(without avatar). Also improved search position of exact matches
2016-12-02 14:14:49 +01:00
Eugen Rochko 8d4ef0b6c3 Per-status control for unlisted mode, also federation for unlisted mode
Fix #233, fix #268
2016-11-30 21:34:59 +01:00
Eugen Rochko 1bb1ec3b8d Further abstract caching for includes 2016-11-30 15:57:56 +01:00
Eugen Rochko bee7aeaea5 Unify collection caching code 2016-11-29 15:49:39 +01:00
Eugen Rochko 67db2cd871 Upgrade Paperclip to 5, AWS-SDK to 2, do not generate medium/small versions of avatars 2016-11-29 14:20:15 +01:00
Eugen Rochko 0cc5410e03 Adding backtracing to Salmon/Processing workers 2016-11-28 19:11:36 +01:00
Eugen Rochko b344f157cc Fix order of attachments (see #269) 2016-11-28 13:49:55 +01:00
Eugen Rochko b5ad0eb4ea Adding embedded PuSH server 2016-11-28 13:36:47 +01:00
Eugen Rochko 31108d4659 Public and hashtag timelines now exclude reblogs and replies
Fix #289 - don't download avatar unless the URL is http/https
Fix #293 - reblog/reblogged is now boost/boosted
2016-11-26 15:45:35 +01:00
Eugen Rochko ea0846645a Fix #65 - Options to block notifications from people you don't follow/who don't follow you 2016-11-25 13:13:16 +01:00
Eugen Rochko 3b3bf2dd59 Filter statuses that mention blocked users 2016-11-25 12:35:52 +01:00
Eugen Rochko 30f9e9e624 Remove Neo4J 2016-11-24 23:46:27 +01:00
Alyssa Ross cb06801b21 Extract filename obfuscation into module 2016-11-24 00:30:58 +00:00
Eugen Rochko 59d7fe4c05 Fix #168 - Turn off e-mail notifications by default 2016-11-23 08:39:04 +01:00
Eugen Rochko dda6354c76 Implement includes caching for timelines APIs 2016-11-23 08:34:35 +01:00
Eugen Rochko f6a975af8b More query optimizations 2016-11-22 23:18:54 +01:00
Eugen Rochko 30010a6dbd Moving some counter queries out of subqueries in the API 2016-11-22 22:59:54 +01:00
Eugen Rochko f07b0dc82f Remove unneeded indices, improve error handling in background workers, don't needlessly reload reblogged status, send Devise e-mails asynchronously 2016-11-22 17:32:51 +01:00
Eugen Rochko 4d100a1b36 Remove some n+1 queries from notifications API 2016-11-21 15:16:04 +01:00
Eugen Rochko 83cdfefa7d Remove orphaned notifications, add scopes param to app create API 2016-11-21 14:59:13 +01:00
Eugen Rochko 38025dfea3 Adding unified streamable notifications 2016-11-20 19:39:58 +01:00
Eugen Rochko d2029a8845 Don't create attachments if remote file cannot be fetched 2016-11-18 23:16:34 +01:00
Eugen Rochko 8d767b477f Validate presence of text even for remote statuses 2016-11-18 23:14:41 +01:00
Eugen Rochko b8e6ca45e5 Add user locale setting 2016-11-16 17:56:31 +01:00
Eugen Rochko c6f5eb8aa7 Fix #144 - Filter statuses from blocked users out of ancestors/descendants results 2016-11-15 17:33:41 +01:00
Eugen Rochko e71b152d89 Fix rubocop issues, introduce usage of frozen literal to improve performance 2016-11-15 16:56:29 +01:00
Eugen Rochko 733b5415be Fix #142 - Escape ILIKE special characters from Account.find_remote 2016-11-13 11:27:13 +01:00
Eugen Rochko 6b7fdf3b5f Weigh username matches higher than domain matches in account search 2016-11-12 14:56:40 +01:00
Eugen Rochko cbfa28b9cc Use full-text search for autosuggestions 2016-11-12 14:36:10 +01:00
Eugen Rochko d8c2044e65 Fix public timeline query 2016-11-10 21:58:22 +01:00
Eugen Rochko 0b03bbad67 Discard misattributed remote statuses, improve timelines filter 2016-11-10 00:15:49 +01:00
Eugen Rochko 6d9f8ee11e Improve filtering of public/hashtag timelines, both in backlog and real-time 2016-11-10 00:03:33 +01:00
Eugen Rochko beb36e24fe API pagination for all collections using Link header 2016-11-09 17:48:44 +01:00
Eugen Rochko d98b43cf56 Move timelines API from statuses to its own controller, add a check for
resources that require a user context vs those that don't (such as public timeline)

/api/v1/statuses/public   -> /api/v1/timelines/public
/api/v1/statuses/home     -> /api/v1/timelines/home
/api/v1/statuses/mentions -> /api/v1/timelines/mentions
/api/v1/statuses/tag/:tag -> /api/v1/timelines/tag/:tag
2016-11-08 23:29:08 +01:00
Eugen Rochko f1d2c46ded Improve feed regeneration 2016-11-08 02:08:32 +01:00
Eugen Rochko b225b8d32e Fix account and hashtag regex 2016-11-07 17:35:25 +01:00
Eugen Rochko 6d948a809e Account notes (bios) can now contain links. Character limit upped to 160 2016-11-07 01:14:12 +01:00
Eugen Rochko f0956d434c Improve @mention regex 2016-11-05 22:09:51 +01:00
Eugen Rochko cb22dce970 Adding hashtags 2016-11-05 17:13:14 +01:00
Eugen Rochko 082e57fc13 Adding hashtag model 2016-11-04 19:12:59 +01:00
Eugen Rochko 71836838dd Enable caching for some rabl views 2016-11-03 13:28:36 +01:00
Eugen Rochko 02a90979c5 Catch 404 errors when downloading remote media, add screenshot to landing page 2016-11-01 16:58:13 +01:00
Eugen Rochko 95e65d883a Limit returned followees/followers by API to 40 for now 2016-10-30 15:14:07 +01:00
Eugen Rochko e5c0f979cf Fix common followers API 2016-10-30 15:08:36 +01:00
Eugen Rochko 38cacac4b0 Adding common followers API, fixing fallback query again 2016-10-29 01:29:19 +02:00
Eugen Rochko 2917bca72b Fix follow suggestion fallback to exclude already followed users 2016-10-28 20:35:30 +02:00
Eugen Rochko f9e06eb819 Make suggestions box also use user list components 2016-10-28 20:26:49 +02:00
Eugen Rochko 1eac265f35 Adding public timeline silencing 2016-10-27 19:33:04 +02:00
Eugen Rochko d8a66ab492 Fix suggestions fallback query 2016-10-27 19:03:05 +02:00
Eugen Rochko d63f0295b9 Fix public channel 2016-10-23 11:56:04 +02:00
Eugen Rochko 6657414266 Adding OAuth access scopes, fixing OAuth authorization UI, adding rate limiting
to the API
2016-10-22 19:39:44 +02:00
Eugen Rochko 4470966cd9 Fix #100 - Add "back" button to certain views
Also fix reloading of timelines after merge-type events
2016-10-19 18:20:19 +02:00
Eugen Rochko 39aa7caaa5 Do not force-transcode uploaded videos to webm (leave mp4 as-is) 2016-10-18 17:51:45 +02:00
Eugen Rochko 39d6f837db Actually fix public timeline 2016-10-17 01:59:34 +02:00
Eugen Rochko b1dee1b6d1 Fix #99 - public timeline not just reblogs, fix #98 infinite scrolling issues 2016-10-17 01:23:41 +02:00
Eugen Rochko 1df4d2e3aa Increase default number of loaded suggestions to 10 2016-10-16 19:30:01 +02:00
Eugen Rochko 41aae40927 Fix #16 - Optimize n+1 queries when checking reblogged/favourited values for status lists in API 2016-10-16 19:10:16 +02:00
Eugen Rochko 19b6f7a013 Filter out reblogs of blocked users from public timeline (the not real-time variant) 2016-10-16 18:35:20 +02:00
Eugen Rochko 916907580e Backfill follow suggestions with fallback when not enough results. Cycling
through suggestions in UI
2016-10-16 17:04:13 +02:00
Eugen Rochko 395d15e5fd Fix suggestions fallback 2016-10-15 17:34:00 +02:00
Eugen Rochko 8497dfc98e Fix follow suggestions order 2016-10-15 17:19:18 +02:00
Eugen Rochko 52a5ad8207 Fix follow suggestions ranking 2016-10-15 16:54:50 +02:00
Eugen Rochko e5bcf8040c Adding sort by node rank to follow suggestions and fallback to most influential users 2016-10-15 16:46:15 +02:00
Eugen Rochko 2614a47a15 Exclude blocked users from follow suggestions, fix tests 2016-10-15 13:48:38 +02:00
Eugen Rochko 8374abcf06 Fix multiple results return from FollowSuggestion.get 2016-10-15 13:00:21 +02:00
Eugen Rochko e88d667d3f Add sync command for neo4j, fix configuration, add neo4j to docker-compose, fix seed 2016-10-15 12:37:43 +02:00
Eugen Rochko 92209a1b6e Display follow suggestions 2016-10-15 12:06:30 +02:00
Eugen Rochko 5860094354 Adding sync of follow relationships to Neo4J, accounts/suggestions API 2016-10-14 23:10:07 +02:00
Eugen Rochko 5e49118f86 Change how convert options are escaped 2016-10-12 14:39:54 +02:00
Eugen Rochko 1474f87a14 Allow mp4 uploads, convert to WebM 2016-10-12 14:29:10 +02:00
Eugen Rochko 12a6eb95be Make account domains case-insensitive, downcase before checking against local 2016-10-10 03:34:15 +02:00
Eugen Rochko 7cb55af441 Fix default assumed object type (note->activity), make stream entry threaded? check aware of orphaned replies 2016-10-10 02:55:30 +02:00
Eugen Rochko 102eab0ac9 Public timeline to exclude users you blocked 2016-10-09 15:15:21 +02:00
Eugen Rochko 9bf5a73968 Adding domain blocks 2016-10-09 14:48:59 +02:00
Yann Vaillant 9f7d65b98b Strip exif data from uploaded images
Using `-strip` cli options from ImageMagick

http://www.imagemagick.org/script/command-line-options.php#strip

fix #85
2016-10-08 15:18:20 +02:00
Eugen Rochko d51efdd1dc Adding user settings (model and mailer), no form yet 2016-10-07 13:17:56 +02:00
Eugen Rochko 2c9e672ee2 Integrating block relationships into the API (read-only for now) 2016-10-03 17:16:58 +02:00
Eugen Rochko 9d59d7b463 Adding a block model and filter mentions from blocked users (fix #60) 2016-10-03 17:12:13 +02:00
Eugen Rochko fc198a8b4c Adding e-mail confirmations 2016-10-03 16:51:00 +02:00
Eugen Rochko b3c7c8700d Fix most pages on small screens 2016-10-03 16:17:28 +02:00