Mark Felder
f26509bf16
Fix missing check for domain presence in rich media ignore_host configuration
2025-02-21 17:38:55 -08:00
mkljczk
d905fa0ad8
Allow incoming "Listen" activities
...
Signed-off-by: mkljczk <git@mkljczk.pl>
2025-02-17 21:28:07 +01:00
mkljczk
04af8bfd9c
credo
...
Signed-off-by: mkljczk <git@mkljczk.pl>
2025-02-17 18:26:24 +01:00
mkljczk
120fbbc97e
Include contentMap in outgoing posts
...
Signed-off-by: mkljczk <git@mkljczk.pl>
2025-02-17 17:55:03 +01:00
mkljczk
ea01b5934f
Merge remote-tracking branch 'origin/develop' into post-languages
2025-02-17 17:36:02 +01:00
Lain Soykaf
81ab906466
AnalyzeMetadata: Don't crash on grayscale image blurhash
2025-01-30 12:18:20 +04:00
mkljczk
8cd7716872
Fix Mastodon incoming edits with inlined "likes"
...
Signed-off-by: mkljczk <git@mkljczk.pl>
2025-01-28 22:47:42 +01:00
mkljczk
f2c612d4ae
Merge branch 'actor-published' into 'develop'
...
Include "published" in actor view
See merge request pleroma/pleroma!4312
2025-01-21 13:03:35 +00:00
Haelwenn
4461cc984d
Merge branch 'proxy-redirect' into 'develop'
...
MediaProxyController: Use 301 for permanent redirects
See merge request pleroma/pleroma!4313
2025-01-21 09:31:17 +00:00
Lain Soykaf
2226171890
MediaProxyController: Use 301 for permanent redirects
2025-01-21 12:24:56 +04:00
mkljczk
38b17933e1
Include "published" in actor view
...
Signed-off-by: mkljczk <git@mkljczk.pl>
2025-01-19 16:26:46 +01:00
mkljczk
855294bb3d
Link to exported outbox/followers/following collections in backup actor.json
...
Signed-off-by: mkljczk <git@mkljczk.pl>
2025-01-09 12:58:51 +01:00
mkljczk
36b71733a0
fix alias ordering
...
Signed-off-by: mkljczk <git@mkljczk.pl>
2024-12-30 21:01:41 +01:00
mkljczk
d818a3d762
Merge remote-tracking branch 'origin/develop' into translate-posts
2024-12-30 18:17:50 +01:00
mkljczk
f565cf2b5b
update spec
...
Signed-off-by: mkljczk <git@mkljczk.pl>
2024-12-30 18:11:21 +01:00
FloatingGhost
bdb9f888d7
Add /api/v1/followed_tags
...
Signed-off-by: mkljczk <git@mkljczk.pl>
2024-12-30 17:57:57 +01:00
floatingghost
c94c6eac22
Remerge of hashtag following ( #341 )
...
this time with less idiot
Co-authored-by: FloatingGhost <hannah@coffee-and-dreams.uk>
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/341
Signed-off-by: mkljczk <git@mkljczk.pl>
2024-12-30 17:56:18 +01:00
tusooa
b51f5a84eb
Verify a local Update sent through AP C2S so users can only update their own objects
2024-12-09 12:43:08 +04:00
kPherox
3f98c8bd1b
fix: skip directory entries
...
In OTP 27.1 or later, `:zip.unzip/2` without `:skip_directories` option returns directory entries.
However in OTP 26, passing `:skip_directories` returns a `:bad_option` error, so this option is not available for compatibility.
2024-11-27 17:55:33 +09:00
lain
d92d6132f2
Merge branch 'meilisearch/misc-fixes' into 'develop'
...
Miscellaneous fixes for Meilisearch
See merge request pleroma/pleroma!4296
2024-11-21 14:29:26 +00:00
Lain Soykaf
551534f3ee
B ReleaseTasks: Fix task module finding.
2024-11-21 16:07:09 +04:00
Mint
da7132caba
Remove unused import
2024-11-21 02:40:27 +03:00
Mint
d65f768b59
Meilisearch: stop attempting to index posts with nil date
2024-11-21 02:14:55 +03:00
Mint
c9f9ec04c8
Meilisearch: use PUT method for indexing Mix task
...
See https://github.com/meilisearch/meilisearch/issues/2619
2024-11-21 02:13:10 +03:00
lain
dcb0c47773
Merge branch 'mastodon-websocket-fix' into 'develop'
...
Fix Mastodon WebSocket authentication
See merge request pleroma/pleroma!4206
2024-11-13 08:22:44 +00:00
lain
62bbed1e58
Merge branch 'token-view-scopes' into 'develop'
...
Include session scopes in TokenView
See merge request pleroma/pleroma!4273
2024-11-12 11:18:10 +00:00
lain
4626a9280a
Merge branch 'activity-pub-metadata' into 'develop'
...
Add metadata provider for ActivityPub alternate links
See merge request pleroma/pleroma!4286
2024-11-12 10:49:36 +00:00
Lain Soykaf
2baa9b0072
Merge branch 'develop' into pleroma-token-view-scopes
2024-11-12 14:33:30 +04:00
lain
8b31316d2d
Merge branch 'tusooa/se-opt-out' into 'develop'
...
Fix nonexisting user will not generate metadata for search engine opt-out
Closes #3329
See merge request pleroma/pleroma!4279
2024-11-12 10:24:28 +00:00
Lain Soykaf
5b3e4cf49b
B Providers/ActivityPub: Ensure that nothing explodes on unexpected input.
2024-11-12 14:22:02 +04:00
lain
91b26c683a
Merge branch 'fix/vapid_keyword_fallback' into 'develop'
...
push: make vapid_config fallback to empty array
See merge request pleroma/pleroma!4276
2024-11-12 10:01:05 +00:00
lain
6941c47ac8
Merge branch 'develop' into 'tusooa/se-opt-out'
...
# Conflicts:
# lib/pleroma/web/metadata/providers/feed.ex
2024-11-12 09:58:28 +00:00
lain
ee3ab8b625
Merge branch 'atom-tag' into 'develop'
...
Metadata: Do not include .atom feed links for remote accounts
See merge request pleroma/pleroma!4281
2024-11-12 09:44:29 +00:00
Mark Felder
d2de251c4d
Pleroma.Upload.Filter.Dedupe: sharding directory structure
...
Dedupe now uses a three-level sharding directory structure to improve performance when many files are uploaded and stored on a filesystem instead of an object store. (note: Minio still affected as it still uses a traditional filesystem)
This does not help if you already have hundreds of thousands of files uploaded. The media URLs are permanently part of the activity so the files cannot be relocated. A motivated user could write a tool to move the files and perhaps write an Nginx or equivalent redirect to make the files still accessible, but that is beyond the scope of this change.
2024-10-29 16:00:18 -04:00
Mark Felder
7d5ef81737
Fix /api/v2/media returning the wrong status code for media processed synchronously
...
The API should return a 202 only if data cannot be returned yet and a followup GET /api/v1/media/:id should be called to retrieve it. This is something Mastodon does when it needs to transcode large media files. It does not apply to Pleroma and causes apps to waste an API call when posting a status which causes apps to appear to hang on higher latency environments, such as on mobile networks.
https://docs.joinmastodon.org/methods/media/#v2
2024-10-27 21:52:42 -04:00
marcin mikołajczak
60ec42cb9c
Add metadata provider for ActivityPub alternate links
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-10-12 23:45:18 +02:00
feld
639016bdee
Merge branch 'refactor-change-password' into 'develop'
...
LDAP: permit password changing
See merge request pleroma/pleroma!4285
2024-10-11 20:48:20 +00:00
feld
4557cd960e
Merge branch 'remote-report-policy' into 'develop'
...
Remote report policy
See merge request pleroma/pleroma!4280
2024-10-11 20:23:46 +00:00
feld
dd7f699d4a
Merge branch 'tusooa/3331-fix-incoming-block' into 'develop'
...
Fix incoming Blocks being rejected
Closes #3331
See merge request pleroma/pleroma!4282
2024-10-11 20:22:21 +00:00
Mark Felder
1da057e6a4
Reorganize the LDAP module
2024-10-11 15:51:56 -04:00
Mark Felder
6bc70b8b2a
Add change_password/3 to LDAP module
2024-10-11 15:45:09 -04:00
Mark Felder
67cc38b5ac
Support password changes for LDAP auth backend
2024-10-11 15:39:38 -04:00
Mark Felder
23f78c7573
Refactor password changes to go through Pleroma.Web.Auth so they can be supported by the different auth backends
2024-10-11 14:29:15 -04:00
feld
3f3f8bc57a
Merge branch 'poll-refresh' into 'develop'
...
Refactor Poll Refreshing
See merge request pleroma/pleroma!4278
2024-10-10 00:46:28 +00:00
Mark Felder
03a6e33b81
Skip the final refresh job if the activity is local
2024-10-09 16:25:58 -04:00
marcin mikołajczak
ddedc575e7
Merge branch 'hashtag-feeds-restricted' into 'develop'
...
Repesct :restrict_unauthenticated for hashtag rss/atom feeds
See merge request pleroma/pleroma!4266
2024-10-09 09:42:53 +00:00
tusooa
f758b6e37c
Fix incoming Blocks being rejected
2024-10-08 23:09:59 -04:00
marcin mikołajczak
07cfbe4ae8
Merge branch 'profile-image-descriptions' into 'develop'
...
Federate avatar/header descriptions
See merge request pleroma/pleroma!4264
2024-10-06 20:05:36 +00:00
marcin mikołajczak
0c41d986de
Metadata: Do not include .atom feed links for remote accounts
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-10-06 17:02:31 +02:00
Mint
48af6850fc
RemoteReportPolicy: Fix third-party report detection
2024-10-03 20:00:36 +03:00
Alex Gleason
55612cb8ee
mix format
2024-10-03 20:00:15 +03:00
Mint
fd83b86b99
RemoteReportPolicy: add reject_third_party
option
2024-10-03 20:00:15 +03:00
Alex Gleason
b7c91876d2
RemoteReportPolicy: add :reject_all
option, fix tests
2024-10-03 19:59:39 +03:00
Alex Gleason
4533f171ab
Add RemoteReportPolicy to reject reports without enough information
2024-10-03 19:59:39 +03:00
Mark Felder
a3038aa6a2
Increase poll refresh interval to 120 seconds
2024-10-03 11:01:33 -04:00
Mark Felder
b854e3836f
Remove pattern that can never match
2024-10-03 10:30:32 -04:00
Mark Felder
ba2ae5e40b
Check if a refresh is permitted by comparing timestamps before attempting to insert an Oban job
...
It's better to avoid inserting an Oban job that will just be rejected if it's not expensive to check.
2024-10-03 10:14:02 -04:00
tusooa
35bd197733
Fix nonexisting user will not generate metadata for search engine opt-out
2024-10-02 18:41:35 -04:00
Mark Felder
0a42a3f2ea
Do not attempt to schedule poll refresh jobs for local activities
2024-10-02 11:05:17 -04:00
Mark Felder
9ff57946e7
Credo
2024-09-30 15:25:13 -04:00
Mark Felder
a2e7db43aa
Rename assignment for consistency
2024-09-30 14:23:04 -04:00
Mark Felder
47ce3a4a96
Schedule a final poll refresh before streaming out the notifications
2024-09-30 14:17:35 -04:00
Mark Felder
4b3f604f95
Skip refetching poll results if the object's updated_at is newer than the poll closed timestamp
2024-09-30 14:02:41 -04:00
Mark Felder
c077a14ce1
Add Oban job to handle poll refreshing and stream out the update
2024-09-30 13:54:56 -04:00
Mark Felder
382426e033
Remove Object.get_by_id_and_maybe_refetch/2
...
This was only used for poll refreshing and is not a good approach to the problem.
2024-09-30 12:41:09 -04:00
Haelwenn (lanodan) Monnier
7dd3a4d86d
push: make vapid_config fallback to empty array
...
2024-09-24T03:53:27.770757+00:00 NightmareMoon pleroma: path=/notice/AmJcSqyeyij4W70K36 [error] Preloading for /notice/AmJcSqyeyij4W70K36 failed.
** (FunctionClauseError) no function clause matching in Keyword.get/3
(elixir 1.15.8) lib/keyword.ex:388: Keyword.get(nil, :public_key, nil)
(pleroma 2.7.0-3067-g9b76dbd4-dev-lanodan2) lib/pleroma/web/mastodon_api/views/instance_view.ex:262: Pleroma.Web.MastodonAPI.InstanceView.pleroma_configuration/1
(pleroma 2.7.0-3067-g9b76dbd4-dev-lanodan2) lib/pleroma/web/mastodon_api/views/instance_view.ex:45: Pleroma.Web.MastodonAPI.InstanceView.render/2
(pleroma 2.7.0-3067-g9b76dbd4-dev-lanodan2) lib/pleroma/web/preload/providers/instance.ex:28: Pleroma.Web.Preload.Providers.Instance.build_info_tag/1
(pleroma 2.7.0-3067-g9b76dbd4-dev-lanodan2) lib/pleroma/web/preload/providers/instance.ex:21: Pleroma.Web.Preload.Providers.Instance.generate_terms/1
(pleroma 2.7.0-3067-g9b76dbd4-dev-lanodan2) lib/pleroma/web/preload.ex:13: anonymous fn/3 in Pleroma.Web.Preload.build_tags/2
2024-09-24 05:57:41 +02:00
Haelwenn (lanodan) Monnier
0fa13c5535
MRF.SimplePolicy: Add id_filter/1
2024-09-21 14:07:26 +02:00
Haelwenn (lanodan) Monnier
30063c5914
MRF.DropPolicy: Add id_filter/1
2024-09-21 14:06:26 +02:00
Haelwenn (lanodan) Monnier
3dd6f65859
Object.Fetcher: Hook to MRF.id_filter
2024-09-21 14:06:26 +02:00
Haelwenn (lanodan) Monnier
03e14e759d
MRF: Add filtering against AP id
2024-09-21 14:06:24 +02:00
marcin mikołajczak
23e5eed4e0
Include session scopes in TokenView
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-09-19 10:57:50 +02:00
Mark Felder
73204c1bca
LDAP: fix compile warning
...
Sometimes the compile will emit the following warning, so we'll just avoid it by making it call a function in the LDAP module which will never have this problem.
warning: :GenServer.call/2 is undefined (module :GenServer is not available or is yet to be defined)
2024-09-18 11:58:52 -04:00
Mark Felder
2b482e34eb
Improve matching on bind errors
2024-09-17 13:54:57 -04:00
Mark Felder
ea63533cf2
Change :connection to :handle to match upstream nomenclature
2024-09-17 13:46:56 -04:00
Mark Felder
21bf229731
Reduce LDAP timeouts
...
10 seconds is way too long for any login attempt or search result. LDAP should always be fast.
2024-09-17 13:43:22 -04:00
Mark Felder
363b462c54
Make the email attribute configurable
...
While here, fix the System.get_env usage to use the normal fallback value method and improve the UID label description
2024-09-17 13:40:15 -04:00
Mark Felder
a1972d57e3
Link the eldap connection process
...
Ensure if LDAP GenServer crashes it gets cleaned up, and we should crash and restart if somehow the eldap connection process crashes unexpectedly as we can't seem to receive any DOWN messages from it, etc.
2024-09-17 13:40:15 -04:00
Mark Felder
164ffbcab8
Fix return value when not doing STARTTLS
2024-09-17 13:40:15 -04:00
Mark Felder
d0ee899ab9
Only close connection if it is not nil
2024-09-17 13:40:15 -04:00
Mark Felder
123093a186
Ensure :ssl is started before we attempt to make the LDAP connection
2024-09-17 13:40:15 -04:00
Mark Felder
65a7b387c3
Require a reboot if LDAP configuration changes
2024-09-17 13:40:15 -04:00
Mark Felder
7c04098dde
Catchall for when LDAP is not enabled
2024-09-17 13:40:15 -04:00
Mark Felder
ead287d623
Credo
2024-09-17 13:40:08 -04:00
Mark Felder
9264b21907
Pleroma.LDAP
...
This adds a GenServer which will keep an LDAP connection open and auto reconnect on failure with a 5 second wait between retries. Another benefit is this prevents parsing the Root CAs for every login attempt as we only need to do it once per connection.
2024-09-17 13:40:08 -04:00
marcin mikołajczak
76cfc6127f
Merge remote-tracking branch 'origin/develop' into ensure-authorized-fetch
2024-09-17 13:45:15 +02:00
Mark Felder
e24e107f3d
Merge remote-tracking branch 'origin/develop' into retry-tests
2024-09-16 11:51:22 -04:00
feld
3a0d4e9837
Merge branch 'ldap-tls' into 'develop'
...
LDAP: permit overriding the CA root, improve SSL/TLS
See merge request pleroma/pleroma!4265
2024-09-16 15:50:58 +00:00
Mark Felder
e59706c201
Reapply "Custom mix task to retry failed tests once in CI pipeline"
...
This reverts commit b281ad06de
.
2024-09-16 11:42:55 -04:00
marcin mikołajczak
e74e0089bf
Repesct :restrict_unauthenticated for hashtag rss/atom feeds
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-09-16 17:19:21 +02:00
marcin mikołajczak
309d22aca2
Allow disabling C2S ActivityPub API
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-09-16 13:44:36 +02:00
Mark Felder
91d1d7260b
Retain the try do so an LDAP failure can fall back to local database.
...
This fixes tests but the automatic fallback may not be well documented behavior.
2024-09-15 23:18:18 -04:00
Mark Felder
af3bf8a462
Support implicit TLS connections
...
Update docs to clarify that the :ssl option is also for modern TLS, but the :tls option is only for STARTTLS
These options may benefit from being renamed but they match upstream terminology.
2024-09-15 14:00:19 -04:00
marcin mikołajczak
ad953143bb
Require HTTP signatures (if enabled) for routes used by both C2S and S2S AP API
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-09-15 15:20:28 +02:00
marcin mikołajczak
8250a9764e
Merge branch 'notifications-group-key' into 'develop'
...
Add `group_key` to notifications
See merge request pleroma/pleroma!4262
2024-09-15 10:07:52 +00:00
Mark Felder
5539fea3bb
LDAP: permit overriding the CA root
2024-09-14 20:36:24 -04:00
marcin mikołajczak
1a120d0130
Federate avatar/header descriptions
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-09-14 21:32:32 +02:00
marcin mikołajczak
c1a1150888
Merge branch 'profile-image-descriptions' into 'develop'
...
Allow providing avatar/header descriptions
See merge request pleroma/pleroma!4227
2024-09-14 17:46:33 +00:00
marcin mikołajczak
0111659a1f
Merge branch 'list-id-visibility' into 'develop'
...
Include list id in StatusView
See merge request pleroma/pleroma!4246
2024-09-14 17:46:09 +00:00
marcin mikołajczak
17b69c43d5
Add group_key
to notifications
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-09-12 14:37:37 +02:00
Mark Felder
7def11d7c3
LDAP Auth: fix TLS certificate verification
...
Currently we only support STARTTLS and it was not verifying certificate and hostname correctly. We must pass a custom fqdn_fun/1 function so it knows what value to compare against.
2024-09-11 12:47:46 -04:00