Commit graph

4317 commits

Author SHA1 Message Date
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
Thibaut Girka
a187dbb326 Add preferredUsername to service actors so Mastodon can resolve them 2019-08-03 17:24:57 +00:00
Haelwenn (lanodan) Monnier
8815f07058
tasks/pleroma/user.ex: Fix documentation of --max-use and --expire-at
Closes: https://git.pleroma.social/pleroma/pleroma/issues/1155

[ci skip]
2019-08-02 23:38:02 +02:00
lain
eee98aaa73 Pleroma API: Add endpoint to get conversation statuses. 2019-08-02 19:53:08 +02:00
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
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
f42719506c Fix credo issues 2019-07-31 14:20:34 +03: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
Ariadne Conill
3850812503 twitter api: utils: rework do_remote_follow() to use CommonAPI
Closes #1138
2019-07-29 20:00:57 +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
Eugenij
0bee2131ce Add mailerEnabled to the NodeInfo metadata 2019-07-29 16:17:40 +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
kaniini
488c06b6f5 Merge branch 'develop' into 'develop'
Fix HTTP sig tweak on KeyId

See merge request pleroma/pleroma!1496
2019-07-28 20:25:35 +00:00
Sergey Suprunenko
02dc651828 Handle 303 redirects 2019-07-28 20:24:39 +00:00
Thomas Sileo
961e778531 Fix HTTP sig tweak on KeyId 2019-07-28 14:17:56 +02: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
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
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
kPherox
ac27b94ffa
Change to not require magic-public-key on WebFinger 2019-07-25 00:21:32 +09: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
sadposter
f5d574f4ed check both item and parent domain blocks 2019-07-24 11:35:16 +01:00
Sadposter
48bd3be9cb move domain block check to with block 2019-07-24 11:11:33 +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
kaniini
bd265acf91 Merge branch 'chore/adminapi-deprecated-endpoints' into 'develop'
Router: Remove deprecated AdminAPI endpoints

See merge request pleroma/pleroma!1466
2019-07-23 19:48:34 +00:00
Haelwenn (lanodan) Monnier
90be91b0e0
Router: Remove deprecated AdminAPI endpoints 2019-07-23 21:35:25 +02: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
6a79bb12c3 Fix function 2019-07-23 13:53:05 -05:00
Sadposter
54a161cb7a move unauth'd user blocks?/2 check 2019-07-23 19:44:47 +01: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
452980652d Mix format 2019-07-23 15:13:05 +01:00
Sadposter
eacf61d823 fix unauthenticated req to favourited/rebloggd_by 2019-07-23 15:08:33 +01:00
kPherox
e818381042
Use User.get_or_fetch/1 instead of OStatus.find_or_make_user/1 2019-07-23 19:47:27 +09: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
kaniini
a00aab3402 Merge branch 'fix/rich-media-ttl-fallback' into 'develop'
Fix rich media parser failing when no TTL can be found by image TTL setters

