Commit Graph

3989 Commits

Author SHA1 Message Date
Egor Kislitsyn de13c9bb8f List messages must be visible for mentioned users 2019-07-15 14:54:40 +07:00
Egor Kislitsyn d86a97abfb Add an explanation comment to Publisher.publish/2 2019-07-15 14:20:31 +07:00
Egor Kislitsyn 64a946643e Merge remote-tracking branch 'pleroma/develop' into feature/addressable-lists 2019-07-15 14:11:54 +07:00
Egor Kislitsyn a87c313309 Support `list` visibility in StatusView 2019-07-15 14:00:29 +07:00
Maksim fa17879c20 added tests for Web.MediaProxy 2019-07-14 21:01:32 +00:00
Sergey Suprunenko dce8ebc9ea Unfollow should also unsubscribe 2019-07-14 19:25:03 +00:00
Ariadne Conill 739bbe0d3b security: detect object containment violations at the IR level
It is more efficient to check for object containment violations at the IR
level instead of in the protocol handlers.  OStatus containment is especially
a tricky situation, as the containment rules don't match those of IR and
ActivityPub.

Accordingly, we just always do a final containment check at the IR level
before the object is added to the IR object graph.
2019-07-14 17:47:08 +00:00
Moonman f98f7ad1b9 detect and use sha512-crypt for stored password hash. 2019-07-14 09:48:42 -07:00
kaniini cef4337f95 Merge branch 'bugfix/llal-object-containment' into 'develop'
Object.Fetcher: Handle error on Containment.contain_origin/2

See merge request pleroma/pleroma!1414
2019-07-14 16:39:17 +00:00
Haelwenn (lanodan) Monnier 2592934480
Object.Fetcher: Keep the with-do block as per kaniini proposition 2019-07-14 17:28:25 +02:00
Haelwenn (lanodan) Monnier e1c08a67d6
Object.Fetcher: Fallback to OStatus only if AP actually fails 2019-07-14 17:05:31 +02:00
Alexander Strizhakov e7c39b7ac8 Feature/1072 muting notifications 2019-07-14 13:29:31 +00:00
Haelwenn (lanodan) Monnier 40d0a198e2
Object.Fetcher: Handle error on Containment.contain_origin/2 2019-07-14 14:58:47 +02:00
Alex S f4447d82b8 parsers configurable 2019-07-14 09:21:56 +03:00
Maxim Filippov 418ae6638d Merge branch 'develop' into feature/admin-api-user-statuses 2019-07-14 00:39:06 +03:00
Maxim Filippov a9459ff98f Admin API: Endpoint for fetching latest user's statuses 2019-07-14 00:37:26 +03:00
Ariadne Conill 80c46d6d8b nodeinfo: implement MRF transparency exclusions 2019-07-13 18:53:14 +00:00
kaniini f4c001062e Merge branch '1041-status-actions-rate-limit' into 'develop'
Rate-limited status actions (per user and per user+status).

Closes #1041

