Commit Graph

2249 Commits

Author SHA1 Message Date
kaniini 4f03bb2299 Merge branch 'bugfix/fix-mrf-reject-match' into 'develop'
activitypub: fix error condition match

See merge request pleroma/pleroma!365
2018-09-30 05:32:56 +00:00
William Pitcock 4db1bc2c0e activitypub: fix error condition match 2018-09-30 05:26:13 +00:00
Haelwenn (lanodan) Monnier a3cffd3566
formatter: Stop using phoenix HTML and format it ourselves
* Pheonix has an extra scheme whitelist conflicting with ours
* Pheonix doesn’t seems to do URL encoding, just HTML encoding

Closes: https://git.pleroma.social/pleroma/pleroma/issues/307
2018-09-28 17:32:27 +02:00
Haelwenn 34b6d444d6 Merge branch 'feature/twitter_api/fields' into 'develop'
[Pleroma.Web.TwitterAPI.UserView]: Add mastodon-fields in "fields"

See merge request pleroma/pleroma!360
2018-09-28 09:25:27 +00:00
Haelwenn (lanodan) Monnier 82b57ebad1
[Pleroma.Web.TwitterAPI.UserView]: Add mastodon-fields in "fields" 2018-09-28 10:44:45 +02:00
William Pitcock 707077edde activitypub: don't fall back to OStatus fetching when MRF rejects an object 2018-09-28 00:45:10 +00:00
William Pitcock 5c312ad677 activitypub inbox: only accept unsigned/invalid-signature relayed creates, nothing else
although the previous handling assumed any unsigned/invalid signature message was a Create,
lets make it more explicit
2018-09-28 00:03:59 +00:00
Haelwenn (lanodan) Monnier c739737998
transmogrifier: get_actor called without casting attributedTo in actor and actor is nil 2018-09-27 20:00:48 +02:00
Haelwenn (lanodan) Monnier 9446b02bdf
transmogrifier: Just make attachement maps into a list and reroll 2018-09-27 20:00:48 +02:00
Haelwenn (lanodan) Monnier e53da692fb
transmogrifier: Use the correct variable and prefer inspect in case of a bad type being passed on 2018-09-27 20:00:48 +02:00
William Pitcock d830a243a3
transmogrifier: more robustly handle dereferencing pointer URIs 2018-09-27 20:00:48 +02:00
Haelwenn (lanodan) Monnier 4c3a80de96
transmogrifier: Use oneliners when applicable 2018-09-27 20:00:47 +02:00
William Pitcock ed8dfa3029
transmogrifier: reformat `cond` block by hand 2018-09-27 20:00:47 +02:00
Haelwenn (lanodan) Monnier eebe33e86a
transmogrifier: Add support for array-less hashtags, add broken announce, harden get_actor 2018-09-27 20:00:47 +02:00
Haelwenn (lanodan) Monnier f3291acc91
transmogrifier: pro-actively add support for Hashtag without array in tag 2018-09-27 20:00:47 +02:00
Haelwenn (lanodan) Monnier 22927f3a34
transmogrifier: Use a cond, add proactive support for arrays 2018-09-27 20:00:46 +02:00
Haelwenn (lanodan) Monnier 0aac72f1d3
[Pleroma.Web.ActivityPub.Transmogrifier]: quick fix when tag is a Map 2018-09-27 20:00:46 +02:00
Haelwenn (lanodan) Monnier 28e8a8ab36
[Pleroma.Web.ActivityPub.Transmogrifier]: fix emoji in tag when it’s not in a array [kroeg]
Also simplified the code for name trimming.

And not copying the Map.merge part as it looks buggy.
See: https://queer.hacktivis.me/objects/a9f21ebc-9a12-4a6c-89d5-3d46955c6ee8
2018-09-27 20:00:46 +02:00
Haelwenn (lanodan) Monnier f8a0cb9c0b
[Pleroma.Web.ActivityPub.Transmogrifier]: fix when attachment contain is just a Map [kroeg] 2018-09-27 20:00:46 +02:00
Haelwenn (lanodan) Monnier a4abb124ea
[Pleroma.Web.ActivityPub.Transmogrifier]: Fix when inReplyTo is a inlined post [kroeg] 2018-09-27 20:00:46 +02:00
Haelwenn (lanodan) Monnier 523757be52
[Pleroma.Web.ActivityPub.ActivityPub]: Harden getting endpoints [kroeg] 2018-09-27 20:00:45 +02:00
Martin Kühl f77ec96707 Uploaders.S3: Replace unsafe characters in object key
According to [the S3 docs][s3], the characters safe for use in object keys are:

* 0-9
* a-z
* A-Z
* !
* -
* _
* .
* *
* '
* (
* )

(The / character is not listed but mentioned being safe outside of the list.)

Several characters that are valid in filenames can cause problems, for example
spaces are not valid in URLs and need to be escaped,
sequences of spaces can become squeezed by S3,
some characters like \ are documented to require “significant special handling”.

To avoid these problems, this change encodes the filename
before using it as part of the S3 object name
by replacing all characters except those documented as “safe” with dashes.

