about summary refs log tree commit diff
path: root/app/lib
AgeCommit message (Collapse)Author
2018-06-12keyword mute: use mentions scope in home feed filtering (#454)David Yip
If a status shows up in mentions because all keyword mutes that might apply to it are marked as "don't apply to mentions", then it ought to show up in the home feed also.
2018-06-12Merge remote-tracking branch 'tootsuite/master' into glitchsoc/masterJenkins
2018-06-08Do not accept ActivityPub follow requests from blocked user (#7756)Eugen Rochko
* Do not accept ActivityPub follow requests from blocked user Fix #7745 * Deliver auto-rejection immediately when follow-requested by blocked account * Fix trailing whitespace
2018-06-03Thread scopes through #matches?. #454.David Yip
Also add an apply_to_mentions attribute on Glitch::KeywordMute, which is used to calculate scope. Next up: additions to the test suite to demonstrate how scoping works.
2018-06-02Merge remote-tracking branch 'origin/master' into gs-masterDavid Yip
Conflicts: app/javascript/mastodon/locales/en.json app/javascript/mastodon/locales/ja.json app/javascript/mastodon/locales/pl.json The above conflicts appear to be a text conflict introduced by glitch-soc's additional level of columns (i.e. moving a bunch of columns under the Misc option). They were resolved via accept-ours.
2018-05-31Exclude unlisted, private and direct toots from affecting trends (#7686)Eugen Rochko
2018-05-29Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2018-05-29Fix N+1 on AtomSerializer (#7669)abcang
2018-05-28Record trending tags from ActivityPub, too (#7647)Eugen Rochko
2018-05-25Merge branch 'master' into glitch-soc/merge-masterThibaut Girka
Conflicts: app/javascript/styles/mastodon-light.scss config/themes.yml Removed config/themes.yml, took upstream's mastodon-light.scss
2018-05-25Ignore multiple occurrences of a hashtag within a status (fixes #7585) (#7606)ThibG
2018-05-18Merge remote-tracking branch 'origin/master' into merge-upstreamDavid Yip
Conflicts: app/controllers/follower_accounts_controller.rb app/controllers/following_accounts_controller.rb app/controllers/settings/preferences_controller.rb app/lib/user_settings_decorator.rb app/models/user.rb config/locales/simple_form.en.yml
2018-05-18Resolve unknown status from Add activity, skip Remove if unknown (#7526)Eugen Rochko
Fix #7518
2018-05-18Add preference to hide following/followers lists (#7532)Eugen Rochko
* Add preference to hide following/followers lists - Public pages - ActivityPub collections (does not return pages but does give total) - REST API (unless it's your own) (does not federate) Fix #6901 * Add preference * Add delegation * Fix issue * Fix issue
2018-05-18Merge remote-tracking branch 'tootsuite/master' into glitchsoc/masterJenkins
2018-05-18User agent for WebFinger (#7531)MIYAGI Hikaru
* User agent for WebFinger * local_domain → web_domain * 'http' is away accidentally...
2018-05-16Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
Conflicts: Gemfile Solved conflicts by using upstream's line for posix-spawn
2018-05-16Raise Mastodon::RaceConditionError if Redis lock failed (#7511)Akihiko Odaki
An explicit error allows user agents to know the error and Sidekiq to retry.
2018-05-14Merge branch 'master' into glitch-soc/mergeThibaut Girka
2018-05-12Fetch boosted statuses on behalf of a follower (fixes #7426) (#7459)ThibG
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-11Merge branch 'master' into glitch-soc/mergeThibaut Girka
Conflicts: app/controllers/invites_controller.rb app/serializers/initial_state_serializer.rb config/locales/ko.yml
2018-05-10Disable inflate gzip on head method (#7432)Yamagishi Kazutoshi
2018-05-10Merge branch 'master' into glitch-soc/masterThibaut Girka
Conflicts: app/models/account.rb app/views/accounts/_header.html.haml
2018-05-09Support gzip encoding on Request (#7425)Yamagishi Kazutoshi
2018-05-07If an OStatus message contains nsfw hashtag, mark it as sensitive (#7398)Eugen Rochko
* If an OStatus message contains nsfw hashtag, mark it as sensitive Undo parts of #7048 * Put nsfw hashtag on OStatus messages if they have any media * Fix code style issues
2018-05-06Enable custom emojis in profiles (notes, field values, display names) (#7374)Eugen Rochko
Follow-up to #6124
2018-05-05Fix handling of malformed ActivityPub payloads when URIs are nil (#7370)Eugen Rochko
* Fix handling of malformed ActivityPub payloads when URIs are nil * Gracefully handle JSON-LD canonicalization failures
2018-05-04Merge remote-tracking branch 'origin/master' into gs-masterDavid Yip
Conflicts: app/controllers/follower_accounts_controller.rb app/controllers/following_accounts_controller.rb db/schema.rb
2018-05-04Store URIs of follows, follow requests and blocks for ActivityPub (#7160)Eugen Rochko
Same URI passed between follow request and follow, since they are the same thing in ActivityPub. Local URIs are generated during creation using UUIDs and are passed to serializers.
2018-05-04Merge remote-tracking branch 'origin/master' into merge-upstreamDavid Yip
2018-05-03Merge remote-tracking branch 'origin/master' into gs-masterDavid Yip
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-03Fixes/do not override timestamps (#7336)ThibG
* Revert "Fixes/do not override timestamps (#7331)" This reverts commit 581a5c9d29ef2a12f46b67a1097a9ad6df1c6953. * Document Snowflake ID corner-case a bit more Snowflake IDs are used for two purposes: making object identifiers harder to guess and ensuring they are in chronological order. For this reason, they are based on the `created_at` attribute of the object. Unfortunately, inserting items with older snowflakes IDs will break the assumption of consumers of the paging APIs that new items will always have a greater identifier than the last seen one. * Add `override_timestamps` virtual attribute to not correlate snowflake ID with created_at
2018-05-03Fixes/do not override timestamps (#7331)ThibG
* Do not override timestamps for incoming toots * Remove every reference to override_timestamps Statuses are now created with the announced publishing date and are only pushed to timelines if that date is at most 6 hours earlier than the time at which it is processed.
2018-05-03Fix n+1 queries in StatusThreadingConcern (#7321)Eugen Rochko
2018-05-02Slightly reduce RAM usage (#7301)Eugen Rochko
* 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-02Accept actor object updates from all supported actor types (#7312)ThibG
2018-05-02Remove most behaviour disparities between blocks and mutes (#7231)Eugen Rochko
* 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-02Guard against nil URLs in Request class (#7284)Eugen Rochko
Fix #7265
2018-05-02Support Actors/Statuses with multiple types (#7305)Surinna Curtis
* 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-04-30Fix missing updated_at attribute on emoji EntityCache (#7297)Eugen Rochko
Just don't try to save space by only selecting few attributes. If anyone is wondering, this is needed because the emoji entity cache is not really only used for entities, it's accessed again to generate Emoji tags in ActivityPub/OStatus, so a lot more properties are used than what is needed in HTML alone...
2018-04-30Fix missing domain attribute in EntityCache for emoji (#7290)Eugen Rochko
2018-04-27Add entity cache (#7271)Eugen Rochko
* Add entity cache Use a caching layer for mentions and custom emojis that are dynamically extracted from text. Reduce duplicate text extractions * Fix code style issue
2018-04-25HTTP proxy support for outgoing request, manage access to hidden service (#7134)MIYAGI Hikaru
* Add support for HTTP client proxy * Add access control for darknet Supress error when access to darknet via transparent proxy * Fix the codes pointed out * Lint * Fix an omission + lint * any? -> include? * Change detection method to regexp to avoid test fail
2018-04-25Add RSS feeds for end-users (#7259)Eugen Rochko
* Add RSS feed for accounts * Add RSS feeds for hashtags * Fix code style issues * Fix code style issues
2018-04-23Detect and prevent image bombs, max. processable dimension 4096^2 (#7229)Eugen Rochko
2018-04-22Remove "nsfw" category for sensitive statuses in OStatus serializer (#7048)Eugen Rochko
Fix #7011
2018-04-14Merge remote-tracking branch 'origin/master' into gs-masterDavid Yip
Conflicts: db/schema.rb
2018-04-14Add bio fields (#6645)Eugen Rochko
* 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-08Merge remote-tracking branch 'origin/master' into gs-masterDavid Yip
Conflicts: app/serializers/initial_state_serializer.rb The glitch flavour isn't yet pulling custom emoji data on its own (see https://github.com/tootsuite/mastodon/pull/7047). Once that gets into the glitch flavour, we can eliminate the custom_emojis load.
2018-04-08Enable updating additional account information from user preferences via ↵Levi Bard
rest api (#6789) * Enable updating additional account information from user preferences via rest api Resolves #6553 * Pacify rubocop * Decoerce incoming settings in UserSettingsDecorator * Create user preferences hash directly from incoming credentials instead of going through ActionController::Parameters * Clean up user preferences update * Use ActiveModel::Type::Boolean instead of manually checking stringified number equivalence