Commit graph

9408 commits

Author SHA1 Message Date
Haelwenn
7f0b3161ea Merge branch 'akoma/deactivated-users' into 'develop'
Timeline query performance improvements

See merge request pleroma/pleroma!3779
2022-11-20 23:40:58 +00:00
86d1358b4f fix
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-20 23:48:05 +01:00
b001a2c2c8 Verify link ownership with rel="me"
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-20 23:19:52 +01:00
tusooa
9d99e76a3a
Fix unit tests 2022-11-20 00:57:04 -05:00
tusooa
0e0c316c76
Fix report api 2022-11-20 00:35:52 -05:00
tusooa
a69e9ae2ef
Flag an Object, not an Activity 2022-11-19 23:51:43 -05:00
HJ
a31d3589ed Update http_security_plug.ex 2022-11-17 12:03:01 -05:00
HJ
79bd363a68 Update lib/pleroma/web/plugs/http_security_plug.ex 2022-11-17 12:03:01 -05:00
Henry Jameson
db76ea578a try to fix ruffle on chrome 2022-11-17 12:03:01 -05:00
2e7a713e58 Merge remote-tracking branch 'soapbox/develop' into pleroma-events
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-16 00:06:25 +01:00
b7879d58f3 Merge remote-tracking branch 'pleroma/develop' into HEAD
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-15 23:27:58 +01:00
1175127549 Only keep domain_blocks for now
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-14 19:41:40 +01:00
9126ba7695 Add domain_blocks and extended_description endpoints
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-14 16:31:53 +01:00
feld
a9d991d31e Merge branch 'develop' into 'akoma/deactivated-users'
# Conflicts:
#   CHANGELOG.md
2022-11-14 14:03:11 +00:00
f9dfe64ba4 Privacy policy API
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-14 14:28:58 +01:00
lain
0e1356ef9c Merge branch 'akkoma/delete-improvements' into 'develop'
Alter priority of Delete activities to be lowest

See merge request pleroma/pleroma!3782
2022-11-14 07:24:46 +00:00
lain
76ed0da09f Merge branch 'bugfix/reset-unreachable-on-fetch' into 'develop'
Object.Fetcher: Set reachable on successful fetch

See merge request pleroma/pleroma!3780
2022-11-14 07:22:33 +00:00
Mark Felder
2e0089dd5c Alter priority of Delete activities to be lowest
This will prevent a user with a large number of posts from negatively affecting performance of the outgoing federation queue if they delete their account.
2022-11-13 14:11:48 -05:00
Haelwenn
a2db64b12b Merge branch 'fix-typo-in-csp-report-to-header-name' into 'develop'
Fix typo in CSP Report-To header name

See merge request pleroma/pleroma!3768
2022-11-13 18:53:59 +00:00
Mark Felder
47b9847edd Deletes do not generate notifications of any kind, so skip trying 2022-11-13 12:25:52 -05:00
Haelwenn (lanodan) Monnier
b2713357b9 Object.Fetcher: Set reachable on successful fetch 2022-11-13 16:51:12 +01:00
Mark Felder
edaf0a05f8 Add same optimized join for excluding invisible users 2022-11-12 18:06:28 -05:00
Mark Felder
749445dd50 Fix reports which do not have a user
The check for deactivated users was being applied to report activities.
2022-11-12 17:54:11 -05:00
FloatingGhost
4d321be05c Extract deactivated users query to a join 2022-11-12 17:52:28 -05:00
feld
3d1828f43b Merge branch 'oban-timeouts' into 'develop'
Define sane Oban Worker timeouts

See merge request pleroma/pleroma!3777
2022-11-12 22:13:28 +00:00
tusooa
1b0e47b79b Merge branch 'from/upstream-develop/tusooa/no-strip-report' into 'develop'
Give admin the choice to not strip reported statuses

Closes #2887

See merge request pleroma/pleroma!3773
2022-11-12 17:55:50 +00:00
Mark Felder
8be7f87e1f Define sane Oban Worker timeouts 2022-11-11 13:46:27 -05:00
Mark Felder
6b87b3f2ea Remove Quack logging backend 2022-11-11 12:36:29 -05:00
e675fed7e9 Fix instance view
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-10 22:15:49 +01:00
tusooa
717c5901f8
Render a generated reported activity properly 2022-11-09 23:02:27 -05:00
tusooa
6f047cc308
Do not strip reported statuses when configured not to 2022-11-09 22:36:57 -05:00
8661703c16 Merge remote-tracking branch 'soapbox/develop' into pleroma-events
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-09 17:08:18 +01:00
Alex Gleason
6dc55531db
mix format 2022-11-08 17:47:17 -06:00
Alex Gleason
f844c4ba13
ActivityDraft: detect language from content_html so it can strip links 2022-11-08 17:23:41 -06:00
Alex Gleason
728643b623
LanguageDetector: strip non-language text to (hopefully) improve accuracy 2022-11-08 17:06:16 -06:00
c9e9f25f00 Merge remote-tracking branch 'soapbox/develop' into post-languages
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-08 23:11:05 +01:00
1553b651dc Add supported languages list to /api/v2/instance
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-08 23:09:42 +01:00
Haelwenn (lanodan) Monnier
648e012022 ObjectAgePolicy: Make strip_followers behavior for followers-only explicit 2022-11-07 14:58:47 +01:00
Alex Gleason
22edf882a5
MediaProxy: use SHA-256 2022-11-06 12:02:42 -06:00
Alex Gleason
28c8948765 Merge branch 'reject-anon-report' into 'develop'
Add RemoteReportPolicy to reject reports without enough information

