Commit graph

6767 commits

Author SHA1 Message Date
Mark Felder
3be64556db Improve TOTP token and recovery input fields in OAuth login 2020-07-16 13:11:03 -05:00
Alex Gleason
9ce95fa68f
Use approval_required in /api/v1/instance 2020-07-15 17:04:30 -05:00
Mark Felder
b2d398b1d0 Merge branch 'develop' into refactor/gun-pool-registry 2020-07-15 13:34:27 -05:00
Mark Felder
9d30bacace Merge branch 'develop' into refactor/notification_settings 2020-07-15 09:30:23 -05:00
rinpatch
0fe36b311c Merge branch 'features/mrf-reasons' into 'develop'
Add rejection reason to our MRFs

See merge request pleroma/pleroma!2759
2020-07-15 14:00:22 +00:00
Haelwenn (lanodan) Monnier
d29b8997f4
MastoAPI: fix & test giving MRF reject reasons 2020-07-15 15:25:33 +02:00
rinpatch
7115c5f82e ConnectionPool.Worker: do not stop with an error when there is a timeout
This produced error log messages about GenServer termination
every time the connection was not open due to a timeout.

Instead we stop with `{:shutdown, <gun_error>}` since shutting down
when the connection can't be established is normal behavior.
2020-07-15 15:58:08 +03:00
href
6d583bcc3b Set a default timeout for Gun adapter timeout 2020-07-15 15:26:35 +03:00
href
afd378f84c host is now useless 2020-07-15 15:26:35 +03:00
href
ce1a42bd04 Simplify TLS opts
- `verify_fun` is not useful now
- use `customize_check_hostname` (OTP 20+ so OK)
- `partial_chain` is useless as of OTP 21.1 (wasn't there, but hackney/..
uses it)
2020-07-15 15:26:35 +03:00
href
53ba6815b1 parentheses... 2020-07-15 15:26:35 +03:00
href
23d714ed30 Fix race in enforcer/reclaimer start 2020-07-15 15:26:35 +03:00
href
6a0f2bdf8c Ensure connections error get known by the caller 2020-07-15 15:26:35 +03:00
href
46dd276d68 ConnectionPool.Worker: Open gun conn in continue instead of init 2020-07-15 15:26:35 +03:00
rinpatch
a705637dcf Connection Pool: fix LRFU implementation to not actually be LRU
The numbers of the native time unit were so small the CRF was always 1,
making it an LRU. This commit switches the time to miliseconds and changes
the time delta multiplier to the one yielding mostly highest hit rates according
to the paper
2020-07-15 15:26:35 +03:00
rinpatch
9b73c35ca8 Request limiter setup: consider {:error, :existing} a success
When the application restarts (which happens after certain config
changes), the limiters are not destroyed, so `ConcurrentLimiter.new`
will produce {:error, :existing}
2020-07-15 15:26:35 +03:00
rinpatch
12fa5541f0 FollowRedirects: Unconditionally release the connection if there is an error
There is no need for streaming the body if there is no body
2020-07-15 15:26:35 +03:00
rinpatch
37f1e781cb Gun adapter helper: fix wildcard cert issues on OTP 23
See https://bugs.erlang.org/browse/ERL-1260 for more info.

The ssl match function is basically copied from mint, except
that `:string.lowercase/1` was replaced by `:string.casefold`.
It was a TODO in mint's code, so might as well do it since we don't need
to support OTP <20.

Closes #1834
2020-07-15 15:26:35 +03:00
rinpatch
007843b75e Add documentation for new connection pool settings and remove some
`:retry_timeout` and `:retry` got removed because reconnecting on failure is
something the new pool intentionally doesn't do.

`:max_overflow` had to go in favor of `:max_waiting`, I didn't reuse the key because
the settings are very different in their behaviour.

`:checkin_timeout` got removed in favor of `:connection_acquisition_wait`,
I didn't reuse the key because the settings are somewhat different.

