Commit graph

1,407 commits

Author SHA1 Message Date
Phantasm
6a5ca6213a
Oban: Enable Reindexer plugin to reduce oban_jobs index DB bloat 2026-08-18 19:29:00 +02:00
Lain Soykaf
03e75d3b3e
fix(webhooks): merge develop and harden delivery 2026-07-26 17:00:14 +04:00
Lain Soykaf
a9862dcaa0
chore: merge develop into ParadeDB backend 2026-07-26 11:24:37 +04:00
lain
cc1b95c88e Merge pull request 'Rework Gun connection pooling' (#7934) from issue-2263-gun-validation into develop
Reviewed-on: https://git.pleroma.social/pleroma/pleroma/pulls/7934
2026-07-25 05:44:39 +00:00
nicole mikołajczyk
6ffa90a42a Include actual accepts_chat_messages in source field
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2026-07-24 01:00:46 +02:00
nicole mikołajczyk
4aa0d5d709 Allow disabling Chats feature
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2026-07-24 00:58:58 +02:00
Phantasm
ebd5596ba7
Elixir 1.19: Create ConfigDB blacklist and task for :pleroma, :logger
This option was never configurable with ConfigDB when it lived under
:logger, :backends; no need to be configurable now.
2026-07-17 23:32:43 +02:00
Lain Soykaf
f11ffca7f5
feat(http): rework Gun connection pooling 2026-07-17 20:35:17 +04:00
Phantasm
a020b8a190
Elixir 1.19: Ensure default primary logger configg level is debug
Setting the default handler and ex_syslogger handler levels does not
necessarily have to set the primary logger log level, at least in the
future. Without this, the primary log level might be lower than the
configured console/syslog levels, which would cause some desired logs to
not be logged.
2026-06-29 23:47:43 +02:00
Lain Soykaf
cd28c2089c
Fix ParadeDB search indexing 2026-05-25 18:45:47 +04:00
lain
4fe802b25a Merge branch 'develop' into gitlab-mr-iid-4381 2026-05-14 09:27:13 +00:00
lain
83dcc4ae36 Merge branch 'develop' into webhooks 2026-05-14 09:25:50 +00:00
lain
be2a5056a3 Merge branch 'develop' into paradedb-search-backend 2026-05-14 09:24:51 +00:00
Phantasm
7651490c50
Merge branch 'develop' into gitlab-mr-iid-4381 2026-05-14 00:14:27 +02:00
Lain Soykaf
c92d233233
Use upstream remote_ip package 2026-05-13 20:04:12 +04:00
lain
7e97216b52 Merge branch 'develop' into paradedb-search-backend 2026-05-13 10:02:20 +00:00
Lain Soykaf
6b86e31e5d
Add backend MFM support 2026-05-11 14:53:06 +04:00
Phantasm
4873991983 Update Pleroma-FE build artifacts URL 2026-05-06 13:55:45 +00:00
lain
133fc64472 Merge branch 'develop' into webhooks 2026-05-06 07:53:46 +00:00
Phantasm
9450fba83d Elixir 1.19: Disable colors for logging in test env
Color ANSI codes end up in the capture_log output and break existing
tests.
2026-03-25 19:35:46 +00:00
Phantasm
bd0c5aa748 Elixir 1.19: Move default configs to the new Logger configuration, again
Trying to do a two-release migration proved to be very hacky and ugly.
Instead this is preparation for moving defaults first and then merging
the old configuration left in admin's config file at runtime while still
emitting a warning. This hopefully will be a lot nicer and less
complicated.
2026-03-25 19:35:46 +00:00
Phantasm
a5bd4e0d92 Partially revert "Elixir 1.19: Refactor Logger configuration to what Elixir 1.15+ expects"
This partially reverts commit fc35204cc1d718ba7815cc5e1b08746202b4f7dc.
2026-03-25 19:35:46 +00:00
Phantasm
6744a86fe3 Elixir 1.19: Disable logging with colors in test environment
Can break some tests capture logs and then match on an expected text.
Since color codes end up being in the captured log.
2026-03-25 19:35:46 +00:00
Phantasm
926cad3a76 Elixir 1.19: Refactor Logger configuration to what Elixir 1.15+ expects
Elixir 1.19 started emitting warnings about our use of:
config :logger, :console and
config :logger, backends: []
which got split in 1.15 to :default_handler, :default_formatter, and
LoggerBackends.add(backend) respectively.

On Pleroma startup it is now necessary to add the additional logger
backends at runtime (done with configure_logger() in application.ex).
New config key :pleroma, :logger_backends: [] has replaced the older
backends array. The logger_backends package is now used to facilitate
usage of other logger backends besides the default one (:logger_std_h
from OTP).

Warnings were added to Pleroma startup to warn about the usage of
:logger, backends and additional logic was introduced to make addition
of ExSyslogger to admin's configuration less dumb.

Ref: https://hexdocs.pm/logger/1.15.0/Logger.html#module-backends-and-backwards-compatibility
2026-03-25 19:35:46 +00:00
lain
865ddfdce0 Merge branch 'develop' into paradedb-search-backend 2026-03-05 15:02:32 +00:00
Lain Soykaf
7efd296afb
Add fuzzy matching to ParadeDB search
Make ParadeDB search typo-tolerant via configurable fuzzy distance and document the new setting. Add coverage for fuzzy query SQL and id parsing, and keep integration test stability under connection load.
2026-03-05 17:12:03 +04:00
Lain Soykaf
3a87250e15
Add ParadeDB external search backend
Introduce an optional search backend that indexes public/unlisted Notes into a separate ParadeDB (pg_search) Postgres and queries it for status search results.
2026-03-03 12:17:34 +04:00
nicole mikołajczyk
57a3b1f6d0 Add sane defaults for :database_config_whitelist
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2026-01-16 21:33:14 +01:00
Lain Soykaf
100cfe4db8 Config: Make streaming in tests actually synchronous 2026-01-08 13:39:55 +04:00
nicole mikołajczyk
d41e2fbaaf Merge branch 'preferred-frontend' into 'develop'
Port Akkoma frontend preference code

See merge request pleroma/pleroma!4398
2025-12-16 20:54:00 +01:00
nicole mikołajczyk
c05d2d02c2 Use :list_behaviour_implementations for LanguageDetector and Translation providers
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-12-16 00:04:39 +01:00
nicole mikołajczyk
6e98c7a1ca Merge branch 'rich-media-user-agent' into 'develop'
Allow setting custom user-agent for fetching rich media content

See merge request pleroma/pleroma!4390
2025-11-29 17:25:18 +01:00
nicole mikołajczyk
fd177a363b cleanup
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-11-28 15:59:07 +01:00
FloatingGhost
004f9fa69b add selection UI 2025-11-28 15:45:05 +01:00
nicole mikołajczyk
13bc4ba639 Merge remote-tracking branch 'origin/develop' into translation-provider-translatelocally
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-11-28 15:07:43 +01:00
nicole mikołajczyk
32a940b86b Allow setting custom user-agent for fetching rich media content
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-10-26 23:32:54 +01:00
nicole mikołajczyk
ed1cfd6f5e Support translateLocally translation provider
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-10-15 11:00:37 +02:00
nicole mikołajczyk
d56433be69 List Mozhi in suggestions for translation providers
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-10-15 10:31:56 +02:00
nicole mikołajczyk
7e34d72860 Support Mozhi as translation provider
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-10-15 10:31:30 +02:00
nicole mikołajczyk
9d7bdab7a2 Mastodon-compatible webhooks
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-09-19 17:07:23 +02:00
Lain Soykaf
b023e1591c PublisherTest: Mock -> Mox 2025-09-05 15:04:33 +04:00
Lain Soykaf
3de250da23 PublisherTest: Use mox instead of mock. 2025-09-05 14:18:12 +04:00
Lain Soykaf
5bf1a384c7 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-from/upstream-develop/tusooa/report-anon 2025-09-04 18:10:41 +04:00
Lain Soykaf
8428a1bed3 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into lazarus 2025-08-27 11:43:32 +04:00
feld
ece089abab Merge branch 'improved-reachability' into 'develop'
Reachability refactor

See merge request pleroma/pleroma!4366
2025-07-29 21:13:48 +00:00
Mark Felder
8e0f73e45c Change Oban Notifier to Oban.Notifiers.PG 2025-07-28 17:18:56 -07:00
Mark Felder
a5e11ad110 Custom pruning is not actually needed because an old job cannot exist in the table due to our use of [replace: true] when retrying jobs or walking it through the different phases 2025-06-27 17:24:02 -07:00
Mark Felder
77dca7c3e5 Refactor ReachabilityWorker to use a 5-phase reachability testing approach
It will check reachability for an instance deemed unreachable at the following intervals:

4 attempts, once a minute
4 attempts, once every 15 minutes
4 attempts, once every 60 minutes
4 attempts, once every 8 hours
4 attempts, once every 24 hours

This should be effective and respectful of the resources of instances on the fediverse.

We have the Oban Pruner plugin enabled to keep the Oban Jobs table from growing indefinitely. It prunes every 15 minutes, but this will interfere with our ability to enforce uniqueness on the ReachabilityWorker jobs for a time period longer than 15 minutes. The solution is to exclude the ReachabilityWorker from the pruning operation and instead schedule a custom job that will prune the table for us once a day. The ReachabilityPruner cron task will clean up the history of the ReachabilityWorker jobs older than 6 days.
2025-06-27 17:00:02 -07:00
Mark Felder
59bfa83c9c Remove daily reachability scheduling for unreachable instances 2025-06-27 16:04:08 -07:00
Mark Felder
e58ecd3234 Merge remote-tracking branch 'origin/develop' into improved-reachability 2025-06-27 15:59:46 -07:00