See merge request soapbox-pub/rebased!202
2022-11-06 14:39:06 +00:00
Alex Gleason
ee58bcafc9
DeepL: endpoint to_string() 2022-11-06 08:29:03 -06:00
Alex Gleason
5e6bb2aed0
DeepL: fix endpoint 2022-11-06 08:24:54 -06:00
Alex Gleason
fc81e325e7 DeepL: not_empty_string 2022-11-06 14:16:56 +00:00
Alex Gleason
04fe485015 Merge branch 'remove-shout' into 'develop'
Remove Shout feature

See merge request soapbox-pub/rebased!200
2022-11-06 14:11:39 +00:00
marcin mikołajczak
6500fee83f Merge branch 'post-languages' into 'develop'
Allow to specify post language, add content translations and language auto-detection

See merge request soapbox-pub/rebased!196
2022-11-05 22:08:34 +00:00
4f042374d8 Deepl: use :base_url
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-05 21:41:58 +01:00
2c62043ef9 Merge remote-tracking branch 'soapbox/develop' into pleroma-events
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-05 21:08:08 +01:00
19885d9347 Fix fasttext for multiline posts
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-05 20:16:32 +01:00
Alex Gleason
3957167a9d
RemoteReportPolicy: add :reject_all option, fix tests 2022-11-05 14:07:37 -05:00
Alex Gleason
87e9bbf86c
Add RemoteReportPolicy to reject reports without enough information 2022-11-05 13:56:56 -05:00
0c1eaf2634 Add contact account to InstanceView
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-05 13:05:14 +01:00
6649eb84a2 Add all 639-1 languages to @supported_locales
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-04 21:54:20 +01:00
ade5796337 Improve getting language from context, add more tests
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-04 20:52:25 +01:00
Thomas Citharel
bdedc41cbc
Fix typo in CSP Report-To header name
The header name was Report-To, not Reply-To.

In any case, that's now being changed to the Reporting-Endpoints HTTP
Response Header.
https://w3c.github.io/reporting/#header
https://github.com/w3c/reporting/issues/177

CanIUse says the Report-To header is still supported by current Chrome
and friends.
https://caniuse.com/mdn-http_headers_report-to

It doesn't have any data for the Reporting-Endpoints HTTP header, but
this article says Chrome 96 supports it.
https://web.dev/reporting-api/

(Even though that's come out one year ago, that's not compatible with
Network Error Logging which's still using the Report-To version of the
API)

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-04 09:43:13 +01:00
85105e0049 Detect language for incoming posts
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-03 23:33:22 +01:00
4442fc40e6 Add test
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-03 22:43:20 +01:00
Alex Gleason
39d7093ff5
Remove Shout feature 2022-11-03 13:29:52 -05:00
Alex Gleason
4576a5c440
ObjectValidators: fix validate_required on embeds_many fields 2022-11-03 11:56:20 -05:00
Mark Felder
7c64f705f6 Update to Phoenix 1.6 and chase dependencies
Also bump minimum Elixir to 1.11
2022-11-03 16:13:07 +00:00
Alexander Strizhakov
8407e26b0c rebase fix 2022-11-03 10:06:36 -04:00
Alexander Strizhakov
5a9ea98baf XML WebFinger user representation correct domain 2022-11-03 09:48:59 -04:00
Alexander Strizhakov
4121bca895 expanding WebFinger 2022-11-03 09:48:24 -04:00
4c1d0dbb69 Language detection
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-11-03 00:17:27 +01:00
Alex Gleason
920ba8ddec
Return an error if replying to a deleted status
Fixes https://gitlab.com/soapbox-pub/rebased/-/issues/119
2022-11-02 10:04:32 -05:00
d094cdf55b Rename
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-31 22:42:03 +01:00
9cdce15a42 Update description.exs
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-30 23:07:30 +01:00
68c00fa749 Fix get_language_from_context
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-30 21:59:48 +01:00
55cb9b29fe Do not translate non-public statuses
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-30 21:57:05 +01:00
c1f5138f73 Add tests
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-30 21:06:31 +01:00
25a9ff0f3d Expose translation service availability
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-30 18:53:29 +01:00
65fb5abc73 Merge remote-tracking branch 'soapbox/develop' into post-languages 2022-10-30 18:47:47 +01:00
8243be681b WIP Translation backends support
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-30 18:47:41 +01:00
972498cac4 Store remote post language information
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-30 10:41:09 +01:00
Haelwenn
da0ef154a6 Merge branch 'from/upstream-develop/tusooa/2930-get-or-fetch' into 'develop'
Fix User.get_or_fetch/1 with usernames starting with http