I didn't do any migrations/deprecation warnings/changelog entries because
these settings were never in stable.
2020-07-15 15:26:35 +03:00
rinpatch
7882f28569 Use erlang monotonic time for CRF calculation 2020-07-15 15:26:35 +03:00
rinpatch
00926a63fb Adapter Helper: Use built-in ip address type 2020-07-15 15:26:35 +03:00
rinpatch
4128e3a84a HTTP: Implement max request limits 2020-07-15 15:26:35 +03:00
rinpatch
94c8f3cfaf Use a custom pool-aware FollowRedirects middleware 2020-07-15 15:26:35 +03:00
rinpatch
281ddd5e37 Connection pool: fix connections being supervised by gun_sup 2020-07-15 15:26:35 +03:00
rinpatch
1b15cb066c Connection pool: Add client death tracking
While running this in production I noticed a number of ghost
processes with all their clients dead before they released the connection,
so let's track them to log it and remove them from clients
2020-07-15 15:26:35 +03:00
rinpatch
e94ba05e52 Connection pool: Fix a possible infinite recursion if the pool is exhausted 2020-07-15 15:26:35 +03:00
rinpatch
7738fbbaf5 Connection pool: implement logging and telemetry events 2020-07-15 15:26:25 +03:00
rinpatch
0ffde499b8 Connection Pool: register workers using :via 2020-07-15 15:24:47 +03:00
rinpatch
ec9d0d146b Connection pool: Fix race conditions in limit enforcement
Fixes race conditions in limit enforcement by putting worker processes
in a DynamicSupervisor
2020-07-15 15:17:27 +03:00
rinpatch
d08b157699 Connection pool: check that there actually is a result
Sometimes connections died before being released to the pool, resulting
in MatchErrors
2020-07-15 15:17:27 +03:00
rinpatch
fffbcffb8c Connection Pool: don't enforce pool limits if no new connection needs to be opened 2020-07-15 15:17:27 +03:00
rinpatch
58a4f350a8 Refactor gun pooling and simplify adapter option insertion
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-15 15:17:27 +03:00
Haelwenn (lanodan) Monnier
e4beff90f5
Create Question: Add context field to create 2020-07-15 12:32:43 +02:00
Haelwenn (lanodan) Monnier
bfe2dafd39
{Answer,Question}Validator: Keep both actor and attributedTo for now but sync them 2020-07-15 12:32:42 +02:00
Haelwenn (lanodan) Monnier
c19bdc811e
Fix attachments in polls 2020-07-15 12:32:42 +02:00
Haelwenn (lanodan) Monnier
d713930ea7
Fixup for EctoType module move 2020-07-15 11:40:24 +02:00
Haelwenn (lanodan) Monnier
435a65b976
QuestionValidator: Use AttachmentValidator 2020-07-15 11:40:24 +02:00
Haelwenn (lanodan) Monnier
fe6924d00d
CreateGenericValidator: add expires_at 2020-07-15 11:40:24 +02:00
Haelwenn (lanodan) Monnier
82895a4012
SideEffects: port ones from ActivityPub.do_create and ActivityPub.insert 2020-07-15 11:40:23 +02:00
Haelwenn (lanodan) Monnier
4f70fd4105
question_validator: remove conversation field 2020-07-15 11:39:56 +02:00
Haelwenn (lanodan) Monnier
173f69c854
question_validator: fix for mastodon poll expiration
Mastodon activities do not have a "closed" field, this could be seen on
https://pouet.it/users/lanodan_tmp/statuses/104345126997708380
which runs Mastodon 3.1.4 (SDF runs 3.1.2)
2020-07-15 11:39:56 +02:00
Haelwenn (lanodan) Monnier
47ba796f41
create_question_validator: remove validate_recipients_match 2020-07-15 11:39:55 +02:00
Haelwenn (lanodan) Monnier
ad867ccfa1
fetcher: Reinject Question through validator 2020-07-15 11:39:55 +02:00
Haelwenn (lanodan) Monnier
6b9c4bc1f1
fetcher: more descriptive variable names 2020-07-15 11:39:55 +02:00
Haelwenn (lanodan) Monnier
4644a8bd10
Fix multiple-choice poll detection 2020-07-15 11:39:55 +02:00
Haelwenn (lanodan) Monnier
10bd08ef07
transmogrifier_test: test date, anyOf and oneOf completely 2020-07-15 11:39:54 +02:00
Haelwenn (lanodan) Monnier
89a2433154
QuestionOptionsValidator: inline schema for replies 2020-07-15 11:39:54 +02:00
Haelwenn (lanodan) Monnier
c5efaf6b00
AnswerValidator: Create 2020-07-15 11:39:54 +02:00
Haelwenn (lanodan) Monnier
7bcd7a9595
QuestionValidator: Create 2020-07-15 11:39:53 +02:00
Alex Gleason
0d004a9d04
Email admins when a new unapproved account is up for review 2020-07-14 20:31:20 -05:00
Alex Gleason
48983e9421
Merge remote-tracking branch 'upstream/develop' into by-approval 2020-07-14 18:56:40 -05:00
Alex Gleason
df3d1bf5e5
Add :approval_pending to User @type account_status 2020-07-14 18:56:36 -05:00
Alex Gleason
20d24741af
AdminAPI: Add PATCH /api/pleroma/admin/users/approve endpoint 2020-07-14 18:02:44 -05:00
Alex Gleason
33f1b29b2c
AdminAPI: Filter users by need_approval 2020-07-14 14:29:03 -05:00
Alex Gleason
b750129da1
AdminAPI: Return approval_pending with users 2020-07-14 13:47:05 -05:00
Maksim Pechnikov
1dd767b8c7 Include port in host for signatures 2020-07-14 21:44:08 +03:00
Mark Felder
777a7edc6b Lint and fix test to match new log message 2020-07-14 13:15:37 -05:00
Mark Felder
37297a8482 Improve error messages 2020-07-14 13:12:16 -05:00
Alex Gleason
a1570ba6ad
AdminAPI: Return registration_reason with users 2020-07-14 13:08:39 -05:00
3f65f2ea79 Merge branch 'feature/1922-media-proxy-whitelist' into 'develop'
Support for hosts with scheme in MediaProxy whitelist setting

Closes #1922

See merge request pleroma/pleroma!2754
2020-07-14 18:07:44 +00:00
63798e89de Merge branch 'fix/scrubber-recompile-warnings-as-errors' into 'develop'
Fix in-db configuration in dev environment