See merge request pleroma/pleroma!1410
2019-07-13 14:17:17 +00:00
Ivan Tashkinov d72876c57d [#1041] Minor refactoring. 2019-07-13 15:21:50 +03:00
Haelwenn 9497d14f09 Merge branch 'fix/hackney-global-options' into 'develop'
Merge the default options with custom ones in ReverseProxy and Pleroma.HTTP and workaround for remote server certificate chain issues

See merge request pleroma/pleroma!1409
2019-07-13 11:55:09 +00:00
Ivan Tashkinov 369e9bb42f [#1041] Rate-limited status actions (per user and per user+status). 2019-07-13 14:49:39 +03:00
rinpatch b001b8891a Merge the default options with custom ones in ReverseProxy and
Pleroma.HTTP
2019-07-12 23:52:26 +03:00
rinpatch 095117a58c Merge branch 'develop' into fix/ap-hide-follows 2019-07-12 21:43:06 +03:00
rinpatch 97b79efbcd ActivityPub Controller: Actually pass for_user to following/followers
views and give 403 errors when trying to request hidden follower pages
when unauthenticated
2019-07-12 20:54:20 +03:00
Sachin Joshi f8e3ae6154 try to always match the filename for proxy url 2019-07-12 22:56:14 +05:45
Maksim 92055941bd Pleroma.Web.Metadata - tests 2019-07-12 16:42:54 +00:00
rinpatch 1f6ac7680d ActivityPub User view: Following/Followers refactoring
- Render the collection items if the user requesting == the user
rendered
- Do not render the first page if hide_{followers,follows} is set, just
give the URI to it
2019-07-12 19:41:55 +03:00
Mark Felder 360e4cdaa2 Move these to pleroma namespace in Mastodon API 2019-07-12 11:25:58 -05:00
Sachin Joshi 6a6c4d134b preserve the original path/filename (no encoding/decoding) for proxy 2019-07-12 21:05:01 +05:45
Eugenij 4198c3ac39 Extend Pleroma.Pagination to support offset-based pagination, use async/await to execute status and account search in parallel 2019-07-11 13:55:31 +00:00
Alexander Strizhakov 846ad9a463 admin api configure changes 2019-07-11 13:02:13 +00:00
kaniini e4e3fd7e55 Merge branch 'fix/1019-refactor' into 'develop'
Fix/1019 refactor

See merge request pleroma/pleroma!1397
2019-07-11 13:01:11 +00:00
Egor Kislitsyn 9e06873d58 Add `list` to Visibility 2019-07-11 19:29:24 +07:00
Egor Kislitsyn 958fb9aa80 Add "listMessage" 2019-07-11 16:36:08 +07:00
Egor Kislitsyn 182f7bbb11 Merge branch 'develop' into feature/addressable-lists 2019-07-11 13:26:59 +07:00
Alexander Strizhakov a237c6a2d4 support for idna domains 2019-07-10 15:23:25 +00:00
Haelwenn (lanodan) Monnier 252e129b1e
MastoAPI: Add categories to custom emojis
Note: This isn’t in a release yet, can be seen in mastofe on the
rebase/glitch-soc branch.
2019-07-10 17:02:37 +02:00
Alex S beba7bbc85 removing synchronization worker 2019-07-10 17:42:18 +03:00
Alex S f8786fa6f2 adding following_address field to user 2019-07-10 17:42:18 +03:00
Sergey Suprunenko ff55e3c16f Create mentions only for explicitly mentioned users 2019-07-10 13:29:50 +00:00
Egor Kislitsyn ed8ce21a22 Fix unused import warning 2019-07-10 18:10:09 +07:00
Egor Kislitsyn a42da8f311 Fix response 2019-07-10 18:10:09 +07:00
Egor Kislitsyn 5104f65b69 Wrap error messages into gettext helpers 2019-07-10 18:10:09 +07:00
Egor Kislitsyn 26a6871609 Add translation helpers 2019-07-10 18:10:09 +07:00
Egor Kislitsyn 0d54a571ca Add SetLocalePlug 2019-07-10 18:08:03 +07:00
Maksim 008c55e4e9 add test for search_controller/ 100% coverage 2019-07-10 08:28:03 +00:00
Maksim 12b1454245 [#1062] added option to disable send email 2019-07-10 05:34:21 +00:00
Sergey Suprunenko 2d2b50ccca Send and handle "Delete" activity for deleted users 2019-07-10 05:16:08 +00:00
kaniini 75be90a6d1 Merge branch 'release/listener' into 'develop'
add listener port and ip option for 'pleroma.instance gen' and enable its test

See merge request pleroma/pleroma!1393
2019-07-10 05:14:08 +00:00
feld 93a0eeab16 Add license/copyright to all project files 2019-07-10 05:13:23 +00:00
Maksim bb8065a1fd tests MRF filters 2019-07-10 05:12:21 +00:00
Sachin Joshi 6d0ae264fc add listener port and ip option for 'pleroma.instance gen' and enable its test 2019-07-10 01:46:49 +05:45
Ivan Tashkinov 829e997223 [#878] Merge remote-tracking branch 'remotes/upstream/develop' into 878-activity-object-decoupling-in-tests
# Conflicts:
#	lib/pleroma/object.ex
#	test/web/activity_pub/transmogrifier_test.exs
#	test/web/ostatus/ostatus_test.exs
2019-07-09 21:46:16 +03:00
kaniini 670a77ecbc Merge branch 'feature/allow-user-query-via-id' into 'develop'
Admin API: Allow querying user by ID

See merge request pleroma/pleroma!1380
2019-07-09 17:53:41 +00:00
kaniini 1417627d07 Merge branch 'remove-avatar-header' into 'develop'
Ability to reset avatar, profile banner and backgroud

See merge request pleroma/pleroma!1187
2019-07-09 17:51:41 +00:00
Mark Felder 9a9b60cfbc Merge branch 'develop' into feature/allow-user-query-via-id 2019-07-09 12:49:04 -05:00
Alexander Strizhakov d6b0fce6e9 Fix/1019 correct count remote users 2019-07-09 17:36:35 +00:00
kaniini 4948117fcf Merge branch 'remove-swift' into 'develop'
Remove Uploaders.Swift and `httpoison` dependency

Closes #1051

See merge request pleroma/pleroma!1374
2019-07-09 16:54:32 +00:00
Alexander Strizhakov 4e6e5d8042 reverse proxy tests 2019-07-09 16:54:13 +00:00
kaniini 1179a13533 Merge branch 'features/sec-websocket-protocol-header' into 'develop'
Features: MastoAPI streaming Sec-WebSocket-Protocol header

See merge request pleroma/pleroma!1381
2019-07-09 16:52:22 +00:00
Haelwenn 1ab4e35f27 Merge branch 'enable-ogp-by-default' into 'develop'
Do not crash if metadata fails to render and enable OGP and TwitterCard by default

Closes #1034

See merge request pleroma/pleroma!1388
2019-07-09 16:07:20 +00:00
feld 167f810ff1 Merge branch 'proxy-error' into 'develop'
make sure the url used by proxy is same as original url

See merge request pleroma/pleroma!1383
2019-07-09 16:00:44 +00:00
Haelwenn 95c085174d Merge branch 'test-speedup' into 'develop'
Testing: Don't federate in testing.

See merge request pleroma/pleroma!1391
2019-07-09 15:35:28 +00:00
Mark Felder 31a59d6f23 Merge branch 'develop' into proxy-error 2019-07-09 10:18:30 -05:00
rinpatch 376a55c97f Merge branch '161-incoming-replies-depth-limit' into 'develop'
[#161] Limited replies depth on incoming federation (memory leaks fix)

Closes #161

See merge request pleroma/pleroma!1361
2019-07-09 14:15:10 +00:00
Alexander Strizhakov 23d4781e73 change for local user search 2019-07-09 08:52:49 +00:00
lain abe2e8881f Testing: Don't federate in testing. 2019-07-09 15:30:51 +09:00
Ivan Tashkinov daff85a985 [#878] Refactored assumptions on embedded object presence in tests. Adjusted note factory to not embed object into activity. 2019-07-08 19:53:02 +03:00
rinpatch 44b2e1fdad Formatting 2019-07-08 14:05:57 +03:00
rinpatch 9e58d3c624 FallbackRedirector: Do not crash on Metadata rendering errors 2019-07-08 12:59:49 +03:00
rinpatch 7f609ee8f4 OGP/TwitterCard: Add fallbacks in case the attachment key is nonexistent 2019-07-08 12:16:32 +03:00
rinpatch 72b88c82bc Mastodon API: Fix embedded relationships not being rendered inside of statuses 2019-07-08 12:07:08 +03:00
Sachin Joshi f5ad430974 make sure the url used by proxy is same as origin url
encoding or decoding it breaks some of the signed url
2019-07-07 14:13:40 +05:45
Haelwenn (lanodan) Monnier e174614eb9
MastoAPI Streaming: Keep compatibility with access_token 2019-07-07 08:49:29 +02:00
KokaKiwi a7885748c7
MastoAPI streaming: Replace access_token with Sec-WebSocket-Protocol 2019-07-06 20:29:17 +02:00
Ivan Tashkinov ad8d86e7c6 Merge remote-tracking branch 'remotes/upstream/develop' into 161-incoming-replies-depth-limit 2019-07-06 10:17:06 +03:00
rinpatch 3589b30ddc Merge branch 'fix/1058-uploads-dir-consistency' into 'develop'
tasks/pleroma/instance.ex: Change :upload_dir to :uploads_dir

Closes #1058

See merge request pleroma/pleroma!1378
2019-07-05 18:55:27 +00:00
Maxim Filippov 6c50fbcd14 Admin API: Allow querying user by ID 2019-07-05 19:33:53 +03:00
Maksim 6dadf5d6f4 [#1043] fix search accounts. 2019-07-05 04:22:08 +00:00
Haelwenn (lanodan) Monnier 977c2d0448
tasks/pleroma/instance.ex: Change :upload_dir to :uploads_dir
Closes: https://git.pleroma.social/pleroma/pleroma/issues/1058
2019-07-05 06:19:27 +02:00
Eugenij 15eb1235ed Expose `skip_thread_containment` in nodeinfo 2019-07-03 18:35:57 +00:00
Eugenij 5184b0f41a Use fallback values for search queries
This is to make sure the entire request doesn't return a 500 error if
user or status search times out.
2019-07-03 10:19:51 +00:00
Egor Kislitsyn 4f42093220 Remove Uploaders.Swift 2019-07-03 14:11:04 +07:00
Eugenij ab50c6b3ca Add fallback value to the admin report view.
This is to avoid 500 error when the reported user no longer exists
in the database.
2019-07-02 01:27:00 +00:00
Ivan Tashkinov a799418573 [#161] Merge remote-tracking branch 'remotes/upstream/develop' into 161-incoming-replies-depth-limit
# Conflicts:
#	CHANGELOG.md
2019-06-30 16:05:00 +03:00
Ivan Tashkinov 2b9d914089 [#161] Refactoring, documentation. 2019-06-30 15:58:50 +03:00
Eugenij 1f76740e10 Add hashtag filter to user statuses (GET /api/v1/accounts/:id/statuses) 2019-06-30 09:08:46 +00:00
Maksim acd20f166b [#1026] Filter.AnonymizeFilename added ability to retain file extension with custom text 2019-06-30 07:28:35 +00:00
rinpatch 4c60a562a7 Fix not being able to pin unlisted posts
Closes #1038
2019-06-29 22:27:42 +03:00
Ivan Tashkinov 5b7b1040b3 [#161] Limited replies depth on incoming federation in order to prevent memory leaks on recursive replies fetching. 2019-06-29 20:04:50 +03:00
kaniini d1549a6375 Merge branch 'feature/merge-mastodon-admin-views-for-reports' into 'develop'
Merge admin and mastodon user views for reports

See merge request pleroma/pleroma!1346
2019-06-29 00:12:09 +00:00
William Pitcock 034986e1fd MRF: add mediaproxy warming policy 2019-06-28 23:19:20 +00:00
lain 2286f62a36 Merge branch 'release-docs' into 'develop'
Docs on OTP releases

See merge request pleroma/pleroma!1315
2019-06-28 15:26:09 +00:00
Maxim Filippov 452ca5250d Merge admin and mastodon user views for reports 2019-06-28 15:15:32 +03:00
kaniini 0369a5db16 Merge branch 'idempotency-plug' into 'develop'
Add IdempotencyPlug and use it in all of the api

Closes #1003

See merge request pleroma/pleroma!1339
2019-06-27 04:20:17 +00:00
Alexander Strizhakov c6705144a2 don't delete config settings on admin update 2019-06-27 04:19:44 +00:00
Egor Kislitsyn 889a9c3a3f Polish IdempotencyPlug 2019-06-27 01:53:58 +07:00
Egor Kislitsyn 159630b21c Fix credo warning 2019-06-26 19:19:07 +07:00
Egor Kislitsyn 0b8aeac0f3 Remove previous idempotency implementation from `post_status` 2019-06-26 18:49:14 +07:00
Egor Kislitsyn 74132e3715 Enable IdempotencyPlug for the all API 2019-06-26 18:42:49 +07:00
Egor Kislitsyn 825077a5b0 Add Idempotency plug 2019-06-26 18:36:58 +07:00
Sergey Suprunenko d53fb55bb7 Return correct response when reply to a direct message is not direct itself 2019-06-26 10:59:27 +00:00
kaniini 24bcc209f9 Merge branch 'refactoring/fix_render_view' into 'develop'
Fix Controller.render/4 deprecation

See merge request pleroma/pleroma!1337
2019-06-26 05:34:26 +00:00
kaniini 9f8e645dce Merge branch 'feature/configurable-pack-extensions' into 'develop'
Make default pack extensions configurable and default to png and gif

See merge request pleroma/pleroma!1338
2019-06-26 05:34:02 +00:00
rinpatch 41e4752950 Make default pack extensions configurable and default to png and gif 2019-06-26 06:48:59 +03:00
Maksim Pechnikov 5c0f646cef fix validate_page_url 2019-06-26 06:27:17 +03:00
Roman Chvanikov a7a54068f9 Fix Controller.render/4 deprecation 2019-06-26 03:28:02 +03:00
Maksim Pechnikov 4ad15ad2a9 add ignore hosts and TLDs for rich_media 2019-06-25 22:25:37 +03:00
Maksim Pechnikov 0276cf5a02 fix validate_url for private ip 2019-06-25 17:44:24 +03:00
Maksim a0c4ebb4d7 [#184] small refactoring reset password 2019-06-24 19:01:56 +00:00
Sergey Suprunenko 2c63c67512 Rework user deletion 2019-06-24 18:59:12 +00:00
Eugenij f2c03425b0 Broadcast conversation update when DM is deleted 2019-06-24 07:14:04 +00:00
kaniini 27b9605de0 Merge branch 'rich_media_titles_two' into 'develop'
Rich media titles two

See merge request pleroma/pleroma!1325
2019-06-23 05:43:11 +00:00
kaniini 8b7860f12f Merge branch 'admin-config' into 'develop'
Admin config

See merge request pleroma/pleroma!1328
2019-06-23 05:42:37 +00:00
Alex S 982cad0268 support for config groups 2019-06-23 08:16:16 +03:00
Sachin Joshi a0c65bbd6c Merge branch 'develop' into 'remove-avatar-header'
# Conflicts:
#   CHANGELOG.md
2019-06-23 03:25:50 +00:00
Alex S 410add1c30 support for tuples with more than 2 values 2019-06-22 17:30:53 +03:00
lain 0e415921cd Rich Media Parser: Do not return just a title if nothing else is there. 2019-06-22 16:22:59 +02:00
lain 58c4d5312b Revert "Revert "Merge branch 'fix/ogp-title' into 'develop'""
This reverts commit b6af80f769.
2019-06-22 15:12:57 +02:00
rinpatch 3ac5ecbac1 Support RUM indexes in the config generator 2019-06-22 12:54:16 +03:00
rinpatch 51760c84b9 Merge branch 'develop' into release-docs 2019-06-22 12:44:20 +03:00
rinpatch 53c73cd1a3 Merge branch 'fix/ecto-tasks-release' into 'develop'
Ecto tasks: Resolve relative path using the application directory instead of cwd and load the application before doing anything

See merge request pleroma/pleroma!1322
2019-06-22 09:19:10 +00:00
William Pitcock 6426301407 notifications: fix notification generation for non-create activities
in 300d94c62, an Object.normalize() call was introduced.  calling Object.normalize()
on an activity with a non-object URI (say, a user) causes Really Bad Things to happen.
so don't do that.
2019-06-22 06:44:47 +00:00
Alex S f0fccb7578 fix for int and modules 2019-06-22 09:01:30 +03:00
rinpatch 19f16e829d Load the application before executing the create task 2019-06-22 04:33:46 +03:00
rinpatch ebee9f59d8 Ecto tasks: Resolve relative path using the application directory
instead of cwd and load the application before doing anything

In OTP releases cwd != app directory and the configuration is read
only if the application is loaded
2019-06-22 04:17:04 +03:00
rinpatch ee4e7c6570 Remove the getting started steps from pleroma.instance gen task
They are not compatible with every platform, different for OTP releases
and may become outdated. We are better off just telling people to refer
to the installation guides for their particular platform
2019-06-22 02:07:05 +03:00
rinpatch 452d5d3231 Merge branch 'develop' into release-docs 2019-06-22 02:00:18 +03:00
kaniini 55742d978d Merge branch 'feature/mrf-anti-link-spam' into 'develop'
implement anti link spam MRF

See merge request pleroma/pleroma!1307
2019-06-21 22:56:54 +00:00
kaniini e3534f5b3c Merge branch 'oauth_secure_redirect' into 'develop'
OAuth security improvements (`redirect_uri` listing enforcement)

See merge request pleroma/pleroma!1302
2019-06-21 22:31:12 +00:00
kaniini 720412bf24 Merge branch 'revert-6f5a0cc1' into 'develop'
Revert "Merge branch 'fix/ogp-title' into 'develop'"

See merge request pleroma/pleroma!1317
2019-06-21 22:28:46 +00:00
William Pitcock 127a5a7d65 change the anti-link-spam MRF implementation to use old_user? instead of the previous name 2019-06-21 22:27:14 +00:00
rinpatch e76115989a Move config templates to priv so they can be found in releases 2019-06-21 19:54:04 +03:00
feld b6af80f769 Revert "Merge branch 'fix/ogp-title' into 'develop'"
This reverts merge request !1277
2019-06-21 11:36:32 +00:00
rinpatch 89fead9250 Default DB configuration to false and set the default database name to
`pleroma` instead of `pleroma_dev`
2019-06-21 06:42:04 +03:00
rinpatch 2437f51284 Merge branch 'fix/config-gen-releases' into 'develop'
Refactor mix tasks a bit and make config generator work with releases

See merge request pleroma/pleroma!1312
2019-06-20 21:25:34 +00:00
Alexander Strizhakov 32320c1ee9 Fixes for dynamic configuration 2019-06-20 17:43:57 +00:00
rinpatch 69070e641d Allow setting upload/static directories in the config generator 2019-06-20 03:59:16 +03:00
rinpatch 144e2e3e0b Remove deprecated dedupe_media from the config template 2019-06-20 03:40:00 +03:00
rinpatch fe3a830b80 Remove a useless binding from config template call 2019-06-20 02:34:19 +03:00
rinpatch f8c64dd4c0 Release Tasks: Ensure the application is loaded before getting the
modules

Needed for non-rpc tasks to work
2019-06-20 02:21:48 +03:00
rinpatch 8c7a382027 Rename Pleroma.Mix.Tasks.Common -> Mix.Pleroma and import it's functions
instead of aliasing

This seems to be the convention for functions that can be reused between
different mix tasks in all Elixir projects I've seen and it gets rid on
an error message when someone runs mix pleroma.common

Also in this commit by accident:
- Move benchmark task under a proper namespace
- Insert a space after the prompt
2019-06-20 02:08:02 +03:00
Ivan Tashkinov 363618207c Apply suggestion to lib/mix/tasks/pleroma/user.ex 2019-06-19 19:39:53 +00:00
Ivan Tashkinov 71fb75b7ef User sign out mix task. 2019-06-19 22:29:36 +03:00
William Pitcock 21dacd4b15 unbreak polls 2019-06-19 16:33:49 +00:00
William Pitcock 736d8ad6be implement anti link spam MRF 2019-06-19 15:58:32 +00:00
Alexander Strizhakov e4fa6b99ac aliases for mix tasks
ecto.migrate
ecto.rollback
2019-06-19 10:33:33 +00:00
rinpatch df2dab69a7 Merge branch 'begone-the-dot-hack' into 'develop'
Remove the dot hack when posting from Mastodon API and add proper errors when the post exceeds character limits

See merge request pleroma/pleroma!1298
2019-06-19 10:22:23 +00:00
lain 5c6c4ce634 Merge branch 'fix/rich-media-hashtags-again' into 'develop'
Rich Media: Skip Microformats hashtags

See merge request pleroma/pleroma!1304
2019-06-19 08:48:41 +00:00
rinpatch 035368d363 Rich Media: Skip Microformats hashtags
When fixing this problem I incorrectly assumed a.hashtag is
the proper way for detecting hashtags, but it is just something Pleroma and
Mastodon add. Per microformats it should be detected by the presense of rel=tag.

This MR adds a check for rel=tag, but I still left a.hashtag just in case
2019-06-19 00:46:30 +03:00