Closes #2930

See merge request pleroma/pleroma!3751
2022-10-30 00:38:21 +00:00
1b9b03b494 Add internal (not managable from API) webhooks
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-29 22:20:05 +02:00
6a8a8f2a2e StatusView: display language
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-29 19:49:52 +02:00
marcin mikołajczak
6778334542 Merge branch 'colors-override' into 'develop'
Use color overrides from frontend configuration

See merge request soapbox-pub/rebased!191
2022-10-29 14:38:31 +00:00
ff35b13b52 Allow to specify post language
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-29 16:22:57 +02:00
0ff7f6d03c Do not use contentMap if content is not empty
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-29 15:01:17 +02:00
Alex Gleason
74c360e4d6 Merge branch 'feature/add-prom_ex' into 'develop'
Add PromEx

See merge request soapbox-pub/rebased!193
2022-10-28 20:58:56 +00:00
dea3110ef5 Merge remote-tracking branch 'soapbox/develop' into instance-v2
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-28 20:12:29 +02:00
a77a7a3620 Add /api/v2/instance route
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-28 20:10:10 +02:00
Josh Adams
7edf9d4990 Replace deprecated @view_module
See https://gist.github.com/chrismccord/e53e79ef8b34adf5d8122a47db44d22f#update-your-layouts
2022-10-27 21:03:06 -05:00
Josh Adams
36dc0fee1e Don't use a fake ecto feature
See https://github.com/elixir-ecto/ecto/issues/3889
2022-10-27 20:14:55 -05:00
Josh Adams
ec4dc4adac Remove unnecessary newline
L I N T E R S
2022-10-27 20:03:45 -05:00
Josh Adams
ec6ee11ea7 Add most (all?) the promex setup 2022-10-27 19:47:37 -05:00
Alex Gleason
bddd4375bf
Expose favicon URL in instance API 2022-10-27 13:51:25 -05:00
Alex Gleason
35f16d9c47
Render title and favicon on all pages that serve index.html 2022-10-27 13:29:36 -05:00
Alex Gleason
f303a02e86
Let favicon be configurable 2022-10-27 13:15:15 -05:00
tusooa
9fbf01f7a9 Merge branch 'push-updates' into 'develop'
Push.Impl: support edits

See merge request pleroma/pleroma!3760
2022-10-27 12:51:29 +00:00
27fb0c80ba Use color overrides from frontend configuration
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-27 00:12:39 +02:00
feld
7a519b6a66 Merge branch 'fix-deprecation-text' into 'develop'
Fix deprecation warning for Gun timeout

See merge request pleroma/pleroma!3759
2022-10-24 14:22:49 +00:00
Haelwenn (lanodan) Monnier
16b06160ac CommonAPI: generate ModerationLog for all admin/moderator deletes
As a side-effect it also changes the ChatMessage delete ID to an
Activity.id rather than MessageReference.id

Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/2958
2022-10-14 18:51:08 +02:00
5f54228e38 Send event updates to participants
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-12 23:57:05 +02:00
8221504ecb Merge remote-tracking branch 'soapbox/develop' into pleroma-events 2022-10-12 21:52:36 +02:00
Alex Gleason
0447197378 Merge branch 'merge-pleroma' into 'develop'
Merge Pleroma

See merge request soapbox-pub/rebased!184
2022-10-10 01:22:54 +00:00
Alex Gleason
0ee413400f
FEP-e232: support Link mediaType "application/activity+json" 2022-10-09 15:25:34 -05:00
Alex Gleason
ddaeb09e54
Merge remote-tracking branch 'pleroma/develop' into merge-pleroma 2022-10-09 13:46:48 -05:00
Alex Gleason
11dfc2589a
Add support for FEP-e232 quotes without quoteUrl 2022-10-09 13:27:16 -05:00
Tusooa Zhu
dd82fd234f
Merge branch 'release/2.4.4' into mergeback/2.4.4 2022-10-08 22:15:09 -04:00
678b6ce17c Add more tests
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-06 00:06:34 +02:00
e187aff5dd Add some tests
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-03 23:10:02 +02:00
c45612badd Update spec, fix tests
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-03 20:13:44 +02:00
73e7549d94 Update scheduled notitfications on edit
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-02 16:32:34 +02:00
Alex Gleason
0cd15c997c
TagValidator: allow Link tags, don't go nuclear for unrecognized Tag types 2022-10-01 19:56:11 -05:00
1b238a4fad Push.Impl: support edits
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-01 23:28:02 +02:00
0612c32c6e Add notifications for updates in events you joined
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-01 22:26:35 +02:00
9ff0eb5c4b Fix event updates
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-10-01 18:01:52 +02:00
58e0ca0d68 Merge remote-tracking branch 'soapbox/develop' into pleroma-events 2022-09-30 20:04:29 +02:00
Mark Felder
1958f23fe7 Fix deprecation warning for Gun timeout 2022-09-30 12:22:06 -04:00
Alex Gleason
544be36c80
Merge remote-tracking branch 'pleroma/develop' into merge-pleroma 2022-09-28 17:29:53 -05:00
c6fddd6e0a Add migration cooldown period
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-28 23:48:45 +02:00
Haelwenn
3f1c31b7cd Merge branch 'fix/exclude-deactivated-in-search' into 'develop'
User: search: exclude inactive users from user search

