Commit graph

5093 commits

Author SHA1 Message Date
Ivan Tashkinov
cf4765af40 [#3213] ActivityPub: fixed subquery-based hashtags filtering implementation (addressed empty list options issue). Added regression test. 2021-01-31 23:06:38 +03:00
Ivan Tashkinov
1b49b8efe5 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
# Conflicts:
#	CHANGELOG.md
2021-01-31 20:38:58 +03:00
Ivan Tashkinov
6fd4163ab6 [#3213] ActivityPub: implemented subqueries-based hashtags filtering, removed aggregation-based hashtags filtering. 2021-01-31 20:37:33 +03:00
Alexander Strizhakov
c369d2b930
support for with_relationships parameter
in /api/v1/mutes and /api/v1/accounts/:id endpoints
2021-01-29 08:41:21 +03:00
Ivan Tashkinov
380d0cce6b [#3213] Reinstated DISTINCT clause for hashtag "any" filtering with 2+ terms. Added test. 2021-01-29 00:17:33 +03:00
5fcab23aa3 Improve error message for ConfigDB 2021-01-28 14:59:23 -06:00
9272cef500 Switch to a build of Majic that does not try to fix extensions by default 2021-01-28 14:03:29 -06:00
Egor Kislitsyn
a51d903e0c
Make sure active_user_count/1 counts only local users 2021-01-28 22:23:10 +04:00
Ivan Tashkinov
60b4654038 Email-like field in /api/v1/accounts/verify_credentials response (for OAuth plugins like Peertube).
Addresses https://git.pleroma.social/pleroma/pleroma-support/-/issues/56.
2021-01-28 19:49:43 +03:00
Egor Kislitsyn
bddb01bded
Add tests 2021-01-27 18:20:07 +04:00
Egor Kislitsyn
793fc77b16
Add active user count 2021-01-27 18:20:06 +04:00
lain
7f07871639 Merge branch 'chore/tests-use-clear_config' into 'develop'
Convert tests to all use clear_config instead of Pleroma.Config.put

See merge request pleroma/pleroma!3282
2021-01-27 11:33:27 +00:00
Alexander Strizhakov
d4158e8bf0
added total
to the instance adminAPI endpoint
2021-01-27 07:45:06 +03:00
Alexander Strizhakov
6806c03e85
added total
to the user statuses adminAPI endpoint
2021-01-27 07:45:02 +03:00
d7af0294e6 Merge branch 'service-worker-allowed-header' into 'develop'
Ability to set custom HTTP headers per each frontend

See merge request pleroma/pleroma!3247
2021-01-26 18:14:01 +00:00
e854c35e65 Convert tests to all use clear_config instead of Pleroma.Config.put 2021-01-26 11:58:43 -06:00
lain
229acae6c3 Merge branch 'develop' into '2435-list-multiple-users'
# Conflicts:
#   CHANGELOG.md
2021-01-26 14:24:32 +00:00
Alexander Strizhakov
875fbaae35
support for expires_in/expires_at in filters 2021-01-26 08:27:45 +03:00
Haelwenn
250e202098 Merge branch 'fix/missing-own_votes' into 'develop'
Include own_votes in the poll data

See merge request pleroma/pleroma!3274
2021-01-26 00:55:05 +00:00
0b19534475 Merge branch 'develop' into docs/apache-config 2021-01-25 17:00:26 -06:00
Ivan Tashkinov
694d98be55 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework 2021-01-25 21:24:07 +03:00
f868dcf3ac Ensure consistent behavior between pleroma.user activate/deactivate mix tasks 2021-01-25 10:48:28 -06:00
Alexander Strizhakov
3f3d64acbf
little refactor and tests
for voted & own_votes fields in polls
2021-01-25 19:46:36 +03:00
5e8da27e14 Provide pleroma.user mix task for both activate and deactivate 2021-01-25 10:36:51 -06:00
537ba1c5e0 Merge branch 'develop' into refactor/deactivated_user_field 2021-01-25 09:45:06 -06:00
6bfd497f4a Include own_votes in the poll data 2021-01-22 09:47:59 -06:00
Ivan Tashkinov
218c519606 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
# Conflicts:
#	test/pleroma/web/mastodon_api/views/status_view_test.exs
2021-01-22 10:05:28 +03:00
80ccdb56f6 Make tag urls absolute 2021-01-21 16:49:19 -06:00
42e49529c2 Test URL formatting 2021-01-21 14:42:16 -06:00
0c485d5555 Improve description 2021-01-21 14:42:08 -06:00
eugenijm
7fcaa188a0 Allow to define custom HTTP headers per each frontend 2021-01-21 21:55:23 +03:00
eugenijm
133644dfa2 Ability to set the Service-Worker-Allowed header 2021-01-21 21:55:11 +03:00
Ivan Tashkinov
ca7f240643 [#3213] Ignoring of blank elements from objects.data->tag. 2021-01-21 20:50:06 +03:00
Ivan Tashkinov
c041e9c630 [#3213] HashtagsTableMigrator: failures handling fix, retry function.
Changed default hashtags filtering strategy to non-aggregate approach.
2021-01-21 20:23:08 +03:00
Ivan Tashkinov
2634a16b4c Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
# Conflicts:
#	CHANGELOG.md
2021-01-21 20:20:35 +03:00
lain
ba40af054c Merge branch 'test-cases-mox-setup' into 'develop'
Mox mode setup tweak; refactoring

See merge request pleroma/pleroma!3263
2021-01-21 09:03:26 +00:00
2926713fe5 Merge branch 'deprecate-public_endpoint' into 'develop'
Deprecate Uploaders.S3, :public_endpoint

See merge request pleroma/pleroma!3251
2021-01-20 22:48:48 +00:00
9988d9261c Add bucket_namespace to be extra certain truncated_namespace works 2021-01-20 16:33:00 -06:00
dfc4cb6ebd Special handling for unconfirmed users based on instance config no longer needed. 2021-01-20 11:30:29 -06:00
5d344e5c79 Only need to test if unconfirmed users are successfully deleted
It's no longer possible to have an active user account with User.is_confirmed == false
2021-01-20 11:26:14 -06:00
3cb4d40ebf This scenario no longer exists. Users are auto-confirmed if confirmation not required at time of registration. 2021-01-20 11:17:13 -06:00
Ivan Tashkinov
318d6dde1c Mox mode setup tweak; refactoring. 2021-01-19 00:23:39 +03:00
958a7f6ed0 Merge branch 'fix/reblog-api' into 'develop'
Fix Reblog API

Closes #2423

See merge request pleroma/pleroma!3261
2021-01-18 21:19:14 +00:00
28581e03ad Merge branch 'develop' into refactor/deactivated_user_field 2021-01-18 14:58:21 -06:00
44a86951a3 Merge branch 'develop' into refactor/approval_pending_user_field 2021-01-18 12:05:05 -06:00
Egor Kislitsyn
51d5951c02
Test that only author can reblog a private status 2021-01-18 21:01:00 +04:00
Egor Kislitsyn
1b79dce7bc
Fix Reblog API
Do not set visibility parameter to `public` by default and let CommonAPI to infer it from status.
2021-01-18 20:15:57 +04:00
Lain Soykaf
bdfd72630f ListController: Fix being unable to add / remove users. 2021-01-18 16:28:36 +01:00
Ivan Tashkinov
3f88e33a71 [#3251] Fixed wrong test-env config setting for [Pleroma.Upload]. Refactoring. Added warning to clear_config/_ to minimize such issues in future. 2021-01-16 23:05:31 +03:00
Ivan Tashkinov
48b399cedb [#3213] Refactoring of HashtagsTableMigrator. Hashtag timeline performance optimization (auto switch to non-aggregate join strategy when efficient). 2021-01-16 20:22:14 +03:00
Mark Felder
2c0fe2ea9e Remove toggle_confirmation; require explicit state change
Also cosmetic changes to make the code clearer
2021-01-15 13:11:51 -06:00
Mark Felder
d36182c088 Change user.confirmation_pending field to user.is_confirmed 2021-01-15 12:44:41 -06:00
Mark Felder
ebd7d1365b Make setting user activation status explicit 2021-01-15 11:37:17 -06:00
Mark Felder
7516660753 Remove toggle_activation 2021-01-15 11:25:32 -06:00
Mark Felder
860b5c7804 Change user.deactivated field to user.is_active 2021-01-15 11:24:46 -06:00
f7e59c28ed Change user.approval_pending field to user.is_approved 2021-01-15 10:42:02 -06:00
d0e0396528 Hack to fix tests not passing. Unclear why the filters are being set to nil.
Both of these changes are needed or it doesn't work.
2021-01-14 17:49:37 -06:00
0b725f5d21 Lint 2021-01-14 16:00:32 -06:00
12c8ce481c Bump Copyright year 2021-01-14 13:58:52 -06:00
fb47e83adc Add ConfigDB migration 2021-01-14 13:53:55 -06:00
Lain Soykaf
fd9a0ac329 BackupTest: Fix s3 test. 2021-01-14 20:18:45 +01:00
Lain Soykaf
c4b74c9c3f Linting. 2021-01-14 16:01:14 +01:00
Lain Soykaf
39f3683a06 Pbkdf2: Use it everywhere. 2021-01-14 15:06:16 +01:00
Lain Soykaf
87a31c5c9b Password -> Password.Pbkdf2 2021-01-14 14:49:39 +01:00
Ivan Tashkinov
e350898828 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework 2021-01-13 22:11:16 +03:00
ba234d3c73 Unnecessary duplication here 2021-01-13 12:01:01 -06:00
94e5180846 Consistent style 2021-01-13 12:00:48 -06:00
Lain Soykaf
aff83eb7c1 Linting 2021-01-13 16:00:12 +01:00
lain
9106048c61 Password: Replace Pbkdf2 with Password. 2021-01-13 15:11:11 +01:00
lain
c7cd9bd591 Password: Add password module
Replaces Pbkdf2.
2021-01-13 15:09:01 +01:00
Haelwenn (lanodan) Monnier
c4439c630f
Bump Copyright to 2021
grep -rl '# Copyright © .* Pleroma' * | xargs sed -i 's;Copyright © .* Pleroma .*;Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/>;'
2021-01-13 07:49:50 +01:00
67e888498c Switch another test to Upload.base_url/0 2021-01-12 16:42:43 -06:00
e87cca97e6 Fix tests relying on old behavior. Use the Upload.base_url, Luke. 2021-01-12 16:35:10 -06:00
8b28dce82a Deprecate Pleroma.Uploaders.S3, :public_endpoint 2021-01-12 16:31:35 -06:00
5453038ce9 Merge branch 'fix/backup-url-on-s3' into 'develop'
Standardize base url for uploads

See merge request pleroma/pleroma!3246
2021-01-12 20:54:30 +00:00
lain
e1a547d7d3 ChatMessages: Fix pagination headers.
They used to contain the path parameter `id` as query param,
which would break the link.
2021-01-11 15:30:40 +01:00
3c936061d5 Apply Upload.base_url for S3 2021-01-08 17:32:42 -06:00
lain
5822338f3a Merge branch 'guppe-example' into 'develop'
ActivtityPub Test: Add example for guppe actor

See merge request pleroma/pleroma!3243
2021-01-08 15:55:48 +00:00
Alex Gleason
e73c7fa7e5
Merge remote-tracking branch 'upstream/develop' into confirm-users 2021-01-08 07:48:19 -06:00
Alex Gleason
1b98cd8610
Remove ConfirmUserPlug 2021-01-08 07:47:55 -06:00
lain
80167e62dd Merge branch 'fix/missing_emoji_steal_dir' into 'develop'
Create dir for EmojiStealPolicy automatically

See merge request pleroma/pleroma!3218
2021-01-08 13:10:49 +00:00
Alex Gleason
3342f6a7ef
Backups: render ID in API 2021-01-07 13:06:22 -06:00
lain
bd788c0939 ActivtityPub Test: Add example for guppe actor 2021-01-07 16:20:30 +01:00
lain
cf0eb0c1c5 Merge branch 'object-normalize-refactor' into 'develop'
Object: Rework how Object.normalize works

See merge request pleroma/pleroma!3229
2021-01-07 11:09:18 +00:00
lain
4d56aca904 Merge branch 'adminapi-user-email' into 'develop'
AdminAPI: return user email

See merge request pleroma/pleroma!3240
2021-01-07 10:08:02 +00:00
Alex Gleason
9f6fa5877f
Add AdminAPI.AccountViewTest 2021-01-06 11:43:07 -06:00
Alex Gleason
20af025c65
AdminAPI: return user email 2021-01-06 11:30:32 -06:00
Roger Braun
48cd336a72 allow external emoji 2021-01-06 10:13:01 -06:00
f9090e00e6 Add test to validate URLs to custom emojis are properly encoded 2021-01-05 13:58:49 -06:00
lain
20a269ed69 Merge branch 'fix/pagination-regression' into 'develop'
Do not try to guess which pagination we need by the existence of an :offset param.

Closes #2399

See merge request pleroma/pleroma!3230
2021-01-05 12:40:45 +00:00
lain
fee0c6a2cb Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into alexgleason/pleroma-confirm-users 2021-01-05 13:33:57 +01:00
lain
e802b48d55 User: Use ObjectID type to validate also-known-as field 2021-01-05 13:10:14 +01:00
lain
f0e6cff583 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into 1526-account-aliases 2021-01-05 12:42:30 +01:00
lain
bea69853a2 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-moderation-log-stuff 2021-01-05 12:19:39 +01:00
lain
95a0ae8a35 AccountControllerTest: Fix test logic 2021-01-05 11:48:40 +01:00
lain
d44850d7a5 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into object-normalize-refactor 2021-01-05 10:48:32 +01:00
lain
8e5904daa5 SideEffects.DeleteTest: asyncify.
Replace Mock with Mox, mock out Logger.
2021-01-04 18:40:59 +01:00
0e93775ed0 Add test to validate profile pagination works with keyset 2021-01-04 11:04:58 -06:00
lain
e1e7e4d379 Object: Rework how Object.normalize works
Now it defaults to not fetching, and the option is named.
2021-01-04 13:38:31 +01:00
Alex Gleason
0ec7e9b8e9
AdminAPI: return id for moderation log entries 2021-01-01 11:59:48 -06:00
Alex Gleason
7b44605cb8
Migration to confirm previously-logged-in users 2020-12-31 14:04:51 -06:00
afe9c152ab Merge branch 'fix/reports-ordering' into 'develop'
Do not reverse order of reports. We want newest ones sorted to the top.

Closes #2364

See merge request pleroma/pleroma!3225
2020-12-31 19:24:49 +00:00
e4791258d4 Ensure newest report is returned first in the list 2020-12-31 12:40:42 -06:00
Alex Gleason
64f0e96ff6
Automatically confirm logged-in users 2020-12-31 12:13:08 -06:00
Alex Gleason
11d40e92b7
Render AKAs in Actor endpoints 2020-12-30 18:53:27 -06:00
Alex Gleason
cbce880076
Merge remote-tracking branch 'upstream/develop' into aliases 2020-12-30 17:10:02 -06:00
4c5f75f4e9 Support pagination in AdminAPI for user statuses 2020-12-30 15:18:54 -06:00
Haelwenn
3966add048 Revert "Merge branch 'features/hashtag-column' into 'develop'"
This reverts merge request !2824
2020-12-28 12:02:16 +00:00
Haelwenn
b122b6ffa3 Merge branch 'features/hashtag-column' into 'develop'
Insert text representation of hashtags into object["hashtags"]

See merge request pleroma/pleroma!2824
2020-12-28 10:14:58 +00:00
Ivan Tashkinov
14fae94c0e [#3213] Made Object.hashtags/1 work with :hashtags assoc. Adjusted tests. 2020-12-28 00:08:09 +03:00
Alexander Strizhakov
7bfb041658
insreasing test coverage for StealEmojiPolicy 2020-12-27 21:53:30 +03:00
Ivan Tashkinov
4134abef63 Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework 2020-12-26 22:23:05 +03:00
Ivan Tashkinov
cbb19d0e18 [#3213] Hashtag-filtering functions in ActivityPub. Mix task for migrating hashtags to hashtags table. 2020-12-26 22:20:55 +03:00
lain
e4f1d8f48c Merge branch 'cachex-test' into 'develop'
Test framework overhaul (speed, reliability)

See merge request pleroma/pleroma!3209
2020-12-26 10:26:35 +00:00
Ivan Tashkinov
e369b1306b Added Hashtag entity and objects-hashtags association with auto-sync with data.tag on Object update. 2020-12-22 22:04:33 +03:00
Alexander Strizhakov
538af14d52
possibility to run rollback in test env 2020-12-22 17:55:30 +03:00
Haelwenn (lanodan) Monnier
acb03d591b
Insert text representation of hashtags into object["hashtags"]
Includes a new mix task: pleroma.database fill_old_hashtags
2020-12-22 05:15:34 +01:00
Ivan Tashkinov
ee221277b0 Encapsulation of tags / hashtags fetching from objects. 2020-12-21 22:54:26 +03:00
lain
ab633e51ab Linting 2020-12-21 16:48:35 +01:00
lain
1a3da01a65 Tests: Stub the pipeline in all tests.
Restores the old un-moxed behavior.
2020-12-21 16:38:34 +01:00
lain
5db1e6c8d3 Pipeline test: Switch from Mock to Mox.
Speeds up the test and makes it possible to run async.
2020-12-21 16:35:12 +01:00
lain
0ef0aed205 Tests: Add a helper method to reduce sleeping times in test.
This will 'time travel', i.e. change the inserted_at and update_at
fields of the object in question. This is used to backdate things
were we used sleeping before to ensure time differences.
2020-12-21 16:31:23 +01:00
lain
ba19975838 Linting 2020-12-21 16:22:36 +01:00
lain
9d5ce82221 Test: More async/sync tweaks. 2020-12-21 15:05:56 +01:00
lain
b17c36c45a Tests: More test fixes. 2020-12-21 12:59:11 +01:00
lain
2f8ec8a9cc XMLBuidlder test: Make async. 2020-12-21 12:35:04 +01:00
lain
9ba60f70d2 Tests: Make as many tests as possible async.
In general, tests that match these criteria can be made async:

- Doesn't use real Cachex.
- Doesn't write to the Config / Application Environment.
- Uses Mock. Using Mox is fine.
- Uses the streamer.
2020-12-21 12:21:40 +01:00
lain
ee81a94ab2 Caching: Add caching behavior, add null implementation. 2020-12-21 11:42:53 +01:00
Kaizhe Huang
509f82e4d6 Add test for subscribe_address in JSON WebFinger response 2020-12-19 22:11:47 +11:00
lain
95a9bdfc37 Tests: Use NullCache for async tests.
Caching can't work in async tests, so for them it is mocked to a
null cache that is always empty. Synchronous tests are stubbed
with the real Cachex, which is emptied after every test.
2020-12-18 19:53:19 +01:00
lain
713612c377 Cachex: Make caching provider switchable at runtime.
Defaults to Cachex.
2020-12-18 17:44:46 +01:00
lain
b4b68b71fc Tests: Remove unneeded explicit cachex use.
Only use cachex when we're actually testing it.
2020-12-18 13:18:17 +01:00
lain
c1129ff674 Tests: Reset all cachex caches between synchronous tests
Don't bother in the async case, it doesn't make sense there.
2020-12-18 11:53:43 +01:00
Alex Gleason
80891e83d8
Merge remote-tracking branch 'upstream/develop' into registration-workflow 2020-12-17 09:05:36 -06:00
lain
8b8c317c0f Merge branch 'fix/2336-mastoapi-ws-posts-dropping' into 'develop'
Fix mastoapi ws posts dropping

Closes #2336

See merge request pleroma/pleroma!3198
2020-12-16 11:35:45 +00:00
lain
6bb4f4e172 Merge branch 'support/2255_posix_errors' into 'develop'
[#2255] added error messages for posix error code

See merge request pleroma/pleroma!3138
2020-12-15 15:16:03 +00:00
Alexander Strizhakov
cebe3c7def Fix for dropping posts/notifs in WS when mix task is executed
- start oban in mix tasks with empty queues, plugins and crontab
- fix for update_users_following_followers_counts
- fix for removed logo.png
- typo in resend confirmation emails mix task docs
- fix for uploads mix task (start Majic.Pool)
- fix for creating user mix task (start :fast_html app)
2020-12-14 11:02:32 -06:00
Ivan Tashkinov
7fff9c1bee Tweaks to OAuth entities expiration: changed default to 30 days, removed hardcoded values usage, fixed OAuthView (expires_in). 2020-12-09 21:14:39 +03:00
lain
477c6c8e55 Merge branch 'auth-improvements' into 'develop'
Cookie auth rework / Auth subsystem refactoring and tweaks

Closes pleroma/secteam/pleroma#3

See merge request pleroma/pleroma!3112
2020-12-09 15:55:45 +00:00
lain
1436a2fa2d Merge branch 'stream-follow-updates' into 'develop'
Stream follow updates

Closes #2299

See merge request pleroma/pleroma!3183
2020-12-09 15:52:31 +00:00
lain
e73d878b38 Merge branch 'feat/warn-large-pool-size' into 'develop'
Add a startup error for modified Repo pool_size

See merge request pleroma/pleroma!3190
2020-12-08 16:36:51 +00:00
lain
50d16a9e27 ApplicationRequirements: Add test, more text for pool size. 2020-12-08 17:30:10 +01:00
Haelwenn (lanodan) Monnier
1403798820
instance.reachable?: Limit to binary input 2020-12-07 21:20:44 +01:00
Haelwenn (lanodan) Monnier
e1a2e8b17c
instance: Do not fetch unreachable instances
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/2346
2020-12-07 20:11:47 +01:00
Ivan Tashkinov
c8e7ace812 Merge remote-tracking branch 'remotes/origin/develop' into auth-improvements
# Conflicts:
#	CHANGELOG.md
2020-12-07 21:45:04 +03:00
lain
ed76323776 Merge branch 'feature/configdb-mix-tasks' into 'develop'
Add mix tasks to give additional ConfigDB recovery and debugging options

See merge request pleroma/pleroma!3174
2020-12-07 18:06:06 +00:00
Mark Felder
e3dd0d45b7 Slip in a test to ensure we can use the atom syntax in mix task arguments 2020-12-07 11:21:06 -06:00
Ivan Tashkinov
e00c667145 [#3174] Refactoring: ConfigDB fetching functions, ConfigDB tests.
Minor fixes.
2020-12-06 18:02:30 +03:00
Ivan Tashkinov
a010c5b16a Merge remote-tracking branch 'remotes/origin/develop' into auth-improvements 2020-12-06 13:59:35 +03:00
Ivan Tashkinov
e9859b68fc [#3112] Ensured presence and consistency of :user and :token assigns (EnsureUserTokenAssignsPlug). Refactored auth info dropping functions. 2020-12-06 13:59:10 +03:00