Tusooa Zhu
a9984c6da7
Make activity search properly use GIN indexes
...
The original approach to search in GIN indexes is to use
`to_tsvector(text)` in the WHERE clause of the query. According to
postgres docs [pdoc], this method does not make use of the index,
while `to_tsvector(config, text)` does. This commit changed the
query to use the two-argument `to_tsvector()`.
[pdoc]: https://www.postgresql.org/docs/12/textsearch-tables.html
To obtain the search config in use, we make a query to the db first.
The `::regconfig::oid` hack is needed because Postgrex does not support
regconfig type directly [postgrexbug]. I use the conversion from and to
`oid` instead of `text` because I tested in the actual DB and querying
using the conversion via `text` is slow just as the one-argument
`to_tsvector()` variant.
[postgrexbug]: https://github.com/elixir-ecto/postgrex/issues/502
BUG: https://git.pleroma.social/pleroma/pleroma/-/issues/2758
2021-08-27 22:27:17 -04:00
Alex Gleason
b11dbbf403
UserController: fall back to frontend when user isn't found
2021-08-17 18:32:32 -05:00
someone
4b940e441a
mix pleroma.database set_text_search_config now runs concurrently and infinitely
2021-08-15 13:49:12 -04:00
Haelwenn
84ec0fbeaa
Merge branch 'show_frontends_also_when_no_static_frontends_folder_is_created_yet' into 'develop'
...
List available frontends also when no static/frontends folder is present yet
Closes admin-fe#201
See merge request pleroma/pleroma!3510
2021-08-14 18:42:12 +00:00
Ilja
f9bafc17fb
List available frontends also when no static/frontends folder is present yet
...
* To see what front ends are installed, it ls static/frontends. When this folder doesn't exists yet, it will return an empty array.
* Installing still works since the folder is created during installation already
2021-08-14 18:42:12 +00:00
Haelwenn
2d9f803dc6
Merge branch 'StealEmojiMRF_add_adminFE' into 'develop'
...
Add Admin-FE menu for StealEmojiPolicy
See merge request pleroma/pleroma!3512
2021-08-14 18:40:24 +00:00
Haelwenn
773708cfe8
Merge branch 'builder-note' into 'develop'
...
CommonAPI.Utils.make_note_data/1 --> ActivityPub.Builder.note/1
See merge request pleroma/pleroma!3511
2021-08-14 18:32:40 +00:00
Alex Gleason
ba6049aa81
Builder.note/1: return {:ok, map(), keyword()} like other Builder functions
2021-08-14 11:24:55 -05:00
Sam Therapy
b901b73057
Add Admin-FE menu for StealEmojiPolicy
2021-08-14 11:08:39 -05:00
Alex Gleason
a2eacfc525
CommonAPI.Utils.make_note_data/1 --> ActivityPub.Builder.note/1
2021-08-14 11:01:06 -05:00
Ilja
5049b4272e
Selecting MRF policies didn't work as intended any more
...
* Policies were put under a new module (Pleroma.Web.ActivityPub.MRF.Policy instead of Pleroma.Web.ActivityPub.MRF), but this wasn't changed in the Pleroma.Web.ActivityPub.MRF @mrf_config_descriptions
* I don't have a unit test to prevent similar problems in the future because I don't find a proper way to do it
* The descriptions in the unit tests are defined in the unit tests, so if someone changes module names in the code, the tests wont see it
* The list is generated in Pleroma.Docs.Generator.list_behaviour_implementations, but I can't do a check in the when clause of the function to see if the provided module is a behaviour or not.
2021-08-14 13:42:32 +02:00
Alex Gleason
01175ef498
Streamer: fix crash in MastodonAPI.StatusView
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3508
2021-08-13 17:58:03 +02:00
Haelwenn (lanodan) Monnier
27e1e4c742
Activity.Search: fallback on status resolution on DB Timeout
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3507
2021-08-13 17:57:50 +02:00
Alex Gleason
e117551169
AdminAPI: hotfix for nil report objects
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3504
2021-08-13 17:57:39 +02:00
Haelwenn (lanodan) Monnier
bb2d5879cc
maybe_notify_subscribers: Don't create notifications from ingested replies
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3505
2021-08-13 17:57:19 +02:00
Haelwenn (lanodan) Monnier
0e2aebd036
TwitterAPI: Make change_email require body params instead of query
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3503
2021-08-13 17:57:11 +02:00
Haelwenn (lanodan) Monnier
3961422f85
TwitterAPI: Make change_password require body params instead of query
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3503
2021-08-13 17:56:59 +02:00
Haelwenn (lanodan) Monnier
8baaa36a16
ObjectAgePolicy: Fix pattern matching on published
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3500
2021-08-13 17:56:46 +02:00
kPherox
34606d609d
fix: stream out Create Activity
...
Backport of: https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3499
2021-08-13 17:54:51 +02:00
Haelwenn
61ba54897e
Merge branch 'streamer-crash-fix' into 'develop'
...
Streamer crash fix
See merge request pleroma/pleroma!3508
2021-08-13 15:42:12 +00:00
Alex Gleason
b7bbf42acd
Streamer: fix crash in MastodonAPI.StatusView
2021-08-13 10:25:42 -05:00
rinpatch
7afabe1cc6
Merge branch 'bugfix/status-search-fallback' into 'develop'
...
Activity.Search: resolve status on DB Timeout
Closes #2566
See merge request pleroma/pleroma!3507
2021-08-13 12:09:39 +00:00
Haelwenn (lanodan) Monnier
6455b967ec
Activity.Search: fallback on status resolution on DB Timeout
2021-08-12 10:35:32 +02:00
Haelwenn
3a7b54be4a
Merge branch 'nil-report-object-hotfix' into 'develop'
...
AdminAPI: hotfix for nil report objects
See merge request pleroma/pleroma!3504
2021-08-11 20:30:43 +00:00
Haelwenn (lanodan) Monnier
61d233921c
ObjectValidator.stringify_keys: filter out nil values
2021-08-11 21:38:10 +02:00
Haelwenn
3ca39ccf69
Merge branch 'bugfix/subscriptions-replies' into 'develop'
...
maybe_notify_subscribers: Normalize Object to check inReplyTo presence
Closes #2732
See merge request pleroma/pleroma!3505
2021-08-11 18:50:39 +00:00
Haelwenn (lanodan) Monnier
436fac3bac
maybe_notify_subscribers: Don't create notifications from ingested messages
2021-08-11 20:49:38 +02:00
Alex Gleason
7247c29653
AdminAPI: hotfix for nil report objects
2021-08-11 09:42:19 -05:00
Haelwenn
7c1243178b
Merge branch 'bugfix/change_password' into 'develop'
...
TwitterAPI: Make change_password require body params instead of query
Closes #2740
See merge request pleroma/pleroma!3503
2021-08-10 18:40:13 +00:00
Haelwenn (lanodan) Monnier
197cdebca9
TwitterAPI: Make change_email require body params instead of query
2021-08-10 20:33:00 +02:00
Haelwenn
8679a57a71
Merge branch 'bugfix/object-age-create' into 'develop'
...
ObjectAgePolicy: Fix pattern matching on published
See merge request pleroma/pleroma!3500
2021-08-10 18:16:02 +00:00
Haelwenn (lanodan) Monnier
09dcb2b522
TwitterAPI: Make change_password require body params instead of query
...
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/2740
2021-08-10 20:01:11 +02:00
Haelwenn (lanodan) Monnier
c64eae40a2
ObjectAgePolicy: Fix pattern matching on published
2021-08-10 07:41:06 +02:00
Haelwenn
f4af74b0fc
Merge branch 'fix/streaming-api-for-create-activity' into 'develop'
...
fix: stream out Create Activity
Closes #2691
See merge request pleroma/pleroma!3499
2021-08-09 19:10:05 +00:00
Haelwenn
901204df22
Merge branch 'poll-notification' into 'develop'
...
MastodonAPI: Support poll notification
See merge request pleroma/pleroma!3484
2021-08-09 10:02:37 +00:00
kPherox
ee5def34da
fix: stream out Create Activity
2021-08-09 18:37:48 +09:00
Sean King
1841bd8383
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remove/mastofe
2021-08-06 08:08:20 -06:00
Egor Kislitsyn
ad09bdb376
Improve readability
2021-08-06 07:59:54 +02:00
Ilja
b0926a71b2
Make transparency_exclusions use tuples in admin-fe
...
* Make it use tuples
* I also changed the keys for key_placeholder and value_placeholder to use snake_case instead of camelCase
2021-08-06 07:59:53 +02:00
Ilja
f4028c908c
Add key- and valuePlaceholders for quarantined_instances and mrf_simple
...
* I also added for keywordpolicy as well now. It was done in the admin-fe, but is better to be done here
* I also added comments to explain why we did the _info keys (backwards compatibility)
2021-08-06 07:59:53 +02:00
Ilja
03030b47c2
quarantine instances info
...
Added a new field in the nodeinfo called quarantined_instances_info
This holds an object like `"quarantined_instances_info":{"quarantined_instances":{"quar.inst":{"reason":"whatever reason"}}}}`
2021-08-06 07:59:53 +02:00
Ilja
47fc57bbcc
Change what nodeinfo returns without breaking backwards compatibility
...
* Only for SimplePolicy for now
* I added an extra mrf_simple_info key that has an object as value. The object contains only relevant extra info
2021-08-06 07:59:53 +02:00
Ilja
7fdc3cde06
Return maps in node_info
...
It's easiest (and imo most proper) to use tuples {"instance, "reason"} in BE,
but for FE maps like %{"instance": "instance", "reason", "reason"} are better.
I changed it so that node_info returns maps now for simple_policy and quarantined instances.
2021-08-06 07:59:53 +02:00
Ilja
c0489f9fac
Fixed deprecation warning checks
...
When a setting was deprecated, the code would stop checking for the rest of the possible deprications. This also meant that the settings weren't rewritten to the new settings for deprecated settings besides the first one.
2021-08-06 07:59:53 +02:00
Ilja
3c5a497b19
Deprecate transparency_exclusions
...
* Give deprecation message
* Rewrite configs
2021-08-06 07:59:52 +02:00
Ilja
dfeb3862da
config :mrf, :transparency_exclusions works with tumples now
2021-08-06 07:59:52 +02:00
Ilja
e0c7d77197
Deprecate and rewrite settings for quarentine settings
...
* This is for the settings, not yet a DB migration
2021-08-06 07:59:52 +02:00
Ilja
27fe7b0274
Make quarentine work with list of tuples instead of strings
2021-08-06 07:59:52 +02:00
Ilja
4ba0beb60c
Make mrfSimple work with tuples
...
* Changed SimplePolicy
* I also grepped in test/ for ':mrf_simple' to see what other things could be affected
2021-08-06 07:58:58 +02:00
Ilja
647087d7fd
Deprectate strings for SimplePolicy
...
When strings are detected in the simplepolicy, a warning will be given and the config will be changed to use tuples instead
2021-08-06 05:01:44 +02:00
Alex Gleason
44ede0657f
Merge remote-tracking branch 'pleroma/develop' into staff-plug
2021-08-04 11:48:57 -05:00
Alex Gleason
7f23dd6cc8
Merge remote-tracking branch 'pleroma/develop' into object-tombstone-visibility
2021-07-27 08:54:26 -05:00
Alex Gleason
9cc8642b80
Visibility: check Tombstone objects in visible_for_user?/2
2021-07-27 08:54:01 -05:00
Haelwenn
7acdab1f30
Merge branch 'mkljczk-develop-patch-60115' into 'develop'
...
MastodonAPI: Fix list timelines
Closes mastofe#89 and #2693
See merge request pleroma/pleroma!3477
2021-07-22 18:41:11 +00:00
Alex Gleason
62bf6d67e3
Merge remote-tracking branch 'pleroma/develop' into poll-notification-fixes
2021-07-18 11:49:22 -05:00
Alex Gleason
70f1496eb8
Poll notification: only notify local users
2021-07-18 11:10:23 -05:00
Alex Gleason
0b1c05ca1e
Poll notification: trigger PollWorker through common_pipeline
2021-07-18 11:10:23 -05:00
Alex Gleason
6a6e42c9bf
PollWorker defensive checks
2021-07-18 11:10:22 -05:00
Alex Gleason
cbd1a10c16
Poll notification: notify for polls even when block_from_strangers is set
2021-07-18 11:10:04 -05:00
Alex Gleason
0114754db2
MastodonAPI: Support poll notification
2021-07-17 22:19:38 -05:00
Alex Gleason
3674179b26
Merge remote-tracking branch 'pleroma/develop' into instance-deletion
2021-07-17 15:03:43 -05:00
Alex Gleason
bad79f79e6
AdminAPI.InstanceController: clean up tests, rename actions
2021-07-17 15:00:15 -05:00
Alex Gleason
54dbcfe02a
AdminAPI: add DELETE /instances/:instance to delete all content from a remote instance
2021-07-17 14:55:05 -05:00
Alex Gleason
f67d00d12b
Add Instance.delete_users_and_activities/1 to delete all content from a remote instance
2021-07-17 14:06:35 -05:00
Alex Gleason
25676c84be
Create AdminAPI.InstanceController
2021-07-17 13:05:25 -05:00
feld
3f58213646
Merge branch 'admin-api-users-sort' into 'develop'
...
AdminAPI: sort new users at the top
Closes #2709
See merge request pleroma/pleroma!3481
2021-07-14 14:39:14 +00:00
Alex Gleason
1a2fe96d56
Merge remote-tracking branch 'pleroma/develop' into admin-api-users-date
2021-07-14 09:02:55 -05:00
Alex Gleason
167e14416b
AdminAPI: add date to users
2021-07-14 08:54:59 -05:00
Alex Gleason
deb3f91136
Merge remote-tracking branch 'pleroma/develop' into admin-api-users-sort
2021-07-13 22:47:47 -05:00
Alex Gleason
5e88796784
AdminAPI: sort user results by ID descending
2021-07-13 22:47:02 -05:00
Alex Gleason
1f093cb216
Moderators: reorganize :admin_api pipeline in Router
2021-07-12 22:11:32 -05:00
Alex Gleason
9bc1e79c56
Moderators: add UserIsStaffPlug
2021-07-12 21:57:52 -05:00
Alex Gleason
e40b58fd56
Merge remote-tracking branch 'pleroma/develop' into fix-object-deletion-timeout
2021-07-12 16:23:06 -05:00
Alex Gleason
9a0cb34c8c
Fix Activity.delete_all_by_object_ap_id/1 timeout so users can be deleted
2021-07-12 16:20:15 -05:00
Haelwenn
173e977e28
Merge branch 'features/ingestion-page' into 'develop'
...
Pipeline Ingestion: Page
See merge request pleroma/pleroma!3097
2021-07-12 05:05:49 +00:00
Haelwenn (lanodan) Monnier
6dc78f5f6f
AP C2S: Remove restrictions and make it go through pipeline
2021-07-12 06:49:41 +02:00
Sean King
5d279a22b1
Merge develop branch upstream
2021-07-10 11:04:16 -06:00
marcin mikołajczak
6ef8e1776d
fix the fucking list timelines on mastofe/soapbox-fe
2021-07-02 13:03:41 +00:00
Alex Gleason
310ef6b70d
Deletions: change User.purge/1 to defp, add CHANGELOG entry
2021-06-30 12:25:20 -05:00
Alex Gleason
99cc26bb02
Merge remote-tracking branch 'pleroma/develop' into remote-deletions
2021-06-30 02:02:30 -05:00
Alex Gleason
beb1c98ab5
Deletions: don't purge keys so Delete/Undo activities can be signed
2021-06-30 02:02:24 -05:00
Alex Gleason
43800d83f4
Deletions: allow deactivated users to be deleted
2021-06-30 01:32:28 -05:00
Alex Gleason
a7929c4d89
Deletions: preserve account status fields during purge, fix checks
2021-06-29 23:56:19 -05:00
Alex Gleason
01c2d2a296
Also purge the user in User.perform/2
2021-06-29 22:53:33 -05:00
Alex Gleason
c6d4133727
Deletions: purge the user immediately
2021-06-29 22:30:48 -05:00
Alex Gleason
be2da95c36
Correctly purge a remote user
2021-06-29 21:45:38 -05:00
Alex Gleason
281806de75
Activity deletion: fix FunctionClauseError #2686
2021-06-24 21:03:31 -05:00
feld
f97f305d00
Merge branch 'ecto-upgrade' into 'develop'
...
Upgrade Ecto to v3.6.2, remove deprecated ecto_explain
See merge request pleroma/pleroma!3473
2021-06-23 20:17:01 +00:00
Alex Gleason
54af527759
Upgrade Ecto to v3.6.2, remove deprecated ecto_explain
2021-06-23 13:22:32 -05:00
Haelwenn (lanodan) Monnier
fc6ab78a84
Add test on changing [:instance, :upload_limit]
2021-06-22 12:25:25 +02:00
Haelwenn (lanodan) Monnier
a851a24036
Downgrade Plug to 1.10.x, revert upload_limit tuple to function change
...
This should fix setting the upload limit in the database as found in:
https://queer.hacktivis.me/notice/A8XUZp74Cg7eYNEMxU
This reverts commit 7d350b73f5
.
2021-06-22 11:19:13 +02:00
feld
406dadb56b
Merge branch 'fix/twittercard-video-dimensions' into 'develop'
...
Generate Twittercard/OGP metadata with correct dimensions
See merge request pleroma/pleroma!3456
2021-06-10 15:03:58 +00:00
Mark Felder
202ee5fd77
Add note about video thumbnails for code spelunkers unfamiliar with Media Preview Proxy
2021-06-10 09:56:43 -05:00
Alex Gleason
15e2aaa9f6
Fix compile cycle in Pleroma.Tests.AuthTestController
2021-06-09 13:30:19 -05:00
Mark Felder
6aa7fc15df
Formatting of the comment
2021-06-09 11:58:51 -05:00
Mark Felder
5f7901cc48
Credo
2021-06-09 11:09:14 -05:00
Mark Felder
2a47156b87
Lint
2021-06-09 11:06:53 -05:00
Mark Felder
86bcb87e6c
Fix incorrectly ordered arguments to the function and not properly merging lists.
2021-06-09 11:05:24 -05:00
Mark Felder
2cf648d419
Add a video thumbnail to the OpenGraph metadata if Media Preview Proxy is enabled.
2021-06-09 10:02:41 -05:00
Mark Felder
19a49dd757
Remove Metadata.Utils.attachment_url/1
...
This was a wasteful shortcut to MediaProxy.preview_url/1 and we don't
always want the preview_url in the metadata anyway.
2021-06-09 09:58:29 -05:00