Sean King
3cf6c2b7ea
Use is_binary instead of is_bitstring for restricted nicknames tests
2022-07-09 23:39:35 -06:00
Tusooa Zhu
2efc0ffcf0
Pass remote follow avatar into media proxy
2022-07-10 00:12:53 -04:00
Tusooa Zhu
04ded94a50
Fix remote emoji in subject disappearing after edits
2022-07-09 18:00:42 -04:00
Ilja
26080b4b5c
Fix rate_limiter_test.exs test "it restricts based on config values"
...
It used a timer to sleep.
But time also goes on when doing other things, so depending on hardware, the timings could be off.
I slightly changed the tests so we still test what we functionally want.
Instead of waiting until the cache expires I now have a function to expire the test and use that.
That means we're not testing any more if the cache really expires after a certain amount of time,
but that's the responsability of the dependency imo, so shouldn't be a problem.
I also changed `Pleroma.Web.Endpoint, :http, :ip` to `127.0.0.1` because that's the setting people typically have,
and I see no reason to do it differently.
Especially since it's an exernal ip, which may come over as weird or suspicious to people.
2022-07-09 07:19:18 +02:00
marcin mikołajczak
0b16ce79f9
Add test for rendering mute expiration date
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-07-08 20:59:58 +02:00
Tusooa Zhu
11a6e88420
Test that Question updates are viable
2022-07-07 15:22:04 -04:00
Tusooa Zhu
069554e925
Guard against outdated Updates
...
It is possible for an earlier Update to be received by us later.
For this, we now
(1) only allows Updates to poll counts if there is no updated field,
or the updated field is the same as the last updated date or
creation date;
(2) does not allow updating anything if the updated field
is older than the last updated date or creation date;
(3) allows updating updatable fields otherwise (normal updates);
(4) if only the updated field is changed, it does not create
a new history item on its own.
2022-07-07 15:11:29 -04:00
Tusooa Zhu
f84ed44cea
Fix cannot get full history on object fetch
2022-07-06 01:19:53 -04:00
Sean King
0d4aceb9b0
Make checking blacklisted domains and restricted nicknames case-insenstive
2022-07-05 20:36:47 -06:00
Ilja
f88ed1df75
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into fine_grained_moderation_privileges
2022-07-05 12:05:19 +02:00
Ilja
6ef38c6523
Improve tests after code review
2022-07-05 08:57:50 +02:00
Haelwenn
29f4ab640b
Merge branch 'from/upstream-develop/tusooa/report-too-long' into 'develop'
...
Fix long report notes giving errors on creation
See merge request pleroma/pleroma!3679
2022-07-04 05:21:20 +00:00
Haelwenn
8c78fef56f
EmojiReactValidator: apply lanodan's suggestions
...
These changes make the encoding for the fully-qualified heart emoji very visible in editors.
2022-07-04 00:25:54 +00:00
Tusooa Zhu
5ce118d970
Validate object data for incoming Update activities
...
In Create validator we do not validate the object data,
but that is because the object itself will go through the
pipeline again, which is not the case for Update. Thus,
we added validation for objects in Update activities.
2022-07-03 20:21:46 -04:00
Tusooa Zhu
4367489a3e
Pass history items through ObjectValidator for updatable object types
2022-07-03 20:02:52 -04:00
Tusooa Zhu
4edc867b87
Merge branch 'develop' into 'from/upstream-develop/tusooa/edits'
...
# Conflicts:
# lib/pleroma/constants.ex
2022-07-03 22:24:57 +00:00
Haelwenn
de37583c49
Merge branch 'image_description_from_exif_data' into 'develop'
...
Use EXIF data of image for image description
See merge request pleroma/pleroma!3535
2022-07-03 21:14:25 +00:00
Haelwenn
a15b45a589
Merge branch 'bugfix/mime-validation-no-list' into 'develop'
...
Bugfix: Validate mediaType only by it's format
See merge request pleroma/pleroma!3597
2022-07-03 21:04:41 +00:00
Haelwenn
6b937d1473
Merge branch 'from/upstream-develop/tusooa/server-announcements' into 'develop'
...
Server announcements (1st pass)
See merge request pleroma/pleroma!3643
2022-07-03 20:58:20 +00:00
Ilja
42d4bd3a5d
Rename pipelines and add forgotten tags
...
I renamed some tags before, but forgot to rename the pipelines
I also had some tags which I forgot to add to the config, description, etc.
These have now been done/added
2022-07-02 08:55:14 +02:00
Ilja
c0e4b1b3e2
Fix typo's
...
priviledge |-> privilege
2022-07-02 07:52:39 +02:00
Ilja
56227ef7ba
Descriptions from exif data with only whitespeces are considered empty
...
I noticed that pictures taken with Ubuntu-Touch have whitespace in one of the fields
This should just be ignored imo
2022-07-01 13:47:23 +02:00
Ilja
4a9ed319b8
Change test pictures
...
The previous pictures were labeled as public domain, but are actually a collage of pictures under other licenses.
I now replaced them with a jpeg of simply a white pixel.
2022-07-01 12:15:02 +02:00
Ilja
81afaee374
Better way of getting keys
...
I used keyword_list[:key], but if the key doesn't exist, it will return nil. I actually expect a list and further down the code I use that list.
I believe the key should always be present, but in case it's not, it's better to return an empty list instead of nil. That way the code wont fail further down the line.
2022-07-01 12:15:02 +02:00
Ilja
d0d48a9e88
Add deprecation warnings
2022-07-01 12:15:02 +02:00
Ilja
8303af84ce
Rename the Exiftool module
...
No migrations or checks yet
2022-07-01 12:15:02 +02:00
Ilja
551721e41a
Rename the new module
2022-07-01 12:13:46 +02:00
Ilja
cd316d7269
Use EXIF data of image to prefill image description
...
During attachment upload Pleroma returns a "description" field. Pleroma-fe has an MR to use that to pre-fill the image description field, <https://git.pleroma.social/pleroma/pleroma-fe/-/merge_requests/1399 >
* This MR allows Pleroma to read the EXIF data during upload and return the description to the FE
* If a description is already present (e.g. because a previous module added it), it will use that
* Otherwise it will read from the EXIF data. First it will check -ImageDescription, if that's empty, it will check -iptc:Caption-Abstract
* If no description is found, it will simply return nil, just like before
* When people set up a new instance, they will be asked if they want to read metadata and this module will be activated if so
This was taken from an MR i did on Pleroma and isn't finished yet.
2022-07-01 12:13:46 +02:00
Ilja
37fdf148b0
Rename privilege tags
...
I first focussed on getting things working
Now that they do and we know what tags there are, I put some thought in providing better names
I use the form <what_it_controls>_<what_it_allows_you_to_do>
:statuses_read => :messages_read
:status_delete => :messages_delete
:user_read => :users_read
:user_deletion => :users_delete
:user_activation => :users_manage_activation_state
:user_invite => :users_manage_invites
:user_tag => :users_manage_tags
:user_credentials => :users_manage_credentials
:report_handle => :reports_manage_reports
:emoji_management => :emoji_manage_emoji
2022-07-01 10:28:09 +02:00
Hélène
11f9f2ef27
EmojiReactValidator: fix emoji qualification
...
Tries fully-qualifying emoji when receiving them, by adding the emoji
variation sequence to the received reaction emoji.
This issue arises when other instance software, such as Misskey, tries
reacting with emoji that have unqualified or minimally qualified
variants, like a red heart. Pleroma only accepts fully qualified emoji
in emoji reactions, and refused those emoji. Now, Pleroma will attempt
to properly qualify them first, and reject them if checks still fail.
2022-06-28 21:33:57 +02:00
Tusooa Zhu
014096aeef
Make outbound transmogrifier aware of edit history
2022-06-25 11:20:46 -04:00
Tusooa Zhu
5321fd0012
Do not put meta[:object_data] for local Updates
2022-06-25 10:03:19 -04:00
Tusooa Zhu
9c6dae942d
Fix local updates causing emojis to be lost
2022-06-25 09:23:09 -04:00
Tusooa Zhu
e98579b1da
Verify that formerRepresentation provided in Update is used
2022-06-25 01:17:09 -04:00
Tusooa Zhu
40953a8f5c
Reuse formerRepresentations from remote if possible
2022-06-25 01:03:46 -04:00
Tusooa Zhu
ee07383191
Use meta[:object_data] in SideEffects for Update
2022-06-24 10:28:58 -04:00
Tusooa Zhu
01321c88b5
Convert incoming Updated object into Pleroma format
2022-06-24 10:25:22 -04:00
Ilja
4e4eb81749
Add nodes and privileges to nodeinfo
...
I didn't add it to /api/v1/instance
I was wondering if I should, but since it e.g. also didn't show staff, it felt better not to
2022-06-21 12:10:27 +02:00
Ilja
211e561e2a
Show privileges to FE
...
I added an extra key
We already had is_admin and is_moderator, now we have an extra privileges key
2022-06-21 12:10:27 +02:00
Ilja
143ea7b80a
Add deactivated status for privileged users
...
Deactivated users are only visible to users privileged with :user_activation since fc317f3b17
Here we also make sure the users who are deactivated get the status deactivated for users who are allowed to see these users
2022-06-21 12:10:27 +02:00
Ilja
e21ef5aef3
report notifications for privileged users
...
Instead of `Pleroma.User.all_superusers()` we now use `Pleroma.User.all_superusers(:report_handle)`
I also changed it for sending emails, but there were no tests.
2022-06-21 12:10:27 +02:00
Ilja
34adea8d28
Add Pleroma.User.all_users_with_privilege/1
...
This should eventually replace the Pleroma.User.all_superusers/0 function
* I added a new param `is_privileged` in User.query
* Now we can fetch all users with a specified privilege
2022-06-21 12:10:27 +02:00
Ilja
a1c8aa4721
Remove function superuser?
...
Everything now happens with privileged?/2
2022-06-21 12:10:27 +02:00
Ilja
eab13fed3e
Hide pleroma:report for non-privileged users
...
Before we deleted the notifications, but that was a side effect and didn't always trigger any more.
Now we just hide them when an unprivileged user asks them.
2022-06-21 12:10:27 +02:00
Ilja
e45faddb38
Revert "Delete report notifs when demoting from superuser"
...
This reverts commit 89667189b8
and cdc5bbe836
.
This is a side effect when changing user role.
The goal was to not have report notifications when someone isn't admin or moderator any more.
But this won't be triggered when we change the privilege tags for a role, so we can't use this sollution any more.
There was another solution to filter out report notifications during fetch.
It wasn't merged because this seemed 'cleaner' at the time, but now it seems the better sollution.
I'll add it in the next commit.
2022-06-21 12:10:27 +02:00
Ilja
edf0013ff3
User.visible_for/2
...
According to the tests, this was only used for unconfirmed accounts.
So this just needed to be restricted to users with privilege :user_activation
2022-06-21 12:10:27 +02:00
Ilja
bb61cfee8d
Validator for deleting statusses is now done with priviledge instead of superuser
2022-06-21 12:10:27 +02:00
Ilja
7cf473c500
delete statusses is now privileged by :status_delete
...
Instead of superusers, you now need a role with privilige :status_delete to delete other users statusses
I also cleaned up some other stuff I saw
2022-06-21 12:10:27 +02:00
Ilja
7adfc2e0f4
Add Pleroma.User.privileged?/2
...
This should eventually replace Pleroma.User.superuser?/1
2022-06-21 12:10:27 +02:00
Ilja
9da81f41c6
Fix warning during test user_test.exs
...
Fixed the warning
[warning] Please change `clear_config([section], key: value)` to `clear_config([section, key], value)`
2022-06-21 12:10:27 +02:00
Ilja
c842e62675
Add last priviliges
...
I still had three endpoints I didn't really know what to do with them. I added them under separate tags
* :instance_delete
* :moderation_log_read
* :stats_read
I also checked and these are the last changes done by MR https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3480/diffs this is trying to fix
2022-06-21 12:10:27 +02:00
Ilja
ecd42a2ce1
Add privilige :emoji_management
2022-06-21 12:10:27 +02:00
Ilja
0ee8f33250
Add privilige :status_delete
...
It also allows to update a message, so it's not just deleting. I need a better name...
2022-06-21 12:10:27 +02:00
Ilja
34a98990db
last off :statuses_read
...
From the endpoints left to do, I believe these should be under :statuses_read.
These should be the last for that privilege for this MR
2022-06-21 12:10:27 +02:00
Ilja
4cb0dbb5dc
Mark relevant tests synchronous
...
One of the things we do during the tests is change the config. But that's global state and different tests were interfering.
E.g. one test would set `clear_config([:instance, :admin_privileges], [:statuses_read])`, but while that runs, another test may
do `clear_config([:instance, :admin_privileges], [:user_invite])`. Now the code for the first test checks the setting, and it
finds `:user_invite` instead of `:statuses_read`.
Now the modules where this happens are marked to run synchronously, so they don't interfere with each other.
2022-06-21 12:10:27 +02:00
Ilja
cbb26262a5
Add privileges for :user_read
2022-06-21 12:10:27 +02:00
Ilja
3f26f1b30f
Add privileges for :report_handle
2022-06-21 12:10:27 +02:00
Ilja
14e697a64f
Add privileges for :user_invite
2022-06-21 12:10:27 +02:00
Ilja
e102d25d23
Add privileges for :user_activation
2022-06-21 12:10:27 +02:00
Ilja
cb60cc4e02
Add privileges for :user_tag
2022-06-21 12:10:27 +02:00
Ilja
5a65e2dac5
Remove privileged_staff
...
Everything that was done through this setting, can now be set by giving the proper privileges to the roles.
2022-06-21 12:10:27 +02:00
Ilja
b1ff5241c2
Add priviledges for :statuses_read
...
This was the last in :require_privileged_staff. I'll remove that in the next commit
2022-06-21 12:10:27 +02:00
Ilja
8a9144ca8b
Add priviledges for :user_credentials
...
I only moved the ones from the :require_privileged_staff block for now
2022-06-21 12:10:27 +02:00
Ilja
9f6c364759
Add privilege :user_deletion
2022-06-21 12:10:27 +02:00
Ilja
5b19543f0a
Add new setting and Plug to allow for privilege settings for staff
2022-06-21 12:10:26 +02:00
Tusooa Zhu
44613db853
Show original status at the first of history
2022-06-11 19:52:07 -04:00
Tusooa Zhu
7451f0e81f
Send the correct update in streamer
...
get_create_by_ap_id_with_object() seems to fetch the old object.
Why this happens needs further investigation.
2022-06-11 12:02:16 -04:00
Tusooa Zhu
27f3d802f2
Expose history and source apis to anon users
2022-06-11 10:35:36 -04:00
Tusooa Zhu
c3593639ad
Fix incorrectly cached content after editing
2022-06-09 11:39:51 -04:00
Tusooa Zhu
aafd7a687d
Return the corresponding object id in attachment view
2022-06-08 11:45:24 -04:00
Tusooa Zhu
237b220d71
Add object id to uploaded attachments
2022-06-08 11:05:48 -04:00
Tusooa Zhu
532f6ae3ed
Return update notification in mastodon api
2022-06-05 16:34:42 -04:00
Tusooa Zhu
06a3998013
Create Update notifications
2022-06-05 15:02:25 -04:00
Tusooa Zhu
97eabb2047
Fix CommonAPITest
2022-06-04 13:15:07 -04:00
Tusooa Zhu
fe2d4778ee
Expose content type of status sources
2022-06-04 12:57:30 -04:00
Tusooa Zhu
72ac940618
Fix SideEffectsTest
2022-06-03 21:50:49 -04:00
Tusooa Zhu
3249ac1f12
Show edited_at in MastodonAPI/show
2022-06-03 21:47:40 -04:00
Tusooa Zhu
fdaa864083
Test that own edits are streamed
2022-06-03 21:17:16 -04:00
Tusooa Zhu
8bac8147d4
Stream out edits
2022-06-03 21:15:17 -04:00
Tusooa Zhu
b096fbba1a
Fix long report notes giving errors on creation
2022-06-02 01:28:39 -04:00
Tusooa Zhu
fa31ae50e6
Inject history when object is refetched
2022-06-01 19:49:04 -04:00
Tusooa Zhu
410e177b2a
Strip internal fields in formerRepresentation
2022-06-01 12:02:03 -04:00
Tusooa Zhu
b613a9ec6b
Implement mastodon api for editing status
2022-05-31 14:32:28 -04:00
Pierre-Louis Bonicoli
6f23fc8e08
Add tlsv1.3 to suggestions
2022-05-31 00:51:48 +02:00
Tusooa Zhu
393b508846
Implement viewing source
2022-05-30 00:59:23 -04:00
Tusooa Zhu
c004eb0fa2
Implement mastodon api for showing edit history
2022-05-29 23:50:31 -04:00
Tusooa Zhu
8acfe95f3e
Allow updating polls
2022-05-29 22:16:03 -04:00
Tusooa Zhu
5e8aac0e07
Record edit history for Note and Question Updates
2022-05-29 13:54:16 -04:00
Tusooa Zhu
0f6a5eb9a2
Handle Note and Question Updates
2022-05-29 12:54:57 -04:00
Tusooa Zhu
547def67a7
Allow Updates by every actor on the same origin
2022-05-29 11:36:00 -04:00
Hélène
a74ce2d77a
StealEmojiPolicy: fix String rejected_shortcodes
...
* rejected_shortcodes is defined as a list of strings in the
configuration description. As such, database-based configuration was
led to handle those settings as strings, and not as the actually
expected type, Regex.
* This caused each message passing through this MRF, if a rejected
shortcode was set and the emoji did not exist already on the instance,
to fail federating, as an exception was raised, swiftly caught and
mostly silenced.
* This commit fixes the issue by introducing new behavior: strings are
now handled as perfect matches for an emoji shortcode (meaning that if
the emoji-to-be-pulled's shortcode is in the blacklist, it will be
rejected), while still supporting Regex types as before.
2022-05-18 21:25:10 +02:00
Tusooa Zhu
6e5ef7f2eb
Test local-only in ap c2s outbox
...
Ref: fix-local-public
2022-05-09 18:53:32 -04:00
Tusooa Zhu
38444aa92a
Allow authenticated users to access local-only posts in MastoAPI
...
Ref: fix-local-public
2022-05-09 18:53:18 -04:00
Haelwenn
4605efe272
Merge branch 'improve_anti_followbot_policy' into 'develop'
...
Also use actor_type to determine if an account is a bot in antiFollowbotPolicy
Closes #2561
See merge request pleroma/pleroma!3498
2022-05-08 18:10:40 +00:00
Ilja
a8093732bd
Also use actor_type to determine if an account is a bot in antiFollowbotPolicy
2022-05-08 18:10:40 +00:00
Tusooa Zhu
221cb3fb81
Allow users to create backups without providing email address
...
Ref: backup-without-email
2022-05-07 00:23:55 -04:00
Tusooa Zhu
fe933b9bf2
Prevent remote access of local-only posts via /objects
...
Ref: fix-local-public
2022-05-06 13:54:21 -04:00
Tusooa Zhu
466568ae36
Lint
...
Ref: fix-local-public
2022-05-06 13:54:13 -04:00
Tusooa Zhu
826deb7375
Make local-only statuses searchable
...
Ref: fix-local-public
2022-05-06 13:54:13 -04:00
Tusooa Zhu
38af42968d
Test that anonymous users cannot see local-only posts
...
Ref: fix-local-public
2022-05-06 13:54:12 -04:00
Tusooa Zhu
c48be59f58
Show local-only statuses in public timeline for authenticated users
...
Ref: fix-local-public
2022-05-06 13:54:02 -04:00
Tusooa Zhu
57c030a0a7
Skip cache when /objects or /activities is authenticated
...
Ref: fix-local-public
2022-05-06 10:23:26 +02:00
Tusooa Zhu
e2d24eda57
Allow to skip cache in Cache plug
...
Ref: fix-local-public
2022-05-06 10:23:26 +02:00
Tusooa Zhu
fa3157df96
Skip cache when /objects or /activities is authenticated
...
Ref: fix-local-public
2022-05-06 08:44:03 +02:00
Tusooa Zhu
4d482b765f
Allow to skip cache in Cache plug
...
Ref: fix-local-public
2022-05-06 08:39:42 +02:00
Tusooa Zhu
be08d9305b
Fix incorrect fallback when English is set to first language
2022-04-17 22:39:52 -04:00
Ilja
5f37db330f
Fix eratic test for POST /api/pleroma/admin/reports/:id/notes
...
It retrieved two ReportNotes and then checked one of them. But the order isn't guaranteed, while the test tested on the content of the first ReportNote.
I made the test on the content more generic
2022-04-05 13:21:09 +02:00
Tusooa Zhu
7d1dae3bef
Restrict mastodon api announcements to logged-in users only
2022-04-02 02:25:13 -04:00
Sean King
4194559ea6
Fix lint errors
2022-03-20 17:26:07 -06:00
Haelwenn
d7c53da77a
Merge branch 'from/upstream-develop/tusooa/translate-pages' into 'develop'
...
Translate backend-rendered pages
See merge request pleroma/pleroma!3634
2022-03-20 18:14:37 +00:00
Haelwenn
b76340511d
Merge branch 'delete_report_notifs_when_demoting_from_superuser' into 'develop'
...
Delete report notifs when demoting from superuser
Closes #2840
See merge request pleroma/pleroma!3642
2022-03-20 18:13:19 +00:00
Sean King
d0c1997d48
Rewrite integration-test websocket client with Mint.WebSocket
2022-03-19 23:33:37 -06:00
Tusooa Zhu
0c78ab4a88
Use utc_datetime in db schema
2022-03-18 11:17:22 -04:00
Haelwenn (lanodan) Monnier
030183b35f
AttachmentValidator: Use custom ecto type and regex for "mediaType"
2022-03-17 22:37:26 +01:00
marcin mikołajczak
31ff467eff
Use `types` for filtering notifications
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-03-16 21:15:44 +01:00
marcin mikołajczak
ffe081bf44
Use reject_follow_request
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-03-16 19:18:15 +01:00
marcin mikołajczak
6754d1f272
POST /api/v1/accounts/:id/remove_from_followers
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-03-16 16:52:33 +01:00
Tusooa Zhu
ebcda5265b
Format announcements into html
2022-03-08 23:00:51 -05:00
Tusooa Zhu
eb1a29640f
Add pagination to AdminAPI.AnnouncementController.index
2022-03-08 21:26:05 -05:00
Tusooa Zhu
11a1996bf5
Implement update announcement admin api
2022-03-08 20:55:41 -05:00
Tusooa Zhu
881179ec72
Remove GET /api/v1/announcements/:id
2022-03-08 19:22:28 -05:00
Tusooa Zhu
d569694ae9
Show only visible announcements in MastodonAPI
2022-03-08 19:20:29 -05:00
Tusooa Zhu
cf8334dbc1
Add starts_at, ends_at and all_day parameters
2022-03-08 19:12:01 -05:00
Tusooa Zhu
fcf3c9057e
Implement visibility filtering for announcements
2022-03-08 18:21:20 -05:00
Tusooa Zhu
2b39b36e49
Implement POST /api/v1/announcements/:id/dismiss
2022-03-08 16:59:20 -05:00
Tusooa Zhu
aa1fff279e
Implement GET /api/v1/announcements/:id
2022-03-08 16:19:35 -05:00
Tusooa Zhu
5169ad8f14
Implement announcement read relationships
2022-03-08 13:09:49 -05:00
Tusooa Zhu
d7af67012f
Implement first pass of announcement admin api
...
CCBUG: https://git.pleroma.social/pleroma/pleroma/-/issues/2836
CCBUG: https://git.pleroma.social/pleroma/pleroma/-/issues/1470
2022-03-08 01:01:27 -05:00
Haelwenn
4458db3201
Merge branch 'fix_test_get_user_apps' into 'develop'
...
Fix test get_user_apps/1
See merge request pleroma/pleroma!3636
2022-03-06 18:40:49 +00:00
Tusooa Zhu
79ccb6b999
Support fallbacking to other languages
2022-03-06 11:43:31 -05:00
Ilja
89667189b8
Delete report notifs when demoting from superuser
...
When someone isn't a superuser any more, they shouldn't see the reporsts any more either.
Here we delete the report notifications from a user when that user gets updated from being a superuser to a non-superuser.
2022-03-06 17:36:30 +01:00
Tusooa Zhu
cd42e2bed0
Lint
2022-03-03 09:49:55 -05:00
Tusooa Zhu
aca11fb70e
Support multiple locales from userLanguage cookie
2022-03-03 02:31:36 -05:00
Tusooa Zhu
7ea330b4fe
Support multiple locales formally
...
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-03 02:03:44 -05:00
Tusooa Zhu
bc59da96c5
Add test for fallbacking to a general language
2022-03-02 20:04:30 -05:00
Tusooa Zhu
8de573b047
Fallback to a variant if the language in general is not supported
...
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-02 19:59:11 -05:00
Tusooa Zhu
e644f8dea5
Allow user to register with custom language
2022-03-02 01:41:13 -05:00
Tusooa Zhu
0149ea4538
Send emails i18n'd using backend-stored user language
2022-03-01 22:19:13 -05:00
HJ
ee05abe052
Merge branch 'revert/notice-routes' into 'develop'
...
Revert notice compatibility routes merge request
See merge request pleroma/pleroma!3576
2022-02-26 16:24:49 +00:00
Sean King
17aa3644be
Copyright bump for 2022
2022-02-25 23:11:42 -07:00
Ilja
6ba93c2cb3
Fix test get_user_apps/1
...
For some reason I had a test who suddenly failed, mix test test/pleroma/web/o_auth/app_test.exs:54. A user has a list of applications and this test adds them and then sees if the list it gets back is the same as the apps it added.
When I ran mix test a day before I didn't have this problem and when I pushed code today in a different MR, the pipeline succeeded (see https://git.pleroma.social/ilja/pleroma/-/jobs/205827 ), yet locally it failed. So it seems the test can sometimes succeed and sometimes fail, which makes it untrustworthy.
The failure I see is because the returned list is in reverse order. I assume that's not per sé wrong. You just want to know if the apps you added are actually there. I fixed the test by first ordering the lists before comparing.
AFAICT (and as far as that's relevant) the test got introduced in commit cb2a072e62
2022-02-22 18:56:26 +01:00
Tusooa Zhu
0fd3695b9c
Prefer userLanguage cookie over Accept-Language header in detecting locale
...
https://git.pleroma.social/pleroma/pleroma-meta/-/issues/60
2022-02-21 18:02:19 -05:00
Sam Therapy
061cb749cd
Add unicode 14 support
...
and add a test with a unicode 14 emoji
2022-02-21 12:28:33 -06:00
marcin mikołajczak
e473bcf7a0
Max media attachment count
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-02-06 17:41:15 +01:00
Alex Gleason
7c044a1841
FilterControllerTest: tag erratic test
2022-02-02 13:10:39 -06:00
Haelwenn (lanodan) Monnier
d1cc9e4eaf
Fix tests matching on "warn"
...
Moving it to "warning" would break tests on 1.12.x
2022-02-02 12:45:26 -06:00
Alex Gleason
bd81af731e
Tag erratic test
2022-02-02 12:29:53 -06:00
Alex Gleason
2d77976305
Add tests for mismatched context in replies
2022-02-02 12:19:35 -06:00
Alex Gleason
5a4e3aa715
Test that a Create/Note from Roadhouse validates
2022-02-02 11:02:23 -06:00
Alex Gleason
61dfeca1cc
Test that a Note from Roadhouse validates
2022-02-02 10:38:30 -06:00
Alex Gleason
3bf257171f
ForceMentionsInContent: improve display of Markdown posts
2022-01-27 14:15:06 -06:00
Alex Gleason
27cb3d6273
ForceMentionsInContent: don't apply it to top-level posts
2022-01-26 21:24:26 -06:00
Alex Gleason
0604b0dd09
ForceMentionsInContent: don't mention self
2022-01-25 12:33:47 -06:00
Alex Gleason
0f4e0e667e
Merge branch 'recipients-inline' into 'develop'
...
ForceMentionsInContent: wrap mentions in a span, fix the formatting
See merge request pleroma/pleroma!3620
2022-01-25 17:43:39 +00:00
Alex Gleason
99e9c2c668
Merge branch 'birth-dates' into 'develop'
...
Fix show_birthday
See merge request pleroma/pleroma!3621
2022-01-25 16:59:07 +00:00
Alex Gleason
65b4d2ce84
ForceMentionsInContent: fix order of mentions
2022-01-25 10:42:34 -06:00
marcin mikołajczak
ab12a05a43
AccountView: Add test for show_birthday
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-25 17:34:36 +01:00
Alex Gleason
dd7977bb68
Merge branch 'birth-dates' into 'develop'
...
Birth dates
See merge request pleroma/pleroma!3608
2022-01-25 15:35:47 +00:00
Alex Gleason
267184b70e
ForceMentionsInContentTest: return mentions in a not terrible format
2022-01-24 20:03:43 -06:00
marcin mikołajczak
75c4fefb1c
Add a test
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-23 13:03:00 +01:00
marcin mikołajczak
e3d394eef6
Birthdays: Fix tests, add test for misskey
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-23 09:41:21 +01:00
marcin mikołajczak
0266bc3c96
Birthdays: hide_birthday -> show_birthday
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-23 09:13:33 +01:00
Alex Gleason
aaa9314f4c
Merge remote-tracking branch 'origin/develop' into birth-dates
2022-01-22 14:24:50 -06:00
Alex Gleason
66e8c6f90f
Birthdays: birth_date --> birthday
2022-01-22 13:21:55 -06:00
NEETzsche
7a015b1fe2
Make test less erratic by adding five second tolerance
2022-01-22 12:07:54 -07:00
Alex Gleason
f5d4ef50b4
FilterTest: tag erratic test
2022-01-22 12:13:09 -06:00
Alex Gleason
6ffe43af70
Merge branch 'private-pins' into 'develop'
...
Support private pinned posts from Mastodon
See merge request pleroma/pleroma!3611
2022-01-20 23:18:24 +00:00
Alex Gleason
00523bdf5e
Test pinned private statuses in AccountController
2022-01-20 16:54:43 -06:00
marcin mikołajczak
88c21b9282
Support private pinned posts from Mastodon
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-20 12:35:32 +01:00
rinpatch
a02cfd7f52
Add ForceMentionsInContentPolicy
...
Even though latest PleromaFE supports displaying these properly, mobile
apps still exist, so I think we should offer a workaround to those who
want it.
2022-01-19 21:04:57 +03:00
marcin mikołajczak
dfb2808535
Birth dates: Add tests
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-18 23:15:31 +01:00
marcin mikołajczak
397f67fef8
Format code, expose instance configuration related to birth dates
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-18 18:18:38 +01:00
Alex Gleason
39c5ebb1f6
mix format
2022-01-15 12:55:12 -06:00
Alex Gleason
31148c1857
FormatterTest: fix nesting in expected output
2022-01-15 12:31:36 -06:00
Alex Gleason
db90c9e3b0
Merge remote-tracking branch 'mkfain/test-for-breaking-markdown' into linkify-0.5.2
2022-01-15 12:27:42 -06:00
marcin mikołajczak
eedf551eed
Add more tests
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-12 22:41:34 +01:00
marcin mikołajczak
0f90fd5805
WIP account endorsements
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-01-12 18:15:10 +01:00
Alex Gleason
cd3175c7fe
Merge branch 'fix/rich-media-test-escape-unicrud' into 'develop'
...
Escape unicode RTL overrides in rich media parser tests
See merge request pleroma/pleroma!3598
2022-01-11 13:39:23 +03:00
rinpatch
fd043b0ab3
Escape unicode RTL overrides in rich media parser tests
...
Elixir 1.13 does not allow them in raw form anymore, resulting in errors
like this when running the test:
== Compilation error in file test/pleroma/web/rich_media/parser_test.exs ==
** (SyntaxError) test/pleroma/web/rich_media/parser_test.exs:136:45: invalid bidirectional formatting character in string: \u202C. If you want to use such character, use it in its escaped \u202C form instead
2022-01-10 17:51:53 +03:00
Alex Gleason
2ae867842b
StreamerTest: tag erratic test
2021-12-31 10:29:50 -06:00
Sean King
ffeae7ef2c
Fix merge conflict in CHANGELOG.md
2021-12-29 18:08:50 -07:00
marcin mikołajczak
746c9daa62
Merge remote-tracking branch 'pleroma/develop' into mastodon-lookup
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-28 16:27:27 +01:00
marcin mikołajczak
f734579965
MastoAPI: Add `GET /api/v1/accounts/lookup`
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-28 16:11:17 +01:00
Tusooa Zhu
3fd13b70ec
Test that the target account is re-fetched in move_account
...
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu
eb383ef8d3
Make move_account endpoint process non-existent users properly
...
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu
4f44fd32ea
Federate unfollow activity in move_following properly
...
0: Use the CommonAPI unfollow function to make sure the
unfollow activity is federated.
1: Limit the follow and unfollow to local followers only,
while let the romote servers decide whether to move their followers.
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu
e41eee5ed1
Make Move activity federate properly
...
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu
54d7b4354c
Add deleting alias endpoint
...
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu
c1aa3c98ac
Add get and add aliases endpoints
...
Ref: emit-move
2021-12-28 01:11:08 -05:00
Tusooa Zhu
60081a8818
Add User.add_alias/2 and User.alias_users/1
...
Ref: emit-move
2021-12-28 01:11:07 -05:00
Tusooa Zhu
0af77b20c1
Implement moving account
...
Ref: emit-move
2021-12-28 01:10:34 -05:00
Alex Gleason
5c80d4087d
PleromaAPI.AppView: add test
2021-12-27 18:52:34 -06:00
Alex Gleason
cb2a072e62
Apps: add test for get_user_apps/1
2021-12-27 18:29:03 -06:00
Alex Gleason
2e4a1c56c3
AppController: test creating with and without a user
2021-12-27 18:14:15 -06:00
Alex Gleason
f5c3d45120
Merge remote-tracking branch 'origin/develop' into apps-api-endpoint
2021-12-27 18:01:25 -06:00
Alex Gleason
d61a5515e6
ConnectionPoolTest: tag erratic test
2021-12-27 11:27:25 -06:00
Alex Gleason
479fc5fff8
EnsureStaffPrivilegedPlug: add tests
2021-12-27 10:39:59 -06:00
Sean King
8ef1d8b566
Revert "Merge branch 'notice-routes' into 'develop'"
2021-12-26 11:02:51 -07:00
Alex Gleason
913141379c
Merge branch 'profile-directory' into 'develop'
...
MastoAPI: Profile directory
See merge request pleroma/pleroma!3573
2021-12-26 02:35:17 +00:00
marcin mikołajczak
de006443f0
MastoAPI: Profile directory
2021-12-26 02:35:17 +00:00
Alex Gleason
2c06eff519
Pleroma.Web.base_url() --> Endpoint.url()
2021-12-25 20:11:14 -06:00
Alex Gleason
db2bf55e9b
Merge remote-tracking branch 'origin/develop' into notice-routes
2021-12-25 19:57:53 -06:00
Alex Gleason
73609211a4
Merge branch 'account-notes' into 'develop'
...
MastoAPI: Add user notes on accounts
See merge request pleroma/pleroma!3540
2021-12-25 01:41:12 +00:00
Alex Gleason
b96a58ff28
Merge branch 'account-subscriptions' into 'develop'
...
MastoAPI: accept notify param in follow request
See merge request pleroma/pleroma!3555
2021-12-25 01:34:27 +00:00
Alex Gleason
d9746ae4cb
Merge branch 'from/develop/tusooa/2802-propagate-reject' into 'develop'
...
Handle Reject for already-accepted Follows properly
Closes #2766 and #2802
See merge request pleroma/pleroma!3568
2021-12-23 16:00:16 +00:00
Alex Gleason
9c1cb87eff
Merge branch 'erratic-tests' into 'develop'
...
Skip erratic tests
See merge request pleroma/pleroma!3572
2021-12-22 04:14:31 +00:00
Alex Gleason
2ce7dae6de
Skip erratic tests
2021-12-21 22:04:15 -06:00
Alex Gleason
b0d2b53934
Merge branch 'manifest' into 'develop'
...
Expose /manifest.json for PWA
Closes #882
See merge request pleroma/pleroma!3544
2021-12-19 18:18:59 +00:00
Alex Gleason
1ff9ffed83
Merge branch 'live-dashboard' into 'develop'
...
Add Phoenix LiveDashboard
See merge request pleroma/pleroma!3566
2021-12-19 17:35:14 +00:00
Alex Gleason
e4f9cb1c1b
Merge remote-tracking branch 'origin/develop' into manifest
2021-12-19 11:33:10 -06:00
Alex Gleason
bd853199d9
Merge branch 'v2-suggestions' into 'develop'
...
V2 suggestions
See merge request pleroma/pleroma!3547
2021-12-19 17:31:17 +00:00
Tusooa Zhu
8376e83f61
Lint
2021-12-17 16:52:50 -05:00
Tusooa Zhu
951d1592c7
Add test to ensure removed follower cease to have relationship with ex-followee
...
https://git.pleroma.social/pleroma/pleroma/-/issues/2802
2021-12-17 16:44:22 -05:00
Tusooa Zhu
bfd870380c
Add test to ensure the blocked cease to have follow relationship to the blocker
...
https://git.pleroma.social/pleroma/pleroma/-/issues/2766
2021-12-17 14:44:28 -05:00
Tusooa Zhu
3d41ccc47b
Allow updating accepted follow activities in Web.ActivityPub.Utils.update_follow_state_for_all/2
...
Mastodon uses the Reject activity also for the purpose of removing
a follower, in addition to reject a follow request. We should
also update the original Follow activity in this case.
2021-12-17 14:17:51 -05:00
Alex Gleason
e1b89fe3aa
Merge remote-tracking branch 'origin/develop' into live-dashboard
2021-12-15 19:05:36 -05:00
Alex Gleason
29d80b39f2
Add Phoenix LiveDashboard
...
Co-authored-by: Egor Kislitsyn <egor@kislitsyn.com>
2021-12-15 19:05:27 -05:00
lain
6eb7d69e60
Merge branch 'delete-account-fix' into 'develop'
...
TwitterAPI: allow deleting one's own account with request body
Closes #2799 and #2746
See merge request pleroma/pleroma!3564
2021-12-15 21:26:45 +00:00
Alex Gleason
8672ad6b00
TwitterAPI: allow deleting one's own account with request body
2021-12-13 17:07:29 -05:00
Alex Gleason
01cc099c8e
VideoHandlingTest: remove nil values
2021-12-07 21:55:54 -05:00
Haelwenn
992d9287d0
Apply alexgleason's suggestion(s) to 1 file(s)
2021-12-07 22:53:36 +00:00
Alex Gleason
2c96668a2c
Merge remote-tracking branch 'origin/develop' into fix-attachment-dimensions
2021-12-07 13:41:54 -05:00
Alex Gleason
335684182a
Fix VideoHandlingTest
2021-12-07 13:35:34 -05:00
Alex Gleason
3f03d71ea6
AttachmentValidator: ingest width and height
2021-12-07 12:59:03 -05:00
Alex Gleason
d9349bc52f
Transmogrifier: test fix_attachments/1
2021-12-07 01:10:47 -05:00
marcin mikołajczak
c96e52b88c
Add 'notifying' to relationship for compatibility with Mastodon
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-06 21:24:12 +01:00
marcin mikołajczak
3892bd353b
Add test for following with subscription
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-12-06 21:15:03 +01:00
FloatingGhost
db46913dcc
make linter happy
2021-12-06 11:50:51 +00:00
FloatingGhost
cd8bdbc761
Make deactivated user check into a subquery
...
Fixes #2792
2021-12-06 11:44:17 +00:00
Alex Gleason
ba2ed3c255
Fix frontend_status_plug_test.exs
2021-12-03 07:56:26 -06:00
Alex Gleason
8286ceb465
Merge remote-tracking branch 'origin/develop' into password-reset
2021-12-03 00:11:38 -06:00
Alex Gleason
5da4f33bf1
Restore POST /auth/password
2021-12-03 00:10:57 -06:00
Alex Gleason
6519f59d91
v2 Suggestions: return `is_suggested` through the API
2021-11-26 23:10:01 -06:00
Alex Gleason
e5a7547fbe
v2 Suggestions: also filter out users you follow
2021-11-26 21:46:08 -06:00
Alex Gleason
437c1a5a52
v2 Suggestions: actually flter out dismissed suggestions
2021-11-26 21:09:37 -06:00
Alex Gleason
aee55b9a8b
v2 Suggestions: dismiss a suggestion
2021-11-26 20:19:29 -06:00
Alex Gleason
6c0484d571
AdminAPI: suggest a user through the API
2021-11-26 15:19:01 -06:00
Alex Gleason
b17360cd7c
v2 Suggestions: rudimentary API response
2021-11-26 14:34:10 -06:00
Alex Gleason
7e1caddc58
v2 Suggestions: return empty array
2021-11-25 14:57:36 -06:00
Alex Gleason
720198d569
Merge remote-tracking branch 'pleroma/develop' into manifest
2021-11-24 17:58:58 -06:00
Alex Gleason
cb9359335f
Expose /manifest.json for PWA
2021-11-24 17:50:55 -06:00
marcin mikołajczak
cb76faece9
Update test
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-11-21 17:51:00 +01:00
marcin mikołajczak
40414bf177
MastoAPI: Add user notes on accounts
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2021-11-21 16:56:26 +01:00
Alibek Omarov
04aca335aa
nodeinfo: report activeMonth and activeHalfyear users fields
2021-11-15 17:01:30 +01:00
lain
4d341f51e1
Merge branch 'fix-tests' into 'develop'
...
Test fixes
See merge request pleroma/pleroma!3532
2021-11-15 14:31:27 +00:00
lain
e2772d6bf1
Merge branch 'block-behavior' into 'develop'
...
Configurable block visibility, fixes #2123
Closes #2123
See merge request pleroma/pleroma!3242
2021-11-15 14:27:59 +00:00
lain
6e3df11693
Merge branch 'instance-deletion' into 'develop'
...
AdminAPI: endpoint to delete all content from a remote instance
See merge request pleroma/pleroma!3483
2021-11-15 14:24:13 +00:00
lain
bd77243981
Merge branch 'userfeed-fe-fallback' into 'develop'
...
UserController: fall back to frontend when user isn't found
Closes #2730
See merge request pleroma/pleroma!3515
2021-11-15 10:48:56 +00:00
Lain Soykaf
871936b3ca
MediaProxyCacheControllerTest: Fix unstable tests.
...
Cachex order isn't stable, so we can not depend on the order in
tests. This adds some sorting to make the tests stable.
2021-11-14 11:45:38 +01:00
Lain Soykaf
2dea4a8c04
StealEmojiPolicyTest: Make mocks explicit.
2021-11-14 11:44:24 +01:00