Commit graph

471 commits

Author SHA1 Message Date
Egor
b9cdf6d3b9 Use User.get_cached* everywhere 2019-04-22 07:20:43 +00:00
Egor Kislitsyn
e8c2f9a73a Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-04-22 13:08:30 +07:00
Roman Chvanikov
24073f829f Refactor query to return only 1 message instead of 20 2019-04-21 00:40:41 +07:00
kaniini
9da8b287f8 Merge branch 'feature/database-compaction' into 'develop'
database compaction

See merge request pleroma/pleroma!473
2019-04-19 16:55:33 +00:00
rinpatch
f9865cf943 Stream out deletes, mistakingly removed when resolving merge conflicts 2019-04-19 00:47:02 +03:00
rinpatch
83589ca6a5 Merge branch 'develop' into feature/database-compaction 2019-04-18 12:56:38 +03:00
rinpatch
e31a22043b Fix media timeline depending on embeded object and add some guards 2019-04-18 08:31:08 +03:00
rinpatch
2abc09570f Use the preloaded object in tag queries 2019-04-18 01:37:04 +03:00
William Pitcock
36f78c6dcd activitypub: fix filtering of boosts from blocked users 2019-04-17 22:27:59 +00:00
William Pitcock
2140e164d7 activitypub: properly filter out transitive activities concerning blocked users 2019-04-17 20:05:09 +00:00
rinpatch
8e4d950f31 Remove updating reply count for embeded objects 2019-04-17 15:54:09 +03:00
rinpatch
627e5a0a49 Merge branch 'develop' into feature/database-compaction 2019-04-17 12:22:32 +03:00
rinpatch
5d73dca064 Remove inReplyToStatusId 2019-04-15 11:50:36 +03:00
lambda
184ae60b21 Merge branch 'bugfix/pleroma-email-naming' into 'develop'
Make the filename and module name of Pleroma.Emails.* orthogonal

See merge request pleroma/pleroma!1029
2019-04-12 10:41:09 +00:00
lambda
0a09692c7d Merge branch 'features/mastoapi/2.6.0-min_id-pagination' into 'develop'
Features: mastoapi-2.6.0 `min_id` pagination

Closes #351

See merge request pleroma/pleroma!976
2019-04-12 09:34:12 +00:00
Egor Kislitsyn
db4badc6aa move user disable into deactivation 2019-04-11 17:22:42 +07:00
Egor Kislitsyn
0f2f7d2cec Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-04-11 15:51:52 +07:00
lain
280172f6f6 Conversations: Create or bump on inserting a dm. 2019-04-10 16:33:45 +02:00
Haelwenn (lanodan) Monnier
cae0231731
s/Pleroma.AdminEmail/Pleroma.Emails.AdminEmail/ 2019-04-10 06:33:20 +02:00
Haelwenn (lanodan) Monnier
1791ee8ec4
s/Pleroma.Mailer/Pleroma.Emails.Mailer/ 2019-04-10 06:33:19 +02:00
rinpatch
fe5145eeaa Move putting fake attribute to lib/pleroma/web/activity_pub/utils.ex 2019-04-01 12:25:53 +03:00
rinpatch
d866b59eea oof 2019-04-01 11:58:08 +03:00
rinpatch
45ba10bf47 Fix the issue with HTML scrubber 2019-04-01 11:55:59 +03:00
rinpatch
cd387f8693 Add a fake option to lazy_put_actvity_defaults 2019-03-30 13:57:54 +03:00
rinpatch
1bb4d5d65b Implement fake status submit 2019-03-29 21:59:04 +03:00
Haelwenn (lanodan) Monnier
6f15224053
activity_pub.ex: Move limit/max_id restrictions to Pagination helpers 2019-03-28 17:18:59 +01:00
rinpatch
ce6d64bbd8 Fix missing announces in MastoAPI home timeline
Closes #762
2019-03-27 12:28:53 +03:00
eugenijm
568e348588 Increment replies_count on replies (MastoAPI) 2019-03-26 15:27:04 +03:00
William Pitcock
ce47eb8b29 activitypub: when fetching objects, use the preloaded object from the synthesized activity 2019-03-23 03:05:10 +00:00
William Pitcock
73efe95368 activitypub: allow skipping preload in some cases (like certain tests where the preload is obnoxious) 2019-03-23 01:09:12 +00:00
William Pitcock
ba7299fc87 activitypub: add missing with_preloaded_object() 2019-03-23 00:53:35 +00:00
William Pitcock
e4307cadc8 activitypub: splice in the child object if we have one 2019-03-23 00:40:08 +00:00
William Pitcock
9aea7cc224 activitypub: preload child objects when fetching timelines 2019-03-23 00:10:17 +00:00
kaniini
6d6f48d079 Merge branch 'feature/federated-flags' into 'develop'
Federated reports