See merge request pleroma/pleroma!3755
2022-09-27 23:58:45 +00:00
f7d9f42243 event editing?
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-27 23:56:20 +02:00
Haelwenn
5d7d623390 Merge branch 'bugfix/elixir-1.14' into 'develop'
Bugfix: Elixir 1.14

See merge request pleroma/pleroma!3740
2022-09-27 21:46:03 +00:00
daccdc179c Only allow event author to accept/reject joins
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-27 21:01:48 +02:00
31d2f9a255 Store internal location data
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-25 23:19:08 +02:00
ba9fe4c6f2 Fix participation requests query
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-25 22:01:34 +02:00
5039c5ca80 Fix notification display
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-24 22:04:44 +02:00
f5fe5b4544 Add shortcuts and share_target to manifest.json
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-24 18:34:09 +02:00
Ilja
2d7ea263a1 Add extra routes to :users_manage_credentials privilege 2022-09-24 13:52:28 +02:00
0b65d205c9 Store participation_request_count
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-22 23:42:28 +02:00
c3f59eb9ec format
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-18 13:14:11 +02:00
tusooa
1a7107f4a5 Merge branch 'remove_from_followers' into 'develop'
MastoAPI: POST /api/v1/accounts/:id/remove_from_followers

See merge request pleroma/pleroma!3647
2022-09-16 23:24:13 +00:00
3b498061ed Merge remote-tracking branch 'rebased/develop' into pleroma-events
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-16 21:24:22 +02:00
a1batross
7f63b4c315 User: search: exclude deactivated users from user search
This way we don't pollute search results with deactivated and deleted users
2022-09-16 00:49:16 +03:00
Tusooa Zhu
ea60c4e709
Fix wrong relationship direction 2022-09-14 20:24:04 -04:00
Alex Gleason
f5e77a3eaa
soapbox-fe --> soapbox 2022-09-13 15:26:28 -05:00
Hélène
0b19625bfb
ObjectView: do not fetch an object for its ID
Non-Create/Listen activities had their associated object field
normalized and fetched, but only to use their `id` field, which is both
slow and redundant. This also failed on Undo activities, which delete
the associated object/activity in database.

Undo activities will now render properly and database loads should
improve ever so slightly.
2022-09-11 04:54:04 +02:00
marcin mikołajczak
98ccf6cbdc Merge branch 'webfinger-expanding' into 'develop'
Webfinger expanding

See merge request soapbox-pub/rebased!96
2022-09-10 22:03:10 +00:00
Tusooa Zhu
50923f5438
Fix User.get_or_fetch/1 with usernames starting with http 2022-09-08 11:58:17 -04:00
f169b9ee3b Use paths from mastodon groups implementation
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-07 15:03:57 +02:00
Alex Gleason
ce9bacc3be Merge branch 'fix-subscriptions' into 'develop'
Create notifications async with NotificationWorker, #91

See merge request soapbox-pub/rebased!173
2022-09-06 16:33:02 +00:00
86cb1897f5 Fixes, add/update tests
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-05 23:34:25 +02:00
Alex Gleason
05a20c8d6d
Create notifications async with NotificationWorker, #91 2022-09-05 12:38:30 -05:00
a84d9b78f6 Display location, mix format
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-05 18:24:37 +02:00
Haelwenn
b8d6cb5845 Merge branch 'from/upstream-develop/tusooa/2892-backup-scope' into 'develop'
Make backups require its own scope

Closes #2892

See merge request pleroma/pleroma!3721
2022-09-05 15:42:02 +00:00
Haelwenn
346c130ddc Merge branch 'fix/user-private-key-generation' into 'develop'
User: generate private keys on user creation

See merge request pleroma/pleroma!3737
2022-09-05 15:38:15 +00:00
tusooa
f7c2073103 Merge branch 'bump/min-elixir-1.10' into 'develop'
Bump minimum Elixir version to 1.10

See merge request pleroma/pleroma!3741
2022-09-05 15:19:34 +00:00
tusooa
9874b4c985 Merge branch 'develop' into 'from/upstream-develop/tusooa/2892-backup-scope'
# Conflicts:
#   CHANGELOG.md
2022-09-05 15:00:19 +00:00
d4eccd86b3 Merge remote-tracking branch 'pleroma/develop' into merge-pleroma
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-05 15:30:14 +02:00
f1607c3d3b Add geospatial package dependency
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-05 13:53:13 +02:00
Hélène
cd237d22f1
User: generate private keys on user creation
This fixes a race condition bug where keys could be regenerated
post-federation, causing activities and HTTP signatures from an user to
be dropped due to key differences.
2022-09-05 03:51:17 +02:00
tusooa
f8afba95b2 Merge branch 'fix/gts-federation' into 'develop'
GoToSocial federation fixes

