Commit graph

959 commits

Author SHA1 Message Date
Maxim Filippov b8a77c5d70 Add OEmbed parser 2019-01-13 02:06:50 +02:00
sxsdv1 868034375c Add likes to activitypub object representation
Top level of the likes OrderedCollection is inlined to get immediate
access to totalItems. Because the count can be returned without scanning
the database for like activities the extra query is saved when the
client only wants to display the total.
2019-01-12 20:24:41 +01:00
sxsdv1 581edd5a91 Add route to get object like activities 2019-01-12 20:24:38 +01:00
sxsdv1 36711e1c83 Handle client submitted activitypub like activity 2019-01-12 20:24:35 +01:00
sxsdv1 1eb7318831 Prepare all types objects before serialising
Activities returned from inbox can include other types of objects like
Article
2019-01-12 20:24:32 +01:00
Egor Kislitsyn 728587fdaa typo 2019-01-11 12:47:44 +07:00
Egor Kislitsyn b594a54d0c unpin when deleting a status 2019-01-11 12:31:31 +07:00
kaniini e4afe1359b Merge branch 'activitypub-dereference-activity-id' into 'develop'
Support activity+json request for activity

See merge request pleroma/pleroma!641
2019-01-10 18:42:36 +00:00
Maxim Filippov 1f851a0723 Add Twitter Card parser 2019-01-10 18:09:56 +00:00
kaniini 11d08c6226 Merge branch 'twapi-follower-pagination' into 'develop'
Twapi follower pagination

See merge request pleroma/pleroma!648
2019-01-10 18:03:32 +00:00
Haelwenn ab4c5f5bf7 Merge branch 'bugfix/markdown-newline-codeblocks' into 'develop'
common api: fix newlines in markdown code blocks

See merge request pleroma/pleroma!651
2019-01-10 03:54:29 +00:00
William Pitcock 490c80bc96 test: common api: add tests for format_input/4 2019-01-10 03:46:34 +00:00
kaniini 7f5efddd6e Merge branch 'feature/pinned-posts' into 'develop'
Pinned Statuses

Closes #440

See merge request pleroma/pleroma!636
2019-01-10 02:39:53 +00:00
kaniini d203b0b4d3 Merge branch 'dm-optimizations' into 'develop'
Add activity visibility index.

See merge request pleroma/pleroma!646
2019-01-10 02:31:29 +00:00
lain a99e156f2c Add integer casts. 2019-01-09 18:17:23 +01:00
lain 7ac152ed38 TwitterAPI: Add follower/following pagination. 2019-01-09 18:14:32 +01:00
lambda 1881680e28 Merge branch 'scarlett/pleroma-summary-html-api' into 'develop'
Scarlett/pleroma summary html api

See merge request pleroma/pleroma!647
2019-01-09 16:26:38 +00:00
lain 8df348a3da Add test for summary_html 2019-01-09 17:18:37 +01:00
lain 5027f82cde Add activity visibility index. 2019-01-09 16:45:09 +01:00
Egor Kislitsyn 6cbe63726d improve tests 2019-01-09 19:54:37 +07:00
Egor Kislitsyn 44a1e69484 Add Twitter API for the pinned statuses
```
# Only return statuses that have been pinned
GET /api/statuses/user_timeline.json?pinned=true

# Pin
POST /api/statuses/pin/:id

# Unpin
POST /api/statuses/unpin/:id
```
2019-01-09 19:54:19 +07:00
Egor Kislitsyn 1b06e6fdf3 only non-reblogs, self-authored, public statuses can be pinned 2019-01-09 17:40:15 +07:00
sxsdv1 20c0dd1e24 Support activity+json request for activity 2019-01-09 09:33:30 +01:00
Egor Kislitsyn 0c750bc432 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/pinned-posts 2019-01-08 16:32:07 +07:00
Egor Kislitsyn 7b6c5f0a9d improve test readability 2019-01-08 16:01:35 +07:00
Egor Kislitsyn db6f4496eb fix test 2019-01-08 15:32:06 +07:00
Egor Kislitsyn e679da4c34 add pinned property to StatusView 2019-01-08 15:27:02 +07:00
Egor Kislitsyn 63dbd87568 rename post to status 2019-01-08 15:25:50 +07:00
lain a16b17cc61 Actually put some onformation in the error user, make it actually properly parse
in conversations.
2019-01-07 20:59:30 +01:00
kaniini 74e1093732 Merge branch 'resilient-user-view' into 'develop'
Make TwAPI UserView more resilient to issues.