See merge request pleroma/pleroma!1460
2019-07-21 16:05:58 +00:00
rinpatch
3368174785 Fix rich media parser failing when no TTL can be found by image TTL
setters
2019-07-21 18:22:22 +03:00
Ariadne Conill
bc6c5c513a router: ensure the AP sharedinbox path is registered first 2019-07-21 03:52:06 +00:00
rinpatch
196cad46f3 Resolve merge conflicts 2019-07-20 22:04:47 +03:00
rinpatch
c3ecaea64d Apply suggestion to lib/pleroma/object/fetcher.ex 2019-07-20 18:53:00 +00:00
rinpatch
d4ee76ab63 Apply suggestion to lib/pleroma/user.ex 2019-07-20 18:52:41 +00:00
Roman Chvanikov
8292331b35 Merge branch 'develop' into feature/digest-email 2019-07-20 16:41:58 +03:00
Ivan Tashkinov
d0198fe215 [#1112] Preserving id on user insert conflict on order not to violate conversation_partipations_user_id_fkey constraint. 2019-07-20 13:03:34 +03:00
Roman Chvanikov
ae4fc58589 Remove flavour from userinfo 2019-07-20 01:24:01 +03:00
Roman Chvanikov
36049f08ef Merge develop 2019-07-20 01:03:25 +03:00
93df0796f0 Merge branch 'feature/matstodon-statuses-by-name' into 'develop'
Feature/matstodon statuses by name

See merge request pleroma/pleroma!1211
2019-07-19 21:59:18 +00:00
Mark Felder
9169f331b6 Merge branch 'develop' into feature/matstodon-statuses-by-name 2019-07-19 16:55:10 -05: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
Ariadne Conill
9a8eb2c94d mix: add pleroma.user unsubscribe_all_from_instance 2019-07-19 19:25:29 +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
a8af0ac053 mapped signature plug: fix user lookup 2019-07-18 16:27:50 +00:00
Ariadne Conill
5ea0cd69f7 mapped signature plug: don't invalidate in cases where a signature is actually not present (testsuite) 2019-07-18 16:01:21 +00:00
Ariadne Conill
184fa61fb3 plugs: add MappedSignatureToIdentityPlug 2019-07-18 15:38:45 +00:00
Ariadne Conill
18d8d12d53 signature: make key_id_to_actor_id() public 2019-07-18 15:35:42 +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
399acd4c42 fetcher: sign object fetches if configured 2019-07-17 22:58:46 +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
cf9cb953d5 activitypub: represent internal fetch actor 2019-07-17 17:34:57 +00:00
Ariadne Conill
d930e5d5c3 activitypub: introduce internal fetch service actor 2019-07-17 17:14:08 +00:00
Ariadne Conill
62e5ff624e user: add is_internal_user? helper function 2019-07-17 17:12:42 +00:00
Ariadne Conill
0a6f6e1b5b webfinger: allow resolution of usernames with dots in them (internal actors) 2019-07-17 16:59:29 +00:00
Ariadne Conill
a9d6a12bb3 activitypub: controller: rework the way the relay actor is presented so the code can be reused 2019-07-17 16:33:08 +00:00
Ariadne Conill
4885473be2 user: refactor get_or_create_instance_user() into get_or_create_service_actor_by_id() 2019-07-17 16:03:05 +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
Ivan Tashkinov
889dc17abd [#1094] Rate-limited follow & unfollow actions. 2019-07-16 19:18:30 +03:00
Roman Chvanikov
e7c175c943 Use PleromaJobQueue for scheduling 2019-07-16 16:49:50 +03:00
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
Egor Kislitsyn
70439494af Fix typo 2019-07-16 14:56:07 +07: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
1ed24bcc76 Status View: Poll ids are strings.
All ids in mastodon are strings, in general.
2019-07-16 12:47:40 +09:00
Mark Felder
ffb4eb9779 Merge branch 'develop' into feature/matstodon-statuses-by-name 2019-07-15 17:10:27 -05:00
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
Alex S
33fd4c0ed7 query fix 2019-07-15 20:53:52 +03:00
kaniini
ee5250ae56 Merge branch 'sha512-crypt' into 'develop'
detect and use sha512-crypt for stored password hash.

See merge request pleroma/pleroma!1422
2019-07-15 16:13:17 +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
Moonman
105f437ce9 formatting 2019-07-15 08:36:51 -07:00
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
d86a97abfb Add an explanation comment to Publisher.publish/2 2019-07-15 14:20:31 +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
Roman Chvanikov
b052a9d4d0 Update DigestEmailWorker to compile and send emails via queue 2019-07-14 22:32:11 +03:00
Sergey Suprunenko
dce8ebc9ea Unfollow should also unsubscribe 2019-07-14 19:25:03 +00:00
Roman Chvanikov
168dc97c37 Make opts optional in Pleroma.Notification.for_user_query/2 2019-07-14 22:04:55 +03: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
Moonman
f98f7ad1b9 detect and use sha512-crypt for stored password hash. 2019-07-14 09:48:42 -07: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
2592934480
Object.Fetcher: Keep the with-do block as per kaniini proposition 2019-07-14 17:28:25 +02:00
Haelwenn (lanodan) Monnier
e1c08a67d6
Object.Fetcher: Fallback to OStatus only if AP actually fails 2019-07-14 17:05:31 +02:00
Alexander Strizhakov
e7c39b7ac8 Feature/1072 muting notifications 2019-07-14 13:29:31 +00:00
Haelwenn (lanodan) Monnier
40d0a198e2
Object.Fetcher: Handle error on Containment.contain_origin/2 2019-07-14 14:58:47 +02:00
Alex S
f4447d82b8 parsers configurable 2019-07-14 09:21:56 +03: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
rinpatch
d06d1b751d Use atoms when updating user info 2019-07-14 00:21:35 +03:00
rinpatch
e5b850a991 Refactor fetching follow information to a separate function 2019-07-13 23:56:10 +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
kaniini
f4c001062e Merge branch '1041-status-actions-rate-limit' into 'develop'
Rate-limited status actions (per user and per user+status).

Closes #1041

See merge request pleroma/pleroma!1410
2019-07-13 14:17:17 +00:00
Ivan Tashkinov
d72876c57d [#1041] Minor refactoring. 2019-07-13 15:21:50 +03:00
Haelwenn
9497d14f09 Merge branch 'fix/hackney-global-options' into 'develop'
Merge the default options with custom ones in ReverseProxy and Pleroma.HTTP and workaround for remote server certificate chain issues

See merge request pleroma/pleroma!1409
2019-07-13 11:55:09 +00:00
Ivan Tashkinov
369e9bb42f [#1041] Rate-limited status actions (per user and per user+status). 2019-07-13 14:49:39 +03:00
rinpatch
b001b8891a Merge the default options with custom ones in ReverseProxy and
Pleroma.HTTP
2019-07-12 23:52:26 +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
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
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
ed8ce21a22 Fix unused import warning 2019-07-10 18:10:09 +07:00
Egor Kislitsyn
a42da8f311 Fix response 2019-07-10 18:10:09 +07:00
Egor Kislitsyn
5104f65b69 Wrap error messages into gettext helpers 2019-07-10 18:10:09 +07:00
Egor Kislitsyn
26a6871609 Add translation helpers 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
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
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
670a77ecbc Merge branch 'feature/allow-user-query-via-id' into 'develop'
Admin API: Allow querying user by ID

See merge request pleroma/pleroma!1380
2019-07-09 17:53:41 +00: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
Mark Felder
9a9b60cfbc Merge branch 'develop' into feature/allow-user-query-via-id 2019-07-09 12:49:04 -05: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
Haelwenn
1ab4e35f27 Merge branch 'enable-ogp-by-default' into 'develop'
Do not crash if metadata fails to render and enable OGP and TwitterCard by default

Closes #1034

See merge request pleroma/pleroma!1388
2019-07-09 16:07:20 +00:00
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
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
31a59d6f23 Merge branch 'develop' into proxy-error 2019-07-09 10:18:30 -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
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
44b2e1fdad Formatting 2019-07-08 14:05:57 +03:00
rinpatch
9e58d3c624 FallbackRedirector: Do not crash on Metadata rendering errors 2019-07-08 12:59:49 +03:00
rinpatch
7f609ee8f4 OGP/TwitterCard: Add fallbacks in case the attachment key is nonexistent 2019-07-08 12:16:32 +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
e174614eb9
MastoAPI Streaming: Keep compatibility with access_token 2019-07-07 08:49:29 +02:00
KokaKiwi
a7885748c7
MastoAPI streaming: Replace access_token with Sec-WebSocket-Protocol 2019-07-06 20:29:17 +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
rinpatch
3589b30ddc Merge branch 'fix/1058-uploads-dir-consistency' into 'develop'
tasks/pleroma/instance.ex: Change :upload_dir to :uploads_dir

Closes #1058

See merge request pleroma/pleroma!1378
2019-07-05 18:55:27 +00:00
Maxim Filippov
6c50fbcd14 Admin API: Allow querying user by ID 2019-07-05 19:33:53 +03:00
Maksim
6dadf5d6f4 [#1043] fix search accounts. 2019-07-05 04:22:08 +00:00
Haelwenn (lanodan) Monnier
977c2d0448
tasks/pleroma/instance.ex: Change :upload_dir to :uploads_dir
Closes: https://git.pleroma.social/pleroma/pleroma/issues/1058
2019-07-05 06:19:27 +02:00
Eugenij
15eb1235ed Expose skip_thread_containment in nodeinfo 2019-07-03 18:35:57 +00:00
Eugenij
5184b0f41a Use fallback values for search queries
This is to make sure the entire request doesn't return a 500 error if
user or status search times out.
2019-07-03 10:19:51 +00:00
Egor Kislitsyn
4f42093220 Remove Uploaders.Swift 2019-07-03 14:11:04 +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
034986e1fd MRF: add mediaproxy warming policy 2019-06-28 23:19:20 +00:00
Roman Chvanikov
657277ffc0 Resolve conflicts 2019-06-29 00:52:50 +03:00
lain
2286f62a36 Merge branch 'release-docs' into 'develop'
Docs on OTP releases

See merge request pleroma/pleroma!1315
2019-06-28 15:26:09 +00: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
159630b21c Fix credo warning 2019-06-26 19:19:07 +07:00
Egor Kislitsyn
0b8aeac0f3 Remove previous idempotency implementation from post_status 2019-06-26 18:49:14 +07:00
Egor Kislitsyn
74132e3715 Enable IdempotencyPlug for the all API 2019-06-26 18:42:49 +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
kaniini
24bcc209f9 Merge branch 'refactoring/fix_render_view' into 'develop'
Fix Controller.render/4 deprecation

See merge request pleroma/pleroma!1337
2019-06-26 05:34:26 +00:00
kaniini
9f8e645dce Merge branch 'feature/configurable-pack-extensions' into 'develop'
Make default pack extensions configurable and default to png and gif

See merge request pleroma/pleroma!1338
2019-06-26 05:34:02 +00:00
rinpatch
41e4752950 Make default pack extensions configurable and default to png and gif 2019-06-26 06:48:59 +03:00
Maksim Pechnikov
5c0f646cef fix validate_page_url 2019-06-26 06:27:17 +03:00
Roman Chvanikov
a7a54068f9 Fix Controller.render/4 deprecation 2019-06-26 03:28:02 +03:00
Maksim Pechnikov
4ad15ad2a9 add ignore hosts and TLDs for rich_media 2019-06-25 22:25:37 +03:00
Maksim Pechnikov
0276cf5a02 fix validate_url for private ip 2019-06-25 17:44:24 +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
kaniini
8b7860f12f Merge branch 'admin-config' into 'develop'
Admin config

See merge request pleroma/pleroma!1328
2019-06-23 05:42:37 +00: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
rinpatch
3ac5ecbac1 Support RUM indexes in the config generator 2019-06-22 12:54:16 +03:00
rinpatch
51760c84b9 Merge branch 'develop' into release-docs 2019-06-22 12:44:20 +03:00
rinpatch
53c73cd1a3 Merge branch 'fix/ecto-tasks-release' into 'develop'
Ecto tasks: Resolve relative path using the application directory instead of cwd and load the application before doing anything

See merge request pleroma/pleroma!1322
2019-06-22 09:19:10 +00:00
William Pitcock
6426301407 notifications: fix notification generation for non-create activities
in 300d94c62, an Object.normalize() call was introduced.  calling Object.normalize()
on an activity with a non-object URI (say, a user) causes Really Bad Things to happen.
so don't do that.
2019-06-22 06:44:47 +00:00
Alex S
f0fccb7578 fix for int and modules 2019-06-22 09:01:30 +03:00
rinpatch
19f16e829d Load the application before executing the create task 2019-06-22 04:33:46 +03:00
rinpatch
ebee9f59d8 Ecto tasks: Resolve relative path using the application directory
instead of cwd and load the application before doing anything

In OTP releases cwd != app directory and the configuration is read
only if the application is loaded
2019-06-22 04:17:04 +03:00
rinpatch
ee4e7c6570 Remove the getting started steps from pleroma.instance gen task
They are not compatible with every platform, different for OTP releases
and may become outdated. We are better off just telling people to refer
to the installation guides for their particular platform
2019-06-22 02:07:05 +03:00
rinpatch
452d5d3231 Merge branch 'develop' into release-docs 2019-06-22 02:00:18 +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
William Pitcock
127a5a7d65 change the anti-link-spam MRF implementation to use old_user? instead of the previous name 2019-06-21 22:27:14 +00:00
rinpatch
e76115989a Move config templates to priv so they can be found in releases 2019-06-21 19:54:04 +03:00
b6af80f769 Revert "Merge branch 'fix/ogp-title' into 'develop'"
This reverts merge request !1277
2019-06-21 11:36:32 +00:00
rinpatch
89fead9250 Default DB configuration to false and set the default database name to
`pleroma` instead of `pleroma_dev`
2019-06-21 06:42:04 +03:00
rinpatch
2437f51284 Merge branch 'fix/config-gen-releases' into 'develop'
Refactor mix tasks a bit and make config generator work with releases

See merge request pleroma/pleroma!1312
2019-06-20 21:25:34 +00:00
Alexander Strizhakov
32320c1ee9 Fixes for dynamic configuration 2019-06-20 17:43:57 +00:00
rinpatch
69070e641d Allow setting upload/static directories in the config generator 2019-06-20 03:59:16 +03:00
rinpatch
144e2e3e0b Remove deprecated dedupe_media from the config template 2019-06-20 03:40:00 +03:00
rinpatch
fe3a830b80 Remove a useless binding from config template call 2019-06-20 02:34:19 +03:00
rinpatch
f8c64dd4c0 Release Tasks: Ensure the application is loaded before getting the
modules

Needed for non-rpc tasks to work
2019-06-20 02:21:48 +03:00
rinpatch
8c7a382027 Rename Pleroma.Mix.Tasks.Common -> Mix.Pleroma and import it's functions
instead of aliasing

This seems to be the convention for functions that can be reused between
different mix tasks in all Elixir projects I've seen and it gets rid on
an error message when someone runs mix pleroma.common

Also in this commit by accident:
- Move benchmark task under a proper namespace
- Insert a space after the prompt
2019-06-20 02:08:02 +03:00
Ivan Tashkinov
363618207c Apply suggestion to lib/mix/tasks/pleroma/user.ex 2019-06-19 19:39:53 +00:00
Ivan Tashkinov
71fb75b7ef User sign out mix task. 2019-06-19 22:29:36 +03: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
rinpatch
df2dab69a7 Merge branch 'begone-the-dot-hack' into 'develop'
Remove the dot hack when posting from Mastodon API and add proper errors when the post exceeds character limits

See merge request pleroma/pleroma!1298
2019-06-19 10:22:23 +00:00