aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/web/plugs
AgeCommit message (Collapse)Author
2022-09-05Merge branch 'fix/gts-federation' into 'develop'tusooa
GoToSocial federation fixes See merge request pleroma/pleroma!3725
2022-08-24OAuthPlug: use user cache instead of joiningHélène
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-18HttpSignaturePlug: accept standard (request-target)Hélène
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-05-06Skip cache when /objects or /activities is authenticatedTusooa Zhu
Ref: fix-local-public
2022-05-06Allow to skip cache in Cache plugTusooa Zhu
Ref: fix-local-public
2022-03-20Merge branch 'from/upstream-develop/tusooa/translate-pages' into 'develop'Haelwenn
Translate backend-rendered pages See merge request pleroma/pleroma!3634
2022-03-03Support multiple locales from userLanguage cookieTusooa Zhu
2022-03-03Support multiple locales formallyTusooa Zhu
elixir gettext current does not fully support fallback to another language [0]. But it might in the future. We adapt it so that all languages in Accept-Language headers are received by Pleroma.Web.Gettext. User.languages is now a comma-separated list. [0]: https://github.com/elixir-gettext/gettext/issues/303
2022-03-02Fallback to a variant if the language in general is not supportedTusooa Zhu
For an example, here, zh is not supported, but zh_Hans and zh_Hant are. If the user asks for zh, we should choose a variant for them instead of fallbacking to default. Some browsers (e.g. Firefox) does not allow users to customize their language codes. For example, there is no zh-Hans, but only zh, zh-CN, zh-TW, zh-HK, etc. This provides a workaround for those users suffering from bad design decisions.
2022-03-02Allow user to register with custom languageTusooa Zhu
2022-03-01Send emails i18n'd using backend-stored user languageTusooa Zhu
2022-02-25Copyright bump for 2022Sean King
2022-02-21Make lint happyTusooa Zhu
2022-02-21Prefer userLanguage cookie over Accept-Language header in detecting localeTusooa Zhu
https://git.pleroma.social/pleroma/pleroma-meta/-/issues/60
2021-12-27EnsureStaffPrivilegedPlug: don't let non-moderators throughAlex Gleason
2021-12-27Fix lint errorsAlibek Omarov
2021-12-27API: optionally restrict moderators from accessing sensitive dataAlibek Omarov
2021-08-04Merge remote-tracking branch 'pleroma/develop' into staff-plugAlex Gleason
2021-07-12Moderators: add UserIsStaffPlugAlex Gleason
2021-05-30Merge remote-tracking branch 'pleroma/develop' into cycles-frontend-staticAlex Gleason
2021-05-30FrontendStatic: make Router a runtime depAlex Gleason
Speeds up recompilation by removing compile-time cycles
2021-05-28Merge remote-tracking branch 'pleroma/develop' into cycles-router-api-routesAlex Gleason
2021-05-28Pleroma.Web.get_api_routes/0 --> Pleroma.Web.Router.get_api_routes/0Alex Gleason
Reduce recompilation time by breaking compile-time cycles
2021-04-18Add opting out of Google FLoC to HTTPSecurityPlug headersSean King
2021-02-25Improved recursion through the api route listMark Felder
2021-02-24Attempt to filter out API calls from FrontendStatic plugMark Felder
2021-02-17OAuthScopesPlug: remove transform_scopes in favor of explicit admin scope ↵rinpatch
definitions Transforming scopes is no longer necessary since we are dropping support for accessing admin api without `admin:` prefix in scopes.
2021-02-11[#2510] Improved support for app-bound OAuth tokens. Auth-related refactoring.Ivan Tashkinov
2021-01-27Add active user countEgor Kislitsyn
2021-01-21Allow to define custom HTTP headers per each frontendeugenijm
2021-01-21Ability to set the Service-Worker-Allowed headereugenijm
2021-01-14Pbkdf2: Use it everywhere.Lain Soykaf
2021-01-13Password: Replace Pbkdf2 with Password.lain
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/>;'
2021-01-08More places we should be using Upload.base_urlMark Felder
2021-01-05Remove configurability of upload proxy opts, simplifyMark Felder
2020-12-18Cachex: Make caching provider switchable at runtime.lain
Defaults to Cachex.
2020-12-06[#3112] Ensured presence and consistency of :user and :token assigns ↵Ivan Tashkinov
(EnsureUserTokenAssignsPlug). Refactored auth info dropping functions.
2020-11-28Merge remote-tracking branch 'remotes/origin/develop' into auth-improvementsIvan Tashkinov
2020-11-27digest algorithm is taken from headerAlexander Strizhakov
2020-11-25Session token setting on token exchange. Auth-related refactoring.Ivan Tashkinov
2020-11-21Session-based OAuth auth fixes (token expiration check), refactoring, tweaks.Ivan Tashkinov
2020-10-31Auth subsystem refactoring and tweaks.Ivan Tashkinov
Added proper OAuth skipping for SessionAuthenticationPlug. Integrated LegacyAuthenticationPlug into AuthenticationPlug. Adjusted tests & docs.
2020-10-27FrontStatic plug: excluded invalid urlMaksim Pechnikov
2020-10-13fixes after rebaseAlexander Strizhakov
2020-10-13fixes after rebaseAlexander Strizhakov
2020-10-13alias alphabetically orderAlexander Strizhakov
2020-10-13AdminSecretAuthenticationPlug module nameAlexander Strizhakov
2020-10-13AuthenticationPlug module nameAlexander Strizhakov
2020-10-13BasicAuthDecoderPlug module nameAlexander Strizhakov