See merge request pleroma/pleroma!3725
2022-09-05 01:10:34 +00:00
tusooa
20347898e2 Merge branch 'fix/federation-context-issues' into 'develop'
Fix reply context fixing (Pleroma replies to Misskey threads) and removal of context objects

See merge request pleroma/pleroma!3717
2022-09-04 18:43:36 +00:00
Haelwenn
c63cf954de Merge branch 'from/upstream-develop/tusooa/streaming-fix' into 'develop'
Streaming fix

Closes #2796

See merge request pleroma/pleroma!3738
2022-09-03 18:24:28 +00:00
Hélène
4477c6baff
Metadata/Utils: use summary as description if set
When generating OpenGraph and TwitterCard metadata for a post, the
summary field will be used first if it is set to generate the post
description.
2022-09-03 17:17:48 +02:00
cdf454bfd2 Merge remote-tracking branch 'pleroma/develop' into HEAD 2022-09-03 17:04:02 +02:00
marcin mikołajczak
0312f6770c Merge branch 'develop' into 'edits'
# Conflicts:
#   priv/static/schemas/litepub-0.1.jsonld
2022-09-03 14:14:25 +00:00
Haelwenn
257601d67d Merge branch 'ssh-bbs-improvements' into 'develop'
BBS: add functionnalities and readability

See merge request pleroma/pleroma!3675
2022-09-03 11:15:07 +00:00
Haelwenn
299255b9bb Merge branch 'from/upstream-develop/tusooa/assoc-object-id' into 'develop'
Add function to calculate associated object id

Closes #2307

See merge request pleroma/pleroma!3692
2022-09-03 02:50:40 +00:00
Haelwenn
e40c221c31 Merge branch 'from/upstream-develop/tusooa/edits' into 'develop'
Editing

Closes #1429, #2859, and #2288

See merge request pleroma/pleroma!3678
2022-09-03 02:16:42 +00:00
Haelwenn
07ef72f493 Merge branch 'from/develop/tusooa/2807-remote-xact-post' into 'develop'
Remote interaction with posts

Closes #2807 and #978

See merge request pleroma/pleroma!3587
2022-09-03 02:03:48 +00:00
Haelwenn (lanodan) Monnier
ec80a1e405 Bump minimum Elixir version to 1.10
1.9 being end-of-life
2022-09-03 03:58:22 +02:00
Haelwenn (lanodan) Monnier
e124776d14 Elixir 1.14 formatting 2022-09-03 03:58:22 +02:00
Haelwenn (lanodan) Monnier
21ab7369ca Bump minimum Elixir version to 1.10
With the release of Elixir 1.14, Elixir 1.9 is now end-of-life.

Elixir 1.10 Release Notes:
https://github.com/elixir-lang/elixir/releases/tag/v1.10.0
2022-09-02 22:53:54 +02:00
2fbbf9eec1 EventController.create: Use location_id
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-09-01 23:08:10 +02:00
Alex Gleason
9578013fc2
Use "Pleroma" in user-agent 2022-09-01 08:03:34 -05:00
Tusooa Zhu
20a0dd6516
Exclude Announce instead of restricting to Create in visibility_tags 2022-08-31 22:14:54 -04:00
Tusooa Zhu
ffd379456b
Do not stream out Announces to public timelines 2022-08-31 15:57:06 -04:00
a7687b197d Handle banner_id
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-30 11:05:34 +02:00
a15bf235cf Merge remote-tracking branch 'pleroma/develop' into HEAD
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-30 10:15:07 +02:00
ee8f11b085 Export to ical
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-30 10:05:39 +02:00
Tusooa Zhu
f9b86c3c22
Make local-only posts stream in local timeline 2022-08-27 19:34:56 -04:00
Tusooa Zhu
3afa1903ee
Do not stream out Create of ChatMessage 2022-08-27 17:51:41 -04:00
62add6cfbd WIP location handling
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-27 22:57:54 +02:00
tusooa
a546e6f042 Merge branch 'feature/emoji-15-support' into 'develop'
emoji-test: update to latest 15.0 draft

See merge request pleroma/pleroma!3726
2022-08-27 00:59:22 +00:00
Alex Gleason
8833ea7a1b Merge branch 'rebased-fixes' into 'develop'
Fix Rebased --> Pleroma instance version

See merge request soapbox-pub/rebased!167
2022-08-25 19:28:51 +00:00
Alex Gleason
d230d70170
Nodeinfo: fix Rebased --> Pleroma 2022-08-25 14:11:28 -05:00
Alex Gleason
a4c9739965
Fix Rebased --> Pleroma instance version 2022-08-25 14:02:38 -05:00
64d515df28 Use colors from frontend configuration
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-25 14:58:28 +02:00
d967e1f55e Add some controller tests, fixes
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-24 23:28:59 +02:00
tusooa
59109f8f74 Merge branch 'fix_flaky_test_user_relationship_test.exs_81' into 'develop'
fix flaky test_user_relationship_test.exs:81

