Eugen Rochko
461542784b
Reduce wasted work in RemoveStatusService due to inactive followers ( #7672 )
2018-05-29 22:55:33 +02:00
Thibaut Girka
c087738270
Merge branch 'master' into glitch-soc/merge-upstream
2018-05-29 13:52:26 +02:00
Eugen Rochko
9bd23dc4e5
Track trending tags ( #7638 )
...
* Track trending tags
- Half-life of 1 day
- Historical usage in daily buckets (last 7 days stored)
- GET /api/v1/trends
Fix #271
* Add trends to web UI
* Don't render compose form on search route, adjust search results header
* Disqualify tag from trends if it's in disallowed hashtags setting
* Count distinct accounts using tag, ignore silenced accounts
2018-05-27 21:45:30 +02:00
Thibaut Girka
a4c9bda771
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
app/javascript/styles/mastodon-light.scss
config/locales/en.yml
config/locales/fr.yml
config/locales/simple_form.pl.yml
config/themes.yml
Conflicts resolved by deleting config/themes.yml,
marking app/javascript/styles/mastodon-light.scss as added,
and taking all new translation strings, not removing anything from
them.
2018-05-21 16:40:02 +02:00
Eugen Rochko
32d4372381
Use #any? instead of #exists? when checking media attachments ( #7570 )
...
If media_attachments are not loaded, SQL query is the same, but
the #exists? method performs SQL query even if preloaded
2018-05-21 16:01:16 +02:00
Yamagishi Kazutoshi
7403e5d306
Add media timeline ( #6631 )
2018-05-21 12:43:38 +02:00
Thibaut Girka
78ac246b87
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
Gemfile
Solved conflicts by using upstream's line for posix-spawn
2018-05-16 21:52:38 +02:00
Akihiko Odaki
55fd55714a
Raise Mastodon::RaceConditionError if Redis lock failed ( #7511 )
...
An explicit error allows user agents to know the error and Sidekiq to
retry.
2018-05-16 12:29:45 +02:00
unarist
d47091eb97
Fix custom emoji handling in UpdateRemoteProfileService (OStatus) ( #7501 )
...
This patch fixes NoMethodError and others in RemoteProfileUpdateWorker.
2018-05-15 16:03:34 +02:00
Wiktor
7fe2993b87
Fix account URI when updating ActivityPub account ( #7488 )
...
Updates account `uri` field on each call to `update_account` instead of
only once during `create_account` to mirror the same behavior in OStatus
`ResolveAccountService` class [0].
ActivityPub accounts are identified using `@username` and `@domain` pair
instead of URI since #6842 .
This fixes #7479 : a bug when the account identified by `@username` and
`@domain` changes its URI.
[0]:
https://github.com/tootsuite/mastodon/blob/03b69ebc450efc07246bd64204276941b7ede3fc/app/services/resolve_account_service.rb#L121
2018-05-14 22:56:45 +02:00
Thibaut Girka
ba7ee67498
Merge branch 'master' into glitch-soc/merge
2018-05-14 20:51:50 +02:00
abcang
3793e598d0
Call media.present? because media may be nil ( #7474 )
2018-05-14 12:51:53 +02:00
ThibG
7467361d70
Fetch boosted statuses on behalf of a follower ( fixes #7426 ) ( #7459 )
...
When an ActivityPub Announce is processed and the boosted toot is not known,
fetch it on behalf of one of the booster's followers. This is to allow
fetching self-boosts of previously-unknown private toots.
If fetching on behalf of a user fails, try fetching it anonymously: the
selected follower of a boosting user may be banned by the boosted toot's
author.
2018-05-12 16:48:32 +02:00
Thibaut Girka
45fce0e496
Merge branch 'master' into glitch-soc/merge
...
Conflicts:
app/controllers/invites_controller.rb
app/serializers/initial_state_serializer.rb
config/locales/ko.yml
2018-05-11 18:12:42 +02:00
Eugen Rochko
b4fb766b23
Add REST API for Web Push Notifications subscriptions ( #7445 )
...
- POST /api/v1/push/subscription
- PUT /api/v1/push/subscription
- DELETE /api/v1/push/subscription
- New OAuth scope: "push" (required for the above methods)
2018-05-11 11:49:12 +02:00
Thibaut Girka
1c9c0167b7
Merge branch 'master' into glitch-soc/master
...
Conflicts:
app/models/account.rb
app/views/accounts/_header.html.haml
2018-05-10 00:03:28 +02:00
Yamagishi Kazutoshi
d2ee48977c
Rescue Mastodon::LengthValidationError in FetchLinkCardService ( #7424 )
2018-05-09 08:39:08 +02:00
Surinna Curtis
01dfd6dbc8
Take the first recognized actor_type. ( #7410 )
2018-05-08 13:30:04 +02:00
ThibG
993e68a7dd
Fix hashtags not being federated on mentions ( fixes #6900 ) ( #7406 )
2018-05-08 03:36:59 +02:00
Eugen Rochko
42cd363542
Bot nameplates ( #7391 )
...
* Store actor type in database
* Add bot nameplate to web UI, add setting to preferences, API, AP
Fix #7365
* Fix code style issues
2018-05-07 09:31:07 +02:00
Eugen Rochko
0f0cc3f2eb
Support explicitly supplying language code for status via REST API ( #7389 )
2018-05-07 09:30:53 +02:00
Eugen Rochko
c947e2e4c5
Fix handling of malformed ActivityPub payloads when URIs are nil ( #7370 )
...
* Fix handling of malformed ActivityPub payloads when URIs are nil
* Gracefully handle JSON-LD canonicalization failures
2018-05-05 18:22:34 +02:00
Eugen Rochko
c73ce7b695
Store home feeds for 7 days instead of 14 ( #7354 )
...
* Store home feeds for 7 days instead of 14
Reduces workload for status fan-out to active followers
* Fix test for user model
2018-05-05 00:54:24 +02:00
David Yip
c816701550
Merge remote-tracking branch 'origin/master' into gs-master
...
Conflicts:
.travis.yml
Gemfile.lock
README.md
app/controllers/settings/follower_domains_controller.rb
app/controllers/statuses_controller.rb
app/javascript/mastodon/locales/ja.json
app/lib/feed_manager.rb
app/models/media_attachment.rb
app/models/mute.rb
app/models/status.rb
app/services/mute_service.rb
app/views/home/index.html.haml
app/views/stream_entries/_simple_status.html.haml
config/locales/ca.yml
config/locales/en.yml
config/locales/es.yml
config/locales/fr.yml
config/locales/nl.yml
config/locales/pl.yml
config/locales/pt-BR.yml
config/themes.yml
2018-05-03 17:23:44 -05:00
Eugen Rochko
658cbc9425
Improve PostStatusService performance ( #7317 )
...
Offload creation of local notifications to a worker. Remove two
redundant SQL queries from ProcessMentionsService, remove n+1
XML/JSON serialization via memoization
2018-05-02 22:10:57 +02:00
Eugen Rochko
cb5b5cb5f7
Slightly reduce RAM usage ( #7301 )
...
* No need to re-require sidekiq plugins, they are required via Gemfile
* Add derailed_benchmarks tool, no need to require TTY gems in Gemfile
* Replace ruby-oembed with FetchOEmbedService
Reduce startup by 45382 allocated objects
* Remove preloaded JSON-LD in favour of caching HTTP responses
Reduce boot RAM by about 6 MiB
* Fix tests
* Fix test suite by stubbing out JSON-LD contexts
2018-05-02 18:58:48 +02:00
abcang
71a7cea73f
Keep notification when muting_notifications is true ( #7311 )
...
* Keep notification when muting_notifications is true
* Retrun mute object
* Fix test
2018-05-02 16:14:51 +02:00
Eugen Rochko
f62539ce5c
Remove most behaviour disparities between blocks and mutes ( #7231 )
...
* Remove most behaviour disparities between blocks and mutes
The only differences between block and mute should be:
- Mutes can optionally NOT affect notifications
- Mutes should not be visible to the muted
Fix #7230
Fix #5713
* Do not allow boosting someone you blocked
Fix #7248
* Do not allow favouriting someone you blocked
* Fix nil error in StatusPolicy
2018-05-02 15:50:20 +02:00
Eugen Rochko
965345316f
Guard against nil URLs in Request class ( #7284 )
...
Fix #7265
2018-05-02 15:44:22 +02:00
Surinna Curtis
dc786c0cf4
Support Actors/Statuses with multiple types ( #7305 )
...
* Add equals_or_includes_any? helper in JsonLdHelper
* Support arrays in JSON-LD type fields for actors/tags/objects.
* Spec for resolving accounts with extension types
* Style tweaks for codeclimate
2018-05-02 12:40:24 +02:00
Emelia Smith
495303d9b8
Prevent suspended accounts from appearing in AccountSearchService ( #7246 )
2018-04-23 21:27:18 +02:00
Eugen Rochko
75c4ab9d12
Remove "nsfw" category for sensitive statuses in OStatus serializer ( #7048 )
...
Fix #7011
2018-04-22 22:09:03 +02:00
David Yip
16d5217502
Merge remote-tracking branch 'origin/master' into gs-master
...
Conflicts:
app/controllers/home_controller.rb
app/controllers/stream_entries_controller.rb
app/javascript/mastodon/locales/ja.json
app/javascript/mastodon/locales/pl.json
2018-04-18 18:48:12 -05:00
Eugen Rochko
ff87d1bc3e
Rescue SSL errors when processing mentions, remove useless line ( #7184 )
2018-04-19 00:53:31 +02:00
Kaito Sinclaire
156b916caf
Direct messages column ( #4514 )
...
* Added a timeline for Direct statuses
* Lists all Direct statuses you've sent and received
* Displayed in Getting Started
* Streaming server support for direct TL
* Changes to match other timelines in 2.0
2018-04-18 13:09:06 +02:00
ThibG
1c379b7ef4
Remove extra spaces from search API queries and public account headers ( fixes #7129 ) ( #7152 )
2018-04-16 17:19:04 +02:00
David Yip
813da6788e
Merge remote-tracking branch 'origin/master' into gs-master
...
Conflicts:
db/schema.rb
2018-04-14 09:12:50 -05:00
Eugen Rochko
78ed4ab75f
Add bio fields ( #6645 )
...
* Add bio fields
- Fix #3211
- Fix #232
- Fix #121
* Display bio fields in web UI
* Fix output of links and missing fields
* Federate bio fields over ActivityPub as PropertyValue
* Improve how the fields are stored, add to Edit profile form
* Add rel=me to links in fields
Fix #121
2018-04-14 12:41:08 +02:00
Jenkins
e3d0d72b29
Merge remote-tracking branch 'tootsuite/master' into glitchsoc/master
2018-04-14 09:17:23 +00:00
Eugen Rochko
778562c223
Ensure SynchronizeFeaturedCollectionWorker is unique and clean up ( #7043 )
...
* Ensure SynchronizeFeaturedCollectionWorker is unique and clean up
Fix #7041
* Fix code style issue
2018-04-13 01:27:22 +02:00
Jenkins
33c2bbdda7
Merge remote-tracking branch 'tootsuite/master' into glitchsoc/master
2018-04-11 00:50:09 +00:00
Renato "Lond" Cerqueira
0c52654b52
When creating status, if no sensitive status is given, use default ( #7057 )
...
Clients using the API that do not provide the sensitive flag are always
posting with false sensitive option.
2018-04-09 23:02:42 +02:00
Jenkins
6611100480
Merge remote-tracking branch 'tootsuite/master' into glitchsoc/master
2018-04-03 19:17:20 +00:00
Nolan Lawson
6ff3b3e4db
Fix nil account issue in ProcessAccountService ( #7019 )
2018-04-03 13:08:11 +02:00
David Yip
eb39db7f93
Merge remote-tracking branch 'origin/master' into gs-master
...
Conflicts:
app/javascript/mastodon/locales/en.json
app/javascript/mastodon/locales/ja.json
app/javascript/mastodon/locales/pl.json
app/views/accounts/_header.html.haml
2018-04-01 20:24:50 -05:00
Eugen Rochko
f890d2a766
Support all ActivityPub actor types ( #6997 )
...
Fix #6973
2018-04-02 02:10:53 +02:00
David Underwood
123a343d11
[WIP] Enable custom emoji on account pages and in the sidebar ( #6124 )
...
Federate custom emojis with accounts
2018-04-01 23:55:42 +02:00
Jenkins
f0bb3ff533
Merge remote-tracking branch 'tootsuite/master' into glitchsoc/master
2018-03-30 19:17:17 +00:00
ThibG
e573bb0990
Fix compatibility with PeerTube ( #6968 )
...
* Support fetching objects of convertible types by URL (fixes #6924 )
* Ignore invalid hashtags
2018-03-30 15:44:54 +02:00
David Yip
f61aa8e0f7
Merge remote-tracking branch 'origin/master' into gs-master
...
Conflicts:
app/javascript/styles/mastodon/components.scss
app/models/media_attachment.rb
2018-03-27 10:26:47 -05:00