See merge request pleroma/pleroma!634
2019-01-07 17:09:52 +00:00
Egor Kislitsyn f24087f96e Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/pinned-posts 2019-01-07 20:55:32 +07:00
Egor Kislitsyn 380e9fba21 add pinned posts 2019-01-07 20:45:33 +07:00
lain 7dcafb4894 MastoAPI: Add test. 2019-01-07 13:13:37 +01:00
lain 7382adf407 Make TwAPI UserView more resilient to issues.
Will work for missing users and badly migrated users.
2019-01-07 12:41:31 +01:00
scarlett 52493467ac Twitter API: Add a summary_html field.
The intention here is to allow proper subject copying when it contains
emoji, obviously this will require minor frontend changes, though.
2019-01-06 10:19:00 +00:00
kaniini 576368237c Merge branch 'activitypub-tombstone-fix' into 'develop'
Don't crash on AP request for tombstone

See merge request pleroma/pleroma!630
2019-01-05 22:29:08 +00:00
scarlett 145d6fe6e9 Merge branch 'emoji-in-summary' into 'develop'
Strip HTML in and allow emoji in summaries.

See merge request pleroma/pleroma!631
2019-01-05 21:52:02 +00:00
scarlett 57df7d6e1d Add tests for emoji and lack of HTML in summaries. 2019-01-05 21:46:42 +00:00
scarlett 096e121879 Remove redundant comma. 2019-01-05 18:25:36 +00:00
scarlett 6556be344d Resolve some test failures. 2019-01-05 18:20:42 +00:00
sxsdv1 2d7da5f437 Don't crash on AP request for tombstone
Because tombstone objects has no addressing the is_public?-predicate
would cause an error that propagated as a 500 error in the api
2019-01-05 11:16:05 +01:00
kaniini 4258dd8633 Merge branch 'feature/rich-media' into 'develop'
URL previews in posts

Closes #402

See merge request pleroma/pleroma!617
2019-01-04 20:50:18 +00:00
Maxim Filippov 48e81d3d40 Add RichMediaController and tests 2019-01-02 17:02:50 +03:00
sxsdv1 4e1cc2bab6 Implement delete activity 2019-01-01 23:20:43 +01:00
sxsdv1 551c3d9391 Split create activity specifics from update_outbox 2019-01-01 23:20:28 +01:00
Maxim Filippov 2aab4e03c3 Add OGP parser 2019-01-01 23:26:40 +03:00
kaniini 90e157ef80 Merge branch 'features/admin-api-user-views' into 'develop'
User/Account views: Add rights.admin

Closes #472

See merge request pleroma/pleroma!589
2018-12-31 15:49:34 +00:00
kaniini 8e7da98b18 Merge branch 'mr/retry-queue' into 'develop'
Improves RetryQueue behavior

See merge request pleroma/pleroma!609
2018-12-30 21:47:50 +00:00
Michael Loftis cb286fdeba Improves RetryQueue behavior
reduces to one single timer firing once a second
switches to a parallel worker model
2018-12-30 15:16:26 +00:00
sxsdv1 569bad8210 Create activity when client posts to outbox 2018-12-30 12:01:39 +01:00
sxsdv1 26dc2dddab Implement ActivityPub inbox view
More or less verbatim copied from the outbox template with only changes
to the activities fetched and url reported
2018-12-30 12:01:39 +01:00
sxsdv1 aa082ca7b6 Wire up stub routes for client calls of activitypub inbox/outbox
Code style: remove wrapping function of outbox
2018-12-29 22:22:03 +01:00
kaniini 3dc5f04976 Merge branch 'carrot-bullying' into 'develop'
Add some hard limits on inserted activities.