See merge request pleroma/pleroma!3697
2022-08-24 15:24:07 +00:00
Ilja
47e3a72b6e fix flaky test_user_relationship_test.exs:81 2022-08-24 15:24:07 +00:00
Hélène
439c1baf25
OAuthPlug: use user cache instead of joining
As this plug is called on every request, this should reduce load on the
database by not requiring to select on the users table every single
time, and to instead use the by-ID user cache whenever possible.
2022-08-24 03:40:05 +02:00
2aae16d810 Event reminder notifications
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-22 22:47:55 +02:00
ff5ddd040e Validate event datetime
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-21 23:23:35 +02:00
d90d00d77c Fix tests
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-21 13:14:55 +02:00
Tusooa Zhu
c59ee1f172
Expose availability of GET /main/ostatus via instance 2022-08-20 21:19:31 -04:00
Tusooa Zhu
4ec9eeb3f8
Make remote interaction page translatable 2022-08-20 21:14:26 -04:00
Tusooa Zhu
1218adacc5
Display status link in remote interaction form 2022-08-20 21:13:52 -04:00
Tusooa Zhu
b7c75db0f7
Lint 2022-08-20 21:13:51 -04:00
Tusooa Zhu
779457d9a4
Add GET endpoints for remote subscription forms
There are two reasons for adding a GET endpoint:

0: Barely displaying the form does not change anything on the server.

1: It makes frontend development easier as they can now use a link,
instead of a form, to allow remote users to interact with local ones.
2022-08-20 21:13:51 -04:00
Tusooa Zhu
a243a217a7
Fix form item name in status_interact.html 2022-08-20 21:13:51 -04:00
Tusooa Zhu
2701628786
Add remote interaction ui for posts 2022-08-20 21:13:51 -04:00
Tusooa Zhu
3885ee182a
Switch to associated_object_id index 2022-08-20 20:43:46 -04:00
Tusooa Zhu
a31d6bb52c
Execute session disconnect in background 2022-08-19 20:24:24 -04:00
Tusooa Zhu
f459c1260b
Lint 2022-08-19 20:24:24 -04:00
Tusooa Zhu
c62a4f1c17
Disconnect streaming sessions when token is revoked 2022-08-19 20:22:45 -04:00
Hélène
0cee3c6e93
emoji-test: update to latest 15.0 draft 2022-08-20 00:21:07 +02:00
b3700afdd3 Notification for participation request/accepted participation
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-19 23:20:00 +02:00
4d9ddd4f4b Include join state in StatusView
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-19 16:42:29 +02:00
Hélène
4661b56720
ArticleNotePageValidator: fix replies fixing
Some software, like GoToSocial, expose replies as ActivityPub
Collections, but do not expose any item array directly in the object,
causing validation to fail via the ObjectID validator. Now, Pleroma will
drop that field in this situation too.
2022-08-19 02:45:49 +02:00
a0923b96a0 Fix voters_count in polls from remote Pleroma instances
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-18 23:39:07 +02:00
322e00e45a Revert "Merge branch 'revert-f6e02270' into 'develop'"
This reverts commit 5b8ad6bc91, reversing
changes made to f6e02270c3.
2022-08-18 23:06:18 +02:00
Hélène
61254111e5
HttpSignaturePlug: accept standard (request-target)
The (request-target) used by Pleroma is non-standard, but many HTTP
signature implementations do it this way due to a misinterpretation of
the draft 06 of HTTP signatures: "path" was interpreted as not having
the query, though later examples show that it must be the absolute path
with the query part of the URL as well.

This behavior is kept to make sure most software (Pleroma itself,
Mastodon, and probably others) do not break, but Pleroma now accepts
signatures for a (request-target) containing the query, as expected by
many HTTP signature libraries, and clarified in the draft 11 of HTTP
signatures.

Additionally, the new draft renamed (request-target) to @request-target.
We now support both for incoming requests' signatures.
2022-08-18 17:01:34 +02:00
marcin mikołajczak
4de58c2b2c Revert "Merge branch 'polls' into 'develop'"
This reverts merge request !152
2022-08-18 06:38:03 +00:00
FloatingGhost
f41d970a59
fix resolution of GTS user keys 2022-08-16 18:51:34 +02:00
fa9106bb1b Merge remote-tracking branch 'soapbox/develop' into polls 2022-08-16 07:42:22 +02:00
Hélène
88c1c76d3e
Migrations: delete contexts with BaseMigrator
Due to the lengthiness of this task, the migration has been adapted into
a BaseMigrator migration, running in the background instead.
2022-08-15 01:47:09 +02:00
Hélène
bb02ee99f5
CommonFixes: more predictable context generation
`context` fields for objects and activities can now be generated based
on the object/activity `inReplyTo` field or its ActivityPub ID, as a
fallback method in cases where `context` fields are missing for incoming
activities and objects.
2022-08-15 01:46:55 +02:00
Alex Gleason
dae909ad34
Revert "Merge branch 'from/upstream-develop/tusooa/sync-settings' into 'develop'"
This reverts commit 93f12c0d0d, reversing
changes made to 6ce3f76b5d.
2022-08-13 14:06:21 -05:00
Alex Gleason
55c15ea81e
Merge remote-tracking branch 'pleroma/develop' into merge-pleroma 2022-08-13 13:42:11 -05:00
9ffb4d055a Handle voters count correctly
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-12 23:49:20 +02:00
3482b5d3a3 wip events
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-12 23:11:34 +02:00
Haelwenn
06f9324afe Merge branch 'from/upstream-develop/tusooa/2912-receiver-reject-mrf' into 'develop'
Treat MRF rejects as success in Oban worker