See merge request pleroma/pleroma!2764
2020-07-14 18:05:36 +00:00
2909dc873b Merge branch '1940-admin-token-oauthless-auth' into 'develop'
[#1940] Reinstated OAuth-less `admin_token` authentication

Closes #1940

See merge request pleroma/pleroma!2760
2020-07-14 16:48:26 +00:00
Ivan Tashkinov
124b4709dc [#1940] Added admin_token param (as admin_api_params/0) to existing Admin API OpenAPI operations. 2020-07-14 19:31:05 +03:00
246f49d685 Merge branch '1916-transmogrifier-skipping-oddities-in-address-fields' into 'develop'
Transmogrifier: filtering weirdness in address fields

Closes #1916

See merge request pleroma/pleroma!2762
2020-07-14 15:17:25 +00:00
rinpatch
e6ccc25565 Fix in-db configuration in dev environment
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-14 13:16:54 +03:00
Haelwenn (lanodan) Monnier
858d9fc7e8
MRF Policies: Return a {:reject, reason} instead of {:reject, nil} 2020-07-14 11:04:16 +02:00
Ivan Tashkinov
9b225db7d8 [#1940] Applied rate limit for requests with bad admin_token. Added doc warnings on admin_token setting. 2020-07-14 11:58:41 +03:00
Ivan Tashkinov
cf3f8cb72a [#1940] Reinstated OAuth-less admin_token authentication. Refactored UserIsAdminPlug (freed from checking admin scopes presence). 2020-07-19 21:35:57 +03:00
Alex Gleason
5ddf0415c4
Accept reason in POST /api/v1/accounts and store in DB 2020-07-14 00:22:12 -05:00
=
b221b640a2 Transmogrifier: filtering weirdness in address fields 2020-07-13 22:43:21 +03:00
Mark Felder
80c21100db Merge branch 'develop' into refactor/notification_settings 2020-07-13 13:32:21 -05:00
5d215fd81f Merge branch 'config-behaviours-runtime' into 'develop'
Config/Docs: Expand behaviour suggestions modules at runtime

Closes #1941

See merge request pleroma/pleroma!2755
2020-07-13 15:45:25 +00:00
8f9ee694ed Merge branch 'features/profile-fields-emojo' into 'develop'
user: Add support for custom emojis in profile fields

See merge request pleroma/pleroma!2741
2020-07-13 15:43:46 +00:00
Haelwenn (lanodan) Monnier
ce243b107f
Use Logger.info for {:reject, reason} 2020-07-13 15:26:31 +02:00
Haelwenn (lanodan) Monnier
2aac92e9e0
Transmogrifier.fix_in_reply_to/2: Use warn for non-fatal fail to get replied-to post 2020-07-13 15:26:30 +02:00
Haelwenn
f918b6f86d Merge branch '1937-renaming' into 'develop'
ActivityPub: Don't rename a clashing nickname with the same ap id.

Closes #1937

See merge request pleroma/pleroma!2748
2020-07-13 12:06:43 +00:00
Alex Gleason
bcfd38c8f3
Make a user unapproved when registering with account_approval_required on 2020-07-12 22:55:37 -05:00
Alex Gleason
e4e5577818
Prevent unapproved users from logging in 2020-07-12 22:55:26 -05:00
Alex Gleason
51ab8d0128
Add account_approval_required instance setting 2020-07-12 20:27:58 -05:00
Alex Gleason
a62f17da17
Add approval_pending field to User 2020-07-12 20:27:14 -05:00
href
4347d2de5e Config/Docs: Expand behaviour suggestions at runtime 2020-07-12 17:23:33 +02:00
Alexander Strizhakov
b376442325
MediaProxy whitelist setting now supports hosts with scheme
added deprecation warning about using bare domains
2020-07-12 12:41:40 +03:00
Roman Chvanikov
3116a75e80 Check if mogrify available before calling it 2020-07-11 18:22:03 +03:00
Roman Chvanikov
523f1b93a4 Remove Logger requirement 2020-07-11 18:15:51 +03:00
Roman Chvanikov
45bd64e2a7 Error in Filter.Exiftool if exiftool not found 2020-07-11 18:11:23 +03:00
Roman Chvanikov
aedbbec88a Add Pleroma.Utils.command_available?/1 and use where appropriate 2020-07-11 15:48:45 +03:00
Maksim Pechnikov
62fc8eab0d fix reset confirmation email in admin section 2020-07-11 07:20:35 +03:00
Mark Felder
b329f05ed6 Remove unused @types 2020-07-10 17:08:54 -05:00
Mark Felder
9e45672674 Add a moduledoc 2020-07-10 17:07:28 -05:00
Mark Felder
6167593881 Support Exiftool for stripping EXIF data
We really only want to strip location data anyway, and mogrify strips color profiles.
2020-07-10 16:46:26 -05:00
Mark Felder
3c0c1fd2ef Merge branch 'develop' into issue/1790-updated-oban 2020-07-10 11:34:53 -05:00
ce9514000d Merge branch 'proxy-range-and-chunk' into 'develop'
ReverseProxy: Streaming and disable encoding if Range

Closes #1860 and #1823

See merge request pleroma/pleroma!2749
2020-07-10 16:18:28 +00:00
Mark Felder
72b3dbf4d1 Credo line length complaint 2020-07-10 11:04:19 -05:00
href
a1dace088c ReverseProxy: Streaming and disable encoding if Range
Fixes #1823
Fixes #1860
2020-07-10 17:23:11 +02:00
lain
93e494ec21 ActivityPub: Don't rename a clashing nickname with the same ap id. 2020-07-10 14:10:44 +02:00
lain
b39eb6ecc5 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into chat-federation-information 2020-07-10 12:26:53 +02:00
Haelwenn
31a0ed5d01 Merge branch 'admin-api-user-credentials-for-remote-users-fix' into 'develop'
Admin API: fix `GET /api/pleroma/admin/users/:nickname/credentials` returning 404 when getting the credentials of a remote user while `:instance, :limit_to_local_content` is set to `:unauthenticated`

Closes admin-fe#107 and #1788

See merge request pleroma/pleroma!2554
2020-07-10 09:22:14 +00:00
lain
48f98a2748 Merge branch 'mix-tasks-improvement' into 'develop'
Mix tasks improvement

See merge request pleroma/pleroma!2723
2020-07-10 08:58:44 +00:00
Haelwenn
4ac6e6283f Merge branch 'develop' into 'admin-api-user-credentials-for-remote-users-fix'
# Conflicts:
#   CHANGELOG.md
2020-07-10 08:55:15 +00:00
Haelwenn
5ea6387572 Merge branch 'user-search-nickname-rank-boost' into 'develop'
Improved search results for localized nickname match

See merge request pleroma/pleroma!2733
2020-07-10 08:49:14 +00:00
Haelwenn (lanodan) Monnier
cc7153cd82
user: Add support for custom emojis in profile fields 2020-07-09 19:21:58 +02:00
Mark Felder
2b979cc90c Add AdminFE reports URL to report emails 2020-07-09 11:55:40 -05:00
Mark Felder
d23804f191 Use the Pleroma.Config alias 2020-07-09 10:53:51 -05:00
Mark Felder
49c4e24953 Merge branch 'develop' into fix/csp-for-captcha 2020-07-09 09:08:59 -05:00
lain
8ca1f3e8c6 Merge branch '1723-token-fixes' into 'develop'
AccountController: Return scope in proper format.

Closes #1723

See merge request pleroma/pleroma!2694
2020-07-09 13:10:05 +00:00
lain
f4469dc741 Merge branch 'features/favicons' into 'develop'
Add support for remote favicons

See merge request pleroma/pleroma!2261
2020-07-09 13:09:31 +00:00
Haelwenn
bdc7b60610 Merge branch '1925-muting-reblogs' into 'develop'
AccountController: Fix muting / unmuting reblogs.

Closes #1925

See merge request pleroma/pleroma!2732
2020-07-09 12:10:26 +00:00
eugenijm
c2be0da79f Admin API: fix GET /api/pleroma/admin/users/:nickname/credentials returning 404 when getting the credentials of a remote user while :instance, :limit_to_local_content is set to :unauthenticated 2020-07-09 14:57:40 +03:00
Haelwenn
68036f5a3b Merge branch 'follow-pipeline' into 'develop'
Handle `Follow` activities with the pipeline

See merge request pleroma/pleroma!2734
2020-07-09 10:32:24 +00:00
lain
6d688f14fa Merge branch 'bugfix/status-deletion' into 'develop'
#1920 fix activity deletion

See merge request pleroma/pleroma!2721
2020-07-09 09:37:52 +00:00
Ivan Tashkinov
123352ffa1 Removed unused trigram index on users. Fixed users_fts_index usage. 2020-07-08 22:50:15 +03:00
lain
00e54f8fe7 ActivityPub: Remove follow and fix issues. 2020-07-08 17:07:24 +02:00
lain
9dda8b5427 CommonAPI: Switch to pipeline for following. 2020-07-08 15:40:56 +02:00
Alexander Strizhakov
b28cc15459
don't restart pleroma in mix tasks 2020-07-08 15:58:47 +03:00
Alexander Strizhakov
72ad3a66f4
don't fully start pleroma in mix tasks 2020-07-08 15:58:47 +03:00
lain
172f4aff8e Transmogrifier: Move following to the pipeline. 2020-07-08 14:30:53 +02:00
lain
29fa75d00d Notification: For follows, notify the followed. 2020-07-08 14:29:29 +02:00
lain
7d0e2b3fdd Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into follow-pipeline 2020-07-08 13:23:07 +02:00
lain
cdc153db31 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into issue/1880 2020-07-08 13:21:58 +02:00
lain
6335b32aa8 Merge branch '1895-hashtag-timeline-restrict-unauthenticated-fix' into 'develop'
[#1895] Made hashtag timeline respect `:restrict_unauthenticated` instance setting

Closes #1895

See merge request pleroma/pleroma!2731
2020-07-08 10:55:03 +00:00
Ivan Tashkinov
704a383055 Improved search results for localized nickname match. Tweaked user search to rank nickname matches higher than name matches. 2020-07-08 13:14:18 +03:00
Ivan Tashkinov
a6495f4a68 [#1895] credo fix. 2020-07-08 12:54:23 +03:00
lain
c0385cf47a AccountController: Fix muting / unmuting reblogs. 2020-07-08 11:52:29 +02:00
Ivan Tashkinov
3f8370a285 [#1895] Applied code review suggestion. 2020-07-08 12:36:44 +03:00
Maksim Pechnikov
e341f81785 fixed delete Like activity in remove user 2020-07-08 09:06:23 +03:00
Haelwenn (lanodan) Monnier
31fef95e35
Add changelog and documentation 2020-07-08 06:29:24 +02:00
Haelwenn (lanodan) Monnier
312fc55f14
Add [:instances_favicons, :enabled] setting, defaults to false 2020-07-08 06:28:40 +02:00
Haelwenn (lanodan) Monnier
8c9df2d2e6
instance: Prevent loop of updates 2020-07-08 06:28:40 +02:00
Haelwenn (lanodan) Monnier
013e2c5057
Use instances table instead of Cachex 2020-07-08 06:28:39 +02:00
Haelwenn (lanodan) Monnier
6a679d80c9
Move get_favicon to Pleroma.Instances, use / 2020-07-08 06:28:39 +02:00
Haelwenn (lanodan) Monnier
f6d09fafee
Add support for remote favicons 2020-07-08 06:28:39 +02:00
Haelwenn
a8447c3803 Merge branch '1918-avatar-background-header-reset-2' into 'develop'
Resolve "Better support for resetting avatar/header/background"

Closes #1918

See merge request pleroma/pleroma!2729
2020-07-08 03:25:30 +00:00
Haelwenn
db13acf242 Merge branch 'fix/twitter-rich-media-preview' into 'develop'
Add "Bot" to User Agent to coerce Twitter into serving OGP <meta> tags.

Closes #1923

See merge request pleroma/pleroma!2730
2020-07-08 03:05:20 +00:00
lain
8939ff39e4 Merge branch 'remove-twitter-api' into 'develop'
Remove some TwitterAPI endpoints

See merge request pleroma/pleroma!2327
2020-07-07 18:26:07 +00:00
Ivan Tashkinov
3e08e77151 [#1895] Made hashtag timeline respect :restrict_unauthenticated instance setting. 2020-07-07 20:37:11 +03:00
Mark Felder
18438a9bf0 Add "Bot" to User Agent to coerce Twitter into serving OGP <meta> tags. 2020-07-07 11:21:05 -05:00
lain
c8dd973af5 AccountController: Remove unused update_? routes.
These were not documented and are also not used anymore.
2020-07-07 16:53:20 +02:00
lain
59cf78e412 AccountController: Allow removal / reset of user images. 2020-07-07 16:53:03 +02:00
lain
9ad305209a Merge branch 'bugfix/peertube-videos' into 'develop'
Fix getting videos from peertube

See merge request pleroma/pleroma!2728
2020-07-07 09:14:50 +00:00
Haelwenn
fa0fa4552f Merge branch 'feature/1392-support-irreversible-filters' into 'develop'
Updates for Feature/1392 support irreversible filters

Closes #1392

See merge request pleroma/pleroma!2186
2020-07-07 08:23:49 +00:00
Haelwenn (lanodan) Monnier
fbb9743a70
Fix getting videos from peertube 2020-07-07 09:38:38 +02:00
Haelwenn
d81acb5f62 Merge branch 'description-limits' into 'develop'
Add limits to image descriptions

See merge request pleroma/pleroma!2724
2020-07-07 03:00:52 +00:00
Mark Felder
da4029391d IO list, not concatenation 2020-07-06 11:28:08 -05:00
Mark Felder
65843d92c4 Simplify the logic 2020-07-06 10:59:41 -05:00
lain
a6a12b241f FollowValidator: Add basic validation. 2020-07-06 15:57:19 +02:00
lain
28feba8af4 Preloaders: Remove status_net preloader 2020-07-06 12:24:45 +02:00
lain
1963e143c5 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remove-twitter-api 2020-07-06 12:15:59 +02:00
lain
158c26d7dd StaticFE Plug: Use phoenix helper to get the requested format. 2020-07-06 12:11:10 +02:00
lain
ed4f9f6a29 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into 1507-static-fe-prioritize-json 2020-07-06 12:07:56 +02:00
lain
208baf157a ActivityPub: Add new 'capabilities' to user. 2020-07-06 11:38:40 +02:00
lain
74b88c0a8b Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into chat-federation-information 2020-07-06 11:27:06 +02:00
rinpatch
69f0b286f7 Merge branch '1915-dont-filter-announce-notifications' into 'develop'
Streamer: Don't filter out announce notifications.

Closes #1915

See merge request pleroma/pleroma!2719
2020-07-06 09:21:03 +00:00
lain
cc8b4e48d9 InstanceView: Add chat limit, description limit 2020-07-06 11:12:37 +02:00
lain
af7720237b Upload: Restrict description length 2020-07-06 11:08:13 +02:00
Alexander Strizhakov
20c27bef40
renaming back and reject nil on create 2020-07-06 09:30:42 +03:00
Alexander Strizhakov
771748db1f
Apply suggestion to lib/pleroma/filter.ex 2020-07-06 09:30:41 +03:00
Alexander Strizhakov
6558f31cda
don't filter notifications for follow and move types 2020-07-06 09:30:41 +03:00
Sergey Suprunenko
8277b29790
Restrict thread statuses that contain user's irreversible filters 2020-07-06 09:30:39 +03:00
Sergey Suprunenko
5af1bf443d
Skip notifications for statuses that contain an irreversible filtered word 2020-07-06 09:28:22 +03:00
Sergey Suprunenko
4a8c26654e
Restrict statuses that contain user's irreversible filters 2020-07-06 09:28:21 +03:00
Alexander Strizhakov
480dfafa83
don't save tesla settings into db 2020-07-06 08:48:20 +03:00
Roman Chvanikov
fc1f34b851 Delete activity before sending response to client 2020-07-06 00:01:25 +03:00
Mark Felder
af612bd006 Ensure all CSP parameters for remote hosts have a scheme 2020-07-05 10:11:43 -05:00
lain
cf56655614 Streamer: Don't filter out announce notifications. 2020-07-04 17:11:37 +02:00
Mark Felder
e9a28078ad Rename function and clarify that CSP is only strict with MediaProxy enabled 2020-07-03 17:18:22 -05:00
Mark Felder
eaa59daa4c Add Captcha endpoint to CSP headers when MediaProxy is enabled.
Our CSP rules are lax when MediaProxy enabled, but lenient otherwise.

This fixes broken captcha on instances not using MediaProxy.
2020-07-03 17:06:20 -05:00
Mark Felder
4695bdd81b Merge branch 'develop' into issue/1790-updated-oban 2020-07-03 10:36:41 -05:00
lain
c2a052a346 Merge branch 'features/mastoapi-2.9.0-status_text' into 'develop'
MastoAPI 2.9.0: status text on deletion

See merge request pleroma/pleroma!2690
2020-07-03 15:06:33 +00:00
lain
9a27ef47f1 Merge branch '1912-leading-trailing-space-search' into 'develop'
SearchController: Trim query.

Closes #1912

See merge request pleroma/pleroma!2717
2020-07-03 14:59:12 +00:00
lain
d3efb50262 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into features/mastoapi-2.9.0-status_text 2020-07-03 16:44:31 +02:00
lain
19fbfbb767 Merge branch '1892-exclude-bots-from-search-results' into 'develop'
[#1892] Exclusion of service actors from user search results

Closes #1892

See merge request pleroma/pleroma!2708
2020-07-03 14:38:22 +00:00
lain
945e75c8e8 SearchController: Trim query. 2020-07-03 16:36:55 +02:00
lain
e3b5559780 AccountController: Make setting accepts_chat_messages possible. 2020-07-03 15:54:25 +02:00
lain
4a7b89e372 ChatMessageValidator: Additional validation. 2020-07-03 15:13:27 +02:00
lain
3ca9af1f9f Account Schema: Add accepts_chat_messages 2020-07-03 14:31:04 +02:00
lain
5c0bf4c472 ActivityPub: Ingest information about chat acceptance. 2020-07-03 13:58:34 +02:00
lain
26a7cc3f00 UserView: Add acceptsChatMessages field 2020-07-03 13:38:59 +02:00
lain
37fdb05058 User, Migration: Change accepts_chat_messages to be nullable
This is to model the ambiguous state of most users.
2020-07-03 13:12:23 +02:00
lain
3250228be9 AccountView: Add 'accepts_chat_messages' to view. 2020-07-03 13:07:33 +02:00
lain
98bfdba108 User: On registration, set accepts_chat_messages to true. 2020-07-03 12:47:05 +02:00
rinpatch
86151b23a6 Merge branch '1910-migration-fix' into 'develop'
Notification Backfill: Explicitly select the needed fields.

Closes #1910

See merge request pleroma/pleroma!2715
2020-07-03 10:44:19 +00:00
lain
59b426ebef Notification Backfill: Explicitly select the needed fields.
Prevents a crashing migration when we change user fields.
2020-07-03 11:25:12 +02:00
Ivan Tashkinov
90764670dc [#1892] Excluded internal users (applications) from user search results, reinstated service actors in search results. 2020-07-03 11:02:15 +03:00
Mark Felder
8121e46f25 Merge branch 'develop' into activation-meta 2020-07-02 13:01:22 -05:00
Mark Felder
d44ec2bf4c Remove camelCase from the keys 2020-07-02 12:55:08 -05:00
rinpatch
4c044f6225 Merge branch 'fetcher-fixes' into 'develop'
Don't fail fetching when the user in a replied-to message can't be fetched.

See merge request pleroma/pleroma!2711
2020-07-02 10:17:51 +00:00
lain
bad08f34ca Credo fixes. 2020-07-02 09:57:31 +02:00
lain
311b7c19d0 Streamer: Align announce streaming with polling. 2020-07-02 09:50:26 +02:00
lain
61fe94d698 SideEffects: Refactor. 2020-07-02 09:33:50 +02:00
lain
fedfe8f7d6 ActivityPub: Handle clashing nicknames for the same ap id
If we get a new user (identified by ap_id) that would have the same
nickname as an existing user, give the existing user a nickname that
is prepended with the user id, as this will never clash.

This can happen when a user switches server software and that soft-
ware generates ap ids in a different way.
2020-07-01 12:26:07 +02:00
lain
ce92e6e5ce Fetcher: Work when we can't get the OP. 2020-07-01 11:48:51 +02:00
Alex Gleason
8daacc9114
AutoLinker --> Linkify, update to latest version
https://git.pleroma.social/pleroma/elixir-libraries/linkify
2020-06-30 16:39:15 -05:00
Mark Felder
5a8e0208b1 Add fields limits to instance metadata, add tests 2020-06-30 15:25:10 -05:00
Mark Felder
0883a706dc Merge branch 'develop' into activation-meta 2020-06-30 15:09:03 -05:00
Ivan Tashkinov
3d2989278c [#1892] Excluded bot actors (applications, services) from search results. 2020-06-30 21:26:39 +03:00
Mark Felder
d69af7f742 Rename user.settings column
This is used exclusively by MastoFE/GlitchFE now
2020-06-30 11:50:53 -05:00
lain
8b7055e25e Credo fixes 2020-06-30 11:55:58 +02:00
lain
0176b7bca2 Merge branch 'preload-fixups-2' into preloadfixups 2020-06-30 11:40:34 +02:00
lain
2382a2a151 Preload: Load the correct instance panel 2020-06-30 11:35:54 +02:00
rinpatch
7bb3618939 Merge branch 'fix-notification-filtering' into 'develop'
Notifications: Never return `nil` in the notification list.

See merge request pleroma/pleroma!2705
2020-06-29 18:06:25 +00:00
lain
09c5991f82 Apply suggestion to lib/pleroma/notification.ex 2020-06-29 16:04:14 +00:00
lain
90083a754d Notifications: Never return nil in the notification list. 2020-06-29 17:48:18 +02:00
Egor Kislitsyn
979f02ec94
Fix CastAndValidate plug 2020-06-29 17:33:00 +04:00
Egor Kislitsyn
67d92ac7b7
Remove /statusnet/config 2020-06-29 17:00:37 +04:00
Egor Kislitsyn
8693e01799
Fix warning 2020-06-29 16:29:51 +04:00
Alexander Strizhakov
6512ef6879
excluding attachment links from RichMedia 2020-06-29 15:25:57 +03:00
Egor Kislitsyn
4a306720e8
Merge branch 'develop' into remove-twitter-api 2020-06-29 16:09:49 +04:00
lain
59540131c1 Credo fixes. 2020-06-29 14:09:03 +02:00
lain
f308196b75 Token Response: Remove empty file. 2020-06-29 13:52:50 +02:00
lain
e374872fe7 AccountOperation: Correctly describe create response. 2020-06-29 13:49:48 +02:00
lain
bb168ed94a OAuth: Extract view-type functions to a view. 2020-06-29 13:39:09 +02:00
lain
8630a6c7f5 Preloaders: Use strings as keys. 2020-06-29 11:41:00 +02:00
lain
a19f8778af User preloader: Put user info at correct key 2020-06-29 11:06:20 +02:00
lain
577da132da Merge branch '1031-parent-visible' into 'develop'
Resolve "Add `pleroma.parent_visible` to the status view"

Closes #1031

See merge request pleroma/pleroma!2679
2020-06-29 08:39:51 +00:00
Haelwenn (lanodan) Monnier
9f51b03eed
ApiSpec.Schemas.Account: import description from differences_in_mastoapi_responses 2020-06-29 03:31:33 +02:00
Haelwenn (lanodan) Monnier
1566543bec
object/fetcher: Pass full Transmogrifier error 2020-06-26 20:10:47 +02:00
Haelwenn (lanodan) Monnier
244655e884
MastoAPI: Show source field when deleting 2020-06-26 19:52:20 +02:00
Mark Felder
69848d5c97 Rename notification "privacy_option" setting 2020-06-26 12:45:46 -05:00
Haelwenn
bf1c5e255a Merge branch 'block-handling' into 'develop'
Handle blocks with the pipeline

See merge request pleroma/pleroma!2685
2020-06-26 17:41:00 +00:00
Haelwenn
09478c9cf7 Merge branch '1258-anti-link-spam-exemption' into 'develop'
AntiSpamLinkPolicy: Exempt local users.

Closes #1258

See merge request pleroma/pleroma!2686
2020-06-26 16:59:46 +00:00
Mark Felder
fd5e797379 Simplify notification filtering settings further 2020-06-26 11:24:28 -05:00
Mark Felder
b950fb01db Merge branch 'develop' into refactor/notification_settings 2020-06-26 10:23:19 -05:00
lain
a5bbfa21a1 StaticFE: Prioritize json in requests. 2020-06-26 16:27:39 +02:00
lain
f378e93bf4 AccountController: Return scope in proper format. 2020-06-26 16:15:27 +02:00
lain
a2002ebb63 Preloading: Fix nodeinfo url. 2020-06-26 14:48:23 +02:00
lain
4a7a34ae8c Preloading: Return correct data for statusnet stuff. 2020-06-26 14:47:38 +02:00
lain
7ed2296416 Nodeinfo: Add chat information back in. 2020-06-26 13:04:15 +02:00
lain
15a8b70318 User: Don't unfollow on block when the relevant setting is set. 2020-06-26 12:06:00 +02:00
lain
c3383d4fab BlockValidator: Restore old behavior for incoming blocks. 2020-06-26 11:58:40 +02:00
Haelwenn (lanodan) Monnier
27c33f216a
activity_draft: Add source field 2020-06-26 05:48:25 +02:00
Haelwenn (lanodan) Monnier
d6c958b4c2
nodeinfo: Fix MRF transparency 2020-06-26 05:33:59 +02:00
8288419686 Merge branch 'preload-data' into 'develop'
Preload data into index.html

Closes #1660

See merge request pleroma/pleroma!2381
2020-06-25 21:35:39 +00:00
Mark Felder
433c01b370 Merge branch 'develop' into refactor/notification_settings 2020-06-25 14:26:21 -05:00
lain
04abee782b AntiSpamLinkPolicy: Exempt local users. 2020-06-25 12:40:39 +02:00
lain
1cd1977c0f Merge branch 'issue/1872-ex_aws' into 'develop'
[#1872] use Pleroma.HTTP for ExAws.S3

See merge request pleroma/pleroma!2683
2020-06-25 10:14:19 +00:00
lain
84f9ca1956 Blocking: Don't federate if the options is set. 2020-06-25 12:03:14 +02:00
lain
44bb7cfccd ActivityPub: Remove block. 2020-06-25 11:51:33 +02:00
lain
8cfb58a8c0 AccountController: Extract blocking to CommonAPI. 2020-06-25 11:44:04 +02:00
lain
e38293c8f1 Transmogrifier: Switch to pipeline for Blocks. 2020-06-25 11:33:54 +02:00
lain
89e5b2046b ObjectValidator: Basic Block support. 2020-06-25 11:13:35 +02:00
lain
0e26ef2ab9 Merge branch 'fix/following-request-from-deactivated' into 'develop'
Filter outstanding follower requests from deactivated accounts

Closes #1771

See merge request pleroma/pleroma!2682
2020-06-25 06:50:44 +00:00
Maksim Pechnikov
439a1a0218 added wrapper Pleroma.HTTP for ExAws.S3 2020-06-25 07:12:29 +03:00
Mark Felder
67ab580553 Filter outstanding follower requests from deactivated accounts 2020-06-24 17:18:53 -05:00
Maksim Pechnikov
cc837f9d15 fixed config/descpiption.exs 2020-06-24 21:21:33 +03:00
Alexander Strizhakov
aae1af8cf1
fix for emoji pagination in pack show 2020-06-24 18:06:30 +03:00
lain
4c5fb831b3 Status schema: Add parent_visible. 2020-06-24 14:33:00 +02:00
lain
35f6770436 StatusView: Add pleroma.parent_visible 2020-06-24 13:29:08 +02:00
lain
88ccade1cb Merge branch 'feature/admin-api-status-count-per-instance' into 'develop'
admin api status count per instance

See merge request pleroma/pleroma!2500
2020-06-24 10:42:07 +00:00
Maksim Pechnikov
721fc7c554 added wrapper Pleroma.HTTP for Tzdata.HTTPClient 2020-06-24 09:12:32 +03:00
lain
98af7b59e4 Merge branch 'update-validator' into 'develop'
Update validator

See merge request pleroma/pleroma!2668
2020-06-23 18:10:33 +00:00
Roman Chvanikov
1471b70ef1 Merge develop 2020-06-23 20:56:55 +03:00
Haelwenn
c7d69e9256 Merge branch 'feature/1631-redesign-mrf-configuration' into 'develop'
Moving mrf settings from instance to separate mrf group

Closes #1631

See merge request pleroma/pleroma!2320
2020-06-23 16:38:27 +00:00
Maksim Pechnikov
a8d967762e migrate to oban 2.0-rc1 2020-06-23 15:09:01 +03:00
lain
b7f297f0bd Merge branch 'issue/1798' into 'develop'
[#1798] fixed migration the settings to DB

See merge request pleroma/pleroma!2655
2020-06-23 10:54:15 +00:00
lain
aee815b478 ObjectValidator: Clarify type of object. 2020-06-23 12:37:05 +02:00
lain
2c603f2009 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into update-validator 2020-06-23 10:17:12 +02:00
Maksim Pechnikov
2715c40e1d added tests 2020-06-23 06:59:00 +03:00
Haelwenn (lanodan) Monnier
c116b6d6d6
ActivityPubController: Update upload_media @doc
Small cherry-pick from https://git.pleroma.social/pleroma/pleroma/-/merge_requests/1810
2020-06-23 04:42:44 +02:00
Haelwenn
d21ef5e66b Merge branch 'fix/missing-default-instance_thumbnail_config' into 'develop'
Add missing default config value for :instance, instance_thumbnail

See merge request pleroma/pleroma!2672
2020-06-23 01:55:33 +00:00
Mark Felder
df5e048cbb Do not need a function to provide fallback value with default defined in config.exs 2020-06-22 17:39:02 -05:00
Haelwenn
98f014d3be Merge branch 'warning/mastofe-settings-blob' into 'develop'
Add warning against parsing/reusing MastoFE settings blob

See merge request pleroma/pleroma!2671
2020-06-22 21:59:21 +00:00
Haelwenn (lanodan) Monnier
8f6ba4b22f
Add warning against parsing/reusing MastoFE settings blob 2020-06-22 23:45:29 +02:00
lain
46f7e51b27 Merge branch 'add-muted-to-notifications' into 'develop'
Add `pleroma.is_muted` property to notifications

Closes #1812

See merge request pleroma/pleroma!2670
2020-06-22 15:40:09 +00:00
Egor Kislitsyn
b3a549e916
Update NotificationOperation spec 2020-06-22 19:18:33 +04:00
Egor Kislitsyn
7e6f43c0d7
Add is_muted to notifications 2020-06-22 19:03:04 +04:00
Maksim Pechnikov
b0a40fc2e4 added verify RUM settings before start app 2020-06-22 17:27:49 +03:00
lain
59bdef0c33 Merge branch 'feature/1739-account-endpoints' into 'develop'
account visibility in masto api

Closes #1739

See merge request pleroma/pleroma!2488
2020-06-22 12:37:10 +00:00
lain
8b5bdd164e Merge branch 'fix/1825-admin-api-error-codes' into 'develop'
Proper error codes for error in adminFE

Closes #1825

See merge request pleroma/pleroma!2665
2020-06-22 12:25:12 +00:00
lain
b05f795326 Credo fixes 2020-06-22 14:02:29 +02:00
lain
e785cd5cae ActivityPub: Remove update and switch to pipeline. 2020-06-22 13:59:45 +02:00
rinpatch
c75ba63bef Merge branch '1865-media-only' into 'develop'
Resolve "/api/v1/accounts/:id/statuses?only_media=true returns media that is not owned"

Closes #1865

See merge request pleroma/pleroma!2650
2020-06-22 11:34:07 +00:00
lain
9438f83f83 Transmogrifier: Handle Update with the pipeline. 2020-06-22 13:16:05 +02:00
lain
31a4d42ce0 SideEffects: Handle user updating. 2020-06-22 13:15:37 +02:00
rinpatch
282f492cd5 Merge branch '1883-mrf-chat' into 'develop'
HellthreadPolicy: Restrict to Notes and Articles.

Closes #1883

See merge request pleroma/pleroma!2666
2020-06-22 10:00:13 +00:00
lain
93ae1c8bd3 Merge branch 'feature/1854-emoji-pagination' into 'develop'
Emoji and packs pagination

Closes #1854

See merge request pleroma/pleroma!2658
2020-06-22 08:41:09 +00:00
lain
35e9282ffd HellthreadPolicy: Restrict to Notes and Articles. 2020-06-22 10:35:11 +02:00
Alexander Strizhakov
b5f13af7ba Apply suggestion to lib/pleroma/web/api_spec/operations/pleroma_emoji_pack_operation.ex 2020-06-20 10:59:08 +00:00
Alexander Strizhakov
c5863438ba
proper error codes for error in adminFE 2020-06-20 13:53:57 +03:00
lain
31761340fe Merge branch 'feature/support-bot-field-in-update-credentials' into 'develop'
Support 'bot' field in account update_credentials

Closes #1600 and #1467

See merge request pleroma/pleroma!2662
2020-06-20 09:57:12 +00:00
lain
0e789bc55f Apply suggestion to lib/pleroma/web/api_spec/operations/pleroma_emoji_pack_operation.ex 2020-06-20 09:39:50 +00:00
lain
7d542450b1 Merge branch 'develop' into '1865-media-only'
# Conflicts:
#   CHANGELOG.md
2020-06-20 09:33:18 +00:00
Alexander Strizhakov
1a704e1f1e
fix for packs pagination 2020-06-20 10:56:28 +03:00
Haelwenn (lanodan) Monnier
3d4cfc9c5f
Stop filling conversation field on incoming objects (legacy, unused)
conversation field is still set for outgoing federation for compatibility.
2020-06-20 00:08:26 +02:00
f928267773 Merge branch 'issue/1855' into 'develop'
#1855 MediaProxy cache invalidation via Admin API

See merge request pleroma/pleroma!2648
2020-06-19 20:38:22 +00:00
Sergey Suprunenko
ac0344dd24
Only accounts with Service actor_type are considered as bots 2020-06-19 21:19:00 +02:00
Sergey Suprunenko
b63646169d
Add support for bot field in update_credentials 2020-06-19 21:18:07 +02:00
lain
75670a99e4 UpdateValidator: Only allow updates from the user themselves. 2020-06-19 16:38:57 +02:00
lain
cafdf18408 Merge branch '1873-pagination-fixes' into 'develop'
[#1873] :offset pagination param support, hashtags pagination

Closes #1873

See merge request pleroma/pleroma!2659
2020-06-19 13:42:57 +00:00
lain
372533b7c3 Merge branch 'dry-up-follower-update' into 'develop'
User: update_follower_count refactor.

See merge request pleroma/pleroma!2649
2020-06-19 13:40:34 +00:00
lain
abdb540d45 ObjectValidators: Add basic UpdateValidator. 2020-06-19 15:30:30 +02:00
Ivan Tashkinov
5237a2df9f [#1873] Fixes missing :offset pagination param support. Added pagination support for hashtags search. 2020-06-19 16:14:06 +03:00
Alexander Strizhakov
02ca8a363f
default page size for files 2020-06-19 14:46:38 +03:00
Alexander Strizhakov
3e3f9253e6
adding overall count for packs and files 2020-06-19 10:17:24 +03:00
Alexander Strizhakov
4975ed86bc
emoji pagination for pack show action 2020-06-18 18:50:03 +03:00
Alexander Strizhakov
3becdafd33
emoji packs pagination 2020-06-18 14:32:21 +03:00
Maksim Pechnikov
c9b5e3feda revert 'database' option to rejected keys 2020-06-18 05:29:31 +03:00
Maksim Pechnikov
4044f24e2e fix test 2020-06-18 05:06:28 +03:00
Mark Felder
2731ea1334 Change references from "deleted_urls" to "banned_urls" as nothing is handled via media deletions anymore; all actions are manual operations by an admin to ban the url 2020-06-17 13:13:55 -05:00
Mark Felder
c08c9db0c1 Remove misleading is_ prefix from boolean function 2020-06-17 13:02:01 -05:00
Mark Felder
71a5d9bffb Empty list as default 2020-06-17 12:54:02 -05:00