[s3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html
2018-09-24 15:38:32 +02:00
Martin Kühl d94ee5cd50 Mastodon API: Support push subscription CRUD 2018-09-22 07:04:01 +02:00
Martin Kühl c2d592c9c5 Assign token to connection 2018-09-22 07:04:01 +02:00
William Pitcock 7f0e291483 html: twittertext: add missing catchall scrub function 2018-09-22 03:45:35 +00:00
William Pitcock 56577d8b48 twitter api: add no_rich_text option to userview for account prefs 2018-09-22 03:24:40 +00:00
William Pitcock df00a364fb mastodon api: formatting 2018-09-22 02:53:04 +00:00
William Pitcock c2b69798dd twitter api: add support for disabling rich text 2018-09-22 02:53:02 +00:00
William Pitcock 958e085acb mastodon api: add support for user-supplied html policy 2018-09-22 02:53:02 +00:00
William Pitcock 2f5b026548 twitter api: add support for user-specified html policy 2018-09-22 02:53:01 +00:00
William Pitcock 735cdfb848 user: add User.html_filter_policy() 2018-09-22 02:53:00 +00:00
William Pitcock 8ae9424edb html: default to using normal scrub policy if provided scrub policy is nil 2018-09-22 02:52:59 +00:00
kaniini 4cb6331843 Merge branch 'feature/dynamic-user-refresh' into 'develop'
user: implement dynamic refresh of profiles

See merge request pleroma/pleroma!350
2018-09-21 00:00:28 +00:00
kaniini 0fe165165f Merge branch 'task-204-on-options-request' into 'develop'
Return 204 response on options request

See merge request pleroma/pleroma!347
2018-09-20 23:54:51 +00:00
William Pitcock 8e28e8a18f mix: remove fix_ap_users task, now obsolete 2018-09-20 23:50:56 +00:00
William Pitcock c9f6eb9a41 user: implement dynamic refresh of profiles (gets rid of need for fix_ap_users task) 2018-09-20 23:50:56 +00:00
Haelwenn (lanodan) Monnier 40c51f118f
[Pleroma.Web.MastodonAPI.MastodonAPIController]: Bump mastodon_api_level to 2.5.0 2018-09-20 16:48:12 +02:00
Haelwenn (lanodan) Monnier f74725df41
[Pleroma.Web.MastodonAPI.MastodonAPIController]: Remove unused variables 2018-09-20 16:37:18 +02:00
Haelwenn (lanodan) Monnier 33a1e92584
[Pleroma.Web.Router]: Fake /api/v1/endorsements 2018-09-20 16:25:07 +02:00
Haelwenn (lanodan) Monnier a8eaecadee
[Pleroma.Web.MastodonAPI.AccountView]: relationship.json: fake endorsed value (false) 2018-09-20 16:24:29 +02:00
Haelwenn (lanodan) Monnier 43d0b7bf7a
[Pleroma.Web.MastodonAPI.StatusView] add replies_count 2018-09-20 16:10:46 +02:00
William Pitcock c9585ec007 twitter api: fix mimetype fallback when attachments use a URI instead of a URL object 2018-09-19 04:59:26 +00:00
William Pitcock 0cac493fdc mastodon api: default attachment type to image if one is not present 2018-09-19 04:59:25 +00:00
Martin Kühl f4fcea5258 Revert "Mastodon API: Fake support for loading filters"
This reverts commit c1d07da4e1.

The fake support was superseded by 6e030129fb which actually implements the faked filters API.

This change removes the fake support and ensures that the actual implementation is used.
2018-09-18 11:59:10 +02:00
Dominique Feyer 9b0f2d572b Return 204 response on options request 2018-09-17 12:21:01 +02:00
William Pitcock a7d0ecdc7c html: add policy which transforms inline images to pass through the media proxy 2018-09-16 02:16:16 +00:00
William Pitcock cd13fa17fd html: allow scrubbing policies to be stackable 2018-09-16 02:16:14 +00:00
William Pitcock 342ed84446 MRF: add policy for normalizing HTML markup (local and remote) to a specific policy 2018-09-16 01:25:36 +00:00
William Pitcock 95376ac1fe html: add the ability to override the default scrub policy 2018-09-16 01:25:35 +00:00
kaniini c2650f0ffb Merge branch 'feature/html-scrub-policy' into 'develop'
html scrub policy

See merge request pleroma/pleroma!339
2018-09-16 01:05:09 +00:00
shadowfacts 39aed5348a Add visible_in_picker to status emojis 2018-09-10 23:32:19 +00:00
William Pitcock d3248e13e3 activitypub: transmogrifier: allow profile updates from bots 2018-09-10 01:57:03 +00:00
William Pitcock e0b8c0ccba MRF: reject non-public: use pattern match to remove unnecessary if block 2018-09-10 01:16:03 +00:00
William Pitcock 88094c266d MRF: simple policy: refactor module to use guards and pattern matching 2018-09-10 01:16:02 +00:00
William Pitcock 97253df3ee MRF: simple policy: contain media removal/nsfw ops to create activities only 2018-09-10 01:16:01 +00:00
William Pitcock e82ce2a4b3 formatting 2018-09-10 00:28:40 +00:00
William Pitcock 358f88e10a html: allow inline images by default (because of custom emoji) 2018-09-10 00:24:19 +00:00
William Pitcock 40e2f6e500 html: add default scrubbing profile and configuration knobs 2018-09-10 00:14:57 +00:00
William Pitcock ac486fc59b everywhere: use Pleroma.HTML module instead of HtmlSanitizeEx directly 2018-09-10 00:14:47 +00:00
William Pitcock 255f46d7ab html: new module providing a configurable markup scrubbing policy 2018-09-10 00:13:57 +00:00
Dominique Feyer 801d645c6b TASK: Fix formatting 2018-09-09 23:42:28 +02:00
Dominique Feyer b79c126ee0 Add missing URL encoding in create authorization redirect 2018-09-09 23:31:47 +02:00
Hakaba Hitoyo 4e1bb7bccb make limit for /api/v1/suggestions 2018-09-09 13:57:23 +09:00
lambda 045953225e Merge branch 'moonman/pleroma-sha512-crypt' into 'develop'
auth overhaul and legacy GS auth

See merge request pleroma/pleroma!331
2018-09-08 09:20:34 +00:00
kaniini 530561a091 Merge branch 'add-secure-and-samesite-cookie-flags' into 'develop'
Add Secure and SameSite cookie flags

See merge request pleroma/pleroma!302
2018-09-07 23:55:42 +00:00
kaniini 3e4f39116b Merge branch 'feature/custom_media_url' into 'develop'
[Pleroma.Uploaders.Local]: Add configuration for custom url path

See merge request pleroma/pleroma!318
2018-09-07 23:49:36 +00:00
Martin Kühl c1d07da4e1 Mastodon API: Fake support for loading filters 2018-09-07 16:12:44 +02:00
Martin Kühl 619f67768a Mastodon API: Add unsupported attributes to relationship responses
These attributes are documented as required by the Mastodon API.
Since we don’t support them (I think?), respond with default values.
2018-09-07 16:12:44 +02:00
lain 70163aec9b Add LegacyAuthenticationPlug to router. 2018-09-05 22:31:57 +02:00
lain 44b094908c Update legacy passwords automatically. 2018-09-05 22:30:14 +02:00
lain 3aba585e7a Add Plugs to router. 2018-09-05 21:57:56 +02:00
lain e601165426 Add UserEnabledPlug. 2018-09-05 21:53:53 +02:00
lain 5ce1ebb179 Add SetUserSessionIdPlug. 2018-09-05 21:42:42 +02:00
Haelwenn 4a3dbd9d4e Merge branch 'fix/sign-in-with-toot' into 'develop'
Fix sign-in and sign-out with Toot!

See merge request pleroma/pleroma!306
2018-09-05 18:20:26 +00:00
lain 636ad3e155 Add new plugs to router. 2018-09-05 19:13:53 +02:00
lain 12bc73dd28 Add EnsureUserKeyPlug, smaller fixes 2018-09-05 19:06:28 +02:00
lain 32465b9939 Simplify AuthenticationPlug 2018-09-05 18:53:38 +02:00
lain 9a96c93be7 Add SessionAuthenticationPlug. 2018-09-05 18:37:02 +02:00
lain a3f54fca4d Add LegacyAuthenticationPlug 2018-09-05 18:17:33 +02:00
lain 3cf17dc402 Add EnsureAuthenticatedPlug 2018-09-05 17:59:19 +02:00
lain faf5347748 Add UserFetcherPlug. 2018-09-05 17:44:38 +02:00
lain 42bd985e66 Add BasicAuthDecoderPlug 2018-09-05 17:30:05 +02:00
Moon Man 8b020e03a6 change cond to if else 2018-09-05 01:37:48 -04:00
Moon Man 1a8bc26e52 auth against sha512-crypt password hashes, upgrade to pbkdf2 2018-09-05 00:21:44 -04:00
kaniini 76c67a41c1 Merge branch 'develop' into 'feature/staff-discovery-api'
# Conflicts:
#   lib/pleroma/web/nodeinfo/nodeinfo_controller.ex
2018-09-03 14:55:42 +00:00
William Pitcock 9a21ff5f61 nodeinfo: add staffAccounts field to metadata 2018-09-03 14:48:31 +00:00
kaniini 1c9e539b47 Merge branch 'feature/mastodon_api_2.4.x' into 'develop'
Add/Fix Mastodon endpoints for 2.4.3 compatibility

See merge request pleroma/pleroma!266
2018-09-03 12:33:36 +00:00
Hakaba Hitoyo b1124f1605 report chat and gopher support at /nodeinfo/2.0.json 2018-09-03 21:13:30 +09:00
William Pitcock b61430163b user: add moderator_user_query() 2018-09-03 12:03:23 +00:00
kaniini 7ca2a2ddea Merge branch 'nil-bio-emojis' into 'develop'
add nil clause for Formatter.get_emoji/1 to return an empty result

Closes #274

See merge request pleroma/pleroma!315
2018-09-03 05:54:11 +00:00
shadowfacts 35515cfa66 Update mastodon_api_controller.ex 2018-09-03 01:58:55 +00:00
shadowfacts 26f8697400 Update mastodon_api_controller.ex 2018-09-03 01:52:02 +00:00
shadowfacts 2b2bd0e047 Render notification IDs as strings, not numbers 2018-09-03 01:40:05 +00:00
Thurloat 4257f784bc sloop around get_emoji/1 to check is_binary and have a fallthrough
default that returns empty
2018-09-02 20:44:37 -03:00
Haelwenn (lanodan) Monnier 754deb26dd
[Pleroma.Uploaders.Local]: Add configuration for custom url path
One use-case being an external caching proxy
2018-09-02 19:00:16 +02:00
kaniini b7923aa304 Merge branch 'hotfix_broken_likes' into 'develop'
hotfix for broken like completely breaking the notifications API

See merge request pleroma/pleroma!284
2018-09-02 12:37:00 +00:00
William Pitcock 834515fb51 formatter: don't add XSS emoji 2018-09-02 00:04:09 +00:00
kaniini 3c7280934e Merge branch 'security/activitypub-spoofing' into 'develop'
security: activitypub spoofing

See merge request pleroma/pleroma!321
2018-09-01 23:48:55 +00:00
William Pitcock 03e92977cb transmogrifier: fix peertube/plume actor handling 2018-09-01 23:44:19 +00:00
William Pitcock 0b2c051a04 activitypub: fix possibility of spoofing by containing remote objects to the same domain as their actor 2018-09-01 23:20:02 +00:00
William Pitcock e2ce0e9e05 run `mix format`. 2018-09-01 21:12:42 +00:00
Martin Kühl 84d84e4ca4 OAuth: Support /revoke endpoint for revoking tokens
(for compatibility with Mastodon)
2018-09-01 23:10:48 +02:00
Martin Kühl ad2a7972e7 OAuth: Set `created_at` in token exchange response
(for compatibility with Mastodon)
2018-09-01 23:10:48 +02:00
Martin Kühl b60d232719 AccountView: `sensitive` is supposed to be a boolean, not a string 2018-09-01 23:10:48 +02:00
William Pitcock c921d99898 config: add ability to disable Pleroma FE config management (closes #276) 2018-09-01 21:05:32 +00:00
kaniini 2e2f458705 Merge branch 'lanodan/code-dup_in_mastoapi_search' into 'develop'
Clean code duplication in MastoAPI search(v1/v2)

See merge request pleroma/pleroma!316
2018-09-01 09:12:59 +00:00
Will Pearson 0c2a0e3551 Specify default scope in verify_credentials
Certain Mastodon/Pleroma front ends call verify_credentials to get the
default scope of a new toot.

Currently, Pleroma hardcodes this value to "public".

This patch changes it to the user's default_scope value.
2018-08-31 21:04:46 -07:00
Haelwenn (lanodan) Monnier 8885d16e1b
[Pleroma.Web.MastodonAPI.MastodonAPIController].search(2)?: Remove code duplication 2018-09-01 03:11:58 +02:00
Thurloat a9c0f395cb add nil clause for Formatter.get_emoji/1 to return an empty result 2018-08-31 14:29:23 -03:00
lambda 58539e1357 Revert "Merge branch 'feature/rich-text' into 'develop'"
This reverts merge request !309
2018-08-31 09:51:20 +00:00
William Pitcock 856b5e1ca4 config: chase pleroma-fe updates from MR pleroma-fe!324. 2018-08-31 04:01:21 +00:00
kaniini a26d5e6b2a Merge branch 'feature/rich-text' into 'develop'
rich text support

See merge request pleroma/pleroma!309
2018-08-31 03:41:00 +00:00
William Pitcock 6aa65b68b8 common api: add support for formatting messages outside of twitter-style plain text 2018-08-31 03:13:59 +00:00
kaniini e838969495 Merge branch 'use-media-proxy-in-suggestions-api' into 'develop'
use media proxy for the suggestions api

See merge request pleroma/pleroma!305
2018-08-30 23:06:30 +00:00
kaniini 65e8d47cfb Merge branch 'backendhack' into 'develop'
Flexible Storage Backends

See merge request pleroma/pleroma!304
2018-08-30 23:05:01 +00:00
Thurloat adffad5502 increase uploader behaviour documentation accuracy. 2018-08-30 09:20:29 -03:00
Thurloat af01f0196a Add backend failure handling with :ok | :error so the uploader can handle it.
defaulting to :ok, since that's the currently level of error handling.
2018-08-29 22:07:28 -03:00
William Pitcock 29b5e30c46 activity: drop recipients_to/recipients_cc fields 2018-08-29 18:41:02 +00:00
William Pitcock de9acebbf3 activitypub: use jsonb query for containment instead of recipients_to/recipients_cc. 2018-08-29 18:41:02 +00:00
href ddc6f32b75
Fix Mastodon API when actor's nickname is null 2018-08-29 16:32:50 +02:00
William Pitcock cce9d008f9 streamer: contain list updates in the same way as we do with the database query 2018-08-29 09:23:05 +00:00
William Pitcock ded9091206 mastodon api: use bounded AP object graph query to enforce containment of private statuses 2018-08-29 08:51:51 +00:00
William Pitcock 643fae6e36 activitypub: allow querying the activity/object graph bounded to a specific to/cc set 2018-08-29 08:51:23 +00:00
William Pitcock 81673b8136 activity: add recipients_to and recipients_cc fields 2018-08-29 08:42:33 +00:00
Thurloat d424e9fa5f fix S3 ref in sample config to generate proper path. 2018-08-28 23:49:23 -03:00
Thurloat ab9e5d64d6 add a sample swift config 2018-08-28 22:39:33 -03:00
Thurloat 2ff25ac0ce A hobbldey-working swift client.
apparently, all elixir openstack libraries are trash
luckily, the APIs are stupid easy.
2018-08-28 22:32:24 -03:00
Thurloat 9fc20ed572 works now, tested with profile photo upload on local backend. 2018-08-28 20:04:26 -03:00
Thurloat dad39b24a1 add the behaviour, work on actually making it work. 2018-08-28 19:48:03 -03:00
shibayashi 18ad8aaecf
Explicitly set 'http_only' to true 2018-08-28 22:34:31 +02:00
Thurloat 8d2d7a8859 Implement uploader behaviour
run formatter <#
2018-08-28 09:57:41 -03:00
shibayashi 4656a07e9e
Set SameSite flag to 'Strict' 2018-08-28 14:03:29 +02:00
Hakaba Hitoyo 6cbfb5ab5d use media proxy for suggestions api 2018-08-28 17:01:17 +09:00
Thurloat 0df558a6a5 cleaning up a bit. 2018-08-27 22:45:53 -03:00
Thurloat 709816a0f8 example of flexible storage backends 2018-08-27 22:20:54 -03:00
William Pitcock d22f66655b upload: formatting 2018-08-28 00:25:30 +00:00
William Pitcock 1596185ac6 upload: add the S3 support itself 2018-08-28 00:18:44 +00:00
William Pitcock 03c35e579b sample config: add S3 public endpoint option 2018-08-28 00:18:24 +00:00
William Pitcock 86c007ddd2 upload: strip exif data before finalizing the file path 2018-08-27 23:36:30 +00:00
William Pitcock e95d958b52 sample config: show how amazon s3 support is activated, including third-party clones like wasabi 2018-08-27 23:30:53 +00:00
shibayashi 0c4493f144
Fix formatting 2018-08-28 00:47:34 +02:00
shibayashi b9a642da1e
Add Secure and SameSite cookie flags 2018-08-28 00:40:58 +02:00
Henry Jameson 0f1c629d65 better solution, added test. 2018-08-27 17:07:26 +03:00
Haelwenn (lanodan) Monnier 6973b77e94
[Pleroma.Web.MastodonAPI.FilterView] fix expires_at being a unsafe variable 2018-08-27 15:09:06 +02:00
Haelwenn (lanodan) Monnier 9bddb39ff0
[Pleroma.Web.MastodonAPI.FilterView]: expires_at should be null when N/A 2018-08-27 15:09:06 +02:00
Haelwenn (lanodan) Monnier d571a571fe
[Pleroma.Web.MastodonAPI.MastodonAPIController]: Bump mastodon_api_level to 2.4.3 2018-08-27 15:09:06 +02:00
Haelwenn (lanodan) Monnier 6e030129fb
[MastodonAPI] Add filters 2018-08-27 15:09:05 +02:00
Haelwenn (lanodan) Monnier a5adb251ab
[Pleroma.Web.MastodonAPI.AccountView]: Add fields support 2018-08-27 15:09:05 +02:00
Haelwenn (lanodan) Monnier d008f2d69c
[Pleroma.Web.MastodonAPI.AccountView]: Add bot field 2018-08-27 15:09:04 +02:00
Haelwenn (lanodan) Monnier 97e20d2932
[MastodonAPI] the tag field isn’t fixed to a static type in pleroma 2018-08-27 15:08:25 +02:00
Haelwenn (lanodan) Monnier 83efaa3af6
[MastodonAPI] Add streaming of hashtags 2018-08-27 15:08:25 +02:00
William Pitcock 5dd6542db5 formatting 2018-08-27 10:46:01 +00:00
William Pitcock 1089d3658e user: fix up notification last calculation [NOT related to upstream] 2018-08-27 10:46:01 +00:00
lambda 46c7c2380c Merge branch 'feature/relay' into 'develop'
message relay

Closes #144

See merge request pleroma/pleroma!264
2018-08-27 08:29:25 +00:00
lambda 440b459cd1 Merge branch 'bugfix/announce-timeline-flooding' into 'develop'
activitypub: filter destination list for announce activities differently than normal (closes #164)

Closes #164

See merge request pleroma/pleroma!227
2018-08-27 08:25:27 +00:00
kaniini 63094cfd3e Merge branch 'feature/emoji-in-local-users' into 'develop'
Add emoji to local user profiles.

Closes #202

See merge request pleroma/pleroma!271
2018-08-26 23:24:41 +00:00
William Pitcock bc3c30430e fix formatting 2018-08-26 22:46:25 +00:00
kaniini 1ad5cbed51 Merge branch 'bugfix/common-api-visibility-orphan' into 'develop'
common api: properly handle replying to orphaned threads

See merge request pleroma/pleroma!299
2018-08-26 22:39:15 +00:00
William Pitcock 741c6ad671 common api: handle replying to orphaned threads 2018-08-26 22:37:36 +00:00
kaniini c9e4c45e0e Merge branch 'login-with-email' into 'develop'
When logging in, try treating the login as an email

Closes #245

See merge request pleroma/pleroma!295
2018-08-26 21:35:12 +00:00
kaniini 0f5bff8c66 Merge branch 'develop' into 'feature/relay'
# Conflicts:
#   lib/pleroma/web/activity_pub/utils.ex
2018-08-26 21:06:15 +00:00
hakabahitoyo 946a0769c4 remove unused settings from /api/statusnet/config 2018-08-26 17:40:15 +09:00
Ekaterina Vaartis 540cce5d10 When logging in, try treating the login as an email
Closes #245
2018-08-25 23:29:03 +03:00
kaniini ffa552f1a4 Merge branch 'feature/twitterapi-object-description' into 'develop'
twitter api: provide object descriptions as attachment description field

See merge request pleroma/pleroma!293
2018-08-25 00:20:25 +00:00
William Pitcock aab2bdddf4 twitter api: provide object descriptions as attachment description field 2018-08-25 00:12:58 +00:00
William Pitcock 290798b821 http: fix TLS server name indication
by default, hackney only sent TLS server name indication if TLS was locked
to TLS 1.2.

since there are many instances out there not speaking TLS 1.2, it is not
acceptable to lock SNI to TLS 1.2.

closes #261
2018-08-24 20:04:50 +00:00
kaniini be7a6db1f5 Merge branch 'bugfix/formatter-single-char-nicks' into 'develop'
formatter: fix single char local nicknames

Closes #163

See merge request pleroma/pleroma!290
2018-08-24 18:42:14 +00:00
kaniini 9ded0ee1a5 Merge branch 'config/fe-collapse-subject' into 'develop'
fe config: add collapse_message_with_subject fe option

See merge request pleroma/pleroma!289
2018-08-24 18:27:43 +00:00
William Pitcock 3e10d13909 formatter: adjust regexp captures to match local users with single character nicknames (closes #163) 2018-08-24 18:22:47 +00:00
William Pitcock 09cb402203 fe config: add collapse_message_with_subject fe option 2018-08-24 18:21:42 +00:00
Jorty ba6e3eba33 Move invite task to pleroma namespace
Some other minor changes were made to make it consistent with the behavior of
other tasks both within Pleroma and the conventions set by dependencies such as
Phoenix. Namely, the task is named `gen.invite` and `IO.puts` has been replaced
with references to `Mix.shell()` where appropriate.
2018-08-23 12:46:13 -04:00
Jorty 8a1dc0de92 Refactor Mix tasks
1. Move Mix tasks into a `pleroma` namespace, to avoid
   collisions with dependent packages.

2. Rename and condense tasks  into two `pleroma.user` and
   `pleroma.gen.instance` tasks for consistency with Hex and Phoenix.

3. Add additional functionality to the tasks to make them more
   user-friendly. Arguments with sensible defaults were demoted to flags
   and in the interactive `generate_config` (renamed to
   `pleroma.gen.instance`), flags were added to allow non-interactive
   use, though interactive use remains the primary interface. That task
   also now prompts the user for database parameters.

4. Documentation has been added to both tasks such that `mix help` now
   shows useful information.

5. Finally, use of IO.puts in tasks has been replaced with Mix.shell()
   equivalents to make the behavior more consistent with Mix tasks in
   other packages, and such that variables like MIX_QUIET are respected.
   The only exception is in `mix pleroma.user reset_password`, wherein
   the URL must always be printed regardless of the value of MIX_QUIET
   since that's its entire purpose.
2018-08-23 11:33:16 -04:00
hakabahitoyo bf9f68b681 debug 2018-08-23 11:52:18 +09:00
William Pitcock a909fe45a6 formatting 2018-08-23 01:34:36 +00:00
William Pitcock 52b44184b4 transmogrifier: reject activities lacking a valid ID 2018-08-23 01:25:26 +00:00
Henry Jameson 9b046d2a84 fixed notifications API completely breaking if there's a like for
missing (deleted) post.
2018-08-22 16:10:59 +03:00
Haelwenn (lanodan) Monnier d5bdd55b5d
[Pleroma.Web.TwitterAPI.UserView]: Do not fail if user.bio is nil 2018-08-22 01:47:25 +02:00
Haelwenn (lanodan) Monnier 5dde6e4a00
[Pleroma.Web.MastodonAPI.StatusView] Fix rendering peertube videos 2018-08-22 01:46:26 +02:00
kaniini f6b06d2ac8 Merge branch 'feature/peertube_2' into 'develop'
rebase/update of feature/peertube

See merge request pleroma/pleroma!217
2018-08-21 16:58:44 +00:00
kaniini a6d4cc8917 Merge branch 'sanitize-bio' into 'develop'
mastodon api: sanitize the bio HTML

See merge request pleroma/pleroma!282
2018-08-21 16:56:24 +00:00
Haelwenn (lanodan) Monnier 046741c60d
[Pleroma.Web.MastodonAPI.StatusView] Support Peertube Video titles 2018-08-21 18:34:56 +02:00
Haelwenn (lanodan) Monnier f5b056e3ce
[Pleroma.Web.ActivityPub.Transmogrifier]: Fix likes 2018-08-21 18:26:12 +02:00
Haelwenn (lanodan) Monnier 3b8ef24532
Fix attachement rendering 2018-08-21 18:24:10 +02:00
lain a6b021a52b
Render peertube videos in mastodon. 2018-08-21 18:24:10 +02:00
lain c381d0b577
Use activitypub to fetch posts.
This falls back to ostatus.
2018-08-21 18:24:09 +02:00
Haelwenn (lanodan) Monnier 74c74decf5
Basic peertube support. 2018-08-21 18:24:09 +02:00
Haelwenn (lanodan) Monnier ef4f982e2c
Pleroma.Web.ActivityPub.Transmogrifier: Fix actor being a list of objects (Peertube) 2018-08-21 18:24:06 +02:00
ensra 1495d04789 fix test for converting bio \r\n to <br>. 2018-08-21 14:51:27 +01:00
ensra cdb3dd48ab Format 2018-08-21 14:12:55 +01:00
ensra 5debd7b5cc Twitter API: Support Mastodon-style bios
(multi-line, with links, and user mentions)
2018-08-21 14:03:36 +01:00
ensra 175f0bebbc mastodon api: sanitize the bio HTML 2018-08-21 10:53:53 +01:00
kaniini c1b8a6a73b Merge branch 'feature/formatter-consistent-hashtag-mentions' into 'develop'
formatter: consistent presentation of hashtags and mentions

See merge request pleroma/pleroma!280
2018-08-20 18:44:52 +00:00
William Pitcock c033d2004b formatting 2018-08-20 18:40:05 +00:00
William Pitcock 145546e52a common api: format hashtags in the same way as we format mentions 2018-08-20 18:39:47 +00:00
eal f1c407e777 Merge branch 'fix/redirect-on-user-fetch' into 'develop'
ActivityPub: follow redirects when fetching user

See merge request pleroma/pleroma!278
2018-08-20 12:13:07 +00:00
eal 51a21284c6 ActivityPub: follow redirects when fetching user 2018-08-20 15:03:25 +03:00
shadowfacts 6698749073 Fix typo in app creation response
Mastodon sends redirect_uri (singular), so should Pleroma.
2018-08-17 12:48:24 +00:00
William Pitcock a3ef2ebb35 mastodon api controller: client_name, not name 2018-08-16 23:50:49 +00:00
William Pitcock b5a92b1199 mastodon api: add undocumented fields to json response, return app id as string like mastodon itself does 2018-08-16 23:40:42 +00:00
kaniini 183ccd1812 Merge branch 'dev-lanodan-url-regex' into 'develop'
lib/pleroma/formatter.ex: Fix URL regex

Closes #127

See merge request pleroma/pleroma!69
2018-08-16 15:41:16 +00:00
kaniini c004b6ea0a Merge branch 'mastofe/system-font' into 'develop'
Mastodon frontend: Use system font

See merge request pleroma/pleroma!247
2018-08-16 15:38:59 +00:00
kaniini 5fbb14f5ec Merge branch 'bugfix/federation-kroeg' into 'develop'
fix federation with kroeg

See merge request pleroma/pleroma!272
2018-08-16 15:20:15 +00:00
kaniini 38361e7b5e Merge branch 'fix/put-repeats-at-activitypub-outbox' into 'develop'
Fix: Output repeats at ActivityPub outbox

Closes #191

See merge request pleroma/pleroma!175
2018-08-16 15:19:46 +00:00
kaniini 8dc715b30b Merge branch 'fix/normalize-file-extension' into 'develop'
Normalize file extension for uploaded files

Closes #218

See merge request pleroma/pleroma!233
2018-08-16 15:17:17 +00:00
lambda 9908cf8fda Merge branch 'feature/suggestions-api-with-third-party-recommendation-engine' into 'develop'
Feature / Suggestions API with third party recommendation engine

See merge request pleroma/pleroma!254
2018-08-15 07:47:33 +00:00
William Pitcock f446e75577 activitypub: transmogrifier: add necessary translations for kroeg 2018-08-14 17:09:11 +00:00
eal 92caa2632b Use Image type for emoji icons. 2018-08-13 16:21:18 +03:00
eal 1ed1ff17a4 ActivityPub user view: include tag if present. 2018-08-13 16:11:48 +03:00
eal f9d13558c8 CommonAPI: add emoji to user source data on update 2018-08-13 15:27:20 +03:00
lain 8c0c930041 formatting 2018-08-12 19:42:21 +02:00
lain ffd9ad1f0c Fix for elixir 1.7. 2018-08-12 18:41:33 +02:00
lambda 13440a80e1 Merge branch 'feature/invites' into 'develop'
Invites

Closes #108

See merge request pleroma/pleroma!208
2018-08-12 12:04:15 +00:00
lambda 1e9d152d60 Update generate_invite_token.ex 2018-08-12 11:11:08 +00:00
lambda 9de6145737 Merge branch 'fix/remote-follow-errormessage' into 'develop'
Remote follow: don't show confusing error if already following

See merge request pleroma/pleroma!267
2018-08-12 10:55:53 +00:00
lambda ae9c4983d7 Merge branch 'bugfix/gopher-empty-lines' into 'develop'
lib/pleroma/gopher/server.ex: Fix errorneous empty lines

See merge request pleroma/pleroma!270
2018-08-12 10:55:21 +00:00
lambda e81f788cb8 Merge branch 'emoji-in-account-view' into 'develop'
Render emoji in user profiles

See merge request pleroma/pleroma!265
2018-08-12 10:41:30 +00:00
Haelwenn (lanodan) Monnier af30f3f648
lib/pleroma/gopher/server.ex: Fix errorneous empty lines 2018-08-10 18:01:42 +02:00
trqx@goat.si e7b00f202f fix gopher server informational messages
some gopher clients did not accept those lines due to a missing tab
2018-08-10 10:45:44 +02:00
eal db5cdfa333 Remote follow: don't show confusing error if already following 2018-08-09 20:47:29 +03:00
eal 37b802682c HTML-sanitize usernames before emojifying. 2018-08-09 13:07:03 +03:00
eal ed9738e031 Add tests for emoji in user profiles
Also use the correct field in TwitterAPI...
2018-08-08 09:24:50 +03:00
eal cee63ad3f7 TwitterAPI user view: add screen_name_html and description_html. 2018-08-08 08:38:25 +03:00
eal c2d1a5e9c4 MastoAPI AccountView: render profile emoji. 2018-08-07 21:56:50 +03:00
lambda 59b42531a3 Merge branch 'bugfix/duplicate-follow-requests' into 'develop'
user: filter out duplicate follow requests

Closes #228

See merge request pleroma/pleroma!263
2018-08-06 18:07:27 +00:00
William Pitcock d91fd48edf user: do not leak virtuals in account search 2018-08-06 11:29:02 +00:00
William Pitcock ecfd4b2106 user: hide virtual actors from statistics queries 2018-08-06 11:29:01 +00:00
William Pitcock de6be63b1b activitypub: do not show observable effects of non-public boosts 2018-08-06 11:28:57 +00:00
William Pitcock 5202d4ce10 relay: do not relay in test mode 2018-08-06 08:35:56 +00:00
William Pitcock 0ca9b9ff96 run mix format 2018-08-06 08:26:36 +00:00
William Pitcock 5abf9ad602 relay: reintroduce @allow_relay 2018-08-06 08:22:18 +00:00
William Pitcock 1e1a29f084 activitypub: relay: fix up AS2 actor object 2018-08-06 08:22:17 +00:00
William Pitcock e49131bb72 relay: move to /relay endpoint from / due to webapp issues 2018-08-06 08:22:16 +00:00
William Pitcock 2b628f2341 relay: only relay create activities 2018-08-06 08:22:16 +00:00
William Pitcock ae3cb652b6 user: set up a valid followers address to use 2018-08-06 08:22:15 +00:00
William Pitcock 56dc8db582 activitypub: relay: add relay following/followers collection URLs 2018-08-06 08:22:14 +00:00
William Pitcock 1c40a631e8 federator: actually relay the public activities 2018-08-06 08:22:14 +00:00
William Pitcock f9b0fc4ddb relay: remove @allow_relay for the moment 2018-08-06 08:22:13 +00:00
William Pitcock 266b314051 relay: fix invoking federator, use a timer to sleep the mix task to force a context switch 2018-08-06 08:22:12 +00:00
William Pitcock 99be3d3dcc relay: add relay follow/unfollow tasks 2018-08-06 08:22:12 +00:00
William Pitcock 1c90f88393 user: remote actors can have no nickname if they are virtual services 2018-08-06 08:22:11 +00:00
William Pitcock 7bed350a23 config: allow relaying to be disabled 2018-08-06 08:22:10 +00:00
William Pitcock b7ca7f282a activitypub: refactor relay concerns into new relay module 2018-08-06 08:22:10 +00:00
William Pitcock 00e890264c activitypub: represent relay actor at instance root 2018-08-06 08:22:09 +00:00
William Pitcock 4807a52284 user: support creating an actor which represents the instance itself 2018-08-06 08:22:07 +00:00
William Pitcock 275c42e438 user: filter out duplicate follow requests 2018-08-05 01:11:13 +00:00
William Pitcock 0ee29994a5 formatter: preserve case of hashtags
when generating hashtag links, we used the casefolded version that we use in
the link URLs, instead of the original version.

accordingly, adjust the formatter to use the original text for the links, while
keeping the casefolded version for the URLs.
2018-08-05 00:37:38 +00:00
Hakaba Hitoyo f72cfada1a add suggestions/web config 2018-08-02 18:03:35 +09:00
William Pitcock 3be58ad34e activitypub: actually send digest header when federating
this is needed for backwards compatibility with non-digest pleroma instances
2018-08-01 10:32:02 +00:00
Haelwenn (lanodan) Monnier d5091c3175
Allow additionnal schemes in the config 2018-08-01 02:52:42 +02:00
William Pitcock 8da406afa2 activitypub: verify remote http signature digests by recomputing the digest and replacing the digest header 2018-07-31 23:24:30 +00:00
William Pitcock 2890aef9e8 activitypub: add digest header to outbound messages and sign it 2018-07-31 23:24:30 +00:00
Haelwenn (lanodan) Monnier 3623504e5d
[Pleroma.Formatter]: Add support for non-HTTP schemes in URIs
The call to the regex in add_links is there just to be sure it’s a legal URI, it can be removed if you want to get more performance.

The URI Schemes list is sorted, but with http(s) at the start (in case it might make it faster for common links).

Closes: https://git.pleroma.social/pleroma/pleroma/issues/127
2018-07-30 22:01:48 +02:00
Tristan Mahé bc2668bb63 Merge remote-tracking branch 'upstream/develop' into feature/filter_exif 2018-07-19 17:44:18 -07:00
Hakaba Hitoyo cc9c062b55 merge 2018-07-19 17:42:00 +09:00
lambda 41b0ecef95 Merge branch 'tests/plume' into 'develop'
Articles/Notes with a actor list outside object

See merge request pleroma/pleroma!252
2018-07-19 07:35:34 +00:00
lambda 54963a6379 Merge branch 'bugfix/activitystreams-notice-urls' into 'develop'
ostatus: return AS2 objects on /notice and /activities URLs like with /objects.

Closes #206

See merge request pleroma/pleroma!251
2018-07-19 07:31:33 +00:00
lambda 6f23fb53d3 Merge branch 'feature/fe-configuration' into 'develop'
serverside frontend configuration

See merge request pleroma/pleroma!256
2018-07-19 07:31:10 +00:00
Hakaba Hitoyo b12d17d2ce configurable timeout 2018-07-18 13:36:20 +09:00
Hakaba Hitoyo e4dd58307a better configuration 2018-07-18 09:58:59 +09:00
William Pitcock b23630076f TwitterAPI: present pleroma frontend config in API 2018-07-17 15:46:24 +00:00
William Pitcock cf219b6add config: make instance description configurable 2018-07-17 15:46:23 +00:00
Hakaba Hitoyo 5b4a21317d correct error message 2018-07-17 17:29:18 +09:00
Hakaba Hitoyo 8ff336e02a debug 2018-07-17 17:00:14 +09:00
Hakaba Hitoyo 2b7b1b3e6b add suggestionsThirdPartyEngine into /nodeinfo/2.0.json 2018-07-17 16:56:30 +09:00
Hakaba Hitoyo d76f0d87be do nothing if configuration is skipped 2018-07-17 16:45:18 +09:00
Hakaba Hitoyo df3233e7e7 improve getting host name 2018-07-17 13:20:58 +09:00
William Pitcock 99c0252314 mastodon api: support descriptions in media api, add PUT endpoint for updating metadata about a media upload 2018-07-17 03:40:47 +00:00
William Pitcock cd19d37a90 mastodon api: use object name as alt text 2018-07-17 03:40:46 +00:00
William Pitcock f10291a1d3 upload: use generic Document object type instead of Image (mastodon compatibility)
Mastodon does not use the object name as alt text when the object is an Image.
2018-07-17 03:40:45 +00:00
hakabahitoyo e7c580828c format 2018-07-15 20:36:26 +09:00
hakabahitoyo 2eeaf01627 id field 2018-07-14 14:03:30 +09:00
hakabahitoyo 127882a5d5 configurable 2018-07-14 11:41:09 +09:00
hakabahitoyo eb0afda3a7 http access to third party user recommendation 2018-07-14 10:04:37 +09:00
Tristan Mahé 5469fb9561 Merge remote-tracking branch 'upstream/develop' into feature/filter_exif 2018-07-13 11:14:37 -07:00
hakabahitoyo 3812b627ca better mock /api/v1/suggestions 2018-07-14 00:52:23 +09:00
hakabahitoyo 4a21c1b343 mock /api/v1/suggestions 2018-07-14 00:44:18 +09:00
hakabahitoyo f944f8157a /api/v1/suggestions endpoint 2018-07-14 00:21:38 +09:00
Haelwenn (lanodan) Monnier 7501481db4
[Pleroma.Web.ActivityPub.Transmogrifier] Add Person finding 2018-07-12 23:37:07 +02:00
Haelwenn (lanodan) Monnier 8472fba2a7
[Pleroma.Web.ActivityPub.Transmogrifier]: Fix actor key outside of object
The code here is copied from feature/peertube by lain.

Co-authored-by: lain <lain@soykaf.club>
2018-07-12 23:37:00 +02:00
William Pitcock 0899588e4d ostatus: return AS2 objects on /notice and /activities URLs like with /objects. 2018-07-12 17:15:47 +00:00
lambda d93789dfde Merge branch 'feature/object-normalization' into 'develop'
object normalization

See merge request pleroma/pleroma!238
2018-07-12 16:48:15 +00:00
lambda ceffb91065 Merge branch 'feature/mediaproxy-nodeinfo' into 'develop'
[Pleroma.Web.Nodeinfo.NodeinfoController]: add mediaProxy metadata

Closes #229

See merge request pleroma/pleroma!235
2018-07-12 16:47:19 +00:00
lambda b1fcfcfae1 Merge branch 'bugfix/activitypub-object-actor' into 'develop'
activitypub: more robustly handle object-to-actor associations

See merge request pleroma/pleroma!250
2018-07-12 16:46:50 +00:00
William Pitcock 590d4df77c activitypub: more robustly handle object-to-actor associations 2018-07-12 16:39:03 +00:00
William Pitcock b832df1e15 formatting 2018-07-12 16:12:54 +00:00
William Pitcock f03e57f764 twitter api: activity representer: add summary field for testsuite 2018-07-12 16:12:16 +00:00
William Pitcock 152a526237 twitter api: refactor activity html generation, add support for Articles 2018-07-12 16:11:42 +00:00
William Pitcock 3b799f22b7 twitterapi: activity view: expose message summary text 2018-07-12 16:11:36 +00:00
lambda b806aa36c8 Update nodeinfo_controller.ex 2018-07-12 06:00:55 +00:00
lambda fe4387077a Merge branch 'feature/default-scope' into 'develop'
default scope setting

See merge request pleroma/pleroma!239
2018-07-12 05:59:12 +00:00
lambda 4a922305af Merge branch 'feature/article-support' into 'develop'
article support (plume, etc)

See merge request pleroma/pleroma!240
2018-07-12 05:58:39 +00:00
lambda 14054dd582 Merge branch 'feature/auto-shortcodes' into 'develop'
Feature: automatic shortcodes for emoji

See merge request pleroma/pleroma!245
2018-07-12 05:56:29 +00:00
lambda 33b0334216 Merge branch 'bugfix/status-url-field' into 'develop'
[Pleroma.Web.MastodonAPI.StatusView]: Fill the url field for statuses

Closes #231

See merge request pleroma/pleroma!246
2018-07-12 05:55:20 +00:00
William Pitcock 8546551257 activitypub: switch to using x509 representation for public keys instead of pkcs#1 2018-07-12 03:30:22 +00:00
Haelwenn (lanodan) Monnier 4326cb9920
[Pleroma.Web.Nodeinfo.NodeinfoController]: add mediaProxy metadata
Closes: https://git.pleroma.social/pleroma/pleroma/issues/229
2018-07-12 02:06:46 +02:00
Haelwenn (lanodan) Monnier 7a351cb36f
[Pleroma.Web.MastodonAPI.StatusView]: Fill the url field for statuses
Closes: https://git.pleroma.social/pleroma/pleroma/issues/231
2018-07-12 01:57:25 +02:00
Haelwenn (lanodan) Monnier 835345754d
/web/* template: Add class system-font 2018-07-03 17:26:47 +02:00
Jorty 748fff6544 Fix auto-shortcode emoji
Emoji were broken due to `Pleroma.Formatter` not knowing about the
auto-shortcode emoji. This moves that logic from
`Pleroma.Web.TwitterAPI.UtilController` to `Pleroma.Formatter`.

Additionally, it's now possible to specify multiple shortcode globs, and
the default globs were changed to `["/emoji/custom/**/*.png"]`, since
that's in the .gitignore and the files there would have to be shortcode
emoji anyway.
2018-06-30 21:31:08 -04:00
Jorty c171f9790b Move emoji glob setting to config.exs
Also, a bit of formatting, and the glob includes an "/emoji/" prefix to
make it more intuitive to users
2018-06-30 17:58:44 -04:00
Jorty 0bfbf15b37 Allow emojis to be added automatically 2018-06-30 17:58:37 -04:00
William Pitcock 971bb4f2bd activity interpretation: formatting 2018-06-27 13:38:19 +00:00
William Pitcock 66819ea784 twitter api: use ActivityView.render_content() where appropriate instead of duplicating the logic 2018-06-27 13:38:07 +00:00
William Pitcock ea982e7503 mastodon api: add interpreter for Article activity types 2018-06-27 13:38:00 +00:00
William Pitcock 121c1f6230 twitter api: refactor activity html generation, add support for Articles 2018-06-27 13:37:53 +00:00
William Pitcock bd479606ba utils: make_create_data: add support for Article objects 2018-06-27 13:37:35 +00:00
William Pitcock c42f28b82c transmogrifier: accept Article activities 2018-06-27 13:37:26 +00:00
William Pitcock 2f14996d9a twitter api: allow setting default_scope 2018-06-27 13:15:55 +00:00
William Pitcock dcdf7b6686 twitter api: user view: show default message scope if known 2018-06-27 13:15:50 +00:00
William Pitcock 4f6de34f4f mastodon api: use info["default_scope"] if available for post scope 2018-06-27 13:15:42 +00:00
William Pitcock 7c63e70de1 activitypub: use Activity.normalize() in several places instead of using Activity.get_by_ap_id() directly. 2018-06-27 13:08:12 +00:00
William Pitcock 6f4ca7ddf7 ostatus: use Activity.normalize() instead of directly using Activity.get_by_ap_id(). 2018-06-27 13:08:05 +00:00
William Pitcock 5b240c3b18 federator: use Activity.normalize() instead of directly using Activity.get_by_ap_id(). 2018-06-27 13:07:55 +00:00
William Pitcock bc05548370 ostatus: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:45 +00:00
William Pitcock 49da04c509 common api: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:35 +00:00
William Pitcock 15d624e077 activitypub: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:29 +00:00
William Pitcock fb04fecfb4 streamer: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:23 +00:00
William Pitcock 47189531c5 user: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:17 +00:00
William Pitcock b036a19c21 activity: add normalize() to find a complete activity given either URI or partial structure 2018-06-27 13:07:12 +00:00
William Pitcock a200943240 object: add helper functions to handle various forms of a given object and return a normalized one 2018-06-27 13:06:52 +00:00
Tristan Mahé dc8ace29d1 use the correct end file 2018-06-26 15:09:45 -07:00
Tristan Mahé ca63585a32 maybe I should learn proper elixir ;D 2018-06-26 14:35:35 -07:00
Tristan Mahé d8d43f1173 do the filtering 2018-06-26 14:03:23 -07:00
Tristan Mahé c67cf8e9af format... 2018-06-26 13:49:57 -07:00
Tristan Mahé cb21bf5fc2 filter exif data #187 2018-06-26 13:45:47 -07:00
Haelwenn (lanodan) Monnier beb940a57e
[Pleroma.Web.MastodonAPI.MastodonAPIController]: Add rights to initial_state
Related to https://git.pleroma.social/pleroma/mastofe/issues/20
2018-06-26 20:48:35 +02:00
lambda fc012491a5 Merge branch 'fix/mutes.json-emptyarray' into 'develop'
Return empty array from /api/qvitter/mutes.json

See merge request pleroma/pleroma!234
2018-06-25 08:45:42 +00:00
lambda dfc96f222c Merge branch 'feature/configurable-blocks' into 'develop'
Add more configurability to how blocks work

See merge request pleroma/pleroma!203
2018-06-25 06:12:29 +00:00
squidboi ea214b8ba6
combined outgoing_blocks with statement 2018-06-24 23:05:44 -07:00
Vivian Lim 6160a1b3c0 mix format 2018-06-24 15:24:41 -07:00
Vivian Lim 1299bccc7d return unquoted empty array from /api/qvitter/mutes.json 2018-06-23 23:20:30 -07:00
Vivian Lim 6316003946 fixes- found that TwitterAPI.Controller adds .json suffix already 2018-06-23 23:05:54 -07:00
Vivian Lim f2badd4424 return empty array for api/qvitter/mutes.json queries instead of html 2018-06-23 22:21:39 -07:00
squidboi c4038ede07
fix mind-crushingly dumb syntax error 2018-06-23 14:32:00 -07:00
squidboi f4990283de
change moved attributes into normal variables 2018-06-23 14:27:07 -07:00
squidboi 4e099fcfa9
move configurable module attributes into relevant functions 2018-06-23 14:16:08 -07:00
Haelwenn (lanodan) Monnier 5a4a45b875
[Pleroma.Web.MastodonApi.MastodonApiController] Add initial_state.meta.max_toot_chars 2018-06-23 16:22:49 +02:00
Haelwenn (lanodan) Monnier a05c0ff61d
[Pleroma.Web.MastodonApi.MastodonApiController] Add /api/v2/search 2018-06-23 16:22:47 +02:00
Haelwenn (lanodan) Monnier 359093d73b
Fake 2.4.0 API 2018-06-23 16:12:57 +02:00
Haelwenn (lanodan) Monnier c45133377a
lib/pleroma/web/activity_pub/mrf/simple_policy.ex: mix format
Hnng!
2018-06-23 16:12:57 +02:00
Francis Dinh 082920044a Normalize file extension for uploaded files 2018-06-21 14:04:12 -04:00
William Pitcock 60d6038be5 mrf simple: add accept lists
accept lists supplement reject lists by requiring that any message accepted by contained
by the accept list.

in other words, this functionality can be used to implement instances similar to
awoo.space.
2018-06-19 21:28:24 +00:00
lambda 90cf75f4a7 Merge branch 'features/column_media_streaming' into 'develop'
Add streaming to media tabs of federated and local TLs

See merge request pleroma/pleroma!225
2018-06-19 09:50:05 +00:00
lambda be800d7936 Merge branch 'bugfix/block-follow-relationships' into 'develop'
fix follow relationship leaks when blocked

See merge request pleroma/pleroma!230
2018-06-19 09:42:45 +00:00
William Pitcock 056305dfa7 user: add helper function to fetch a user given only an ap_id (fix tests) 2018-06-19 08:31:06 +00:00
lambda db0731b6ac Merge branch 'feature/exclude-replies-filter' into 'develop'
activitypub: support filtering activities by whether or not they are a reply (closes #109)

Closes #109

See merge request pleroma/pleroma!226
2018-06-19 05:15:11 +00:00
William Pitcock 320ca7b11e user: when processing a block in User.block(), ensure all follow relationships are broken
this is needed for activitypub conformance

ref #213
2018-06-19 00:59:26 +00:00
William Pitcock c95941e64d activitypub transmogrifier: fix handling of contentMap. 2018-06-18 22:14:50 +00:00
William Pitcock 7e0f62acee object: add helper functions to handle various forms of a given object and return a normalized one 2018-06-18 05:27:10 +00:00
William Pitcock 6f384d35dd ostatus: we need to include the original author of a message as a mention
this is due to the use of activity.recipients which may not necessarily contain the original
author if the actors are not following each other.
2018-06-18 05:27:09 +00:00
William Pitcock 591c82620e activitypub: filter destination list for announce activities differently than normal (closes #164) 2018-06-18 04:36:25 +00:00
William Pitcock 4f589998ee activitypub: support filtering activities by whether or not they are a reply (closes #109) 2018-06-18 03:21:32 +00:00
Haelwenn (lanodan) Monnier b670d4d683
MastodonAPI: Add streaming to media tabs of federated and local TLs 2018-06-17 16:17:15 +02:00
Henry Jameson 0b1ca6a584 Token-generating task 2018-06-17 14:30:07 +03:00
squidboi 2e294ee44a Merge branch 'develop' into feature/configurable-blocks 2018-06-16 15:37:16 -07:00
lambda 1ea4a18ad8 Merge branch 'feature/configure-mrf-rejectnonpublic' into 'develop'
Configs for mrf_rejectnonpublic

See merge request pleroma/pleroma!205
2018-06-16 10:39:36 +00:00
eal a938d07df1 Merge branch 'bugfix/mastofe_thread_render' into 'develop'
lib/pleroma/web/mastodon_api/views/status_view.ex: Fix status.json so it renders threads

See merge request pleroma/pleroma!223
2018-06-15 20:43:30 +00:00
Haelwenn (lanodan) Monnier 72c2915ecd
Pleroma.Web.MastodonAPI.StatusView: Fix status.json so it renders threads 2018-06-15 22:14:17 +02:00
lain 00d7d109ef Fix typo 2018-06-15 22:01:17 +02:00
lambda de20c8d620 Merge branch 'fix/missing-file-extension' into 'develop'
Add missing file extension if file does not have one

See merge request pleroma/pleroma!222
2018-06-14 19:11:30 +00:00
Francis Dinh 0a95b5594b Add missing file extension if file does not have one 2018-06-14 12:16:34 -04:00
eal 12c7a023de upload.ex: add MPEG Layer 3 file header. 2018-06-14 16:41:08 +03:00
lambda 2723fb5150 Merge branch 'bugfix/mrf-orphaning' into 'develop'
activitypub transmogrifier: handle activity lookup failure

Closes #156

See merge request pleroma/pleroma!216
2018-06-14 07:20:54 +00:00
lambda 8c7fdcb31b Merge branch 'feature/twitterapi-unrepeat' into 'develop'
Add TwitterAPI unretweet endpoint and cleanup AP.unannounce

See merge request pleroma/pleroma!218
2018-06-14 07:19:36 +00:00
lambda 2c303b3302 Merge branch 'bugfix/oauth2-param-name' into 'develop'
oauth: support either name or username parameter with grant_type=password

Closes #180

See merge request pleroma/pleroma!219
2018-06-14 07:14:18 +00:00
lambda 280ac243aa Merge branch 'bugfix/oauth-password-with-email' into 'develop'
oauth: fix password-based login when username is email address

Closes #199

See merge request pleroma/pleroma!220
2018-06-14 07:13:05 +00:00
William Pitcock 5442466569 oauth: fix password-based login when username is email address
closes #199
2018-06-14 02:32:30 +00:00
William Pitcock 4894b88b1b oauth: support either name or username parameter with grant_type=password
closes #180
2018-06-14 02:07:43 +00:00
Francis Dinh 1555c66650 Add unretweet TwAPI endpoint and cleanup AP.unannounce 2018-06-13 21:33:36 -04:00
William Pitcock 401e8af943 activitypub transmogrifier: handle activity lookup failure
with the introduction of MRF, it is possible that an activity may be orphaned from it's parent, if
an activity in the chain was rejected by the active MRF policies.  accordingly, handle this in the
same way as any other orphaned activity.

closes #156
2018-06-13 22:19:38 +00:00
William Pitcock b5bc08fac3 streamer: don't relay boosts of messages which would otherwise be blocked 2018-06-13 21:59:56 +00:00
lambda ea42ba603f Merge branch 'feature/webfinger-rfc7033-compliant' into 'develop'
webfinger: send JRD by default instead of XRD

See merge request pleroma/pleroma!211
2018-06-13 07:18:03 +00:00
William Pitcock 3d402a9e20 webfinger: send JRD by default instead of XRD
JRD being the default representation for WebFinger responses was standardized 5 years ago in
RFC 7033.
2018-06-13 07:03:14 +00:00
William Pitcock 59f95a7095 webfinger: refactor webfinger() functions
- remove code duplication
- move user lookup to parent with statement
- tighten both user lookup by nickname and activitypub URI with a type constraint
2018-06-13 06:42:27 +00:00
eal 3326205f95 set_moderator: ensureall applications are started. 2018-06-12 15:42:40 +03:00
Henry Jameson 9c1cf1befb formatting 2018-06-12 15:01:40 +03:00
Henry Jameson f42ffbe9a8 Initial invites support + tests. 2018-06-12 14:55:16 +03:00
lambda 3f42806b1b Merge branch 'develop' into 'develop'
Dedupe uploads

See merge request pleroma/pleroma!115
2018-06-12 08:26:26 +00:00
lambda f34232da86 Update sample_config.eex 2018-06-12 07:23:45 +00:00
lambda 564c73ab24 Merge branch 'feature/list-streaming' into 'develop'
MastoAPI: Add streaming for lists.

See merge request pleroma/pleroma!183
2018-06-12 07:19:45 +00:00
William Pitcock 9810471237 router: remove stub /domain_blocks entry 2018-06-11 23:40:19 +00:00
William Pitcock f8e0942745 twitter api: add approve/deny endpoints 2018-06-11 22:15:53 +00:00
William Pitcock e08cf21e5b twitter api: add friend requests list api 2018-06-11 22:15:53 +00:00
William Pitcock ba8dab7542 twitterapi: user view: return if an account is locked or not 2018-06-11 22:15:53 +00:00
William Pitcock d96377f359 activitypub transmogrifier: accept/reject outgoing: we might send the actual object instead of the URI in some cases, handle it 2018-06-11 22:15:53 +00:00
William Pitcock 5eed1ea181 run mix format 2018-06-11 22:15:53 +00:00
William Pitcock 993312cdb3 twitterapi: add profile setting for locked/unlocked accounts 2018-06-11 22:15:53 +00:00
William Pitcock 4084889a2d activitypub transmogrifier: remove debug code 2018-06-11 22:15:53 +00:00
William Pitcock 1452b2823f user: add a workaround for situations where Pleroma may believe a followee is followed
this was caused by lack of Undo follows in the early days, and can likely be eventually removed
2018-06-11 22:15:53 +00:00
William Pitcock 76f80ba8c2 activitypub: when unfollowing, update the follow activity's disposition to 'cancelled' so it cannot be reused 2018-06-11 22:15:53 +00:00
William Pitcock a2c4a5a75b mastodon api: allow setting an account locked or not 2018-06-11 22:15:53 +00:00
William Pitcock ad7188fe92 user: use Enum.uniq on the follow request query 2018-06-11 22:15:53 +00:00
William Pitcock f328de8eb7 activitypub transmogrifier: send Rejects in the format Mastodon wants 2018-06-11 22:15:53 +00:00
William Pitcock 876ad6aa38 activitypub transmogrifier: send @context on accept activities 2018-06-11 22:15:53 +00:00
William Pitcock 760eb72a38 add a bunch of stuff 2018-06-11 22:15:53 +00:00
William Pitcock 6f89d2d583 stash api controller 2018-06-11 22:15:53 +00:00
William Pitcock 9c88933422 implement tracking of follow requests 2018-06-11 22:15:53 +00:00
William Pitcock 6041380774 activitypub transmogrifier: learn locked state in Update messages 2018-06-11 22:15:27 +00:00
William Pitcock e5206752e1 activitypub: only send accept back automatically if the account is not locked 2018-06-11 22:15:27 +00:00
William Pitcock 3208611bfc mix: add task for setting an account as locked or not 2018-06-11 22:15:27 +00:00
eal cdf5a668f2 Merge branch 'fix/mix-task-caching' into 'develop'
make_moderator.ex: set cache on update

See merge request pleroma/pleroma!206
2018-06-11 19:59:30 +00:00
eal 18837c2fed make_moderator.ex: set cache on update 2018-06-11 22:53:38 +03:00
lambda 7f79b467b1 Merge branch 'feature/domain-blocks' into 'develop'
Domain blocks

See merge request pleroma/pleroma!190
2018-06-11 11:19:45 +00:00
squidboi 07f0cfa53f
add allow_followersonly and allow_direct options for configuring mrf_rejectnonpublic 2018-06-10 16:40:51 -07:00
squidboi 4f9ecfc77a formatting 2018-06-09 04:28:11 +00:00
squidboi 8903f1ad4d more fixes 2018-06-08 19:07:14 -07:00
squidboi 16d896f526 fixes 2018-06-08 19:01:14 -07:00
squidboi b3580b6971 add option to not deny follow if blocked (fixed) 2018-06-08 18:29:41 -07:00
squidboi 2847fc8f90 add option to not unfollow on block, and option to not federate outgoing blocks 2018-06-08 17:12:16 -07:00
lambda 45a935f0bd Merge branch 'users' into 'develop'
Fix users lookup/return type

See merge request pleroma/pleroma!201
2018-06-08 11:10:10 +00:00
lambda bb639a362e Merge branch 'feature/rejectnonpublic' into 'develop'
Add MRF to drop all posts with "followers-only" or "direct" privacy settings

See merge request pleroma/pleroma!202
2018-06-08 11:08:50 +00:00
Rachel H fa0c2727d8 Fix users lookup/return type
* Allow viewing user in frontend by id on pageload
2018-06-07 23:18:45 -07:00
lambda 4a16ade2ee Merge branch 'mastopost' into 'develop'
Allow posting images without text in mastofe

See merge request pleroma/pleroma!194
2018-06-08 06:02:21 +00:00
squidboi e2c4013c88
s/get_by_ap_id/get_cached_by_ap_id/ 2018-06-07 22:33:50 -07:00
squidboi 6e7f91bf8f
final format 2018-06-07 22:14:39 -07:00
squidboi 82225dfc8d
even more formatting 2018-06-07 22:10:11 -07:00
lambda c86823f724 Merge branch 'bugfix/locked-account-regression' into 'develop'
security fix: locked account regression

See merge request pleroma/pleroma!200
2018-06-08 05:10:08 +00:00
squidboi 990cde7439
more formatting 2018-06-07 22:03:24 -07:00
squidboi 5b9e1f228a
formatting 2018-06-07 21:55:58 -07:00
squidboi f69d38e455
add mrf for dropping follower-only and direct posts 2018-06-07 21:00:57 -07:00
William Pitcock 1e9dd6fbc2 user: fix maybe_direct_follow() after user_info() refactoring broke it slightly 2018-06-08 02:52:36 +00:00
William Pitcock 47c7e259c4 activitypub transmogrifier: fix locked account state from being clobbered 2018-06-08 02:52:29 +00:00
William Pitcock a003bdc30a activitypub transmogrifier: learn locked state in Update messages 2018-06-08 02:52:24 +00:00
lambda 839cb7b424 Merge branch 'develop' into 'mastopost'
# Conflicts:
#   .gitignore
2018-06-07 16:29:33 +00:00
lambda 595ca3bb3a Merge branch 'feature/quarantine' into 'develop'
add the ability to 'quarantine' an activitypub peer, causing them to be treated as an OStatus peer.

See merge request pleroma/pleroma!199
2018-06-07 14:44:08 +00:00
William Pitcock 09604182d0 add the ability to 'quarantine' an activitypub peer, causing them to be treated as an OStatus peer. 2018-06-07 14:38:09 +00:00
Rachel H 1525a0404b Fix follow errors 2018-06-07 00:39:24 -07:00
Sir_Boops 3f0440ac3c
Dedupe uploads 2018-06-06 13:25:44 -06:00
Rachel H b4292295d7 Allow posting images without text in mastofe 2018-06-06 11:29:49 -07:00
eal 29c9c8d93b Extract host from ap_id, add index 2018-06-06 21:13:40 +03:00
lambda 0a0c6bf394 Merge branch 'bugfix/webfinger-xml-crash' into 'develop'
webfinger robustness improvements

See merge request pleroma/pleroma!195
2018-06-06 16:44:44 +00:00
William Pitcock 1abf0f3b3e webfinger: use https as default fallback instead of http
realistically, all instances need to be on https anyway to properly federate with all
software
2018-06-06 16:27:14 +00:00
William Pitcock aaa81d3540 XML: handle erlang errors too 2018-06-06 16:27:13 +00:00
lambda b5d8213e70 Merge branch 'fix/oauth-http-basic' into 'develop'
Make OAuth token endpoint work with HTTP Basic auth

See merge request pleroma/pleroma!191
2018-06-06 08:27:08 +00:00
D Anzorge 3607dc4558 Make token exchange return errors with 400 as status code 2018-06-06 03:14:50 +02:00
eal f9719b064c Merge branch 'fix/emoji-picker' into 'develop'
set visible_in_picker to true in custom_emojis

Closes #177 and mastofe#16

See merge request pleroma/pleroma!188
2018-06-05 21:18:25 +00:00
D Anzorge 73904e8f78 Make OAuth token endpoint work with HTTP Basic auth
client_id/client_secret can now be supplied in an Authorization header
2018-06-04 00:59:00 +02:00
eal 9075b6d25b ActivityPub.ex: filter domain blocked activities. 2018-06-03 23:33:33 +03:00
eal 4856962434 MastoAPI: add domain blocking. 2018-06-03 22:21:23 +03:00
lain 8073af6e10 Better error handling for OstatusController. 2018-06-03 21:04:44 +02:00
eal 87566b6e2f user.ex: add domain blocks. 2018-06-03 22:01:37 +03:00
lain 06439f64d0 Better error handling for ActivityPubController 2018-06-03 19:58:59 +02:00
lain 4856ba596f Better error handling for MastodonApiController. 2018-06-03 19:28:11 +02:00
lain 0f70e83e8c Better error handling in TwitterApiController. 2018-06-03 19:11:22 +02:00
Haelwenn (lanodan) Monnier b143694b98
lib/pleroma/web/mastodon_api/mastodon_api_controller.ex: set visible_in_picker to true in custom_emojis
Fixes: https://github.com/ilianaw/emojos.in/issues/4
Closes: https://git.pleroma.social/pleroma/pleroma/issues/177
Closes: https://git.pleroma.social/pleroma/mastofe/issues/16
2018-06-03 18:41:18 +02:00
eal dca1d6d162 Merge branch 'fix/user-timeline-reading-user' into 'develop'
MastoAPI user timelines: render statuses for the logged in user.

See merge request pleroma/pleroma!187
2018-06-01 09:35:29 +00:00
eal 8c609ee3f9 MastoAPI user timelines: render statuses for the logged in user. 2018-06-01 12:30:11 +03:00
lambda 98b8f08783 Merge branch 'fix/twitterapi-incorrect-follows-you' into 'develop'
TwitterAPI: fix "Follows you" being shown for the wrong user.

Closes pleroma-fe#89

See merge request pleroma/pleroma!185
2018-06-01 08:51:04 +00:00
eal 935e544e19 TwitterAPI: fix "Follows you" being shown for the wrong user. 2018-05-31 15:27:42 +03:00
lain 349400c06a Fix url guessing attacks. 2018-05-30 20:00:27 +02:00
eal 5d3fdbc082 MastoAPI: Add streaming for lists. 2018-05-30 16:48:59 +03:00
eal 7cb2e2971e MastoAPI: fix dm_timeline getting non-create activities. 2018-05-30 15:02:22 +03:00
eal 35cb8969c4 MastoAPI: Fix link headers with restrictive params. 2018-05-29 13:31:36 +03:00
lain 461f201caa Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into develop 2018-05-28 12:39:49 +02:00
lain 3ece4a3ebc Only return certain activities in TwitterAPI mentions. 2018-05-28 12:38:48 +02:00
William Pitcock d7eb2e1b65 run mix format 2018-05-27 13:06:38 +00:00
William Pitcock a8df7fc690 formatter: use class='mention' on links to user profiles
helps mastodon frontend and apps have better context:
https://mastodon.social/users/Gargron/statuses/100101267352899379
2018-05-27 12:56:24 +00:00
lain a9e36e5a64 Fix user topic streaming. 2018-05-26 21:06:46 +02:00
lain 841ee8e3e4 Simplify DM query.
Should also use indexes better.
2018-05-26 16:25:32 +02:00
lain 4b3ec53514 Merge branch 'develop' into csaurus/pleroma-feature/mstdn-direct-api 2018-05-26 16:00:59 +02:00
lain 6138b29783 There are no symbols in JSON. 2018-05-26 15:20:21 +02:00
lain 745072b2cc Merge branch 'kaniini/pleroma-feature/activitypub-accept-reject-conformance' into develop 2018-05-26 15:15:52 +02:00
lain 0a6c897c94 Formatting. 2018-05-26 15:11:50 +02:00
lain bfce29866f Make Mastodon follow hack more explicit. 2018-05-26 15:07:21 +02:00
lain 3839a11ef5 Don't treat remote accepts/rejects as local.
Also, use specialized functions to get safe data.
2018-05-26 14:07:46 +02:00
lain dd9bb37893 Rename id helper method. 2018-05-26 13:57:11 +02:00
William Pitcock 7e873756e7 activitypub transmogrifier: use fetch_latest_follow to verify a follow object exists 2018-05-26 11:20:52 +00:00
William Pitcock 1c926c7b60 activitypub: allow mastodon S2S block extension support to be disabled 2018-05-26 08:30:41 +00:00
Hakaba Hitoyo e90b734f1c debug 2018-05-26 14:10:12 +09:00
Hakaba Hitoyo 9c7da2ef48 output repeats at ActivityPub outbox 2018-05-26 14:02:57 +09:00
William Pitcock 7cf3cf77cf activitypub transmogrifier: cleanups and tests for incoming accepts/rejects 2018-05-25 12:53:12 +00:00
William Pitcock f35e6bf75b activitypub transmogrifier: clean up accept/reject handling a bit 2018-05-25 09:40:11 +00:00
William Pitcock e80d91c64a introduce User.maybe_direct_follow() and use it where we used to call User.follow() 2018-05-25 09:40:10 +00:00
William Pitcock c89b90222c twitter api: also remove explicit User.follow here 2018-05-25 09:40:06 +00:00
William Pitcock 62c95e8d4d run mix format 2018-05-25 09:39:46 +00:00
lambda 5d6d86bf00 Merge branch 'feature/blocks-deny-refollow' into 'develop'
activitypub conformance: deny refollow for blocks

See merge request pleroma/pleroma!170
2018-05-25 07:15:01 +00:00
William Pitcock 502ba33d01 activitypub: fix up accept/reject semantics for following
fixes #175
2018-05-25 06:14:18 +00:00
William Pitcock c0ca9f82b9 mastodon api: properly track if an account is locked or not 2018-05-25 06:14:09 +00:00
William Pitcock 47dc52a758 activitypub utils: optimize block and follow activity lookup
multi-field @> comparison is very expensive, so only use @> for the field where it matters
this makes the query take only a few usec to execute verses many msec on a busy instance
2018-05-25 05:23:49 +00:00
William Pitcock 1d88abf2d4 user: do not allow refollowing somebody who has blocked a user 2018-05-25 03:18:35 +00:00
lambda f3a71f2986 Merge branch 'feature/lists' into 'develop'
Mastodon List API

See merge request pleroma/pleroma!138
2018-05-24 20:22:43 +00:00
lambda c2dcd767cf Merge branch 'feature/incoming-remote-unfollow' into 'develop'
Add support for incoming remote unfollows and blocks/unblocks

See merge request pleroma/pleroma!158
2018-05-24 19:52:24 +00:00
Francis Dinh 1197ec10a8 Rewrite block fetch query 2018-05-24 13:26:59 -04:00
lambda c41012053a Merge branch 'feature/change-password' into 'develop'
Feature/change password

See merge request pleroma/pleroma!166
2018-05-24 17:16:37 +00:00
eal 3dbd9809d4 MastoAPI: add lists. 2018-05-24 15:34:39 +03:00
lain 1cd6194dee More efficient queries. 2018-05-24 12:44:26 +02:00
eal a8369db4f2 MastoAPI: add lists. 2018-05-24 13:18:39 +03:00
lain 0b5bc62b33 Don't save double tags in AP objects we create
This crashed Mastodon workers.
2018-05-23 17:25:24 +02:00
lambda 06c97f211f Merge branch 'feature/deps-migration' into 'develop'
Migrate to comeonin 4 and Cachex 3

See merge request pleroma/pleroma!162
2018-05-23 09:03:11 +00:00
Francis Dinh 72b93d13f8 Hook up block/unblock to TwitterAPI 2018-05-22 05:41:17 -04:00
Francis Dinh 55f9aefd08 Hook unfollow into TwitterAPI 2018-05-22 04:49:30 -04:00
Francis Dinh b2c6ae7d82 Hook up unfollow and (un)block to MastoAPI + tests 2018-05-22 04:27:40 -04:00
csaurus 4fd9df100f Merge branch 'develop' into feature/mstdn-direct-api 2018-05-21 20:19:37 -04:00
Syldexia d0690622cd Added endpoint for changing passwords 2018-05-21 23:06:03 +01:00
lambda b4064dfe30 Merge branch 'feature/clarify-http-sig-error' into 'develop'
clarify HTTP signature error in logs

See merge request pleroma/pleroma!165
2018-05-21 21:20:41 +00:00
William Pitcock 9a2d097ed8 activitypub controller: note that the HTTP Host header must be forwarded for http signature validation to work 2018-05-21 19:22:30 +00:00
Francis Dinh 46427cb90f Pass correct number of arguments to unfollow 2018-05-21 11:57:15 -04:00
William Pitcock 75cfd9d34d webfinger: fix finding the XRD uri for statusnet instances 2018-05-21 12:41:31 +00:00
lain d269c69a0b Actually fix missing alias. 2018-05-21 12:32:29 +02:00
lain bf64208b52 Add missing alias. 2018-05-21 12:09:03 +02:00
Francis Dinh d045b96f95 Add tests for incoming unfollow over OStatus 2018-05-21 05:11:13 -04:00
Francis Dinh cc5373b846 Fix unblock handling 2018-05-21 05:00:58 -04:00
Francis Dinh f2d6c3a512 Handle unfollows from OStatus 2018-05-21 04:36:20 -04:00
Francis Dinh 2573332214 Add undo block handler 2018-05-21 04:35:43 -04:00
Francis Dinh c8a16f334d Format 2018-05-20 21:02:06 -04:00
Francis Dinh 89c5de9096 Fix unfollows 2018-05-20 21:01:14 -04:00
Francis Dinh 1afd6d37bd Merge remote-tracking branch 'upstream/develop' into feature/incoming-remote-unfollow
Fixed some conflicts in transmogrifier.ex
2018-05-20 19:17:15 -04:00
Thog e55c6f311b
Migrate to comeonin 4 and Cachex 3
Also fix some warning in the code and add a missing alias
2018-05-20 20:08:40 +02:00
lain dca26f3655 Fix specs. 2018-05-20 19:22:26 +02:00
lain ff007af0c2 Return visilility in twitter api, too. 2018-05-20 18:01:24 +02:00
lain 434601a5c3 Return private / direct posts on user timelines, too. 2018-05-20 16:15:18 +02:00
lambda 8b0c222b43 Merge branch 'feature/account-deletion' into 'develop'
Feature/account deletion

Closes #115

See merge request pleroma/pleroma!157
2018-05-20 10:57:19 +00:00
Francis Dinh a9141d88aa Pass user instead of their ap_id to User.block 2018-05-19 22:02:13 -04:00
Francis Dinh 3b706ea493 Remove handler for incoming undos with object references 2018-05-19 21:34:30 -04:00
Francis Dinh 1e43de0f86 Formatting and add tests for blocks/unblocks 2018-05-19 21:23:52 -04:00
Francis Dinh da9744eb84 Use correct variable names in unfollow 2018-05-19 20:57:37 -04:00
Thog 6f39ecc41b
Support Undo like activities (Fix #139) 2018-05-19 22:14:15 +02:00
Syldexia d1366f8d46 Modified deleting an account to run as a task 2018-05-19 13:35:49 +01:00
lambda 7831b38705 Merge branch 'feature/webfinger-mime-ld-json' into 'develop'
webfinger: handle application/ld+json links

See merge request pleroma/pleroma!159
2018-05-19 09:31:08 +00:00
lambda ad563669c8 Merge branch 'feature/remote-user-deactivation' into 'develop'
remote user deactivation

See merge request pleroma/pleroma!154
2018-05-19 09:30:09 +00:00
lain df95118c81 Fix linking problem. 2018-05-19 11:27:14 +02:00
William Pitcock 725b05d04a run mix format 2018-05-19 08:48:15 +00:00
William Pitcock 6e8de2faae run mix format 2018-05-19 08:37:04 +00:00
William Pitcock 2051530868 activitypub transmogrifier: handle hubzilla AP actor quirks 2018-05-19 03:28:29 -05:00
William Pitcock 4d2c6707c2 activitypub: normalize the actor to ensure we have its URI 2018-05-19 03:28:28 -05:00
William Pitcock 1a250d65af webfinger: only do ld+json on modern json webfinger 2018-05-19 01:28:19 -05:00
William Pitcock d1f6ecf607 webfinger: interpret application/ld+json links as an alternate to application/activity+json 2018-05-19 01:28:12 -05:00
William Pitcock cce5a9cb1c webfinger: expose the application/ld+json link alongside the older application/activity+json link 2018-05-19 01:28:03 -05:00
William Pitcock 13d4b6d2b5 remote user deactivation: fix test failures 2018-05-19 01:26:13 -05:00
Francis Dinh 0ec1abb3b6 Add federated blocks 2018-05-18 18:09:56 -04:00
Francis Dinh 6604bea9d0 actually rvert those changes 2018-05-17 23:56:47 -04:00
Francis Dinh 8d11bae0d5 Revert "Undo formatting in user.ex"
This reverts commit e6dc15b96c.
2018-05-17 23:55:00 -04:00
Francis Dinh e6dc15b96c Undo formatting in user.ex 2018-05-17 23:53:34 -04:00
Francis Dinh d8c842a771 Add support for incoming remote unfollows 2018-05-17 22:15:57 -04:00
lain 1d4bbec6b3 Fix User search.
Now uses a trigram based search. This is a lot faster and gives better
results. Closes #185.
2018-05-16 17:55:20 +02:00
csaurus 4dfb40a546 Handle cases where a to/cc field is absent on a status 2018-05-14 21:54:25 -04:00
William Pitcock a6a6915aaf add mix task for deactivating a user by nickname 2018-05-13 19:05:03 -05:00
William Pitcock 9390492138 ActivityPub create: discard activities from deactivated users 2018-05-13 19:05:02 -05:00
csaurus 2ce48c1a42 Formatting 2018-05-13 15:36:41 -04:00
csaurus 9aabff4883 Fix tests. 2018-05-13 15:33:59 -04:00
Syldexia 98b36d359a Fixed formatting and test 2018-05-13 15:43:42 +01:00
Syldexia 5bfb7b4ce6 Moved account deletion stuff to somewhere that hopefully makes more sense 2018-05-13 14:36:02 +01:00
Syldexia a16117225f Added endpoint for user account deletion 2018-05-13 14:35:48 +01:00
lain c7a85de35c Revert "Remove 'unlisted' handling for now."
This reverts commit 1027d1f696.
2018-05-13 12:38:13 +02:00
lain 1027d1f696 Remove 'unlisted' handling for now.
It's just too slow (over 1 second on small systems, haven't looked at
the queries in detail yet). We'll need some other way to handle it.
2018-05-13 12:07:11 +02:00
lain a5c9dd0a2a Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into develop 2018-05-13 11:59:35 +02:00
lain 3c3933e40b Unlisted fetching: Reverse logic
Generates a faster query.
2018-05-13 11:58:03 +02:00
lambda aeff2d6474 Merge branch 'feature/unrepeats' into 'develop'
Add unrepeats

Closes #69

See merge request pleroma/pleroma!113
2018-05-13 09:32:29 +00:00
lain ec531ca281 Add test. 2018-05-13 11:18:48 +02:00
lain 29376fcc13 Format. 2018-05-13 10:56:44 +02:00
lain 76722ea9c8 Merge branch 'develop' into kaniini/pleroma-bugfix/unlisted-statuses 2018-05-13 10:56:11 +02:00
lambda 4ad5e72012 Merge branch 'feature/chain-policies' into 'develop'
chain policies

See merge request pleroma/pleroma!150
2018-05-13 08:24:18 +00:00
Francis Dinh 54ccbd8479 Use original status id instead of announce id 2018-05-13 03:42:31 -04:00
csaurus c8d418acdd api/v1/timelines/direct implementation 2018-05-12 21:50:59 -04:00
csaurus 392bd9ef56 Stream function to handle direct messages. 2018-05-12 17:40:59 -04:00
csaurus c60a5405db Detect and try to stream incoming "direct" messages 2018-05-12 17:40:59 -04:00
Francis Dinh 4d88747561 Revert "Log error when handling unrepeats"
This reverts commit c17c55e989.
2018-05-11 15:34:46 -04:00
Francis Dinh c17c55e989 Log error when handling unrepeats 2018-05-11 15:29:19 -04:00
Francis Dinh 271fb5ccb1 Probably better way of handling non-follow undos in ostatus 2018-05-11 11:59:53 -04:00
Francis Dinh 4151cbe6b2 Revert "Do not send non-follow undos over ostatus for now"
This reverts commit 07fdc07238.
2018-05-11 11:53:28 -04:00
Francis Dinh 0b527b5528 Revert "Use [] instead of nil"
This reverts commit 42268b0981.
2018-05-11 11:53:06 -04:00
Pierrick Brun 89603eda9e do not create notification for yourself 2018-05-11 11:31:17 +02:00
Francis Dinh 42268b0981 Use [] instead of nil 2018-05-11 01:48:56 -04:00
Francis Dinh 07fdc07238 Do not send non-follow undos over ostatus for now 2018-05-11 01:45:10 -04:00
href c220a6db43
format & made get_policies/1 private 2018-05-10 18:51:58 +02:00
href e9e6f37bda
Chain policies
- The `:pleroma, :instance, :rewrite_policy` can now be either a policy
or a list of policies
- Made a behaviour for MRF policies
2018-05-10 18:41:06 +02:00
Francis Dinh 900c735467 Match proper number of values from unannounce 2018-05-09 00:04:14 -04:00
Francis Dinh 54f6628590 Change argument order and call correct # of args 2018-05-08 23:59:36 -04:00
Francis Dinh e55f69a676 Handle Undo activites containing an Announce 2018-05-08 23:50:19 -04:00
Francis Dinh 4d5ec883b7 Federate correct activity 2018-05-08 21:52:21 -04:00
lain ffe028cd73 More warning fixes. 2018-05-07 18:11:37 +02:00
lambda 6c2903d9a1 Merge branch 'feld-warnings' into 'develop'
Clean up warnings

See merge request pleroma/pleroma!144
2018-05-06 18:42:31 +00:00
eal bfad57c7c9 Get rid of unsafe variables. 2018-05-06 09:58:59 +03:00
lain 9810153aeb Streamer: Don't send out stream events for blocked users. 2018-05-05 13:40:47 +02:00
lain 96add86b50 Unify wss uri generation. 2018-05-05 13:40:31 +02:00
lain c464355d1a Idempotency: Use special cache, keep for 6 hours. 2018-05-05 11:15:57 +02:00
Mark Felder 7a884d70d8 Group def renders here as well 2018-05-04 22:31:46 +00:00
Mark Felder 31ea9cbcd8 Group def renders together to fix warning 2018-05-04 22:28:13 +00:00
Mark Felder 14c0c6d16b Fix formatting 2018-05-04 22:03:14 +00:00
Mark Felder 2a402fb395 Group response declarations together 2018-05-04 21:59:21 +00:00
Mark Felder a24eed0f57 That last change was stupid. Multiline comments in Elixir don't really exist.
Instead we'll just pad with # intstead of playing stupid games with the compiler.
2018-05-04 21:53:52 +00:00
Mark Felder 79d41aa12e Dirty hack to remove the warning
warning: code block contains unused literal "internal -> Mastodon\n" (remove the literal or assign it to _ to avoid warnings)
  lib/pleroma/web/activity_pub/transmogrifier.ex
2018-05-04 21:48:30 +00:00
Mark Felder aaacebd906 Fix unused variables, imports, and aliases 2018-05-04 21:42:20 +00:00
Mark Felder 42f1a098aa Fix build. Too eager with the fixing of unused variables.
== Compilation error in file lib/pleroma/web/activity_pub/views/user_view.ex ==
** (CompileError) lib/pleroma/web/activity_pub/views/user_view.ex:54: undefined function _total/0
    (stdlib) lists.erl:1338: :lists.foreach/2
    (stdlib) erl_eval.erl:670: :erl_eval.do_apply/6
2018-05-04 21:26:33 +00:00
Mark Felder 636f0fa402 Clean up unused aliases and imports 2018-05-04 21:25:31 +00:00
Mark Felder 943820ae29 More unused variables 2018-05-04 21:16:02 +00:00
Mark Felder ab4aa5720a Fix a bunch of unused variable warnings 2018-05-04 20:59:01 +00:00
lambda 11a1241d41 Merge branch 'feature/nodeinfo' into 'develop'
Implements the nodeinfo endpoints

See merge request pleroma/pleroma!140
2018-05-04 19:17:19 +00:00
lain 90c4bed0af Don't expire idempotency cache for five minutes. 2018-05-04 21:15:39 +02:00
lain fcd3eca167 MastodonAPI: Support idempotency key. 2018-05-04 20:30:29 +02:00
Dashie c3f9e24c70
Use a variable for stats to avoid double call 2018-05-03 15:31:39 +02:00
Dashie 724f096ac7
Add metadata.nodeName 2018-05-03 10:52:20 +02:00
Dashie 804497542d
Return the right content-type for the schema call 2018-05-03 10:50:02 +02:00
Dashie e448734952
Explicit error message 2018-05-02 22:45:20 +02:00
Dashie fd0bf3aa71
Simplify version and fix typo 2018-05-02 22:44:13 +02:00
Dashie b8789cc8b6
Add localPosts count, also set to 0 if null 2018-05-02 22:36:19 +02:00
Dashie abeb009acc
Change path of nodeinfo to use .json format 2018-05-02 22:16:19 +02:00
Dashie 65168393d8
Format files 2018-05-02 21:43:12 +02:00
Dashie 67dadd954e
Add first try at nodeinfo 2018-05-02 21:31:42 +02:00
lain bc215f5684 Fix format. 2018-04-29 11:28:26 +02:00
lambda b7584edcea Merge branch 'patch-bio' into 'develop'
replace newlines in profiles with <br>

See merge request pleroma/pleroma!136
2018-04-29 09:26:47 +00:00
William Pitcock a3d1d4894f ActivityPub core: fix handling of unlisted statuses by leveraging a similar strategy as for blocks 2018-04-28 22:32:46 -05:00
lain 4d55d7c95e Insert object after being rewritten. 2018-04-28 16:10:24 +02:00
lambda a7a40bb8f1 Merge branch 'fix/blocked-user-boosts' into 'develop'
ActivityPub.ex: do not return boosted statuses from blocked users.

See merge request pleroma/pleroma!111
2018-04-28 13:49:12 +00:00
Wim Vanderbauwhede 634c0c52a1 Merge remote-tracking branch 'upstream/develop' into patch-bio 2018-04-28 11:59:01 +01:00
lambda 39c80a3667 Merge branch 'bugfix/mrf-simple-media-stripping' into 'develop'
ActivityPub MRF SimplePolicy: fix media stripping

See merge request pleroma/pleroma!133
2018-04-27 05:49:12 +00:00
William Pitcock 90bbd94614 ActivityPub MRF SimplePolicy: fix media stripping 2018-04-25 16:28:53 -05:00
eal 845bd56c9c Merge branch 'patch-1' into 'develop'
Fix typo in MastoFE login page.

See merge request pleroma/pleroma!132
2018-04-25 14:35:44 +00:00
lain a7eb148d61 Optionally deactivate public timelines. 2018-04-25 16:11:07 +02:00
lain 279b1d19f0 Align local bio limits to remote limit. 2018-04-25 15:41:59 +02:00
Francis Dinh 2d775bf1be Merge branch 'feature/unrepeats' of git.pleroma.social:normandy/pleroma into feature/unrepeats 2018-04-25 01:58:50 -04:00
Francis Dinh 9e0dd21ed6 Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into feature/unrepeats 2018-04-25 00:46:28 -04:00
Francis Dinh 0df1a4efc8 Fix comment grammar 2018-04-25 00:46:06 -04:00
Normandy 715c90e54f Fix typo in MastoFE login page.
see https://git.pleroma.social/pleroma/mastofe/issues/13
2018-04-24 21:58:45 +00:00
lain c78e7d8b11 Fix formatting. 2018-04-24 21:25:31 +02:00
lambda 7a52c4549c Merge branch 'feature/message-rewrite-facility' into 'develop'
message rewrite facility

See merge request pleroma/pleroma!112
2018-04-24 17:21:28 +00:00
Wim Vanderbauwhede 7517155544 Changed to support \r\n and \n 2018-04-24 13:28:55 +01:00
Wim Vanderbauwhede 52ee91efce Patch to replace newlines with <br> tags in bio 2018-04-24 13:20:17 +01:00
Dashie afe892ddac
Correct syntax with mix format 2018-04-24 14:12:23 +02:00
Dashie 9972678a68
Add User.decrease_note_count and call it from ActivityPub.delete 2018-04-24 11:34:18 +02:00
lambda 62a2287bba Merge branch 'favicon_tag' into 'develop'
Fix endpoint for favicon

See merge request pleroma/pleroma!84
2018-04-24 05:54:28 +00:00
Francis Dinh 8c0806539c Embed announce activity data instead of linking to it 2018-04-22 21:28:51 -04:00
Francis Dinh b1742eca42 Revert "Rename make_unannounce_data helper to make_undo_data"
This reverts commit c649ca8958.
2018-04-22 19:42:28 -04:00
lain 0574df273c Small cleanup. 2018-04-22 10:01:10 +02:00
lain 114ca9e069 Merge branch 'develop' into fix/note-count-not-updating 2018-04-22 09:56:24 +02:00
Francis Dinh c649ca8958 Rename make_unannounce_data helper to make_undo_data
This makes it a bit more easier to adapt for unlikes as well in the
future.
2018-04-22 01:55:41 -04:00
lain 0c221943ef Formatter: Use proper escaping for links. 2018-04-21 18:27:31 +02:00
eal 22bfeac256 Update note count in ActivityPub.create. 2018-04-21 12:58:04 +03:00
lain 9e6ae44729 Formatting fixes. 2018-04-21 09:43:53 +02:00
lain ff5e957476 Make search use id index too.
Seems to be faster in general, query planner chooses well.
2018-04-21 09:22:31 +02:00
Francis Dinh f0798440de Use correct activity for undo 2018-04-20 23:22:16 -04:00
Francis Dinh 4b9f2ab526 Fix federation of unreblog activity 2018-04-20 23:09:19 -04:00
Francis Dinh c5dc7e6e31 Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into feature/unrepeats 2018-04-20 16:48:18 -04:00
lain a61e8ac154 Formatting. 2018-04-20 13:10:57 +02:00
lain 193be32f45 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into develop 2018-04-19 21:44:29 +02:00
lain 0b4ff1bfe2 fix again 2018-04-19 21:44:11 +02:00
eal fa37acfcc7 TwitterAPI: Add Qvitter notification endpoint. 2018-04-19 21:46:59 +03:00
nenolod@dereferenced.org f08f9d4498 ActivityPub MRF: fix nsfw tagging of objects with attachments by looking at the right object (the child in this case) 2018-04-19 07:45:09 -05:00
lain 7b96a756fb fix again 2018-04-19 13:04:29 +02:00
lain 77fc40d5d7 Fix generate config 2018-04-19 12:52:24 +02:00
eal e30a056476 Revert "Ask for proxy URL if proxy enabled."
The most common case is running it on the same server.
2018-04-19 13:29:14 +03:00
Francis Dinh 32a26eb910 Fix TwitterAPI.delete call 2018-04-18 20:43:03 -04:00
William Pitcock ee6f15529d CommonAPI post: kill \r with fire 2018-04-18 15:46:39 -05:00
eal b586ead6b8 rm_user: also ensure that cache is running. 2018-04-18 17:52:25 +03:00
lambda 8b5ea91f68 Merge branch 'fix/rm-user-task' into 'develop'
Fix rm_user task.

See merge request pleroma/pleroma!119
2018-04-18 14:41:03 +00:00
eal 4e3fc530db Fix rm_user task. 2018-04-18 17:39:27 +03:00
eal 947431e9aa MastoAPI and OAuth: allow login with either email or username. 2018-04-18 13:13:57 +03:00
Francis Dinh 7b4f55238e Handle unrepeats via the TwitterAPI 2018-04-18 06:00:40 -04:00
Francis Dinh 687db1bc3a Expose unannounce activity so that it can be tested 2018-04-18 03:39:42 -04:00
Francis Dinh 0251690e96 Add federation for unrepeats 2018-04-17 20:35:07 -04:00
Francis Dinh c9e7b984d5 Add make_unannounce_data helper function 2018-04-17 04:13:08 -04:00