Closes #2912

See merge request pleroma/pleroma!3720
2022-08-12 01:37:40 +00:00
Haelwenn
837d4dc87f Merge branch 'fix_flaky_tests_where_we_sometimes_loose_db_connections' into 'develop'
Fix flaky tests with DB connections; Allow higher amount of restarts for Pleroma.Repo during testing

See merge request pleroma/pleroma!3696
2022-08-12 01:36:11 +00:00
Haelwenn
93f12c0d0d Merge branch 'from/upstream-develop/tusooa/sync-settings' into 'develop'
Synchronized settings for apps (frontends)

See merge request pleroma/pleroma!3698
2022-08-12 01:34:36 +00:00
Haelwenn
6ce3f76b5d Merge branch 'from/upstream-develop/floatingghost/follow-state' into 'develop'
Backport: bugfix/follow-state

Closes #2902

See merge request pleroma/pleroma!3718
2022-08-12 01:32:20 +00:00
Alex Gleason
2edb44789d
Merge remote-tracking branch 'origin/develop' into odic 2022-08-11 18:17:44 -05:00
Alex Gleason
54838c959f
Expose oauth_consumer_strategies in instance API 2022-08-11 17:58:54 -05:00
Mark Felder
cbdc13b767 Fix Varnish 7 support by ensuring Media Preview Proxy fetches headers with a capitalized HEAD verb 2022-08-10 17:09:58 -04:00
2833287bee wip
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-10 14:21:50 +02:00
Hélène
3b6784b1de
CreateGenericValidator: fix reply context fixing
Incoming Pleroma replies to a Misskey thread were rejected due to a
broken context fix, which caused them to not be visible until a
non-Pleroma user interacted with the replies.

This fix properly sets the post-fix object context to its parent Create
activity as well, if it was changed.
2022-08-10 02:29:38 +02:00
Hélène
def0f5dc2e
StatusView: implement pleroma.context field
This field replaces the now deprecated conversation_id field, and now
exposes the ActivityPub object `context` directly via the MastoAPI
instead of relying on StatusNet-era data concepts.
2022-08-10 02:29:38 +02:00
Tusooa Zhu
738ca484fd
Update api spec to reflect OAuth scope change 2022-08-09 18:15:25 -04:00
Hélène
a9111bcaf2
StatusView: clear MSB on calculated conversation_id
This field seems to be a left-over from the StatusNet era.
If your application uses `pleroma.conversation_id`: this field is
deprecated.

It is currently stubbed instead by doing a CRC32 of the context, and
clearing the MSB to avoid overflow exceptions with signed integers on
the different clients using this field (Java/Kotlin code, mostly; see
Husky and probably other mobile clients.)

This should be removed in a future version of Pleroma. Pleroma-FE
currently depends on this field, as well.
2022-08-09 20:10:43 +02:00
Hélène
7f71e3d0fe
CommonFields: remove context_id 2022-08-09 20:10:43 +02:00
Hélène
f3e061c964
Object: remove context_id field
30 to 70% of the objects in the object table are simple JSON objects
containing a single field, 'id', being the context's ID. The reason for
the creation of an object per context seems to be an old relic from the
StatusNet era, and has only been used nowadays as an helper for threads
in Pleroma-FE via the `pleroma.conversation_id` field in status views.
An object per context was created, and its numerical ID (table column)
was used and stored as 'context_id' in the object and activity along
with the full 'context' URI/string.

This commit removes this field and stops creation of objects for each
context, which will also allow incoming activities to use activity IDs
as contexts, something which was not possible before, or would have been
very broken under most circumstances.