See merge request pleroma/pleroma!935
2019-03-16 19:27:56 +00:00
Karen Konou
d8244c2a1b remove unused function 2019-03-15 15:03:03 +01:00
Karen Konou
15b21d1983 refactor filtering mechanism 2019-03-15 14:18:53 +01:00
Karen Konou
c8f31e0bc2 Implement mastodon's reblog hiding feature 2019-03-15 14:18:21 +01:00
William Pitcock
423fd07928 activitypub: inject to/cc fields on non-forwarded reports since Flag activities are now Forwardable 2019-03-14 19:52:08 +00:00
William Pitcock
5c7b774f09 reports: unify sending e-mail for both remote and local reports 2019-03-14 19:44:08 +00:00
William Pitcock
64b0120d67 activitypub: add support for forwarding reports 2019-03-14 19:36:17 +00:00
rinpatch
34fc0dca2e Merge branch 'hotfix/delete-activities' into 'develop'
Fix delete activities not federating

See merge request pleroma/pleroma!933
2019-03-14 17:49:00 +00:00
rinpatch
e630e5e135 Fix delete activities not federating 2019-03-14 20:43:14 +03:00
Haelwenn (lanodan) Monnier
23960309a0
[Credo] Change quoted string with 3+ quotes to sigils 2019-03-13 04:26:56 +01:00
Haelwenn (lanodan) Monnier
c42d34b2ec
[Credo] fix Credo.Check.Readability.MaxLineLength 2019-03-13 04:26:56 +01:00
Haelwenn (lanodan) Monnier
a3a9cec483
[Credo] fix Credo.Check.Readability.AliasOrder 2019-03-13 04:26:54 +01:00
eugenijm
6038c8a753 Broadcast deleted activity id on deletion to conform to MastoAPI streamig spec 2019-03-11 09:02:03 +03:00
Karen Konou
c2faae70df Adjust delete activity audience to match the deleted object 2019-03-07 12:26:03 +01:00
Karen Konou
6a69ece437 Revert existing object check 2019-03-07 11:53:15 +01:00
Karen Konou
28d5b40d0a Add handling of objects not in database 2019-03-05 23:15:22 +01:00
Egor Kislitsyn
eb84de0143 allow users to disable their own account 2019-03-04 19:55:11 +07:00
Karen Konou
1445dc25d4 fix format 2019-03-04 11:18:45 +01:00
Karen Konou
aab86698a5 Expand "to" of delete activities 2019-03-04 11:18:45 +01:00
kaniini
c93479c6f5 Merge branch 'count-only-public-statuses' into 'develop'
Increment user note count only on public activities #703

