Commit Graph

2400 Commits

Author SHA1 Message Date
Egor Kislitsyn e457fcc479 Add `:max_remote_account_fields` config option 2019-08-14 14:58:06 +07:00
Egor Kislitsyn f7bbf99caa Use info.fields instead of source_data for remote users 2019-08-14 14:52:54 +07:00
Egor Kislitsyn 2c35d4b0b0 Add configurable account field name length limit 2019-08-14 14:52:54 +07:00
Egor Kislitsyn db3c05f6b4 Add configurable account field value length limit 2019-08-14 14:52:54 +07:00
Egor Kislitsyn 7d6f8a7fd7 Linkify custom fields values in ActivityPub.UserViewx 2019-08-14 14:52:54 +07:00
Egor Kislitsyn 5178f960c3 Support user attachment update in Transmogrifier 2019-08-14 14:52:54 +07:00
Egor Kislitsyn 88598c9baf Add profile custom fields to ActivityPub.UserView 2019-08-14 14:52:54 +07:00
Egor Kislitsyn d6094b405d Fix tests 2019-08-14 14:52:54 +07:00
Egor Kislitsyn e0ac5c7a66 Add custom profile fields 2019-08-14 14:52:54 +07:00
rinpatch 9ef31767f2 Merge branch 'feature/mrf-vocabulary' into 'develop'
MRF Vocabulary

See merge request pleroma/pleroma!1559
2019-08-13 22:51:15 +00:00
kaniini c3a54cc34d Merge branch 'feature/mrf-describe' into 'develop'
MRF describe API

See merge request pleroma/pleroma!1561
2019-08-13 22:46:19 +00:00
rinpatch 83a3de8cc4 Merge branch 'length-limit-bio' into 'develop'
Add configurable length limits for `User.bio` and `User.name`