See merge request pleroma/pleroma!595
2018-12-29 11:46:06 +00:00
kaniini dd8f2196f6 Merge branch '483_blocks_import_export' into 'develop'
[#483] Blocked users list import & export

Closes #483

See merge request pleroma/pleroma!603
2018-12-29 11:34:51 +00:00
Ivan Tashkinov 67b4297f4d [#483] Refactored blocks and follows import, added tests. 2018-12-29 12:02:37 +03:00
Ivan Tashkinov 6e9a15b181 [#483] Blocked users export for TwitterAPI. 2018-12-28 21:08:07 +03:00
Haelwenn (lanodan) Monnier b43d630f30
Web.TwitterAPI.UserView: Add rights.admin 2018-12-28 17:38:32 +01:00
Vyr Cossont d8cc96cb1f Fix Twitter timelines for private instances 2018-12-27 22:43:40 -08:00
kaniini bee6acd51d Merge branch 'feature/create-tombstone-instead-of-delete' into 'develop'
Create tombstone instead of object deletion

See merge request pleroma/pleroma!593
2018-12-27 19:37:55 +00:00
kaniini cff0292d4b Merge branch 'reserve-user-names' into 'develop'
Reserve a few user names

See merge request pleroma/pleroma!594
2018-12-27 19:35:06 +00:00
Vyr Cossont e4562105e7 Implement exclude_reblogs and include_rts 2018-12-26 21:38:00 -08:00
lain 551d80cc01 Expose restricted names in nodeinfo. 2018-12-26 12:46:16 +01:00
lain 5811e65e67 Add some hard limits on inserted activities. 2018-12-26 12:39:35 +01:00
Maxim Filippov 012b7ab5e6 Add test to check /object/:id does not leak the tombstone itself 2018-12-25 23:40:57 +03:00
Maxim Filippov aeb89bece6 Remove unused test 2018-12-25 03:38:02 +03:00
Maxim Filippov f75f707f6c Revert Activity tombstones, add ObjectTombstone struct 2018-12-25 03:00:06 +03:00
Maxim Filippov 2bbec33c71 Fix failing tests 2018-12-25 00:29:13 +03:00
Maxim Filippov 18a4cbb244 Capitalize "tombstone" 2018-12-24 20:09:18 +03:00
Maxim Filippov 0f412cf6e6 Create tombstone instead of object deletion 2018-12-24 02:25:36 +03:00
William Pitcock 3c08d229db tests: add legal boilerplate 2018-12-23 20:57:10 +00:00
William Pitcock a2bceaf688 tests: twitter api: add test proving that peertube videos are correctly handled 2018-12-23 14:00:54 +00:00
William Pitcock 873938d223 tests: twitter api: activity view test: enable tesla mock 2018-12-23 14:00:54 +00:00
William Pitcock 9f48485f64 tests: mastodon api: add test verifying that peertube videos are correctly rendered 2018-12-23 13:44:01 +00:00
William Pitcock 71f6d9f418 transmogrifier: significantly rework handling of peertube videos, add test 2018-12-23 13:31:08 +00:00
Ivan Tashkinov 851db74f1c [#114] Fixed test. 2018-12-20 15:23:16 +03:00
Ivan Tashkinov 7cab7de9ff [#114] Allowed unconfirmed users to authenticate if :account_activation_required is disabled prior to confirmation.
Ensured that no confirmation emails are sent if :account_activation_required is not true. Adjusted tests.
2018-12-20 14:48:48 +03:00
Ivan Tashkinov f69cbf4755 [#114] Added :user_id component to email confirmation path to improve the security.
Added tests for `confirm_email` action.
2018-12-20 13:41:30 +03:00
Ivan Tashkinov 968d7490b6 [#114] User.Info: renamed confirmation_update to confirmation_changeset. 2018-12-19 16:31:03 +03:00
Ivan Tashkinov 59fc5d15df [#114] User.Info: renamed confirmation_update to confirmation_change. 2018-12-19 16:27:16 +03:00
Ivan Tashkinov b096e30cff [#114] Added email confirmation resend action. Added tests
for registration, authentication, email confirmation, confirmation resending.
Made admin methods create confirmed users.
2018-12-18 17:22:46 +03:00
Ivan Tashkinov aed0f90287 [#114] Added pleroma.confirmation_pending to user views, adjusted view tests. 2018-12-18 17:22:45 +03:00
raeno a300336459 Merge branch 'develop' into oembed_provider 2018-12-18 14:59:32 +01:00
Maksim Pechnikov 92a5133c42 fix text field 2018-12-17 22:53:16 +03:00
lambda 078b8b6d22 Merge branch 'phoenix14' into 'develop'
Upgrade to Phoenix 1.4

Closes #451

See merge request pleroma/pleroma!560
2018-12-17 19:30:05 +00:00
href b12a904911
Integration tests for mastodon websocket 2018-12-17 17:09:06 +01:00
lambda 567359790e Merge branch 'testfix/webfinger-jrd' into 'develop'
WebFinger: Sends a 400 when resource param is missing, fix XRD typo in test

See merge request pleroma/pleroma!554
2018-12-17 09:19:27 +00:00
href f672555ad3
Upgrade to Phoenix 1.4 2018-12-16 17:15:07 +01:00
eal 28478a9c4f Merge branch 'fix/masto-put-settings' into 'develop'
Mastodon API: Fix PUT /api/web/settings

See merge request pleroma/pleroma!557
2018-12-16 11:21:26 +00:00
eal 4c783e35c0 Mastodon API: Fix PUT /api/web/settings 2018-12-16 13:15:34 +02:00
Haelwenn (lanodan) Monnier cddab5700b
WebFinger: Sends a 400 when resource param is missing, fix XRD typo in test 2018-12-15 17:56:12 +01:00
Haelwenn (lanodan) Monnier 5af91020f8
Web.WebFinger.WebFingerControllerTest: test against XML and JRD webfinger endpoints 2018-12-15 16:17:44 +01:00
href bfe27c1b55 Merge branch '114_email_invites' into 'develop'
[#114] Email invites

See merge request pleroma/pleroma!541
2018-12-14 20:22:24 +00:00
Maksim Pechnikov ea72ac549b fix case when tags is invalid 2018-12-14 23:16:12 +03:00
raeno 90b00701ff Merge branch 'develop' into oembed_provider 2018-12-14 20:28:35 +01:00
raeno 9ff61ed793 Fix tests
Notice test has been failing due to missing placeholder in index.html
I've tried to use fixtures to substitute that file in test environment but it became too much hassle. Fixtures are not copied to _build directory so I'd need to change file fetching logic. IMO it doesn't worth it since pleroma-fe already has this placeholder merged and all future updated of index.html will include it.
2018-12-14 20:23:51 +01:00
Maksim Pechnikov d3ec09bb38 fix tags 2018-12-14 22:09:04 +03:00
Ivan Tashkinov 07e93f9940 [#114] Improved tests. 2018-12-14 13:52:04 +03:00
Ivan Tashkinov a89e3b4b60 [#114] Moved email_invite action to AdminAPIController, adjusted tests. 2018-12-14 12:28:23 +03:00
Ivan Tashkinov 3cbf16a5fe [#114] Added UserInviteToken creation, adjusted invitation email link to include it. 2018-12-14 12:28:22 +03:00
Ivan Tashkinov cc83d7ffe7 [#114] Naive implementation of email invitations. 2018-12-14 12:28:14 +03:00
href 30dc81667c Merge branch '114_user_registration_emails' into 'develop'
[#114] User registration emails

Closes #114

See merge request pleroma/pleroma!531
2018-12-14 09:16:03 +00:00
lambda 262cc6d44b Merge branch 'fix/double-rt-or-fav' into 'develop'
Prevent accidental double RTs or favorites

See merge request pleroma/pleroma!542
2018-12-14 08:26:08 +00:00
eal 61ad2ce422 TwitterAPI: Include favorited post in json 2018-12-14 08:24:18 +02:00
eal 1ca080c862 Prevent accidental double RTs or favorites 2018-12-14 07:56:49 +02:00
raeno c5c3ad90d0 Fix tests. Remove oembed template 2018-12-14 03:00:50 +01:00
raeno b5de7c4c4d Remove oembed for now, will submit it in another MR. Fix warnings 2018-12-13 22:34:15 +01:00
raeno 8902942128 WIP. Implement oembed route and handle both json/xml for "Note" type activity 2018-12-13 22:17:53 +01:00
Ivan Tashkinov 18b9467d1a [#114] Removed email_invite implementation (to be addressed separately). 2018-12-13 16:22:42 +03:00
Ivan Tashkinov 00744c6b03 [#114] Initial implementation of user email invitations. 2018-12-13 14:30:48 +03:00
Ivan Tashkinov 4e7d98922e [#114] Added tests for "POST /api/account/password_reset". 2018-12-12 17:04:52 +03:00
Maksim Pechnikov 89b3729afa fix warnings 2018-12-12 09:09:19 +03:00
lambda 0863ec2737 Merge branch 'fix_empty_bio_crash' into 'develop'
Fixes #415. Do not crash during registration when hasn't filled bio field

Closes #415

See merge request pleroma/pleroma!529
2018-12-10 19:08:35 +00:00
lambda ff10b9927b Merge branch 'support/bugfix_272' into 'develop'
[#272] fix hashtags in api

See merge request pleroma/pleroma!510
2018-12-10 19:05:16 +00:00
lain c81c74d847 Treat warnings as errors outside of tests. 2018-12-10 19:13:53 +01:00
raeno 9ba4a1c5fe Fixes #415. Properly handle nil and empty string by User.parse_bio 2018-12-10 01:01:43 +04:00
Maksim Pechnikov 9442588ae9 fix hashtags in api response 2018-12-09 11:24:46 +03:00
Ivan Tashkinov 6ed5044c4e [#394] Refactoring (using Ecto.Multi; "untag" route change). 2018-12-07 11:04:39 +03:00
Ivan Tashkinov 7a2162bbcb [#394] User view (Twitter & Mastadon API): wrapped "tags" in "pleroma" map. 2018-12-06 22:26:25 +03:00
Ivan Tashkinov abbf347dc7 [#394] View tests fix. 2018-12-06 20:38:52 +03:00
Ivan Tashkinov 22830c8fc9 [#394] Formatting fix. 2018-12-06 20:13:07 +03:00
Ivan Tashkinov 7b19487389 [#394] Added users.tags and admin routes to tag and untag users. Added tests. 2018-12-06 20:06:50 +03:00
kaniini ccf0b46dd6 Merge branch '210_twitter_api_uploads_alt_text' into 'develop'
[#210] TwitterAPI: alt text support for uploaded images. Mastodon API uploads security fix.

See merge request pleroma/pleroma!496
2018-12-06 07:36:21 +00:00
Ivan Tashkinov 3e90f688f1 [#210] Mastodon: actor storing for media uploads, ownership check to update_media.
Refactoring.
2018-12-06 10:26:17 +03:00
kaniini 48a0315646 Merge branch 'follower-hiding' into 'develop'
Network hiding

Closes #356

See merge request pleroma/pleroma!490
2018-12-05 21:41:53 +00:00
lain 76d6b1c6ab Merge remote-tracking branch 'origin' into follower-hiding 2018-12-05 21:27:56 +01:00
lain 3ea4476445 MastodonAPI: Show users their own network. 2018-12-05 21:25:06 +01:00
Vald 3c8ffe7ed3 resolved activity view test 2018-12-06 01:54:04 +05:30
Vald 028904c333 lint 2018-12-06 01:46:53 +05:30
Vald 911a877576 resolved api and controller test failures 2018-12-06 01:46:30 +05:30
lain fdac215091 TwitterAPI: Show users their own network. 2018-12-05 21:14:06 +01:00
lain 839526a913 TwitterAPI: Add network hiding. 2018-12-05 19:22:40 +01:00
Ivan Tashkinov ba345e4c29 [#210] Formatting fix. 2018-12-05 13:43:00 +03:00
Ivan Tashkinov 848151f7cb [#210] [TwitterAPI] Made actor be stored for uploads. Added ownership check
to `update_media` action. Added controller tests for `upload` and `update_media` actions.
Refactoring.
2018-12-05 13:37:06 +03:00
Ivan Tashkinov 53797d19c5 [#210] Test update (replaced bang- with non-bang method). 2018-12-05 11:56:31 +03:00
Ivan Tashkinov 44ab3dbe2c [#210] Refactoring. 2018-12-04 19:45:09 +03:00
Ivan Tashkinov 826fc446d5 [#210] TwitterAPI: implemented /api/media/metadata/create
to allow uploads description (alt text) setting.
2018-12-04 18:35:57 +03:00
Maksim Pechnikov dd8aee332c formatting the code 2018-12-04 17:48:55 +03:00
Maksim Pechnikov 5c6d47614d all tests passed 2018-12-04 17:44:15 +03:00
Maksim Pechnikov a9e4a97586 update test 2018-12-04 14:04:06 +03:00
Maksim Pechnikov 7ec64ac33f update test 2018-12-04 14:04:06 +03:00
Maksim Pechnikov 80bfdb4e7d update test 2018-12-04 14:04:06 +03:00
Maksim Pechnikov 6cfdc11e32 update test 2018-12-04 14:04:06 +03:00
Maksim Pechnikov c508d41c34 add http requests mock 2018-12-04 14:04:06 +03:00
Maksim Pechnikov 87109482f3 status_code -> status 2018-12-04 14:04:06 +03:00
Maksim Pechnikov ec34de0c1f WebSub fix test 2018-12-04 14:03:32 +03:00
lambda 88b05aeabb Merge branch 'fix/parse-user-bio' into 'develop'
Parse user's bio on register

See merge request pleroma/pleroma!492
2018-12-03 16:31:00 +00:00
Maxim Filippov 4b70e5eae9 Parse bio for MastodonAPI 2018-12-03 18:59:50 +03:00
Maxim Filippov 8148943368 Format files 2018-12-02 22:08:53 +03:00
Maxim Filippov ce98d5eb9b Parse user's bio on register 2018-12-02 22:03:53 +03:00
lain 8c9a4e8b40 TwitterAPI: Implement hide_network. 2018-12-02 18:14:13 +01:00