summaryrefslogtreecommitdiff
path: root/lib/pleroma/application.ex
AgeCommit message (Collapse)Author
2021-02-22[#2534] Earlier init of Pleroma.Web.Endpoint (must be started prior to ↵Ivan Tashkinov
Pleroma.Web.Streamer).
2021-02-04Standardize the way we capture and use Mix.env()Mark Felder
2021-01-21use proper namingAlexander Strizhakov
for MediaProxyWarmingPolicy in ConcurrentLimiter
2021-01-21configurable limits for ConcurrentLimiterAlexander Strizhakov
Pleroma.Web.RichMedia.Helpers & Pleroma.Web.MediaProxy
2021-01-13Bump Copyright to 2021Haelwenn (lanodan) Monnier
grep -rl '# Copyright © .* Pleroma' * | xargs sed -i 's;Copyright © .* Pleroma .*;Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/>;'
2020-11-23Search: Save detected pg version in a persistent term.lain
2020-11-23Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into websearchlain
2020-11-20Linting.lain
2020-11-20Application: Save postgres version in the environmentlain
2020-11-20start limiters in mix tasksAlexander Strizhakov
2020-11-19Merge branch 'oban-jobs-to-simple-tasks' into 'develop'feld
Moving some background jobs into simple tasks Closes #1790 See merge request pleroma/pleroma!3129
2020-11-17Remove FedSocketsrinpatch
Current FedSocket implementation has a bunch of problems. It doesn't have proper error handling (in case of an error the server just doesn't respond until the connection is closed, while the client doesn't match any error messages and just assumes there has been an error after 15s) and the code is full of bad descisions (see: fetch registry which uses uuids for no reason and waits for a response by recursively querying a ets table until the value changes, or double JSON encoding). Sometime ago I almost completed rewriting fedsockets from scrach to adress these issues. However, while doing so, I realized that fedsockets are just too overkill for what they were trying to accomplish, which is reduce the overhead of federation by not signing every message. This could be done without reimplementing failure states and endpoint logic we already have with HTTP by, for example, using TLS cert auth, or switching to a more performant signature algorithm. I opened https://git.pleroma.social/pleroma/pleroma/-/issues/2262 for further discussion on alternatives to fedsockets. From discussions I had with other Pleroma developers it seems like they would approve the descision to remove them as well, therefore I am submitting this patch.
2020-11-11Moving some background jobs into simple tasksAlexander Strizhakov
- fetching activity data - attachment prefetching - using limiter to prevent overload
2020-10-31Add idempotency_key to the chat_message entity.eugenijm
2020-10-22[#3059] Fixed Phoenix 1.5 telemetry processing.Ivan Tashkinov
2020-10-17Merge remote-tracking branch 'remotes/origin/develop' into chore/elixir-1.11Ivan Tashkinov
2020-10-13Merge branch 'develop' into feature/gen-magicMark Felder
2020-10-13Merge branch 'develop' into chore/elixir-1.11Mark Felder
2020-10-13HTTPSecurityPlug module name and filenameAlexander Strizhakov
2020-10-13renaming ratelimiter supervisorAlexander Strizhakov
2020-10-09Merge branch 'develop' into feature/gen-magicMark Felder
2020-10-07Compatibility with phoenix_pubsub 2.0.0Mark Felder
2020-10-07@env is not usedMark Felder
2020-09-29[#3031] Refactoring: moved system commands checks to ApplicationRequirements.Ivan Tashkinov
2020-09-26Adjusted MediaProxyControllerTest to gracefully fail on missing ↵Ivan Tashkinov
dependencies. Installation docs update. Added ffmpeg/imagemagick checks to launch checks (if media preview proxy is enabled). Added documentation on installing optional media / graphics packages (imagemagick, ffmpeg, exiftool).
2020-09-18Federate data through persistent websocket connectionsSteven Fuchs
2020-09-10Merge branch 'develop' into feature/gen-magicMark Felder
2020-09-07removing Stats worker from Oban cron jobsAlexander Strizhakov
2020-09-02user agent if Endpoint is not started yetAlexander Strizhakov
2020-09-01application.ex: disable warnings_as_errors at runtimerinpatch
see changed files for rationale
2020-08-05Move checks to application startupRoman Chvanikov
2020-07-15HTTP: Implement max request limitsrinpatch
2020-07-15Connection pool: implement logging and telemetry eventsrinpatch
2020-07-15Connection pool: Fix race conditions in limit enforcementrinpatch
Fixes race conditions in limit enforcement by putting worker processes in a DynamicSupervisor
2020-07-15Refactor gun pooling and simplify adapter option insertionrinpatch
This patch refactors gun pooling to use Elixir process registry and simplifies adapter option insertion. Having the pool use process registry instead of a GenServer has a number of advantages: - Simpler code: the initial implementation adds about half the lines of code it deletes - Concurrency: unlike a GenServer, ETS-based registry can handle multiple checkout/checkin requests at the same time - Precise and easy idle connection clousure: current proposal for closing idle connections in the GenServer-based pool needs to filter through all connections once a minute and compare their last active time with closing time. With Elixir process registry this can be done by just using `Process.send_after`/`Process.cancel_timer` in the worker process. - Lower memory footprint: In my tests `gun-memory-leak` branch uses about 290mb on peak load (250 connections) and 235mb on idle (5-10 connections). Registry-based pool uses 210mb on idle and 240mb on peak load
2020-07-14Fix in-db configuration in dev environmentrinpatch
Previously, in-db configuration only worked when `warnings_as_errors` was disabled because re-compiling scrubbers on application restart created a warning about module conflicts. This patch fixes that by enabling `ignore_module_conflict` option of the compiler at runtime, and enables `warnings_as_errors` in prod since there is no reason to keep it disabled anymore.
2020-07-12Config/Docs: Expand behaviour suggestions at runtimehref
2020-07-10Merge branch 'mix-tasks-improvement' into 'develop'lain
Mix tasks improvement See merge request pleroma/pleroma!2723
2020-07-09Use the Pleroma.Config aliasMark Felder
2020-07-08don't fully start pleroma in mix tasksAlexander Strizhakov
2020-06-23Merge branch 'issue/1798' into 'develop'lain
[#1798] fixed migration the settings to DB See merge request pleroma/pleroma!2655
2020-06-22added verify RUM settings before start appMaksim Pechnikov
2020-06-17Change references from "deleted_urls" to "banned_urls" as nothing is handled ↵Mark Felder
via media deletions anymore; all actions are manual operations by an admin to ban the url
2020-06-16Switch from gen_magic to majic, use Majic.Plug, remove Pleroma.MIMEhref
2020-06-16Pleroma.MIME: use gen_magichref
2020-06-14fix invalidates media url'sMaksim Pechnikov
2020-05-12Startup: suggest updating OTP when the version is too low for gunrinpatch
I've seen quite a few people wonder what to do when presented with this error message.
2020-05-07Streamer reworkhref
2020-04-29Change Pleroma.CaptchaTest to be a regular module instead of GenServerEgor Kislitsyn
2020-04-01Merge branch 'gun' into 'develop'feld
Gun adapter Closes #945 See merge request pleroma/pleroma!1861