See merge request pleroma/pleroma!1515
2019-08-13 22:40:13 +00:00
Ariadne Conill 4244e17de0 fix credo 2019-08-13 22:36:24 +00:00
Ariadne Conill 10fef2fcee tests: fix up nodeinfo tests 2019-08-13 22:32:40 +00:00
Ariadne Conill dd0b71ea6d tests: add tests for MRF.describe() 2019-08-13 22:19:15 +00:00
Ariadne Conill 7089400675 test: add mock MRF module for describe() testing 2019-08-13 21:29:15 +00:00
Maksim fea4d89e9f tests for Web/ActivityPub/Relay 2019-08-13 21:12:59 +00:00
Maksim 04da1166db tests for /web/mastodon_api/mastodon_api.ex 2019-08-13 21:12:37 +00:00
Ariadne Conill f7e3b7ff75 tests: add tests for mrf_vocabulary 2019-08-13 20:55:42 +00:00
Ivan Tashkinov 0e1c481a94 [#1149] Added more oban workers. Refactoring. 2019-08-13 20:20:26 +03:00
lain 511ccea5aa ConversationView: Align parameter names with other views. 2019-08-12 14:23:06 +02:00
lain 60231ec7bd Conversation: Add endpoint to get a conversation by id. 2019-08-12 13:58:04 +02:00
lain 23c46f7e72 Conversations: Use 'recipients' for accounts in conversation view.
According to gargron, this is the intended usage.
2019-08-12 12:51:08 +02:00
Ariadne Conill 9cfc289594 MRF: ensure that subdomain_match calls are case-insensitive 2019-08-10 21:19:26 +00:00
kaniini 84808e1697 Merge branch 'develop' into 'fix/hide-follows-counters'
# Conflicts:
#   CHANGELOG.md
2019-08-10 18:49:04 +00:00
Sergey Suprunenko af4cf35e20 Strip internal fields including likes from incoming and outgoing activities 2019-08-10 18:47:40 +00:00
Maksim 11d08c2de0 tests for Pleroma.Uploaders 2019-08-10 18:46:26 +00:00
Ivan Tashkinov 33a5fc4a70 [#1149] Fixed failing tests. Ensured Instance.set_unreachable/2 supports ISO 8601 datetime. 2019-08-10 20:38:31 +03:00
rinpatch 0802a08871 Mastodon API: Fix thread mute detection
It was calling CommonAPI.thread_muted? with post author's account
instead of viewer's one.
2019-08-10 16:27:46 +03:00
Maksim bb9c539580 Uploader.S3 added support stream uploads 2019-08-10 11:27:59 +00:00
Maxim Filippov dfae61c25c Fix deactivated user deletion 2019-08-09 23:05:28 +03:00
Ivan Tashkinov 267262491e Merge remote-tracking branch 'remotes/upstream/develop' into 1149-oban-job-queue 2019-08-09 20:09:56 +03:00
Ivan Tashkinov b7fad8d395 [#1149] Oban jobs implementation for :federator_incoming and :federator_outgoing queues. 2019-08-09 20:08:01 +03:00
rinpatch 409bcad54b Mastodon API: Set follower/following counters to 0 when hiding
followers/following is enabled

We are already doing that in AP representation, so I think we should do
it here as well for consistency.
2019-08-09 16:53:55 +03:00
lain 29807ef6a5 Merge branch 'feature/digest-email' into 'develop'
Feature/digest email

See merge request pleroma/pleroma!1078
2019-08-08 14:38:33 +00:00
lain a2b98f6d58 Merge remote-tracking branch 'origin/develop' into pleroma-conversations 2019-08-08 16:04:20 +02:00
Haelwenn aa718ab8f6 Merge branch 'fix/object-reembeds' into 'develop'
Do not rembed the object after updating it

Closes #1142

See merge request pleroma/pleroma!1538
2019-08-06 22:14:00 +00:00
rinpatch 5329e84d62 OStatus tests: stop relying on embedded objects 2019-08-07 00:58:48 +03:00
rinpatch 32018a4ee0 ActivityPub tests: remove assertions of embedded object being updated,
because the objects are no longer supposed to be embedded
2019-08-07 00:36:13 +03:00
Maksim 139b196bc0 [#1150] fixed parser TwitterCard 2019-08-06 20:19:28 +00:00
lain a49c92f6ae Participation: Setting recipients will always add the owner. 2019-08-06 14:51:17 +02:00
Maksim bdc9a7222c tests for CommonApi/Utils 2019-08-05 15:37:05 +00:00
lain d6fe220e32 Linting. 2019-08-05 16:11:23 +02:00
lain b64b6fee2a CommonAPI: Replies to conversations also get the correct context id. 2019-08-05 15:33:22 +02:00
lain 3af6d14da7 Pleroma Conversations API: Add a way to set recipients. 2019-08-05 15:09:19 +02:00
Eugenij 96028cd585 Remove Reply-To from report emails 2019-08-04 22:24:50 +00:00
Sergey Suprunenko e8ad116c2a Do not add the "next" key to likes.json if there is no more items 2019-08-04 17:13:06 +00:00
Alexander Strizhakov de0f3b73dd Admin fixes 2019-08-03 18:16:09 +00:00
Sergey Suprunenko 040347b248 Remove spaces from the domain search 2019-08-03 18:13:20 +00:00
Sergey Suprunenko 8b2fa31fed Handle MRF rejections of incoming AP activities 2019-08-03 18:12:38 +00:00
lain eee98aaa73 Pleroma API: Add endpoint to get conversation statuses. 2019-08-02 19:53:08 +02:00
feld d93d777915 Fix/mediaproxy whitelist base url 2019-08-02 17:07:09 +00:00
Roman Chvanikov 9d4f34fbcb Merge branch 'develop' into feature/digest-email 2019-08-02 18:16:04 +03:00
lain 56b1c3af13 CommonAPI: Extend api with conversation replies. 2019-08-02 15:05:27 +02:00
lain 5ff8f07ca9 Merge branch 'feature/hide-follows-remote' into 'develop'
Refactor Follows/Followers counter syncronization and set hide_followers/hide_follows for remote users

See merge request pleroma/pleroma!1411
2019-08-02 11:23:07 +00:00
lain f88560accd Conversations: Add recipient list to conversation participation.
This enables to address the same group of people every time.
2019-08-02 11:55:41 +02:00
Ivan Tashkinov 23d279e03e [#1149] Replaced RetryQueue with oban-based retries. 2019-08-01 17:28:00 +03:00
Egor Kislitsyn f98235f2ad Clean up tests output 2019-08-01 16:33:36 +07:00
Egor Kislitsyn 9ca4506355 Add configurable length limits for `User.bio` and `User.name` 2019-08-01 15:53:37 +07:00
kaniini 6c06529cd4 Merge branch 'fix/disallow-ostatus-follows-locked' into 'develop'
Disallow following locked accounts over OStatus

See merge request pleroma/pleroma!1512
2019-07-31 19:13:56 +00:00
rinpatch 813c686dd7 Disallow following locked accounts over OStatus 2019-07-31 22:05:12 +03:00
Maksim 6eb33e7303 test for Pleroma.Web.CommonAPI.Utils.get_by_id_or_ap_id 2019-07-31 18:35:15 +00:00
Ariadne Conill f72e0b7cad ostatus: explicitly disallow protocol downgrade from activitypub
This closes embargoed bug #1135.
2019-07-31 18:17:31 +00:00
rinpatch 301ea0dc04 Add tests for counters being updated on follow 2019-07-31 21:09:13 +03:00
Maksim 58443d0cd6 tests for TwitterApi/UtilController 2019-07-31 15:14:36 +00:00
lain 7483679a7b StatusView: Return direct conversation id. 2019-07-31 15:12:29 +02:00
rinpatch c88a5d3251 Merge branch 'develop' into feature/hide-follows-remote 2019-07-31 14:12:29 +03:00
Alexander Strizhakov 51b3b6d816 Admin changes 2019-07-30 16:36:05 +00:00
kaniini 5835069215 Revert "Merge branch 'bugfix/clean-up-markdown-rendering' into 'develop'"
This reverts merge request !1504
2019-07-29 19:42:26 +00:00
Ariadne Conill 5795a890e9 markdown: clean up html generated by earmark 2019-07-29 19:09:58 +00:00
lain 1dfde4151c Merge branch 'refactor/use-constants' into 'develop'
refactoring: begin to use constants

See merge request pleroma/pleroma!1500
2019-07-29 16:30:47 +00:00
Sergey Suprunenko c0e258cf21 Redirect not logged-in users to the MastoFE login page on private instances 2019-07-29 16:17:22 +00:00
Maksim 159bbec570 added tests for OstatusController 2019-07-29 05:02:20 +00:00
Ariadne Conill b93498eb52 constants: add as_public constant and use it everywhere 2019-07-29 02:43:19 +00:00
Ariadne Conill 492d854e7a transmogrifier: use User.delete() instead of handrolled user deletion code for remote users
Closes #1104
2019-07-28 21:32:04 +00:00
Sachin Joshi 242f5c585e add account confirmation email resend in mastodon api 2019-07-28 20:30:10 +00:00
Maksim 6a4b8b2681 fixed User.update_and_set_cache for stale user 2019-07-28 20:29:26 +00:00
Maksim 6b77a88365 [#1097] added redirect: /pleroma/admin -> /pleroma/admin/ 2019-07-26 20:27:38 +00:00
rinpatch 41e0304757 Merge branch 'develop' into feature/hide-follows-remote 2019-07-25 18:43:30 +03:00
Maksim 03c386614f fixed test for elixir 1.7.4 2019-07-25 03:43:13 +00:00
kaniini 19835be067 Merge branch 'fix-remote-follow-from-ostatus-subscribe' into 'develop'
Fix remote follow from /ostatus_subscribe

Closes #1103

See merge request pleroma/pleroma!1472
2019-07-24 19:29:01 +00:00
Sergey Suprunenko b20020da16 Show the url advertised in the Activity in the Status JSON response 2019-07-24 19:28:21 +00:00
kPherox 8d9f43e1d1
Add WebFinger test for AP-only account 2019-07-25 01:27:34 +09:00
feld 84fca14c3c Do not prepend /media/ when using base_url
This ensures admin has full control over the path where media resides.
2019-07-24 15:35:25 +00:00
Mike Verdone 0e2b5a3e6a WIP 2019-07-24 17:25:11 +02:00
Maksim 55341ac717 tests WebFinger 2019-07-24 15:13:10 +00:00
Eugenij 4504135894 Add `domain_blocking` to the relationship API (GET /api/v1/accounts/relationships) 2019-07-24 15:12:27 +00:00
Mike Verdone 2c83eb0b15 Revert "squash! Expose expires_at datetime in mastoAPI only for the activity actor"
This reverts commit 2981821db8.
2019-07-24 17:09:59 +02:00
Mike Verdone 2981821db8 squash! Expose expires_at datetime in mastoAPI only for the activity actor
NOTE: rewrite the commit msg
2019-07-24 16:51:09 +02:00
Roman Chvanikov d2da3d30f3 Merge branch 'develop' into feature/digest-email 2019-07-24 16:37:52 +03:00
Mike Verdone 3cb471ec06 Expose expires_at datetime in mastoAPI only for the activity actor
In the "pleroma" section of the MastoAPI for status activities you can
see an expires_at item that states when the activity will expire, or
nothing if the activity will not expire.

The expires_at date is only visible to the person who posted the
activity. This is the conservative approach in case some attacker
decides to write a logger for expiring posts. However, in the future of
OCAP, signed requests, and all that stuff, this attack might not be that
likely. Some other pleroma dev should remove the restriction in the code
at that time, if they're satisfied with the security implications of
doing so.
2019-07-24 14:47:22 +02:00
Mike Verdone 36012ef6c1 Require that ephemeral posts live for at least one hour
If we didn't put some kind of lifetime requirement on these, I guess you
could annoy people by sending large numbers of ephemeral posts that
provoke notifications but then disappear before anyone can read them.
2019-07-24 14:46:08 +02:00
Mike Verdone 704960b3c1 Add support for activity expiration to common and Masto API
The "expires_at" parameter accepts an ISO8601-formatted date which
defines when the activity will expire.

At this point the API will not give you any feedback about if your post
will expire or not.
2019-07-24 14:45:14 +02:00
Mike Verdone 378f5f0fbe Add activity expiration worker
This is a worker that runs every minute and deletes expired activities.
It's based heavily on the scheduled activities worker.
2019-07-24 13:14:52 +02:00
Mike Verdone 666514194a Add activity expirations table
Add a table to store activity expirations. An activity can have zero or
one expirations. The expiration has a scheduled_at field which stores
the time at which the activity should expire and be deleted.
2019-07-24 13:14:52 +02:00
Mike Verdone 8ba7a151ad Cleanup: fix a comment 2019-07-24 13:14:52 +02:00
sadposter f5d574f4ed check both item and parent domain blocks 2019-07-24 11:35:16 +01:00
Sadposter 4af4f6166b honour domain blocks on streaming notifications 2019-07-24 11:09:06 +01:00
kaniini 9c6357324e Merge branch 'feature/admin-api-user-statuses' into 'develop'
Admin API: Endpoint for fetching latest user's statuses

See merge request pleroma/pleroma!1413
2019-07-23 23:59:21 +00:00
Ariadne Conill d3bdb8e704 rich media: parser: splice the given URL into the result 2019-07-23 23:51:29 +00:00
Maxim Filippov f46805bb40 Merge branch 'develop' into feature/admin-api-user-statuses 2019-07-24 02:42:28 +03:00
Maxim Filippov 03471151d6 AdminAPI: Add "godmode" while fetching user statuses (i.e. admin can see private statuses) 2019-07-24 01:51:36 +03:00
Alexander Strizhakov 5e72554f3c Admin config fix 2019-07-23 19:17:00 +00:00
Maksim c49a09ed88 tests for Pleroma.Web.ActivityPub.Publisher 2019-07-23 19:15:48 +00:00
kaniini 8d3cf7e519 Merge branch 'bugfix/unauthed-liked-by' into 'develop'
Bugfix: don't error out on unauthorized request to liked/favourited_by

See merge request pleroma/pleroma!1474
2019-07-23 19:14:43 +00:00
kaniini 03d89e182e Merge branch 'fix/subscriber-notifications' into 'develop'
Do not notify subscribers for messages from users which are replies to others

See merge request pleroma/pleroma!1477
2019-07-23 19:13:55 +00:00
Mark Felder ec7b085b76 Fix test 2019-07-23 13:57:22 -05:00
Mark Felder fd287387a0 Do not notify subscribers for messages from users which are replies to others 2019-07-23 13:14:26 -05:00
Ariadne Conill e7c64f106e signature: properly deduce the actor from misskey key IDs 2019-07-23 16:47:22 +00:00
Sadposter c400565427 fix test names because i cannot type 2019-07-23 15:47:17 +01:00
Sadposter 299c0e965b actually reblog on the reblog test 2019-07-23 15:38:19 +01:00
Sadposter 7026018c8c Use correct URL for tests 2019-07-23 15:31:35 +01:00
Sadposter 452980652d Mix format 2019-07-23 15:13:05 +01:00
Sadposter fd1fa5a2ec add tests for unauthed reqs to liked/reblogged_by 2019-07-23 15:08:41 +01:00
Maxim Filippov 14ab2fd0f4 remove pry 2019-07-23 12:30:37 +03:00
Sergey Suprunenko 9340896c9e Exclude tests that use :crypt.crypt/2 on macOS 2019-07-22 19:54:22 +00:00
Alexander Strizhakov b70e659304 Feature/1087 wildcard option for blocks 2019-07-22 14:33:58 +00:00
Haelwenn 674ad5e1df Merge branch 'hardening/stop-misusing-sharedinbox' into 'develop'
activitypub: publisher: align sharedinbox usage with AP specification rules

See merge request pleroma/pleroma!1464
2019-07-22 11:01:35 +00:00
Sadposter f712ee879a Bugfix: muted/blocked user notification streaming 2019-07-22 02:43:55 +00:00
Sergey Suprunenko 05b5af8075 Add tests for users tasks and PleromaAuthenticator 2019-07-22 02:43:15 +00:00
Sadposter a5d6287ba8 Hide blocked users from interactions 2019-07-22 02:42:29 +00:00
Ariadne Conill 56019d53a8 activitypub: publisher: align sharedinbox usage with AP specification rules
While debugging the follow breakage, I observed that our sharedInbox usage
did not match the rules in the specification.  Accordingly, I have better
aligned our usage of sharedInbox with the rules outlined in the ActivityPub
specification.
2019-07-22 02:38:31 +00:00
rinpatch 196cad46f3 Resolve merge conflicts 2019-07-20 22:04:47 +03:00
Roman Chvanikov 8292331b35 Merge branch 'develop' into feature/digest-email 2019-07-20 16:41:58 +03:00
Sergey Suprunenko 43a7cd27fe [tests] Mock :crypt.crypt/2 function in AuthenticationPlugTest 2019-07-20 13:07:51 +00:00
Roman Chvanikov 36049f08ef Merge develop 2019-07-20 01:03:25 +03:00
kaniini 33729bbb28 Merge branch 'feature/richmedia-ttl' into 'develop'
add the rich media ttl based on image exp time

See merge request pleroma/pleroma!1438
2019-07-19 21:36:36 +00:00
kaniini 716afc83ce Merge branch 'refactor/http-signature-plug' into 'develop'
http signature plug: separation of concerns

See merge request pleroma/pleroma!1449
2019-07-19 16:57:24 +00:00
Maksim c2e2aadc42 #1110 fixed /api/pleroma/healthcheck 2019-07-19 16:20:23 +00:00
Sachin Joshi de9906ad56 change the structure of image ttl parsar 2019-07-19 11:43:42 +05:45
Maxim Filippov 9570a5be40 Merge branch 'develop' into feature/admin-api-user-statuses 2019-07-18 23:38:38 +03:00
Ariadne Conill c947cfec5a mapped signature plug: use `user` assign like authentication plug 2019-07-18 20:31:25 +00:00
Maksim f435217e50 tests for Plugs.AuthenticationPlug 2019-07-18 20:29:51 +00:00
Ariadne Conill 621cacf667 tests: add tests for mapped signature plug 2019-07-18 16:28:36 +00:00
Ariadne Conill 88d064d80e http signature plug: remove redundant checks handled by HTTPSignatures library
the redundant checks assumed a POST request, which will not work for signed GETs.
this check was originally needed because the HTTPSignatures adapter assumed that
the requests were also POST requests.  but now, the adapter has been corrected.
2019-07-18 15:11:21 +00:00
kaniini f9a0014681 Merge branch 'feature/signed-object-fetches' into 'develop'
signed object fetches

See merge request pleroma/pleroma!1446
2019-07-18 13:27:50 +00:00
Maksim b6b748d3e7 tests for Uploader with webhook 2019-07-18 12:30:18 +00:00
Ariadne Conill 1345e0c2bf tests: add tests for signed object fetches 2019-07-17 23:06:16 +00:00
kaniini 1e48af9acf Merge branch 'feature/instance-fetch-actor' into 'develop'
instance fetch service actor

See merge request pleroma/pleroma!1440
2019-07-17 19:45:40 +00:00
kaniini 60b54ee64a Merge branch 'feature/http-signatures-keyid' into 'develop'
http signatures: derive actor from key IDs

See merge request pleroma/pleroma!1442
2019-07-17 19:44:14 +00:00
Ariadne Conill f84fb340b7 http signatures: derive actor ID from key ID.
Almost all AP servers return their key ID as the actor URI with #main-key
added.  Hubzilla, which doesn't, uses a URL which refers to the actor
anyway, so worst case, Hubzilla users get refetched.
2019-07-17 19:18:19 +00:00
Eugenij 4bf2bb9cff Fix password reset for non-test env
Fixes `Plug.Conn.NotSentError` that causes a 5xx error in response
instead of 404 and 400.

Fixes pattern matching error caused by different response format
in test and non-test env: `Pleroma.Emails.Mailer.deliver_async` returns
:ok when PleromaJobQueue is enabled and `{:ok, _}` when it's disabled.
In tests, it's disabled.
2019-07-17 18:09:31 +00:00
Ariadne Conill 3d23a12d75 tests: add test for fetching the internal fetch actor 2019-07-17 17:48:08 +00:00
Ariadne Conill 62e5ff624e user: add is_internal_user? helper function 2019-07-17 17:12:42 +00:00
kaniini ce73d5f6a5 Merge branch 'feature/mention-mrf' into 'develop'
Add MRF MentionPolicy for dropping posts which mention specific actors

See merge request pleroma/pleroma!1439
2019-07-17 15:28:41 +00:00
RX14 96a2890a9e
Add MRF MentionPolicy for dropping posts which mention specific actors 2019-07-17 15:16:55 +01:00
Alexander Strizhakov 10f82c88b8 mastoapi password reset
added rate limit to password reset

configure rate limit in runtime
2019-07-16 21:44:50 +00:00
Maksim 21e3f9ac69 added tests for Pleroma.Upload.Filter 2019-07-16 21:35:43 +00:00
Sachin Joshi 18234cc44e add the rich media ttl based on image exp time 2019-07-17 00:20:34 +05:45
Roman Chvanikov 9bca70b10a Merge develop 2019-07-16 16:19:19 +03:00
Eugenij 520ee6c591 Add `pleroma.deactivated` to the Account entity (Mastodon API) 2019-07-16 11:14:46 +00:00
Eugenij c4ca142e14 Add the `blocked_by` attribute to the relationship API (`GET /api/v1/accounts/relationships`) 2019-07-16 11:04:11 +00:00
rinpatch 996fd58ac4 Merge branch 'bugfix/poll-id-as-string' into 'develop'
Status View: Poll ids are strings.

See merge request pleroma/pleroma!1430
2019-07-16 06:06:22 +00:00
lain 7a24def473 Mastodon Controller: Fix tests. 2019-07-16 14:01:18 +09:00
lain 1ed24bcc76 Status View: Poll ids are strings.
All ids in mastodon are strings, in general.
2019-07-16 12:47:40 +09:00
feld 9f987dd017 Merge branch 'match-file-name' into 'develop'
try to always match the filename for proxy url

See merge request pleroma/pleroma!1405
2019-07-15 22:04:58 +00:00
Sergey Suprunenko b74300bc7a Add more tests for MastodonAPIController and CommonAPI 2019-07-15 19:47:23 +00:00
Sachin Joshi 1d906ffa82 Merge branch 'develop' into match-file-name
# Conflicts:
#	lib/pleroma/web/media_proxy/media_proxy_controller.ex
2019-07-15 21:30:56 +05:45
kaniini 03c4ea44ad Merge branch 'admin-configure-atom-keys' into 'develop'
admin configure - atom keys with leading :

See merge request pleroma/pleroma!1424
2019-07-15 13:01:58 +00:00
Maksim c32384c1ea tests for Pleroma.Signature 2019-07-15 13:01:22 +00:00
Alex S b8607c151c migrating task refactor 2019-07-15 15:45:27 +03:00
Alex S c66044b923 atom keys with leading : 2019-07-15 11:00:55 +03:00
Egor Kislitsyn de13c9bb8f List messages must be visible for mentioned users 2019-07-15 14:54:40 +07:00
Egor Kislitsyn 64a946643e Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-07-15 14:11:54 +07:00
Egor Kislitsyn a87c313309 Support `list` visibility in StatusView 2019-07-15 14:00:29 +07:00
Maksim fa17879c20 added tests for Web.MediaProxy 2019-07-14 21:01:32 +00:00
Sergey Suprunenko dce8ebc9ea Unfollow should also unsubscribe 2019-07-14 19:25:03 +00:00
Ariadne Conill 841314c2d5 tests: fix object containment violations in the transmogrifier tests
Some objects were not completely rewritten in the tests, which caused object
containment violations.  Fix them by rewriting the object IDs to be in an
appropriate namespace.
2019-07-14 19:24:22 +00:00
Roman Chvanikov c729883936 Merge branch 'develop' into feature/digest-email 2019-07-14 21:43:30 +03:00
Ariadne Conill 739bbe0d3b security: detect object containment violations at the IR level
It is more efficient to check for object containment violations at the IR
level instead of in the protocol handlers.  OStatus containment is especially
a tricky situation, as the containment rules don't match those of IR and
ActivityPub.

Accordingly, we just always do a final containment check at the IR level
before the object is added to the IR object graph.
2019-07-14 17:47:08 +00:00
kaniini cef4337f95 Merge branch 'bugfix/llal-object-containment' into 'develop'
Object.Fetcher: Handle error on Containment.contain_origin/2

See merge request pleroma/pleroma!1414
2019-07-14 16:39:17 +00:00
Haelwenn (lanodan) Monnier a2c601acb5
FetcherTest: Containment refute called(OStatus.fetch_activity_from_url) 2019-07-14 17:05:32 +02:00
Alexander Strizhakov e7c39b7ac8 Feature/1072 muting notifications 2019-07-14 13:29:31 +00:00
Haelwenn (lanodan) Monnier f00562ed6b
HttpRequestMock: Add 404s on OStatus fetching for info.pleroma.site 2019-07-14 13:55:41 +02:00
Haelwenn (lanodan) Monnier efa9a13d4e
HttpRequestMock: Add missing mocks for object containment tests 2019-07-14 13:55:41 +02:00
rinpatch 0c2dcb4c69 Add follow information refetching after following/unfollowing 2019-07-14 01:58:39 +03:00
rinpatch 183da33e00 Add tests for fetch_follow_information_for_user and check object type
when fetching the page
2019-07-14 00:56:02 +03:00
Maxim Filippov 418ae6638d Merge branch 'develop' into feature/admin-api-user-statuses 2019-07-14 00:39:06 +03:00
Maxim Filippov a9459ff98f Admin API: Endpoint for fetching latest user's statuses 2019-07-14 00:37:26 +03:00
Ariadne Conill 80c46d6d8b nodeinfo: implement MRF transparency exclusions 2019-07-13 18:53:14 +00:00
rinpatch e8fa477793 Refactor Follows/Followers counter syncronization
- Actually sync counters in the database instead of info cache (which got
overriden after user update was finished anyway)
- Add following count field to user info
- Set hide_followers/hide_follows for remote users based on http status
codes for the first collection page
2019-07-13 19:27:49 +03:00
Ivan Tashkinov 369e9bb42f [#1041] Rate-limited status actions (per user and per user+status). 2019-07-13 14:49:39 +03:00
rinpatch 095117a58c Merge branch 'develop' into fix/ap-hide-follows 2019-07-12 21:43:06 +03:00
rinpatch 97b79efbcd ActivityPub Controller: Actually pass for_user to following/followers
views and give 403 errors when trying to request hidden follower pages
when unauthenticated
2019-07-12 20:54:20 +03:00
Sachin Joshi f8e3ae6154 try to always match the filename for proxy url 2019-07-12 22:56:14 +05:45
Maksim 92055941bd Pleroma.Web.Metadata - tests 2019-07-12 16:42:54 +00:00
rinpatch 1f6ac7680d ActivityPub User view: Following/Followers refactoring
- Render the collection items if the user requesting == the user
rendered
- Do not render the first page if hide_{followers,follows} is set, just
give the URI to it
2019-07-12 19:41:55 +03:00
Mark Felder 360e4cdaa2 Move these to pleroma namespace in Mastodon API 2019-07-12 11:25:58 -05:00
rinpatch 27ed260eed AP user view: Add a test for hiding totalItems in following/followers 2019-07-12 18:36:14 +03:00
Sachin Joshi 6a6c4d134b preserve the original path/filename (no encoding/decoding) for proxy 2019-07-12 21:05:01 +05:45
Roman Chvanikov eae991b06a merge develop 2019-07-12 18:08:27 +03:00
Eugenij 4198c3ac39 Extend Pleroma.Pagination to support offset-based pagination, use async/await to execute status and account search in parallel 2019-07-11 13:55:31 +00:00
Alexander Strizhakov 846ad9a463 admin api configure changes 2019-07-11 13:02:13 +00:00
kaniini e4e3fd7e55 Merge branch 'fix/1019-refactor' into 'develop'
Fix/1019 refactor

See merge request pleroma/pleroma!1397
2019-07-11 13:01:11 +00:00
Egor Kislitsyn 9e06873d58 Add `list` to Visibility 2019-07-11 19:29:24 +07:00
Egor Kislitsyn 958fb9aa80 Add "listMessage" 2019-07-11 16:36:08 +07:00
Egor Kislitsyn 182f7bbb11 Merge branch 'develop' into feature/addressable-lists 2019-07-11 13:26:59 +07:00
Alexander Strizhakov a237c6a2d4 support for idna domains 2019-07-10 15:23:25 +00:00
Haelwenn (lanodan) Monnier 252e129b1e
MastoAPI: Add categories to custom emojis
Note: This isn’t in a release yet, can be seen in mastofe on the
rebase/glitch-soc branch.
2019-07-10 17:02:37 +02:00
Alex S beba7bbc85 removing synchronization worker 2019-07-10 17:42:18 +03:00
Alex S ade213cb35 robots txt test fix 2019-07-10 17:42:18 +03:00
Alex S f8786fa6f2 adding following_address field to user 2019-07-10 17:42:18 +03:00
Sergey Suprunenko ff55e3c16f Create mentions only for explicitly mentioned users 2019-07-10 13:29:50 +00:00
Egor Kislitsyn c2a589d9a3 Fix credo warning 2019-07-10 18:10:09 +07:00
Egor Kislitsyn 0d54a571ca Add SetLocalePlug 2019-07-10 18:08:03 +07:00
Maksim 008c55e4e9 add test for search_controller/ 100% coverage 2019-07-10 08:28:03 +00:00
Maksim 12b1454245 [#1062] added option to disable send email 2019-07-10 05:34:21 +00:00
Sergey Suprunenko 2d2b50ccca Send and handle "Delete" activity for deleted users 2019-07-10 05:16:08 +00:00
kaniini 75be90a6d1 Merge branch 'release/listener' into 'develop'
add listener port and ip option for 'pleroma.instance gen' and enable its test

See merge request pleroma/pleroma!1393
2019-07-10 05:14:08 +00:00
feld 93a0eeab16 Add license/copyright to all project files 2019-07-10 05:13:23 +00:00
Maksim bb8065a1fd tests MRF filters 2019-07-10 05:12:21 +00:00
Sachin Joshi 6d0ae264fc add listener port and ip option for 'pleroma.instance gen' and enable its test 2019-07-10 01:46:49 +05:45
Ivan Tashkinov 8a41d34673 [#878] Tests improvements per code review. 2019-07-09 22:37:59 +03:00
Ivan Tashkinov 6fc0c27be3 [#878] Uncommented test statement. 2019-07-09 22:28:04 +03:00
Ivan Tashkinov 829e997223 [#878] Merge remote-tracking branch 'remotes/upstream/develop' into 878-activity-object-decoupling-in-tests
# Conflicts:
#	lib/pleroma/object.ex
#	test/web/activity_pub/transmogrifier_test.exs
#	test/web/ostatus/ostatus_test.exs
2019-07-09 21:46:16 +03:00
Roman Chvanikov 371d39e160 Merge develop 2019-07-09 21:21:09 +03:00
kaniini 1417627d07 Merge branch 'remove-avatar-header' into 'develop'
Ability to reset avatar, profile banner and backgroud

See merge request pleroma/pleroma!1187
2019-07-09 17:51:41 +00:00
Alexander Strizhakov d6b0fce6e9 Fix/1019 correct count remote users 2019-07-09 17:36:35 +00:00
kaniini 4948117fcf Merge branch 'remove-swift' into 'develop'
Remove Uploaders.Swift and `httpoison` dependency

Closes #1051

See merge request pleroma/pleroma!1374
2019-07-09 16:54:32 +00:00
Alexander Strizhakov 4e6e5d8042 reverse proxy tests 2019-07-09 16:54:13 +00:00
kaniini 1179a13533 Merge branch 'features/sec-websocket-protocol-header' into 'develop'
Features: MastoAPI streaming Sec-WebSocket-Protocol header

See merge request pleroma/pleroma!1381
2019-07-09 16:52:22 +00:00
feld 167f810ff1 Merge branch 'proxy-error' into 'develop'
make sure the url used by proxy is same as original url

See merge request pleroma/pleroma!1383
2019-07-09 16:00:44 +00:00
Mark Felder e143747445 Add test for URLs with Unicode characters too 2019-07-09 10:55:36 -05:00
Haelwenn 95c085174d Merge branch 'test-speedup' into 'develop'
Testing: Don't federate in testing.

See merge request pleroma/pleroma!1391
2019-07-09 15:35:28 +00:00
Mark Felder ce3ffad13a Remove duplicated test. New one is more comprehensive. 2019-07-09 10:23:22 -05:00
Mark Felder 31a59d6f23 Merge branch 'develop' into proxy-error 2019-07-09 10:18:30 -05:00
Mark Felder 98f13eac9e Capitalize 2019-07-09 10:11:42 -05:00
Mark Felder 4213a4e2aa Test that all ASCII encoded characters are preserved 2019-07-09 09:43:33 -05:00
rinpatch 376a55c97f Merge branch '161-incoming-replies-depth-limit' into 'develop'
[#161] Limited replies depth on incoming federation (memory leaks fix)

Closes #161

See merge request pleroma/pleroma!1361
2019-07-09 14:15:10 +00:00
Alexander Strizhakov 23d4781e73 change for local user search 2019-07-09 08:52:49 +00:00
lain abe2e8881f Testing: Don't federate in testing. 2019-07-09 15:30:51 +09:00
Ivan Tashkinov 46cf81a544 [#878] Formatting fix. 2019-07-08 20:05:02 +03:00
Ivan Tashkinov daff85a985 [#878] Refactored assumptions on embedded object presence in tests. Adjusted note factory to not embed object into activity. 2019-07-08 19:53:02 +03:00
rinpatch 72b88c82bc Mastodon API: Fix embedded relationships not being rendered inside of statuses 2019-07-08 12:07:08 +03:00
Sachin Joshi f5ad430974 make sure the url used by proxy is same as origin url
encoding or decoding it breaks some of the signed url
2019-07-07 14:13:40 +05:45
Haelwenn (lanodan) Monnier b5ba41a725
mastodon_websocket_test.exs: Test for Sec-WebSocket-Protocol header 2019-07-07 08:58:24 +02:00
Ivan Tashkinov ad8d86e7c6 Merge remote-tracking branch 'remotes/upstream/develop' into 161-incoming-replies-depth-limit 2019-07-06 10:17:06 +03:00
Maksim 6dadf5d6f4 [#1043] fix search accounts. 2019-07-05 04:22:08 +00:00
Egor Kislitsyn 11143c542a Remove `httpoison` from dependencies 2019-07-03 14:42:24 +07:00
Eugenij ab50c6b3ca Add fallback value to the admin report view.
This is to avoid 500 error when the reported user no longer exists
in the database.
2019-07-02 01:27:00 +00:00
Roman Chvanikov d2cb18b2a3 Merge branch 'develop' into feature/digest-email 2019-06-30 21:23:35 +03:00
Ivan Tashkinov a799418573 [#161] Merge remote-tracking branch 'remotes/upstream/develop' into 161-incoming-replies-depth-limit
# Conflicts:
#	CHANGELOG.md
2019-06-30 16:05:00 +03:00
Ivan Tashkinov 2b9d914089 [#161] Refactoring, documentation. 2019-06-30 15:58:50 +03:00
Eugenij 1f76740e10 Add hashtag filter to user statuses (GET /api/v1/accounts/:id/statuses) 2019-06-30 09:08:46 +00:00
Maksim acd20f166b [#1026] Filter.AnonymizeFilename added ability to retain file extension with custom text 2019-06-30 07:28:35 +00:00
rinpatch 4c60a562a7 Fix not being able to pin unlisted posts
Closes #1038
2019-06-29 22:27:42 +03:00
Ivan Tashkinov 5b7b1040b3 [#161] Limited replies depth on incoming federation in order to prevent memory leaks on recursive replies fetching. 2019-06-29 20:04:50 +03:00
kaniini d1549a6375 Merge branch 'feature/merge-mastodon-admin-views-for-reports' into 'develop'
Merge admin and mastodon user views for reports

See merge request pleroma/pleroma!1346
2019-06-29 00:12:09 +00:00
William Pitcock c22f0bfb80 test: add tests for mediaproxy warming policy 2019-06-28 23:41:42 +00:00
Roman Chvanikov 657277ffc0 Resolve conflicts 2019-06-29 00:52:50 +03:00
Maxim Filippov 90927e6a9a Kowalski, analysis! 2019-06-28 15:27:18 +03:00
Maxim Filippov 452ca5250d Merge admin and mastodon user views for reports 2019-06-28 15:15:32 +03:00
kaniini 0369a5db16 Merge branch 'idempotency-plug' into 'develop'
Add IdempotencyPlug and use it in all of the api

Closes #1003

See merge request pleroma/pleroma!1339
2019-06-27 04:20:17 +00:00
Alexander Strizhakov c6705144a2 don't delete config settings on admin update 2019-06-27 04:19:44 +00:00
Egor Kislitsyn 889a9c3a3f Polish IdempotencyPlug 2019-06-27 01:53:58 +07:00
Egor Kislitsyn 825077a5b0 Add Idempotency plug 2019-06-26 18:36:58 +07:00
Sergey Suprunenko d53fb55bb7 Return correct response when reply to a direct message is not direct itself 2019-06-26 10:59:27 +00:00
Maksim Pechnikov 4ad15ad2a9 add ignore hosts and TLDs for rich_media 2019-06-25 22:25:37 +03:00
Maksim Pechnikov 0cb8e710fb add test 2019-06-25 18:06:08 +03:00
Maksim a0c4ebb4d7 [#184] small refactoring reset password 2019-06-24 19:01:56 +00:00
Sergey Suprunenko 2c63c67512 Rework user deletion 2019-06-24 18:59:12 +00:00
Eugenij f2c03425b0 Broadcast conversation update when DM is deleted 2019-06-24 07:14:04 +00:00
kaniini 27b9605de0 Merge branch 'rich_media_titles_two' into 'develop'
Rich media titles two

See merge request pleroma/pleroma!1325
2019-06-23 05:43:11 +00:00
Alex S b37ede5df3 log capturing 2019-06-23 08:16:28 +03:00
Alex S 982cad0268 support for config groups 2019-06-23 08:16:16 +03:00
Sachin Joshi a0c65bbd6c Merge branch 'develop' into 'remove-avatar-header'
# Conflicts:
#   CHANGELOG.md
2019-06-23 03:25:50 +00:00
Alex S 410add1c30 support for tuples with more than 2 values 2019-06-22 17:30:53 +03:00
lain 0e415921cd Rich Media Parser: Do not return just a title if nothing else is there. 2019-06-22 16:22:59 +02:00
lain 58c4d5312b Revert "Revert "Merge branch 'fix/ogp-title' into 'develop'""
This reverts commit b6af80f769.
2019-06-22 15:12:57 +02:00
Alex S f0fccb7578 fix for int and modules 2019-06-22 09:01:30 +03:00
kaniini 55742d978d Merge branch 'feature/mrf-anti-link-spam' into 'develop'
implement anti link spam MRF

See merge request pleroma/pleroma!1307
2019-06-21 22:56:54 +00:00
kaniini e3534f5b3c Merge branch 'oauth_secure_redirect' into 'develop'
OAuth security improvements (`redirect_uri` listing enforcement)

See merge request pleroma/pleroma!1302
2019-06-21 22:31:12 +00:00
kaniini 720412bf24 Merge branch 'revert-6f5a0cc1' into 'develop'
Revert "Merge branch 'fix/ogp-title' into 'develop'"

See merge request pleroma/pleroma!1317
2019-06-21 22:28:46 +00:00
feld b6af80f769 Revert "Merge branch 'fix/ogp-title' into 'develop'"
This reverts merge request !1277
2019-06-21 11:36:32 +00:00
Egor Kislitsyn fc6e661672 Fix rate limiter tests 2019-06-21 16:47:16 +07:00
Alexander Strizhakov 32320c1ee9 Fixes for dynamic configuration 2019-06-20 17:43:57 +00:00
William Pitcock 21dacd4b15 unbreak polls 2019-06-19 16:33:49 +00:00
William Pitcock 736d8ad6be implement anti link spam MRF 2019-06-19 15:58:32 +00:00
Alexander Strizhakov e4fa6b99ac aliases for mix tasks
ecto.migrate
ecto.rollback
2019-06-19 10:33:33 +00:00
lain 5c6c4ce634 Merge branch 'fix/rich-media-hashtags-again' into 'develop'
Rich Media: Skip Microformats hashtags

See merge request pleroma/pleroma!1304
2019-06-19 08:48:41 +00:00
rinpatch 035368d363 Rich Media: Skip Microformats hashtags
When fixing this problem I incorrectly assumed a.hashtag is
the proper way for detecting hashtags, but it is just something Pleroma and
Mastodon add. Per microformats it should be detected by the presense of rel=tag.

This MR adds a check for rel=tag, but I still left a.hashtag just in case
2019-06-19 00:46:30 +03:00
Ivan Tashkinov 9f45f93949 Added more `redirect_uri` checks to prevent redirect to not explicitly listed URI. 2019-06-18 17:00:49 +03:00
rinpatch c7acca2abb Mastodon API: Sanitize display names
Closes #1000
2019-06-18 14:12:11 +03:00
rinpatch 49a49d3763 Merge branch 'removing-test-errors' into 'develop'
Removing test errors

See merge request pleroma/pleroma!1296
2019-06-17 14:16:23 +00:00
Haelwenn c34327b22e Merge branch 'fix/sanitize-report-content' into 'develop'
Sanitize HTML in ReportView

Closes #990

See merge request pleroma/pleroma!1293
2019-06-16 18:05:00 +00:00
Alex S 2e2edcb461 capturing errors 2019-06-16 20:10:12 +08:00
Alex S 0f59265a50 salmon fix
removed some ownership sandbox error
2019-06-16 20:10:12 +08:00
Maksim a04bf131e0 [#570] add user:notification stream 2019-06-16 10:33:25 +00:00
rinpatch bf6aa6f1a8 Fix report content stopping to be nullable 2019-06-16 13:06:12 +03:00
rinpatch 44de34d170 Credo fixes 2019-06-16 01:35:45 +03:00
rinpatch e943905bd7 Add tests for report view 2019-06-16 01:30:14 +03:00
kaniini 52b1b0e45d Merge branch '963_oob_oauth_redirect_fix' into 'develop'
[#963] No redirect on OOB OAuth authorize request with existing authorization

See merge request pleroma/pleroma!1276
2019-06-15 13:45:50 +00:00
lain a440cf856d Mastodon API: Return the token needed for the chat. 2019-06-15 10:59:35 +02:00
rinpatch 62ffc00a5d Merge branch 'feature/add-background-image-to-mastoapi' into 'develop'
AccountView: Add user background.

See merge request pleroma/pleroma!1280
2019-06-14 16:49:28 +00:00
Alexander Strizhakov c2ca1f22a2 it is changed in compile time
we can't change module attributes and endpoint settings in runtime
2019-06-14 15:45:05 +00:00
lain 7f48b90bfb Merge branch 'fix/hashtag-rich-media' into 'develop'
Fix hashtags being picked up by rich media parser

Closes #989

See merge request pleroma/pleroma!1288
2019-06-14 11:52:04 +00:00
Maksim ee4ed87fb4 [#948] /api/v1/account_search added optional parameters (limit, offset, following) 2019-06-14 11:39:57 +00:00
rinpatch d0ebc0edf3 Fix hashtags being picked up by rich media parser
Closes #989
2019-06-14 14:34:42 +03:00
lain eac298083f MastodonAPI: Add a way to update the background image. 2019-06-14 11:19:22 +02:00
lain 5965efb216 AccountView: Add user background. 2019-06-13 19:08:05 +02:00