The `pleroma.conversation_id` field has been reimplemented in a way to
maintain backwards-compatibility by calculating a CRC32 of the full
context URI/string in the object, instead of relying on the row ID for
the created context object.
2022-08-09 20:10:43 +02:00
538a210f70 Merge remote-tracking branch 'soapbox/develop' into pleroma-events
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-09 15:30:34 +02:00
8c8f648168 Merge remote-tracking branch 'soapbox/develop' into webfinger-expanding 2022-08-09 13:11:27 +02:00
Tusooa Zhu
a7f01ffc1d
Make backups require its own scope 2022-08-09 00:34:04 -04:00
0412cdcb32 Merge remote-tracking branch 'soapbox/develop' into edits
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-08 17:01:48 +02:00
Tusooa Zhu
d487e0160c
Treat containment failure as cancel in ReceiverWorker 2022-08-08 08:41:33 -04:00
3d7d1870b5 Expose nonAnonymous field from Smithereen polls
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-07 23:56:52 +02:00
10753eeb6b wip events
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-07 20:19:56 +02:00
a665aaaad2 Merge remote-tracking branch 'tusooa/from/upstream-develop/tusooa/edits' into edits 2022-08-06 14:41:12 +02:00
Tusooa Zhu
a0166e92fa
Treat MRF rejects as success in Oban worker 2022-08-06 00:33:18 -04:00
55c62d19a8 Merge remote-tracking branch 'pleroma/develop' into merge-pleroma
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-03 23:42:48 +02:00
floatingghost
f2a9285ff0
bugfix/follow-state (#104)
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/104
2022-08-03 01:07:53 -04:00
Tusooa Zhu
a4fa286d20
Use actor_types() to determine whether the Update is for user 2022-08-02 10:37:28 -04:00
marcin mikołajczak
fdea5d2df6 Merge branch 'stream_markers' into 'develop'
Stream marker updates

See merge request soapbox-pub/soapbox-be!144
2022-08-02 07:35:37 +00:00
Haelwenn
b2ba307f4d Merge branch 'from/upstream-develop/tusooa/2871-fix-local-public' into 'develop'
local only fixes

Closes #2871

See merge request pleroma/pleroma!3660
2022-08-02 05:39:50 +00:00
Haelwenn
7299795eb4 Merge branch 'from/upstream-develop/tusooa/backup-without-email' into 'develop'
Allow users to create backups without providing email address

See merge request pleroma/pleroma!3665
2022-08-02 05:23:49 +00:00
fe0c02f2c8 Stream marker updates
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-01 19:07:17 +02:00
tusooa
c80096522c Merge branch 'develop' into 'from/develop/tusooa/emit-move'
# Conflicts:
#   CHANGELOG.md
#   test/pleroma/user_test.exs
2022-07-31 21:32:49 +00:00
5d3d6a58f7 Use duration param for mute expiration duration
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-07-31 17:22:34 +02:00
3a6274f29a wip events
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-07-28 11:07:21 +02:00
Haelwenn
0814d0e0cb Merge branch 'fix/proper-emoji-qualification' into 'develop'
Emoji: implement full-qualifier using combinations

See merge request pleroma/pleroma!3709
2022-07-28 04:46:15 +00:00
Haelwenn
0f9f3d2897 Merge branch 'from/upstream-develop/tusooa/2384-pagination' into 'develop'
Make mutes and blocks behave the same as other lists

Closes #2384

See merge request pleroma/pleroma!3693
2022-07-28 04:37:10 +00:00
Hélène
7167de592e
Emoji: apply recommended tail call changes
Behavior matches previous code.

Co-authored-by: Tusooa Zhu <tusooa@kazv.moe>
2022-07-27 02:08:46 +02:00
cca794e5fe Merge remote-tracking branch 'soapbox/develop' into webhooks
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-07-26 19:12:52 +02:00
965f1de57e Revert "Document way to do notice compatibility routes with Nginx reverse-proxy instead"
This reverts commit 64e16e6a4b.

Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-07-26 07:12:23 +02:00
Hélène
b99f5d6183
Emoji: split qualification variation into a module 2022-07-26 02:04:12 +02:00
234e09af3b Merge remote-tracking branch 'tusooa/from/upstream-develop/tusooa/edits' into edits 2022-07-25 23:55:21 +02:00
a8540c3797 Merge Pleroma
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-07-25 23:51:14 +02:00
Hélène
fb3f6e1975
EmojiReactValidator: use new qualification method 2022-07-25 16:49:23 +02:00
Hélène
01d396585e
Emoji: implement full-qualifier using combinations
This implements fully_qualify_emoji/1, which will return the
fully-qualified version of an emoji if it knows of one, or return the
emoji unmodified if not.
This code generates combinations per emoji: for each FE0F, all possible
combinations of the character being removed or staying will be
generated. This is made as an attempt to find all partially-qualified
and unqualified versions of a fully-qualified emoji.

I have found *no cases* for which this would be a problem, after
browsing the entire emoji list in emoji-test.txt. This is safe, and,
sadly, most likely the sanest too.
2022-07-25 16:20:12 +02:00
Hélène
388bbc4978
EmojiReactValidator: fix emoji qualification
Tries fully-qualifying emoji when receiving them, by adding the emoji
variation sequence to the received reaction emoji.

This issue arises when other instance software, such as Misskey, tries
reacting with emoji that have unqualified or minimally qualified
variants, like a red heart. Pleroma only accepts fully qualified emoji
in emoji reactions, and refused those emoji. Now, Pleroma will attempt
to properly qualify them first, and reject them if checks still fail.

This commit contains changes to tests proposed by lanodan.

Co-authored-by: Haelwenn <contact+git.pleroma.social@hacktivis.me>
2022-07-24 13:36:06 +02:00
Tusooa Zhu
997f08b350
Make AntiLinkSpamPolicy history-aware 2022-07-24 00:18:09 -04:00