See merge request pleroma/pleroma!884
2019-03-03 15:49:19 +00:00
eugenijm
d5418e9ff7 Remove follow_request_count as it's not needed for FE anymore.
MastoFE uses `GET /api/v1/follow_requests` and PleromaFE uses
`GET /api/pleroma/friend_requests` which they query on the initial page
load.
2019-03-03 18:42:27 +03:00
lambda
9b63fda9c7 Merge branch 'fix/dont-show-dms-in-mentions-timeline' into 'develop'
[#675] Do not show DMs in mentions timeline

See merge request pleroma/pleroma!877
2019-03-03 11:13:59 +00:00
eugenijm
c46950d3b1 Increment user note count only on public activities 2019-03-03 14:08:43 +03:00
William Pitcock
689b0730f8 activitypub: fix date header format
HTTP date header specification says that days must always be two-digit.
Accordingly, change the format string used to ensure days are always
represented as two-digit (e.g. 01).
2019-03-01 12:22:45 +00:00
rinpatch
1341ee650e [#675] Do not show DMs in mentions timeline 2019-03-01 09:37:29 +03:00
lain
c4235f96bd Add with_muted param. 2019-02-27 16:37:42 +01:00
lain
9e0686efa6 Move visibility into own module. 2019-02-22 13:29:52 +01:00
lain
62296f5a25 Fix private post card handling. 2019-02-22 12:02:51 +01:00
William Pitcock
f8a72f2997 activitypub: sign http date header 2019-02-21 00:23:17 +00:00
Egor
bff9eb5ef7 Reports 2019-02-20 16:51:25 +00:00
Ekaterina Vaartis
5a46d37af9 Update the mute implementation to the current codebase
Make it part of the info thing (and do a migration to ensure it's there)
2019-02-19 23:09:16 +03:00
Ekaterina Vaartis
f41f017bbc Implement muting, add it to the mastodon API 2019-02-19 21:49:55 +03:00
lambda
f25a3f4f78 Merge branch 'fix/check-follower-collection-in-is_private' into 'develop'
properly check for follower address in is_private?

See merge request pleroma/pleroma!841
2019-02-19 14:08:19 +00:00
rinpatch
96dcacade1 properly check for follower address in is_private? 2019-02-19 13:23:13 +03:00
kaniini
833161b5d2 Merge branch 'feature/jobs' into 'develop'
Job Queue

See merge request pleroma/pleroma!732
2019-02-18 19:43:06 +00:00
kaniini
cd019a5927 Merge branch 'follow-request-count' into 'develop'
Follow request count

See merge request pleroma/pleroma!817
2019-02-18 04:01:26 +00:00
eugenijm
ecdf0657ba Add logic for keeping follow_request_count up-to-date on the follow,
`approve_friend_request`, and `deny_friend_request` actions.
Add follow_request_count to the user view.
2019-02-15 12:20:20 +03:00
William Pitcock
56862f4ce1 activitypub: clean up logging statements a little 2019-02-14 19:42:33 +00:00
Egor Kislitsyn
305d219413 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/jobs
# Conflicts:
#	lib/pleroma/web/federator/federator.ex
#	lib/pleroma/web/websub/websub.ex
2019-02-11 13:54:21 +07:00
Haelwenn (lanodan) Monnier
6a6a5b3251
de-group alias/es 2019-02-09 16:31:17 +01:00
Haelwenn (lanodan) Monnier
d2e4eb7c74
Web.ActivityPub.ActivityPub: assign the Enum.filter to recipients & simplify it 2019-02-09 14:59:21 +01:00
Haelwenn (lanodan) Monnier
60ea29dfe6
Credo fixes: alias grouping/ordering 2019-02-09 14:59:20 +01:00
Haelwenn (lanodan) Monnier
8bcfac93a8
Make credo happy 2019-02-09 14:59:20 +01:00
Egor Kislitsyn
6f05f448f8 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/jobs 2019-02-06 11:33:00 +07:00
lain
f3c8b02d65 Massage index until it actually does the stuff we want.
Also makes the index a lot smoler.
2019-02-04 23:47:29 +01:00
Egor Kislitsyn
3a3a3996b7 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/jobs
# Conflicts:
#	lib/pleroma/web/activity_pub/activity_pub.ex
#	lib/pleroma/web/federator/federator.ex
2019-02-04 20:50:28 +07:00
Ivan Tashkinov
3913b0196e [#582] Made single-pub task call Instance.set_reachable/1 if set_reachable is not specified.
Added tests.
2019-02-03 13:28:13 +03:00
Ivan Tashkinov
b40b4bc4e5 [#582] Optimized federation retirement by reducing the number of SQL calls
(calling `Instances.set_reachable/1` only if instance had `unreachable_since`,
calling `Instances.set_unreachable/1` only if instance had nil `unreachable_since`).
2019-02-03 12:41:27 +03:00
href
b3b0855456 Merge branch '534_federation_targets_reachability' into 'develop'
[#534] Unreachable federation targets retirement

Closes #534

See merge request pleroma/pleroma!703
2019-02-01 09:14:35 +00:00
Egor Kislitsyn
d3677d2b4d Merge remote-tracking branch 'MAIN/develop' into feature/jobs 2019-01-31 15:07:49 +07:00
Ivan Tashkinov
92753b0cd9 [#534] Made federation push sender be determined basing on content instead of referer header. Updated tests. 2019-01-29 13:12:28 +03:00
Egor Kislitsyn
55affbca7f add a job queue 2019-01-28 22:17:17 +07:00
Ivan Tashkinov
d3f9e6f6fe [#534] Merged upstream/develop. 2019-01-28 15:39:14 +03:00
Ivan Tashkinov
1d2f41642c [#534] Various tweaks. Tests for Instances and Instance. 2019-01-28 15:25:06 +03:00
Ivan Tashkinov
9560abea10 [#534] Refactoring / tweaks per MR review. 2019-01-28 11:03:52 +03:00
William Pitcock
91ef64a1ec activitypub: prime OGP crawler cache when new messages are inserted into the database 2019-01-28 06:07:18 +00:00
kaniini
5eb81d2c72 Merge branch 'features/mastoapi-multi-hashtag' into 'develop'
MastodonAPI multi-hashtag

See merge request pleroma/pleroma!652
2019-01-27 12:45:50 +00:00
Haelwenn (lanodan) Monnier
5a84def6a6
Fix the logic in multi-hashtag TLs 2019-01-26 04:46:02 +01:00
Haelwenn (lanodan) Monnier
4ad0ad14ed
Web.ActivityPub.ActivityPub: Simplify multi-hashtag, add tests 2019-01-26 04:46:01 +01:00
Haelwenn (lanodan) Monnier
1a9bb4daa0
[Web.ActivityPub.ActivityPub]: Fix restrict_tag()
Thanks to Senko-san <kurisu@iscute.moe> for the help on array-matching
2019-01-26 04:46:01 +01:00
Haelwenn (lanodan) Monnier
f9cae0d04f
[WIP,MastoAPI] Multi-tag timelines 2019-01-26 04:45:36 +01:00
Haelwenn (lanodan) Monnier
15aa45ae8a
Web.ActivityPub.ActivityPub: Fix check_remote_limit/1 against activities with content: nil 2019-01-26 03:50:49 +01:00
kaniini
4c99b6d35a Merge branch 'fix/tusky-dm' into 'develop'
Add actor to recipients list

Closes #390

See merge request pleroma/pleroma!683
2019-01-25 05:19:32 +00:00
Ivan Tashkinov
3e9399ec0b [#534] Optimized bulk publish ops to filter on reachability early. Instance refactoring. 2019-01-24 19:15:23 +03:00
Ivan Tashkinov
8654a591f0 [#534] Updating external instances reachability on incoming federation. 2019-01-24 17:37:23 +03:00
Ivan Tashkinov
20b54366ee [#534] Federation publish requests status control (enforced 2xx response code check). 2019-01-24 11:54:52 +03:00
Ivan Tashkinov
f161a92cb1 [#534] Initial implementation of unreachable federation targets retirement. 2019-01-23 18:37:25 +03:00
href
cdc5e6ff5c
ActivityPub: restrict_since/restrict_max: ignore empty param 2019-01-23 11:26:35 +01:00
lambda
8cd853ce0c Merge branch '530_federator_user_info_overwrite_fix' into 'develop'
[#530] Prevents user `info` from being overwritten because of race conditions

Closes #530

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

See merge request pleroma/pleroma!458
2019-01-21 12:35:10 +00:00
Ivan Tashkinov
a4d3fec8a7 [#502] Code comments update. 2019-01-21 14:52:41 +03:00
Ivan Tashkinov
aa480f4a8b [#530] Prevents user info from being overwritten because of race conditions
and non-partial update of embed (in WebFinger.ensure_keys_present and other places).
2019-01-21 14:16:51 +03:00
lain
cf1f35a93a Send delete event over Mastodon streaming api
Closes #116
2019-01-20 13:00:46 +01:00
William Pitcock
aa37313416 activitypub: short-circuit is_public?() with directMessage flag check 2019-01-20 02:33:21 +00:00
William Pitcock
ddae43eb43 activitypub: add is_private?/is_direct? helpers 2019-01-20 02:27:48 +00:00
Maxim Filippov
e116e55cab Add actor to recipients 2019-01-18 22:40:52 +03:00
William Pitcock
75a9b2a851 activitypub: add a match clause for objects, not just activities 2019-01-17 23:32:16 +00:00
William Pitcock
33b473cc02 activitypub: allow is_public?() to work on any type of map representing an AS2 object 2019-01-17 23:21:31 +00:00
William Pitcock
2479e88815 activitypub: announce: add new public parameter 2019-01-17 23:21:31 +00:00
lambda
fd2f1258fb Merge branch 'load-all-dms' into 'develop'
Remove recent activity restriction.

See merge request pleroma/pleroma!644
2019-01-14 18:49:53 +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
lain
5027f82cde Add activity visibility index. 2019-01-09 16:45:09 +01:00
lain
9854978b8b Remove recent activity restriction.
This should be fine now, everything should be covered by indices.
2019-01-09 12:38:23 +01:00
Egor Kislitsyn
380e9fba21 add pinned posts 2019-01-07 20:45:33 +07: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
lain
096a927805 Merge remote-tracking branch 'origin/develop' into pool-usage 2019-01-01 14:19:55 +01:00
lain
d4799e0dc2 Remove default pool, it's used automatically anyway. 2019-01-01 13:49:24 +01:00
William Pitcock
980b5288ed update copyright years to 2019 2018-12-31 15:41:47 +00: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
Vyr Cossont
e4562105e7 Implement exclude_reblogs and include_rts 2018-12-26 21:38:00 -08:00
lain
5811e65e67 Add some hard limits on inserted activities. 2018-12-26 12:39:35 +01:00
William Pitcock
2791ce9a1f add license boilerplate to pleroma core 2018-12-23 20:56:42 +00:00
Maksim Pechnikov
074fa790ba fix compile warnings 2018-12-09 20:50:08 +03:00
kaniini
abead01ab6 Merge branch 'correct-and-improve-http-options' into 'develop'
Correct and improve http options

See merge request pleroma/pleroma!505
2018-12-06 15:57:56 +00:00
Hakaba Hitoyo
a09ed0f5af avoid mix format bug 2018-12-06 18:41:29 +09: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
Hakaba Hitoyo
96ba95df2e remove follow_redirect options 2018-12-06 11:38:33 +09:00
Hakaba Hitoyo
27792b2d77 remove pool and timeout options which duplicate with the default 2018-12-06 11:23:15 +09:00
Ivan Tashkinov
3b5be09f45 [#210] Stylistic change. 2018-12-05 21:48:21 +03:00
Ivan Tashkinov
c4f3c5e939 [#210] Stylistic change. 2018-12-05 20:23:28 +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
Maksim Pechnikov
87109482f3 status_code -> status 2018-12-04 14:04:06 +03:00
William Pitcock
f85949cc69 object: factor out fetching functions into Pleroma.Object.Fetcher module 2018-12-04 04:52:09 +00:00
William Pitcock
e8caecb5c7 object: move object containment out of transmogrifier into it's own module 2018-12-04 04:52:09 +00:00
William Pitcock
6f90f2c3ac activitypub: rework thread filtering for split object view 2018-12-04 04:52:09 +00:00
William Pitcock
d13d953385 activitypub: implement activity flattening 2018-12-04 04:52:09 +00:00
William Pitcock
4482ce7e2d activitypub: normalize objects when streaming them out 2018-12-04 04:52:09 +00:00
lain
c443c9bd72 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into validate-user-info 2018-12-01 09:55:46 +01:00
href
b19597f602
reverse proxy / uploads 2018-11-30 18:00:47 +01:00
lain
0896cf4c0f Fix most mastodon api bugs. 2018-11-20 20:12:39 +01:00
lain
4c918392c6 Fix most User tests. 2018-11-18 21:40:52 +01:00
William Pitcock
c88533209c activitypub: user fetching: use fetch_and_contain_remote_object_from_id() 2018-11-17 20:16:03 +00:00
William Pitcock
daa8ec3d62 activitypub: factor out AP object fetching to it's own function and add ID-based containment 2018-11-17 20:15:59 +00:00
William Pitcock
603fccf175 activitypub: fetch_object_from_id(): prefer actor over attributedTo to avoid spoofing 2018-11-17 18:17:17 +00:00
href
5bb88fd174
Runtime configuration
Related to #85

Everything should now be configured at runtime, with the exception of
the `Pleroma.HTML` scrubbers (the scrubbers used can be
changed at runtime, but their configuration is compile-time) because
it's building a module with a macro.
2018-11-06 19:41:15 +01:00
William Pitcock
10f3958468 object: return the deleted object as well 2018-11-01 07:47:50 +00:00