Commit Graph

2868 Commits

Author SHA1 Message Date
William Pitcock da44cdd381 user: search: use get_or_fetch() instead of get_or_fetch_by_nickname()
get_or_fetch() handles the nickname verses URI differences transparently.
2019-02-14 20:00:04 +00:00
lambda ea2698beb7 Merge branch 'bugfix/activitypub-reserialization' into 'develop'
activitypub transmogrifier: fix reserialization edge cases

See merge request pleroma/pleroma!826
2019-02-14 19:54:16 +00:00
William Pitcock 56862f4ce1 activitypub: clean up logging statements a little 2019-02-14 19:42:33 +00:00
Wim Vanderbauwhede 04b1c13554 Merge remote-tracking branch 'upstream/develop' into patch-image-description 2019-02-14 16:41:40 +00:00
Ivan Tashkinov 027adbc9e5 [#468] Refactored OAuth scopes parsing / defaults handling. 2019-02-14 17:03:19 +03:00
Egor Kislitsyn 3f32d7b937 Fix queue name 2019-02-14 17:02:47 +07:00
Egor Kislitsyn 907306174b fix S3 links encoding in Mediaproxy 2019-02-14 15:55:21 +07:00
William Pitcock 72ba5b4ab7 activitypub: user view: formatting 2019-02-14 03:13:07 +00:00
William Pitcock 5307c211b8 activitypub: user view: report totalItems=0 for follows/followers when hidden 2019-02-14 03:10:00 +00:00
William Pitcock 6542b86292 activitypub: user view: remove totalItems from user outbox
(this is based on a counter in User.Info, but the counter is not reliable.)
2019-02-14 03:02:45 +00:00
William Pitcock ee2fa1a314 activitypub: user view: remove totalInbox from user inbox view
It is not really feasible to quickly calculate the totalItems value and
it shouldn't be trusted anyway.
2019-02-14 03:01:39 +00:00
kaniini bc9e5e6b65 Merge branch 'feature/activitypub-oauth-endpoints' into 'develop'
ActivityPub C2S oauth endpoints

See merge request pleroma/pleroma!821
2019-02-14 02:50:06 +00:00
William Pitcock 64620d8980 activitypub: user view: do not expose oAuth endpoints for instance users 2019-02-14 02:41:21 +00:00
William Pitcock e9ef4b8da6 oauth: never use base64 padding when returning tokens to applications
The normal Base64 alphabet uses the equals sign (=) as a padding character.  Since
Base64 strings are self-synchronizing, padding characters are unnecessary, so don't
generate them in the first place.
2019-02-14 01:10:04 +00:00
William Pitcock e05bf2940f activitypub: transmogrifier: correctly handle nil inReplyTo value 2019-02-14 00:35:54 +00:00
William Pitcock 94cbbb0e3a activitypub: transmogrifier: do not attempt to expand pre-existing AS2 tag objects 2019-02-14 00:35:53 +00:00
Mark Felder f62c1d6266 Improve login error for OAuth flow 2019-02-13 22:33:22 +00:00
Ivan Tashkinov 063baca5e4 [#468] User UI for OAuth permissions restriction. Standardized storage format for `scopes` fields, updated usages. 2019-02-14 00:29:29 +03:00
William Pitcock 9bd6ed975e activitypub: user view: use route helpers instead of hardcoded URIs 2019-02-13 19:34:43 +00:00
William Pitcock 29e946ace4 activitypub: user view: add oauthRegistrationEndpoint to user profiles 2019-02-13 19:34:43 +00:00
William Pitcock db8abd958d activitypub: user view: fix up endpoints rendering 2019-02-13 19:34:43 +00:00
William Pitcock 90facd3598 user view: add AP C2S oauth endpoints to local user profiles 2019-02-13 19:34:43 +00:00
Karen Konou bef9b9cb66 refactored code 2019-02-13 16:23:09 +01:00
Karen Konou adcdd21f16 Merge branch 'develop' into hellthread-filter-fix 2019-02-13 16:22:14 +01:00
lain 88a4de24f9 User.follow_all: Respect blocks in both directions. 2019-02-13 13:52:27 +01:00
Maxim Filippov 760fec4cb8 Update token.ex 2019-02-13 12:59:56 +03:00
Maxim Filippov 62a45bdc11 Add revoke token 2019-02-13 12:59:56 +03:00
Maxim Filippov 61a4bc5095 Add OAuth tokens endpoint 2019-02-13 12:59:56 +03:00
hakabahitoyo b7bc666200 bugfix mdii uploader 2019-02-13 15:46:42 +09:00
Karen Konou 1d727cd069 added checks for public url and follower collections 2019-02-13 00:01:34 +01:00
Haelwenn (lanodan) Monnier da4c662af3
Plugs.HTTPSecurityPlug: Add webpacker to connect-src 2019-02-12 22:12:12 +01:00
Haelwenn (lanodan) Monnier 00e8f0b07d
Plugs.HTTPSecurityPlug: Add unsafe-eval to script-src when in dev mode
This is needed to run dev mode mastofe at the same time
2019-02-12 22:12:11 +01:00
Mark Felder c984e8272a Formatting 2019-02-12 00:37:22 +00:00
Mark Felder 4956ab5ea3 Fix compile 2019-02-12 00:25:12 +00:00
Mark Felder ac7ef0999d WIP: Fix Twitter Cards
Twitter cards were not passing any useful metadata. A few things were
being handled on Twitter's end by trying to match OpenGraph tags with
their own, but it wasn't working at all for media. This is an attempt to
fix that.

Common functions have been pulled out of opengraph and put into
utils. Twitter's functionality was entirely replaced with a direct copy
of Opengraph's and then modified as needed.

Profiles are now represented as Summary Cards

Posts with images are now represented as Summart with Large Image Cards

Posts with video and audio attachments are represented as Player Cards.

This now passes the Twitter Card Validator.

Validator and Docs are below

https://cards-dev.twitter.com/validator
https://developer.twitter.com/en/docs/tweets/optimize-with-cards/overview/abouts-cards
2019-02-11 23:59:04 +00:00
shibayashi ea1058929c
Use url[:scheme] instead of protocol to determine if https is enabled 2019-02-12 00:08:52 +01:00
rinpatch 379d04692c Filter summary in keywordpolicy 2019-02-11 21:35:40 +03:00
rinpatch 39383a6b79 Merge branch 'feature/thread-muting' into 'develop'
Feature/thread muting

See merge request pleroma/pleroma!796
2019-02-11 15:02:14 +00:00
lambda 044616292b Merge branch 'feature/rich-media-limits' into 'develop'
rich media: tighten fetching timeouts and size limits

See merge request pleroma/pleroma!809
2019-02-11 12:33:58 +00:00
Karen Konou ac72b578da Merge branch 'develop' into feature/thread-muting 2019-02-11 12:10:49 +01:00
Karen Konou c01ef574c1 Refactor as per Rin's suggestions, add endpoint tests 2019-02-11 12:04:02 +01:00
lambda d53e36bf1e Revert "Merge branch 'object-creation' into 'develop'"
This reverts merge request !802
2019-02-11 08:07:39 +00:00
Egor Kislitsyn 305d219413 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/jobs
# Conflicts:
#	lib/pleroma/web/federator/federator.ex
#	lib/pleroma/web/websub/websub.ex
2019-02-11 13:54:21 +07:00
William Pitcock 45e57dd187 rich media: tighten fetching timeouts and size limits 2019-02-10 21:54:08 +00:00
kaniini 6c8d15da11 Merge branch 'fix/credo-issues' into 'develop'
Fix credo issues

See merge request pleroma/pleroma!786
2019-02-10 20:54:21 +00:00
Karen Konou cc21fc5f53 refactor, status view updating, error handling 2019-02-10 10:42:30 +01:00
rinpatch e0de0fcf22 Merge branch 'object-creation' into 'develop'
Do object insertion through Cachex

See merge request pleroma/pleroma!802
2019-02-10 07:39:27 +00:00
kaniini d5fe05c37e Merge branch 'follow-enhancements' into 'develop'
Respect blocks in mass follow.

See merge request pleroma/pleroma!797
2019-02-09 21:03:42 +00:00
lain f8388be9c6 Do object insertion through Cachex
So we don't flood our postgres logs with errors. Should also make things
slightly faster.
2019-02-09 22:01:08 +01:00
Karen Konou 6a150de3bd Add unique index and unique constraint check, uniqueness test fails 2019-02-09 20:52:11 +01:00
Karen Konou 638456ce8f elixir too new for CI's mix format lol 2019-02-09 18:08:46 +01:00
Karen Konou a0d732ec55 it works!! 2019-02-09 17:47:57 +01:00
Haelwenn (lanodan) Monnier d924dc73ba
de-group import/s 2019-02-09 16:31:17 +01:00
Haelwenn (lanodan) Monnier 6a6a5b3251
de-group alias/es 2019-02-09 16:31:17 +01:00
Ivan Tashkinov a337bd114c [#468] MastodonAPI scope restrictions. Removed obsolete "POST /web/login" route. 2019-02-09 17:32:33 +03:00
Ivan Tashkinov 4ad843fb9d [#468] Prototype of OAuth2 scopes support. TwitterAPI scope restrictions. 2019-02-09 17:09:08 +03:00
Haelwenn (lanodan) Monnier 381fe44172
HTML.Scrubber.Default: Consistency 2019-02-09 14:59:21 +01:00
Haelwenn (lanodan) Monnier 2272934a5e
Stash 2019-02-09 14:59:21 +01:00
Haelwenn (lanodan) Monnier d2e4eb7c74
Web.ActivityPub.ActivityPub: assign the Enum.filter to recipients & simplify it 2019-02-09 14:59:21 +01:00
Haelwenn (lanodan) Monnier 473095faf2
Web.Federator: Fix unused variable 2019-02-09 14:59:20 +01:00
Haelwenn (lanodan) Monnier 60ea29dfe6
Credo fixes: alias grouping/ordering 2019-02-09 14:59:20 +01:00
Haelwenn (lanodan) Monnier 106f4e7a0f
Credo fixes: parameter consistency 2019-02-09 14:59:20 +01:00
Haelwenn (lanodan) Monnier 8bcfac93a8
Make credo happy 2019-02-09 14:59:20 +01:00
lain 563f04e81b Do autofollow first. 2019-02-09 13:39:57 +01:00
lain bbd0049fae Respect blocks in mass follow. 2019-02-09 13:24:23 +01:00
lambda 1eecbc1cd1 Merge branch 'feature/keyword-policy' into 'develop'
Add keyword policy

See merge request pleroma/pleroma!794
2019-02-09 11:38:37 +00:00
Karen Konou 7e47a810a2 help i am not good with git 2019-02-08 13:22:29 +01:00
Karen Konou 5c5b228f21 Added thread unmuting (still a bit buggy maybe) 2019-02-08 13:20:40 +01:00
Karen Konou a44e532fb1 Added thread unmuting (still a bit buggy maybe) 2019-02-08 13:17:11 +01:00
rinpatch 7356659273 wow 2019-02-08 15:12:13 +03:00
Karen Konou 98ec578f4d Merge branch 'develop' into feature/thread-muting 2019-02-08 12:44:02 +01:00
rinpatch f88dec8b33 What idiot did that? (me) 2019-02-08 13:16:50 +03:00
rinpatch 6c21f5aa16 Merge branch 'develop' into feature/keyword-policy 2019-02-08 13:12:33 +03:00
rinpatch 8a0b755c19 rename ftl_removal to federated_timeline_removal to keep consistent naming with SimplePolicy 2019-02-08 13:12:09 +03:00
rinpatch 2174f6eb4f Add default config for keyword policy 2019-02-08 12:48:39 +03:00
rinpatch 46aa8c18a2 Add keyword policy 2019-02-08 12:38:24 +03:00
Karen Konou c43f414a79 Somehow fixed the repo insert [skip-ci] 2019-02-07 23:44:49 +01:00
Karen Konou 7e3ec93ed0 made a silly oopsie 2019-02-07 22:59:53 +01:00
Karen Konou 77448de492 ugghhhh 2019-02-07 22:25:07 +01:00
Ivan Tashkinov 2c68cf7e9e OAuth2 security fixes: redirect URI validation, "Mastodon-Local" security breach fix.
(`POST /api/v1/apps` could create "Mastodon-Local" app wth any redirect_uris,
and if that happened before /web/login is accessed for the first time
then Pleroma used this externally created record with arbitrary
redirect_uris and client_secret known by creator).
2019-02-07 22:14:06 +03:00
Karen Konou f4ff4ffba2 Migration and some boilerplate stuff 2019-02-07 17:36:14 +01:00
Mark Felder 74518d0b60 hide_followings was renamed to hide_followers in the FE, but never synced up in the BE
This was a dirty regex replace which worked on my server
2019-02-06 22:34:44 +00:00
Haelwenn 1220a17146 Merge branch 'bugfix/rich-media-card' into 'develop'
rich media cards: bugfixes and regression tests

See merge request pleroma/pleroma!785
2019-02-06 18:39:13 +00:00
kaniini 18e783bcb2 Merge branch 'add-admin-and-moderator-fields' into 'develop'
Add admin and moderator badges to user view and make their visibility configurable

See merge request pleroma/pleroma!767
2019-02-06 18:19:47 +00:00
William Pitcock 65a4b9fbea mastodon api: rich media: don't clobber %URI struct with a string 2019-02-06 18:02:15 +00:00
rinpatch f7aedbcc55 Merge branch 'fix/activitypub-user-view-badmap' into 'develop'
Fix if clause in activity_pub user_view

See merge request pleroma/pleroma!783
2019-02-06 17:47:58 +00:00
href f753043ce0
Fix if clause in activity_pub user_view 2019-02-06 18:42:19 +01:00
Egor Kislitsyn 6f05f448f8 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/jobs 2019-02-06 11:33:00 +07:00
eugenijm 035eaeb9b8 Allow to configure visibility for admin and moderator badges 2019-02-06 06:18:05 +03:00
eugenijm 398c81f9c8 Add is_admin and is_moderator boolean fields to the user view 2019-02-06 02:10:06 +03:00
William Pitcock d83dbd9070 rich media: parser: reject any data which cannot be explicitly encoded into JSON 2019-02-05 20:50:57 +00:00
kaniini d120aa63f0 Merge branch 'fix-dm-index' into 'develop'
Massage index until it actually does the stuff we want.

See merge request pleroma/pleroma!772
2019-02-05 20:27:31 +00:00
kaniini 681ba1e52f Merge branch 'feature/ap-c2s-whoami' into 'develop'
activitypub: c2s: add /api/ap/whoami endpoint for andstatus

See merge request pleroma/pleroma!773
2019-02-05 20:26:31 +00:00
kaniini eb2b1960e0 Merge branch 'feature/split-hide-network-v2' into 'develop'
Split hide_network into hide_followers & hide_followings (fixed)

See merge request pleroma/pleroma!765
2019-02-05 18:56:59 +00:00
kaniini ecdb0b7f57 Merge branch 'bugfix/rich-media-image-nil' into 'develop'
mastodon api: fix rendering of cards without image URLs (closes #597)

Closes #597

See merge request pleroma/pleroma!777
2019-02-05 18:53:43 +00:00
William Pitcock 1d94b67e40 mastodon api: fix rendering of cards without image URLs (closes #597) 2019-02-05 18:30:27 +00:00
lambda f8b831ecfd Merge branch 'bugfix/transmogrifier-bare-tags' into 'develop'
activitypub: transmogrifier: fix bare tags

See merge request pleroma/pleroma!774
2019-02-05 11:30:18 +00:00
William Pitcock a2bb5d890d html: don't attempt to parse nil content 2019-02-05 05:06:17 +00:00
William Pitcock e71ab5a10f activitypub: transmogrifier: fix bare tags 2019-02-05 00:43:28 +00:00
William Pitcock db1165f70f activitypub: c2s: add /api/ap/whoami endpoint for andstatus 2019-02-04 22:58:29 +00:00
lain f3c8b02d65 Massage index until it actually does the stuff we want.
Also makes the index a lot smoler.
2019-02-04 23:47:29 +01:00
Haelwenn 03991e7bc5 Merge branch 'feature/mrf-tag' into 'develop'
MRF TagPolicy engine

See merge request pleroma/pleroma!768
2019-02-04 19:20:11 +00:00
William Pitcock 7d110be119 activitypub: mrf: tag policy: fix force-unlisted and sandbox actions 2019-02-04 19:03:54 +00:00
William Pitcock 64a3993425 activitypub: mrf: tag policy: add support for subscription control 2019-02-04 17:48:48 +00:00
Egor Kislitsyn 14d967f515 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/jobs 2019-02-05 00:38:05 +07:00
rinpatch 3ae11835a9 Merge branch 'hotfix/hellthread-deprecation-warning' into 'develop'
fix hellthread threshold deprecation warning

See merge request pleroma/pleroma!770
2019-02-04 17:32:12 +00:00
Karen Konou 4031c94a59 fix hellthread threshold deprecation warning 2019-02-04 18:26:56 +01:00
William Pitcock ff2c28fd6d activitypub: mrf: tag policy: refactor the filtering hook a bit 2019-02-04 17:06:37 +00:00
William Pitcock 9a69f08e86 activitypub: mrf: tag policy: add support for processing follow requests 2019-02-04 17:04:05 +00:00
William Pitcock 084bb8ccd5 activitypub: mrf: tag policy: implement force-unlisted and sandbox 2019-02-04 17:04:05 +00:00
William Pitcock 88e32a32ce mrf: add initial MRF.TagPolicy engine 2019-02-04 17:04:05 +00:00
kaniini 25a659d2dc Merge branch 'mime-riff' into 'develop'
Mime: detect RIFF formats (wave, webp, avi)

See merge request pleroma/pleroma!769
2019-02-04 16:52:41 +00:00
href 127f99ae18
Mime: detect RIFF formats (wave, webp, avi) 2019-02-04 17:44:41 +01:00
rinpatch 00835bf678 Merge branch 'fix/rich-media-relative-path' into 'develop'
Fix rich media relative path

Closes #588

See merge request pleroma/pleroma!759
2019-02-04 16:01:34 +00:00
Egor Kislitsyn 3a3a3996b7 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/jobs
# Conflicts:
#	lib/pleroma/web/activity_pub/activity_pub.ex
#	lib/pleroma/web/federator/federator.ex
2019-02-04 20:50:28 +07:00
rinpatch 89762ad230 Merge branch 'feature/hellthread-filter-improvements' into 'develop'
Improve hellthread filter

Closes #584

See merge request pleroma/pleroma!766
2019-02-04 12:36:50 +00:00
Karen Konou 58262a8b8a removed a debug thingy 2019-02-04 11:22:25 +00:00
Karen Konou 4430641349 squished a bug 2019-02-04 12:09:00 +01:00
Karen Konou 3cf046babb actually commited the changes 2019-02-04 10:23:43 +01:00
Karen Konou 63a4f4b7be fixed Map,put arguments, updated nomenclature 2019-02-04 10:23:07 +01:00
Karen Konou 583c4e0f17 more tweaks, fixed silly mistakes... 2019-02-03 23:56:20 +01:00
Karen Konou e10cda7541 implemented tweaks 2019-02-03 22:46:06 +01:00
kaniini c57f37bd36 Merge branch 'mogrify-orient' into 'develop'
Update Mogrify docs and warning for deprecated syntax

See merge request pleroma/pleroma!763
2019-02-03 21:06:15 +00:00
Karen Konou 531507a635 fixed things 2019-02-03 20:45:32 +01:00
Karen Konou 10130fa7d6 made toggleable, added docs 2019-02-03 20:27:28 +01:00
Karen Konou 0ef0ae35ab added optional delist feature 2019-02-03 20:12:23 +01:00
Maxim Filippov 16ce129e38 Split hide_network into hide_followers & hide_followings (fixed) 2019-02-03 21:55:04 +03:00
lambda 69a38644bc Merge branch '589-fix-cache' into 'develop'
Resolve "Update object cache on favs/boosts"

Closes #589

See merge request pleroma/pleroma!764
2019-02-03 18:19:40 +00:00
lain 505a084058 Still do caching in tests. 2019-02-03 18:28:14 +01:00
Mark Felder 0c08bd4181 Update Mogrify docs and warning for deprecated syntax to encourage
users to enable both strip and auto-orient
2019-02-03 16:39:42 +00:00
Ivan Tashkinov 3913b0196e [#582] Made single-pub task call Instance.set_reachable/1 if `set_reachable` is not specified.
Added tests.
2019-02-03 13:28:13 +03:00
Ivan Tashkinov b40b4bc4e5 [#582] Optimized federation retirement by reducing the number of SQL calls
(calling `Instances.set_reachable/1` only if instance had `unreachable_since`,
calling `Instances.set_unreachable/1` only if instance had nil `unreachable_since`).
2019-02-03 12:41:27 +03:00
Maxim Filippov 2c59eb3cfc Add responsive features to layout 2019-02-02 13:40:34 +03:00
rinpatch 68d461b3a9 Check if rich media uri is relative 2019-02-02 12:24:24 +03:00
rinpatch 833404f0f5 Use with instead of if in the card 2019-02-02 12:04:18 +03:00
rinpatch e4d18f328b merge only if page_url is an absolute path 2019-02-02 11:53:46 +03:00
rinpatch cbadf9d333 Fix rich media relative path 2019-02-02 11:38:37 +03:00
kaniini 486749064f Revert "Merge branch 'feature/split-hide-network' into 'develop'"
This reverts merge request !733
2019-02-01 20:22:58 +00:00
href 28bfb09b01 Merge branch 'hotfix/object-normalize-cache' into 'develop'
object: use cached accesses when possible in Object.normalize()

See merge request pleroma/pleroma!757
2019-02-01 19:45:55 +00:00
href ffbf306c9a Merge branch 'streaming-api-url-fix' into 'develop'
Fix WebSocket streaming API URL.

See merge request pleroma/pleroma!756
2019-02-01 19:39:50 +00:00
William Pitcock af10ef8d4e object: use cached accesses when possible in Object.normalize() 2019-02-01 19:38:57 +00:00
eugenijm a184811a60 Use url() instead of static_url in Endpoint.websocket_url() 2019-02-01 22:35:19 +03:00
href 7e384a2425 Merge branch 'develop' into 'develop'
Use nodeinfo 2.1

See merge request pleroma/pleroma!753
2019-02-01 19:18:46 +00:00
Luna 9cac8729af update nodeinfo version when requesting 2.1 2019-02-01 16:03:23 -03:00
eugenijm d747bd9870 Use String.replace_leading instead of String.replace for getting websocket streaming api url.
Extract the login responsible for obtaining websocket URL into the corresponding
Endpoint function.
2019-02-01 21:58:43 +03:00
Luna 1cdcee89da mix format pass 2019-02-01 14:40:43 -03:00
Luna 23b1c64a19 downcase software name in nodeinfo 2019-02-01 14:35:08 -03:00
Luna b17ce875cf keep compatibility with nodeinfo 2.0
splits actual nodeinfo generation into raw_nodeinfo, the 2.0 handler
gives the same result, while the 2.1 handler inserts the
software.repository field. requested by @href
2019-02-01 14:23:40 -03:00
Haelwenn (lanodan) Monnier 74c6119f28
MastodonAPI.MastodonAPIController: Return a 404 when we fail to get a list 2019-02-01 18:21:16 +01:00
Luna cd6db6abe4 use Mix.Project.Config for some Application functions 2019-02-01 14:11:23 -03:00
kaniini 0a82a7e6d6 Merge branch 'feature/split-hide-network' into 'develop'
Split hide_network into hide_followers & hide_followings

See merge request pleroma/pleroma!733
2019-02-01 17:05:29 +00:00
lambda fc7644798d Merge branch 'serve-sw-pleroma.js' into 'develop'
Serve sw-pleroma.js properly

See merge request pleroma/pleroma!754
2019-02-01 14:24:07 +00:00
href fa5ec765d9
Serve sw-pleroma.js properly 2019-02-01 11:34:41 +01:00
lain 01d483f9c7 Merge remote-tracking branch 'origin/develop' into fix-rich-media-toggle 2019-02-01 10:21:17 +01:00
href b3b0855456 Merge branch '534_federation_targets_reachability' into 'develop'
[#534] Unreachable federation targets retirement

Closes #534

See merge request pleroma/pleroma!703
2019-02-01 09:14:35 +00:00
Luna b0c4c082c4 mix format pass 2019-02-01 04:02:40 -03:00
Luna c05928dbda use nodeinfo 2.1, add repository field
that is the only change from nodeinfo 2.0 to 2.1

also this makes the nodeinfo tests use 2.1.json instead of 2.0.json
2019-02-01 03:55:10 -03:00
lain b19b4f8537 Remove default value for rich media.
Setting it to true will actually override a 'false' set before.
2019-01-31 20:02:08 +01:00
href 308b35ebe2
User.follow_all: ensure its stays unique 2019-01-31 18:17:44 +01:00
lambda 44913c1019 Merge branch 'bugfix/rich-media-non-unicode' into 'develop'
rich media non-unicode bugfix

See merge request pleroma/pleroma!749
2019-01-31 16:54:48 +00:00
William Pitcock 46dba03098 rich media: parser: only try to validate strings, not numbers (OEmbed) 2019-01-31 16:19:31 +00:00
William Pitcock dafb6f0b5e rich media: parser: reject OGP fields we cannot safely process 2019-01-31 16:03:56 +00:00
rinpatch 7057891db6 Make rich media support toggleable 2019-01-31 18:18:20 +03:00
lambda a43a1c6d4e Revert "Merge branch 'spc-fix-3' into 'develop'"
This reverts merge request !682
2019-01-31 12:16:23 +00:00
kaniini 4d3655c479 Merge branch 'spc-fix-3' into 'develop'
Spc fix 3

See merge request pleroma/pleroma!682
2019-01-31 11:29:29 +00:00
Haelwenn 00d4333373 Merge branch 'features/glitch-soc-frontend' into 'develop'
Features/glitch soc frontend

See merge request pleroma/pleroma!192
2019-01-31 10:16:11 +00:00
Egor Kislitsyn 58e250d9d2 fix merge 2019-01-31 15:23:50 +07:00
Egor Kislitsyn d3677d2b4d Merge remote-tracking branch 'MAIN/develop' into feature/jobs 2019-01-31 15:07:49 +07:00
lambda 6b54a3ec0b Merge branch 'multiple-hackney-pools' into 'develop'
Fix 4aff4efa typos

See merge request pleroma/pleroma!743
2019-01-30 20:18:05 +00:00
href 5ea0397e2d
Fix 4aff4efa typos 2019-01-30 21:08:41 +01:00
kaniini bd5086731e Merge branch 'multiple-hackney-pools' into 'develop'
Use multiple hackney pools

See merge request pleroma/pleroma!739
2019-01-30 19:01:57 +00:00
lain 47ec690c54 Use race-condition free mass follow. 2019-01-30 19:33:25 +01:00
lain 935e65e261 Use race-condition free following method. 2019-01-30 19:21:04 +01:00
Egor Kislitsyn ab31adf15b tiny improve 2019-01-30 22:56:59 +07:00
href 4aff4efa8d
Use multiple hackney pools
* federation (ap, salmon)
* media (rich media, media proxy)
* upload (uploader proxy)

Each "part" will stop fighting others ones -- a huge federation outbound
could before make the media proxy fail to checkout a connection in time.

splitted media and uploaded media for the good reason than an upload
pool will have all connections to the same host (the uploader upstream).
it also has a longer default retention period for connections.
2019-01-30 15:06:46 +01:00
kaniini 7a2c4f984b Merge branch 'bugfix/fix-rejects' into 'develop'
follow request fixups

Closes #537

See merge request pleroma/pleroma!734
2019-01-29 14:47:36 +00:00
kaniini d03a116654 Merge branch 'hj-happiness-improvement' into 'develop'
New frontend configuration mechanism.

Closes #445

See merge request pleroma/pleroma!700
2019-01-29 13:54:10 +00:00
William Pitcock 57549f6043 activitypub: utils: update the state of *any* pending follow relationship that matches the actor and target 2019-01-29 12:21:02 +00:00
William Pitcock cbb2b709de activitypub: transmogrifier: fix follow request rejections 2019-01-29 11:57:46 +00:00
Ivan Tashkinov 92753b0cd9 [#534] Made federation push sender be determined basing on content instead of `referer` header. Updated tests. 2019-01-29 13:12:28 +03:00
Haelwenn ebb3496386 Merge branch 'feature/rich-media-part-2-electric-boogaloo' into 'develop'
Rich Media support, part 2.

See merge request pleroma/pleroma!719
2019-01-29 05:11:08 +00:00
William Pitcock 61d6715714 rich media: oembed: return data in the same format as the other parsers 2019-01-28 21:13:25 +00:00
William Pitcock ddb5545202 rich media: kill some testsuite noise 2019-01-28 20:55:33 +00:00
William Pitcock 0f11254a06 rich media: parser: add some basic sanity checks on the returned data with pattern matching 2019-01-28 20:43:21 +00:00
William Pitcock 83b7062634 rich media: parser: cache negatives 2019-01-28 20:19:07 +00:00
William Pitcock 8fb16e9f0f rich media: parser: add copyright header 2019-01-28 20:00:01 +00:00
Maxim Filippov 50d6183893 Split hide_network into hide_followers & hide_followings 2019-01-28 21:40:08 +03:00
Egor Kislitsyn 1724a6b34b add spec back 2019-01-29 00:35:57 +07:00
Egor Kislitsyn 56533495b5 fix defaults 2019-01-29 00:33:08 +07:00
Egor Kislitsyn b2e9700785 cleanup 2019-01-28 23:12:02 +07:00
Egor Kislitsyn 55affbca7f add a job queue 2019-01-28 22:17:17 +07:00
lain f53d464db0 Put deprecation warnings undre Pleroma.Config. 2019-01-28 14:39:54 +01:00
Ivan Tashkinov d3f9e6f6fe [#534] Merged `upstream/develop`. 2019-01-28 15:39:14 +03:00
Ivan Tashkinov 1d2f41642c [#534] Various tweaks. Tests for Instances and Instance. 2019-01-28 15:25:06 +03:00
lain 8e8a1e1ba8 Return new-style config if old-style config is set to false.
This is in preparation for 1.0. We'll be able to switch the config to the new
mechanism on PleromaFE then as well.
2019-01-28 13:07:12 +01:00
lain f1d58c5c49 Don't run warnings in a task. 2019-01-28 13:05:17 +01:00
Haelwenn de0fb88a9c Merge branch 'safe-render-activities' into 'develop'
remove unnecessary filter (re !723)

See merge request pleroma/pleroma!729
2019-01-28 11:48:03 +00:00
href df2f7b39dd
re f83bae7c: remove unnecessary filter 2019-01-28 12:24:14 +01:00
lain f231313b70 Add deprecation warning mechanism. 2019-01-28 12:09:41 +01:00
lain 1825118fd4 Correctly handle invalid credentials on auth login.
Closes #407
2019-01-28 11:41:47 +01:00
Ivan Tashkinov 9560abea10 [#534] Refactoring / tweaks per MR review. 2019-01-28 11:03:52 +03:00
William Pitcock ddc7ae2c1a mastodon api: card: force OGP images through mediaproxy 2019-01-28 06:42:27 +00:00
William Pitcock ebeabdcc72 rich media: helpers: clean up unused aliases 2019-01-28 06:10:25 +00:00
William Pitcock 91ef64a1ec activitypub: prime OGP crawler cache when new messages are inserted into the database 2019-01-28 06:07:18 +00:00
William Pitcock 8e42251e06 rich media: add helpers module, use instead of MastodonAPI module 2019-01-28 06:04:54 +00:00
William Pitcock 24a103a1fe mastodon api: formatting 2019-01-28 05:53:17 +00:00
William Pitcock 6096846f5f API: kill /api/rich_media/parse endpoint 2019-01-28 05:53:17 +00:00
William Pitcock 07a9a891ad twitter api: fix up activity representer 2019-01-28 05:53:17 +00:00
William Pitcock de42646634 rich media: add try/rescue to ensure we catch parsing and fetching failures 2019-01-28 05:53:17 +00:00
William Pitcock 5d895093fd twitter api: embed card in twitterapi posts 2019-01-28 05:53:17 +00:00
William Pitcock 5a37ddc2dc mastodon api: embed card in status object 2019-01-28 05:53:17 +00:00
William Pitcock 132d815f1f mastodon api: factor out status card fetching, move status card rendering to statusview, add opengraph extended data 2019-01-28 05:53:17 +00:00
Haelwenn (lanodan) Monnier cda1470e02
[MastoAPI][GlitchAPI] Add bookmarks 2019-01-28 04:47:32 +01:00
Haelwenn (lanodan) Monnier 872241d7c5
/web/index template: Modify for glitch-soc 2019-01-28 04:43:36 +01:00
href 71bb90073b
/notice/:id - send the FE index even if 404
this allows to open private activities by URL when you are logged in,
and to let the FE display a 404 page
2019-01-27 22:51:50 +01:00
lambda 16ab1437d6 Merge branch 'safe-render-activities' into 'develop'
Views: wrap activity rendering in a rescue

See merge request pleroma/pleroma!723
2019-01-27 20:10:09 +00:00
lain 2e277dd4ad Fix objects. 2019-01-27 21:03:15 +01:00
kaniini ea12371a01 Merge branch 'discard-invalid-likes' into 'develop'
Transmogrifier: fix incoming objects with invalid likes

See merge request pleroma/pleroma!724
2019-01-27 19:10:15 +00:00
href 77f2137383
Transmogrifier: fix incoming objects with invalid likes 2019-01-27 19:33:21 +01:00
href f83bae7c22
Views: wrap activity rendering in a rescue
this avoids complete timeline breakage when an activity fucks up
rendering.
2019-01-27 19:16:20 +01:00
kaniini 9af798ad40 Merge branch 'flake-random-worker-id' into 'develop'
Flake: random worker id

See merge request pleroma/pleroma!721
2019-01-27 15:16:06 +00:00
href e0e0cc5ab0
Flake: random worker id 2019-01-27 16:04:36 +01:00
kaniini 5eb81d2c72 Merge branch 'features/mastoapi-multi-hashtag' into 'develop'
MastodonAPI multi-hashtag

See merge request pleroma/pleroma!652
2019-01-27 12:45:50 +00:00
Haelwenn (lanodan) Monnier a65c188593
Web.MastodonAPI.AccountView: Add is_moderator and is_admin
Closes: https://git.pleroma.social/pleroma/pleroma/issues/557
2019-01-27 10:33:22 +01:00
William Pitcock 8f2f471e94 rich media: gracefully handle fetching nil URIs 2019-01-26 16:36:17 +00:00
kaniini 155a884300 Merge branch 'flake-from-int' into 'develop'
Flake: support integers in from_string/1

See merge request pleroma/pleroma!715
2019-01-26 16:17:50 +00:00
href d6015338c8
Flake: support integers in from_string/1
Some previously issued stateless tokens have integer ids in them.
2019-01-26 16:58:23 +01:00
kaniini 3e66723f7e Merge branch 'join-in-preloads' into 'develop'
Join on preloads to avoid N+1 queries

See merge request pleroma/pleroma!714
2019-01-26 15:57:02 +00:00
Haelwenn (lanodan) Monnier de956b9e04
Web.MastodonAPI.MastodonAPIController: tag+any bookmark params in a array and flatten it 2019-01-26 16:46:20 +01:00
William Pitcock 1f7843b9b8 mastodon api: use OGP uri instead of page_url for deducing domain name, fix test 2019-01-26 15:24:16 +00:00
William Pitcock 86037e9c39 mastodon api: use HTML.extract_first_external_url() 2019-01-26 15:13:27 +00:00
href 8018ae7ae5
Join on preloads to avoid N+1 queries 2019-01-26 15:55:53 +01:00
William Pitcock be9abb2cc5 html: add utility function to extract first URL from an object and cache the result 2019-01-26 14:55:12 +00:00
William Pitcock 78047d57bf mastodon api: provider_name setting is required too on the card 2019-01-26 14:47:32 +00:00
Haelwenn (lanodan) Monnier 39863236eb Web.MastodonAPI.MastodonAPIController: generic get_status_card/1 function for MastoAPI 2.6.x
Mastodon API 2.6.x added a card key to the Status object so the Card can be shown in the timeline without an extra request at each status.
2019-01-26 14:18:23 +00:00
Haelwenn (lanodan) Monnier 3f64379b13 Web.MastodonAPI.MastodonAPIController: Add Rich-Media support 2019-01-26 14:18:23 +00:00
Haelwenn (lanodan) Monnier 5a84def6a6
Fix the logic in multi-hashtag TLs 2019-01-26 04:46:02 +01:00
Haelwenn (lanodan) Monnier 4ad0ad14ed
Web.ActivityPub.ActivityPub: Simplify multi-hashtag, add tests 2019-01-26 04:46:01 +01:00
Haelwenn (lanodan) Monnier 1a9bb4daa0
[Web.ActivityPub.ActivityPub]: Fix restrict_tag()
Thanks to Senko-san <kurisu@iscute.moe> for the help on array-matching
2019-01-26 04:46:01 +01:00
Haelwenn (lanodan) Monnier f9cae0d04f
[WIP,MastoAPI] Multi-tag timelines 2019-01-26 04:45:36 +01:00
Haelwenn (lanodan) Monnier 15aa45ae8a
Web.ActivityPub.ActivityPub: Fix check_remote_limit/1 against activities with content: nil 2019-01-26 03:50:49 +01:00
Ivan Tashkinov 060d280e64 [#534] Made Salmon.send_to_user calls be handled through Federator.enqueue. 2019-01-25 20:38:13 +03:00
lain aa8ddfdbe2 SPC fixes: Fix activities. 2019-01-25 18:14:48 +01:00
Ivan Tashkinov 465adedb7c [#534] Websub fix: made SQL use UTC time zone when comparing with `valid_until` (instead of postgresql-server default time zone). 2019-01-25 18:29:43 +03:00
Ivan Tashkinov 656ed7c84a [#534] Configurable outgoing federation reachability timeout. 2019-01-25 15:10:21 +03:00
rinpatch 3a5b3c5a3a Merge remote-tracking branch 'pl/develop' into oembed_provider 2019-01-25 10:40:51 +03:00
kaniini 4c99b6d35a Merge branch 'fix/tusky-dm' into 'develop'
Add actor to recipients list

Closes #390

See merge request pleroma/pleroma!683
2019-01-25 05:19:32 +00:00
kaniini c9b418e547 Merge branch 'develop' into 'oembed_provider'
# Conflicts:
#   lib/pleroma/activity.ex
2019-01-25 05:00:47 +00:00
kaniini 4df71cd88b Merge branch 'classic-flakeids' into 'develop'
Flake Ids for Users and Activities

Closes #450

See merge request pleroma/pleroma!645
2019-01-25 04:59:06 +00:00
Maxim Filippov 9274cabe01 Use correct logic to determine "attentions" list 2019-01-24 23:30:43 +03:00
Ivan Tashkinov 3e9399ec0b [#534] Optimized bulk publish ops to filter on reachability early. `Instance` refactoring. 2019-01-24 19:15:23 +03:00
href a3ba72d978
Fix clippy with one/five lines 2019-01-24 16:53:14 +01:00
Ivan Tashkinov 8654a591f0 [#534] Updating external instances reachability on incoming federation. 2019-01-24 17:37:23 +03:00
href be43aa2875
FlakeId: ignore null mac for workerid, use first mac 2019-01-24 13:08:27 +01:00
William Pitcock 54ec6d09b0 mrf: add anti-followbot policy 2019-01-24 09:35:19 +00:00
Ivan Tashkinov 20b54366ee [#534] Federation publish requests status control (enforced 2xx response code check). 2019-01-24 11:54:52 +03:00
Maxim Filippov 4333fea1dc Send "hide_network" in user_view 2019-01-23 19:47:51 +03:00
Ivan Tashkinov f161a92cb1 [#534] Initial implementation of unreachable federation targets retirement. 2019-01-23 18:37:25 +03:00
kaniini 4a278cd80a Merge branch 's3-namespace' into 'develop'
S3 uploader: support for namespaced bucket

Closes #532

See merge request pleroma/pleroma!699
2019-01-23 13:25:04 +00:00
lain 2de208817c Merge branch 'develop' into rename/pleroma_activity_consistency 2019-01-23 13:05:58 +01:00
lain e221c681dc New frontend configuration mechanism. 2019-01-23 12:40:57 +01:00
href a92c43bc4b
Clippy! 2019-01-23 11:26:38 +01:00
href 973c9eed18
Treat User.Info pinned ids as strings 2019-01-23 11:26:37 +01:00
href e36a434b99
FlakeId.from_string/1: remove old, un-needed conversion 2019-01-23 11:26:36 +01:00
href 422e60ad76
2019 2019-01-23 11:26:35 +01:00
href cdc5e6ff5c
ActivityPub: restrict_since/restrict_max: ignore empty param 2019-01-23 11:26:35 +01:00
href 9d63b27dcd
Test FlakeID old id compat & Ecto type 2019-01-23 11:26:34 +01:00
href 28d77e373c
Flake Ids for Users and Activities 2019-01-23 11:26:27 +01:00
Haelwenn 707cd9389c Merge branch 'fix/activity_get_by_id' into 'develop'
Add get_by_id to activity.ex

See merge request pleroma/pleroma!695
2019-01-22 14:28:17 +00:00
Ivan Tashkinov 34d59e4008 [#502] Fixed User.active_local_user_query to return users with nil or missing `info.deactivated`. Adjusted test. 2019-01-22 17:12:53 +03:00
rinpatch e460820fcf Add get_by_id to activity.ex 2019-01-22 10:55:10 +03:00
href f9a3269099
Uploader callback controller 2019-01-21 22:44:14 +01:00
href 99763999c1
reverse_proxy - always override plug's cache-control 2019-01-21 15:17:24 +01:00
href 97412d9f94
S3 Namespace 2019-01-21 14:42:16 +01:00
lambda 8cd853ce0c Merge branch '530_federator_user_info_overwrite_fix' into 'develop'
[#530] Prevents user `info` from being overwritten because of race conditions

Closes #530

See merge request pleroma/pleroma!691
2019-01-21 13:03:32 +00:00
lambda 69454c8345 Merge branch 'feature/dm-sanity' into 'develop'
DM sanitization

See merge request pleroma/pleroma!458
2019-01-21 12:35:10 +00:00
Ivan Tashkinov a4d3fec8a7 [#502] Code comments update. 2019-01-21 14:52:41 +03:00
Ivan Tashkinov aa480f4a8b [#530] Prevents user `info` from being overwritten because of race conditions
and non-partial update of embed (in WebFinger.ensure_keys_present and other places).
2019-01-21 14:16:51 +03:00
Haelwenn (lanodan) Monnier 7390192c03
Activity: mix format (2 empty lines) 2019-01-21 08:00:41 +01:00
Haelwenn (lanodan) Monnier 98c8184c1f
Activity: get_create_activity_by_object_ap_id/1 → get_create_by_object_ap_id/1 2019-01-21 08:00:41 +01:00
Haelwenn (lanodan) Monnier 2fdbd4d137
Activity: create_activity_by_object_id_query/1 → create_by_object_ap_id/1 when is_list 2019-01-21 08:00:40 +01:00
Haelwenn (lanodan) Monnier f8ab1b7427
Activity: get_all_by_object_ap_id/1 → get_all_create_by_object_ap_id/1 2019-01-21 08:00:38 +01:00
Haelwenn (lanodan) Monnier 4ad5a0abb9
Activity: all_by_object_ap_id_q/1 → create_by_object_ap_id/1 2019-01-21 07:51:01 +01:00
Haelwenn (lanodan) Monnier 75e4c8f0b2
Activity: all_non_create_by_object_ap_id_q → by_object_ap_id 2019-01-21 07:50:57 +01:00
Haelwenn (lanodan) Monnier b82c6dc536
Activity: all_by_object_ap_id/1 → get_all_by_object_ap_id/1 2019-01-21 07:49:59 +01:00
lain cf1f35a93a Send delete event over Mastodon streaming api
Closes #116
2019-01-20 13:00:46 +01:00
lambda f3045a179e Merge branch 'i1t/pleroma-477_user_search_improvements' into 'develop'
I1t/pleroma 477 user search improvements

See merge request pleroma/pleroma!685
2019-01-20 10:24:05 +00:00
lain 5834b08fe7 Set custom similarity limit. 2019-01-20 10:57:49 +01:00
William Pitcock aa37313416 activitypub: short-circuit is_public?() with directMessage flag check 2019-01-20 02:33:21 +00:00
William Pitcock 7c9749f793 transmogrifier: slightly clean up fix_explicit_addressing pipeline 2019-01-20 02:27:48 +00:00
William Pitcock 420651157b transmogrifier: don't apply heuristics against messages which have `directMessage` set true 2019-01-20 02:27:48 +00:00
William Pitcock ddae43eb43 activitypub: add is_private?/is_direct? helpers 2019-01-20 02:27:48 +00:00
William Pitcock 9adc80afff common api: set directMessage flag on our own posts 2019-01-20 02:27:48 +00:00
William Pitcock 75dfa1f0b0 mastodon api: get_visibility(): DMs never have a cc list. 2019-01-20 02:27:48 +00:00
William Pitcock 681f40ee5c activitypub: transmogrifier: fix up to/cc addressing brain damage caused by mastodon-style explicit DMs 2019-01-20 02:27:48 +00:00
William Pitcock 8d06be35e0 activitypub: utils: add determine_explicit_mentions() and tests 2019-01-20 02:27:48 +00:00
kaniini 42612b1c8d Merge branch 'bugfix/improve-boost-targeting' into 'develop'
improve handling of non-public Announces

See merge request pleroma/pleroma!681
2019-01-19 23:44:08 +00:00
lain b108aeee08 Make use of the indices.
Indices in postgresql rely on operators, so they won't be used if you use only functions.
2019-01-20 00:31:17 +01:00
rinpatch 44693fbf6e Formating 2019-01-20 01:28:46 +03:00
rinpatch afd83db0d7 Provide local og:url for remote activities 2019-01-19 10:58:27 +03:00