Commit graph

3865 commits

Author SHA1 Message Date
William Pitcock edf772d41e mrf: allow a policy chain to be specified when filtering 2019-06-02 09:44:42 +00:00
William Pitcock 52e09807d4 reverse proxy: clean up some @hackney leftovers 2019-06-02 09:09:58 +00:00
kaniini 5402d04e3c Merge branch 'feature/notification-control-part-2' into 'develop'
notification controls, part 2

See merge request pleroma/pleroma!1204
2019-06-02 08:25:37 +00:00
rinpatch 6bc9e5c020 Mastodon API: Refresh the object before rendering it after voting 2019-06-01 21:41:49 +03:00
rinpatch 444406167b Mastodon API: actually check for poll votes 2019-06-01 21:41:23 +03:00
rinpatch 65db5e9f52 Resolve merge conflicts 2019-06-01 16:29:58 +03:00
rinpatch 300d94c628 Add poll votes
Also in this commit by accident:
- Fix query ordering causing exclude_poll_votes to not work
- Do not create notifications for Answer objects
2019-06-01 16:17:46 +03:00
kaniini e706b42f51 Merge branch 'bugfix/visibility-indicator-litepub-dm' into 'develop'
visibility: if litepub:directMessage is asserted, always report the object as "direct" visibility

See merge request pleroma/pleroma!1230
2019-06-01 03:39:13 +00:00
Sergey Suprunenko 2bbc2a801f Remove all follower collections but actor's from "cc" 2019-06-01 03:26:45 +00:00
William Pitcock f2efe24cf8 visibility: if litepub:directMessage is asserted, always report the object as "direct" visibility 2019-06-01 03:24:08 +00:00
Haelwenn (lanodan) Monnier 5d3ece2861
Remove now useless flavours switching 2019-06-01 01:44:10 +02:00
Haelwenn (lanodan) Monnier aa9f52edd2
mastodon_api_controller.ex: Remove vanilla from supported_flavours 2019-06-01 01:44:10 +02:00
feld 6872c5f88f Mastodon API search default value for "resolve" is false
https://docs.joinmastodon.org/api/rest/accounts/
https://docs.joinmastodon.org/api/rest/search/
2019-05-31 18:46:57 +00:00
lambda 2993361075 Merge branch 'hotfix/leaking-lists' into 'develop'
Mastodon API: Fix lists leaking private posts

See merge request pleroma/pleroma!1222
2019-05-31 13:26:48 +00:00
lain 7861974ab2 MastodonAPI: Add extension to set and get pleroma_settings_store. 2019-05-31 14:50:18 +02:00
lain aaad85c4d9 AccountView: settings -> settings_store 2019-05-31 14:49:46 +02:00
lain eb2963bc43 User: Add settings store to Info, AccountView
This is to provide a generic frontend settings storage mechanism for all kinds
of frontends.
2019-05-31 14:27:15 +02:00
rinpatch d9c0650ff9 Mastodon API: Fix lists leaking private posts
Our previous list visibility resolver grabbed posts if either follower
collection of the user in a list who is followed is in `to` or if
follower collection of the user in a list was in `cc`. This not only
missed unlisted posts but also lead to leaking private posts when
`fix_explicit_addressing` mistakingly started putting follower collections
to `cc` (also fixed in this MR).

Reported by @kurisu@iscute.moe via a DM
2019-05-31 15:25:17 +03:00
rinpatch a9eaa55885 Fix fix_explicit_addressing moving follower collection to cc and add tests for it 2019-05-31 14:17:05 +03:00
lain 97fb50d9fa Mastodon Conversation API: Don't return own account in 'accounts'. 2019-05-31 11:27:14 +02:00
Sergey Suprunenko 1690be991e Replace missing non-nullable Card attributes with empty strings 2019-05-30 21:03:31 +00:00
lambda 91ac8b075b Merge branch 'use-pleroma-config' into 'develop'
Use Pleroma.Config everywhere

See merge request pleroma/pleroma!1214
2019-05-30 13:16:08 +00:00
Egor Kislitsyn 99f70c7e20 Use Pleroma.Config everywhere 2019-05-30 15:33:58 +07:00
kaniini 6aec0d1b58 Revert "Merge branch 'feature/search-authenticated-only' into 'develop'"
This reverts merge request !1209
2019-05-29 22:10:16 +00:00
Mark Felder 672fddb721 Default search limit should be 40
https://docs.joinmastodon.org/api/rest/search/
2019-05-29 08:06:26 -05:00
William Pitcock 0159a6dbe9 router: require oauth_read for searching
Search calls are generally expensive and allow unauthenticated users to
crawl the instance for user profiles or posts which contain specified
keywords.  An adversary can build a distributed search engine which not
only will consume significant instance resources, but also can be used
for undesirable purposes such as datamining.

Accordingly, require authenticated access to use the search API endpoints.
This acts as a nice balance as it allows guest users to make use of most
functionality available in Pleroma FE while ensuring that Pleroma
instances are reasonably protected from resource exhaustion.  It also
removes Pleroma as a potential vector in distributed search engines.
2019-05-29 10:58:45 +00:00
jeff 9f3bcf0efe Respect proxy settings federation 2019-05-28 06:49:53 +00:00
Sachin Joshi 1452a96ad6 ability to set and reset avatar, profile banner and backgroud in Mastodon API 2019-05-27 15:31:01 +05:45
lambda 5bb843ceec Merge branch 'refactor/die-httpoison-die' into 'develop'
remove @httpoison, @ostatus and @websub compile-time constants

See merge request pleroma/pleroma!1203
2019-05-26 13:33:11 +00:00
William Pitcock 79503ce90f mrf: simple policy: fix matching imported activitypub and ostatus statuses 2019-05-26 02:01:24 +00:00
William Pitcock 750ede5764 notification: remove local/remote match rules (too complicated) 2019-05-26 00:05:47 +00:00
William Pitcock e7e2e7a1a6 user info: allow formdata for notification settings like every other API 2019-05-25 05:54:02 +00:00
William Pitcock 59a703fcbe twitter api: user view: expose user notification settings under pleroma object 2019-05-25 05:31:13 +00:00
William Pitcock 4030837d91 notification: add non_follows/non_followers notification control settings 2019-05-25 05:19:47 +00:00
William Pitcock 56fd7dbdd7 remove @websub and @ostatus module-level constants 2019-05-25 04:43:11 +00:00
William Pitcock 9bec891eb4 kill @httpoison 2019-05-25 04:24:21 +00:00
Aaron Tinio 9415932af5 Keep nodeinfo available when not federating 2019-05-25 08:15:12 +08:00
Sergey Suprunenko bbea5691da Mention all people in the beginning of DM 2019-05-24 20:34:23 +00:00
feld f916e4cdd9 Move the Cache Control header test to its own file
We can consolidate our cache control header tests here
2019-05-24 20:33:55 +00:00
rinpatch 8b2d39c1ec Change the order of preloading when fetching activities for context 2019-05-23 14:03:16 +03:00
Sachin Joshi 0c53d91f3b fix merge conflict 2019-05-23 09:45:12 +02:00
rinpatch e6b175ed6c Fix credo issues 2019-05-22 21:57:46 +03:00
William Pitcock baf72d6c58 mrf: simple policy: add the ability to strip avatars and banners from user profiles 2019-05-22 18:53:12 +00:00
William Pitcock 60f882b09f activitypub: run user objects through MRF filters 2019-05-22 18:53:12 +00:00
William Pitcock 75b6c4b004 mrf: defang policy modules for filtering user profile objects 2019-05-22 18:53:12 +00:00
rinpatch ac7702f800 Exclude Answers from fetching by default 2019-05-22 21:52:12 +03:00
rinpatch 19c90d47c4 Normalize poll votes to Answer objects 2019-05-22 21:17:57 +03:00
rinpatch 54e10a3e55 Disable timeouts for object pruning query 2019-05-22 20:10:52 +03:00
Maksim 620908a2db [#699] add worker to clean expired oauth tokens 2019-05-22 15:44:50 +00:00
lambda 714d8d4ef9 Merge branch 'feature/object-pruning' into 'develop'
Object pruning

See merge request pleroma/pleroma!1181
2019-05-22 11:04:30 +00:00
lambda ff363f70b5 Merge branch 'refactor/keys' into 'develop'
move key generation functions into Pleroma.Keys module

See merge request pleroma/pleroma!1186
2019-05-22 06:28:16 +00:00
William Pitcock 1344c85e2f salmon: fix credo 2019-05-22 05:58:51 +00:00
rinpatch cdac5efd10 Merge branch 'bugfix/account_view_source.note' into 'develop'
MastoAPI AccountView: fill source.note with plaintext version of note

Closes #926

See merge request pleroma/pleroma!1189
2019-05-22 05:39:01 +00:00
Haelwenn (lanodan) Monnier 0e2c215a00
MastoAPI AccountView: fill source.note with plaintext version of note
Closes: https://git.pleroma.social/pleroma/pleroma/issues/926
2019-05-22 07:22:19 +02:00
Sachin Joshi 17bfd000d7 Ability to reset avatar, profile banner and backgroud 2019-05-22 06:47:18 +02:00
kaniini 79c2cef2fb Merge branch 'mongooseim-support' into 'develop'
MongooseIM: Add basic integration endpoints.

See merge request pleroma/pleroma!1172
2019-05-22 04:06:54 +00:00
kaniini ab6e15622b Merge branch 'fix/api-fallback' into 'develop'
Do not fallback to index.html for /api/* routes

Closes #920

See merge request pleroma/pleroma!1182
2019-05-22 04:05:41 +00:00
Sergey Suprunenko 9134848170 Do not truncate DM when it contains newlines and safe_dm_mentions is set to true 2019-05-22 04:04:20 +00:00
William Pitcock 045803346d move key generation functions into Pleroma.Keys module 2019-05-22 03:58:15 +00:00
William Pitcock a023ca004c prune objects task: use Repo.delete_all() 2019-05-22 03:12:48 +00:00
Aaron Tinio 3ab9255eda Respond with a 404 Not implemented JSON error message
when requested API is not implemented
2019-05-22 07:15:52 +08:00
William Pitcock 16b260fb19 add mix task to prune the object database using a configured retention period 2019-05-21 21:38:56 +00:00
William Pitcock 73df9d690d object: fetcher: add support for reinjecting pruned objects 2019-05-21 21:38:56 +00:00
William Pitcock c2b0b82e6a object: add Object.prune() 2019-05-21 21:38:56 +00:00
rinpatch 63b0b7190c MastoAPI: Add GET /api/v1/polls/:id 2019-05-21 20:40:35 +03:00
rinpatch ff61d34502 Accept question objects for conversations 2019-05-21 17:33:54 +03:00
rinpatch 5f67c26baf Accept strings in expires_in because sasuga javascript 2019-05-21 17:30:51 +03:00
rinpatch 0407ffe75f Change validation error status codes to be more appropriate 2019-05-21 17:12:38 +03:00
rinpatch ee68244141 Do not stream out poll replies 2019-05-21 16:58:15 +03:00
rinpatch d7c4d029c8 Restrict poll replies when fetching activiites for context 2019-05-21 14:35:20 +03:00
rinpatch f28747858b Actual vote count in poll view 2019-05-21 14:27:09 +03:00
rinpatch a53d062730 Fix posting non-polls from mastofe 2019-05-21 14:19:03 +03:00
rinpatch aafe30d94e Handle poll votes 2019-05-21 14:12:10 +03:00
rinpatch 3f96b3e4b8 Enforce poll limits and add error handling for MastodonAPI's post endpoint 2019-05-21 10:54:20 +03:00
rinpatch 76a7429bef Add poll limits to /api/v1/instance and initial state 2019-05-21 09:13:10 +03:00
kaniini be6b57193a Merge branch 'trivial/increase-hackney-timeouts' into 'develop'
http: bump connection timeout to 10 seconds

See merge request pleroma/pleroma!1183
2019-05-21 05:15:29 +00:00
William Pitcock c972d0bb14 http: bump connection timeout to 10 seconds 2019-05-21 04:59:15 +00:00
kaniini 94caca924d Merge branch 'fix/prometheus-ecto-error-when-not-configured' into 'develop'
Fix prometheus-ecto error when not configured

Closes #917

See merge request pleroma/pleroma!1180
2019-05-21 01:36:06 +00:00
kaniini d4847b17ca Merge branch 'refactor/add-virtual-thread-muted-field' into 'develop'
Add virtual :thread_muted? field

Closes #901

See merge request pleroma/pleroma!1178
2019-05-20 23:30:19 +00:00
Aaron Tinio f96e9b28bb Fix prometheus-ecto error when not configured 2019-05-21 07:30:18 +08:00
Aaron Tinio eb02edcad9 Add virtual :thread_muted? field
that may be set when fetching activities
2019-05-21 00:35:46 +08:00
Sadposter daeae8e2e7
Move default mascot configuration to config/ 2019-05-20 16:12:55 +01:00
Sadposter 3d0d9e7a56
Use string map for default mascot 2019-05-20 13:10:04 +01:00
Sadposter e81f0fc6d4
Add mascot get/set tests 2019-05-20 12:58:06 +01:00
Sadposter 54e9cb5c2d
Add API endpoints for a custom user mascot 2019-05-20 12:39:23 +01:00
Aaron Tinio 2375e9a95b Add report filtering to MRF.SimplePolicy 2019-05-20 06:02:50 +08:00
rinpatch 6430cb1bf7 Restrict poll replies from fetch queries by default 2019-05-19 17:44:18 +03:00
rinpatch 1d90f9b969 Remove tags/mentions/rich text from poll options because Mastodon and
add custom emoji
2019-05-19 17:06:44 +03:00
rinpatch 5ece901af3 Resolve merge conflicts and remove IO.inspects 2019-05-18 13:37:38 +03:00
rinpatch fd920c8973 Mastodon API: Add support for posting polls 2019-05-18 13:29:28 +03:00
rinpatch 8e9a764dfc Merge branch 'feature/mrf-always-nsfw' into 'develop'
suppress link previews from posts marked sensitive

Closes #865

See merge request pleroma/pleroma!1173
2019-05-18 07:13:18 +00:00
William Pitcock c4a55e167a add Changelog entry 2019-05-17 23:00:14 +00:00
William Pitcock dc08159538 also suppress link previews from posts marked #nsfw 2019-05-17 22:13:24 +00:00
William Pitcock 290f5b2cfe config: make sending the user agent configurable, disable sending the user agent in tests 2019-05-17 20:28:58 +00:00
William Pitcock d3b8cd342f http: request builder: send user-agent when making requests 2019-05-17 19:04:17 +00:00
William Pitcock 0da1233e8e rich media: suppress link previews if post is marked as sensitive 2019-05-17 18:49:43 +00:00
William Pitcock 78588dbd80 mrf: simple policy: mark all posts instead of posts with media as sensitive if they match media_nsfw 2019-05-17 18:49:10 +00:00
lain 075eecec90 Linting. 2019-05-17 18:32:30 +02:00
lain f959bf7aa6 MongooseIM: Add basic integration endpoints. 2019-05-17 18:21:11 +02:00
lain 412a3d8a0f Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into rum-index 2019-05-17 12:26:59 +02:00
lambda e5b34f5e05 Merge branch 'ecto_sql_update' into 'develop'
Dependencies: Update Ecto SQL.

See merge request pleroma/pleroma!1160
2019-05-17 10:21:38 +00:00
lambda 1dcdcd8871 Merge branch 'bugfix/903-mastoapi-relationship-requested' into 'develop'
MastoAPI account_view.ex: requested is false when following is true

Closes #903

See merge request pleroma/pleroma!1169
2019-05-17 10:07:51 +00:00
lambda 46684db84d Update account_view.ex 2019-05-17 09:53:44 +00:00
lain 249b31ffe5 Fix specs. 2019-05-17 11:49:13 +02:00
rinpatch 642a67dd44 Render polls in statuses 2019-05-17 11:44:47 +03:00
Alexander Strizhakov 7ed682213f Fix/902 random compile failing 2019-05-17 07:25:20 +00:00
Haelwenn (lanodan) Monnier 68c75a08e8
MastoAPI account_view.ex: requested is false when following is true
Closes: https://git.pleroma.social/pleroma/pleroma/issues/903
2019-05-17 07:44:09 +02:00
Aaron Tinio 70235ce840 Fix typo: s/"tags"/"tag"/g 2019-05-17 09:02:34 +08:00
kaniini bf84d50c76 Merge branch 'feature/890-add-report-uri' into 'develop'
Feature/890 add report uri

Closes #890

See merge request pleroma/pleroma!1164
2019-05-16 20:11:12 +00:00
Sergey Suprunenko 2c303afc8b Remove duplicated entries in users' following lists 2019-05-16 20:04:08 +00:00
Sergey Suprunenko e2b3a27204 Add Reports to Admin API 2019-05-16 19:09:18 +00:00
feld e190b3022b Merge branch 'fix/domain-unblocked-reblogs' into 'develop'
Fix domain-unblocked reblogs

Closes #892

See merge request pleroma/pleroma!1157
2019-05-16 18:57:14 +00:00
Mark Felder efa61c1610 Move to pleroma.database mix task 2019-05-16 13:14:48 -05:00
Mark Felder ebb0482116 Merge branch 'develop' into conversations-import 2019-05-16 13:11:17 -05:00
lambda fde30aee43 Merge branch 'feature/sql-thread-sat' into 'develop'
SQL thread visibility solver

See merge request pleroma/pleroma!971
2019-05-16 13:44:22 +00:00
Alexander Strizhakov 73ae58fdfa Feature/896 toggling confirmation 2019-05-16 13:23:41 +00:00
Alex S 9d14214eb9 Merge branch 'develop' into feature/890-add-report-uri 2019-05-16 12:54:06 +07:00
Alex S aa11fa4864 add report uri and report to 2019-05-16 12:49:40 +07:00
William Pitcock c31026423c publisher: use the correct queue name for outgoing federation 2019-05-16 04:41:27 +00:00
Aaron Tinio 793f1834d2 Use named binding to conditionally join object 2019-05-16 06:25:14 +08:00
Aaron Tinio 2b6119dfbf Restrict reblogs of activities from blocked domains 2019-05-16 05:53:51 +08:00
rinpatch 62e42b03ab Handle incoming Question objects 2019-05-15 20:10:16 +03:00
William Pitcock a591ab6112 activity pub: remove Ecto SQL query dumps 2019-05-15 16:56:46 +00:00
William Pitcock f09c3afdf5 chase test failures 2019-05-15 16:23:01 +00:00
William Pitcock 0aada88b55 bbs: chase timeline containment patch 2019-05-15 16:02:15 +00:00
William Pitcock 31db31c587 activitypub: visibility: use SQL thread_visibility() function instead of manually walking the thread 2019-05-15 15:54:10 +00:00
William Pitcock de114ffbb0 activitypub: remove contain_timeline() 2019-05-15 15:53:06 +00:00
William Pitcock 0387f52138 activitypub: add restrict_thread_visibility() 2019-05-15 15:53:06 +00:00
lain f168a1cbdc Merge remote-tracking branch 'origin/develop' into conversations-import 2019-05-15 17:47:29 +02:00
kaniini 62516be9c4 Merge branch 'fix/public-option-not-working' into 'develop'
Fix public option not working

Closes #873

See merge request pleroma/pleroma!1143
2019-05-15 15:42:21 +00:00
lambda 4440e23547 Merge branch 'chore/extricate-http-signatures' into 'develop'
switch to pleroma/http_signatures library

See merge request pleroma/pleroma!1155
2019-05-15 15:37:31 +00:00
lain 7a92e701b9 CommonAPI: Visibility refactor. 2019-05-15 16:35:33 +02:00
lain cbb3451023 CommonAPI: Refactor visibility, forbid public to private replies. 2019-05-15 16:30:08 +02:00
lain f1e67bdc31 Search: Add optional rum indexing / searching. 2019-05-15 15:28:01 +02:00
Sachin Joshi ee22fff5ac remove deprecated PleromaFE configuration 2019-05-15 15:29:59 +05:45
Aaron Tinio 70c81b95d0 Pipe requests to public endpoints through EnsurePublicOrAuthenticatedPlug 2019-05-15 05:09:32 +08:00
Aaron Tinio 7b8dc99ef1 Implement Pleroma.Plugs.EnsurePublicOrAuthenticated 2019-05-15 05:09:29 +08:00
William Pitcock 071f78733a switch to pleroma/http_signatures library 2019-05-14 20:03:13 +00:00
Mark Felder 1caa6331ea Group def perform() together to fix the build 2019-05-14 12:33:03 -05:00
lambda fa4bd898f1 Merge branch 'fix/gopher' into 'develop'
gopher: fix rendering of post content (closes #895)

Closes #895

See merge request pleroma/pleroma!1150
2019-05-14 15:41:37 +00:00
William Pitcock 51325fd60c gopher: fix rendering of post content (closes #895) 2019-05-14 15:35:06 +00:00
lambda 692919c7d2 Merge branch 'refactor/use-job-queue-everywhere' into 'develop'
use job queue everywhere

Closes #862

See merge request pleroma/pleroma!1142
2019-05-14 15:27:34 +00:00
William Pitcock ac3a3abf6b clean up follow/block imports a little 2019-05-14 15:07:38 +00:00
kaniini dfd031c26a Merge branch 'fix/pleroma-config-get-when-value-is-false' into 'develop'
Fix Pleroma.Config.get!/1 raising an error when value is false

See merge request pleroma/pleroma!1148
2019-05-14 14:58:45 +00:00
Maksim 52297920e7 Refactoring oauth response. 2019-05-14 14:49:45 +00:00
Egor Kislitsyn b92c004ea8 Reuse query from User.restrict_deactivated/1 2019-05-14 18:29:10 +07:00
Egor Kislitsyn 5e2b491276 Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-05-14 18:15:56 +07:00
Aaron Tinio a18b2c0b12 Fix Pleroma.Config.get!/1 raising an error when value is false 2019-05-14 06:40:59 +08:00
Mark Felder bbacdf2352 Bump Mastodon API level 2019-05-13 15:52:16 -05:00
Mark Felder 498bfdf403 Switch to Jason over Poison 2019-05-13 15:37:38 -05:00
William Pitcock 69a9e0563c user: migrate follow/blocks import to job queue 2019-05-13 19:36:00 +00:00
William Pitcock 57d11ac9db activitypub: move post rich media fetching to job queue 2019-05-13 19:36:00 +00:00
William Pitcock 32d4630c9c user: move initial post fetching to job queue 2019-05-13 19:36:00 +00:00
lambda b14a314ce7 Merge branch 'feature/federator-behaviours' into 'develop'
federator modularization (outgoing)

See merge request pleroma/pleroma!1140
2019-05-13 18:58:04 +00:00
Alexander Strizhakov a2be420f94 differences_in_mastoapi_responses.md: fullname & bio are optionnal
[ci skip]
2019-05-13 18:35:45 +00:00
Sachin Joshi 7701a4c841 Make irreversible field default to false in filters 2019-05-14 00:13:15 +05:45
Mark Felder 786f2c7a84 Update shortdoc description 2019-05-13 11:16:54 -05:00
William Pitcock 44b182732e nodeinfo: gather supported protocol names from federation modules 2019-05-12 19:15:29 +00:00
William Pitcock 28f7f4c6de webfinger: build the response based on enabled federation modules 2019-05-12 19:05:03 +00:00
William Pitcock 80759f012e xml builder: properly escape quotes 2019-05-12 19:04:37 +00:00
William Pitcock 55fa4b812a federator: websub removal 2019-05-12 05:04:24 +00:00
William Pitcock c23276a59a activitypub: publisher: fixups 2019-05-12 05:04:24 +00:00
William Pitcock fedaca15a3 websub: adapt to work as a federator publishing module 2019-05-12 05:04:24 +00:00
William Pitcock 179293e51c salmon: refactor to work as a federator publishing module 2019-05-12 05:04:21 +00:00
William Pitcock 2aee62a456 federator: publisher: only attempt publishing if we know the activity is representable 2019-05-12 05:04:16 +00:00
William Pitcock 69158f1065 ostatus: only as:Public activities are representable 2019-05-12 05:04:16 +00:00
William Pitcock 85377c0b67 federator: move activitypub relaying to the AP publisher module 2019-05-12 05:04:16 +00:00
William Pitcock 676752bb83 federator: hook up Publisher.publish() 2019-05-12 05:04:16 +00:00
William Pitcock f7a6a37c4e federator: remove no longer used :publish_single_ap 2019-05-12 05:04:16 +00:00
William Pitcock 10695a28d2 federator: publisher: add publish() wrapper 2019-05-12 05:04:16 +00:00
William Pitcock 0afc8d7856 federator: publisher: integrate job queue, simplify publish_one logic 2019-05-12 05:04:16 +00:00
William Pitcock ef1f9e8d4e activitypub: split out outgoing federation into a federation module 2019-05-12 05:04:11 +00:00
William Pitcock e7d292f80e federator: add publisher module defining a contract for publishing behaviours 2019-05-12 03:08:50 +00:00
rinpatch b9f84a382a Normalize the object only after ensuring the activity type is Create 2019-05-12 03:01:42 +03:00
kaniini 131f883207 Merge branch 'fix/ostatus-activity-representer-depends-on-emebeded-objects' into 'develop'
Fix get_in_reply_to in OStatus' activity representer depending on embedded objects

See merge request pleroma/pleroma!1129
2019-05-11 16:52:26 +00:00
lain 01c45ddc9e Search: Use RUM index. 2019-05-11 11:26:46 +02:00
Sachin Joshi f01f995816 make url uniform in admin api 2019-05-11 14:46:00 +05:45
feld c953ae8c3d Initial bundle of basic AdminFE
Due to CSP headers we only allow connecting to self. If you want to
host AdminFE on a separate domain without CSP headers you will be able
to connect to any public Pleroma host.
2019-05-11 01:34:17 +00:00
rinpatch 1d78e42fd4 Remove get_in_reply_to calls in some functions because the result is unused and it does not have any side-effects 2019-05-10 13:49:34 +03:00
Francis Dinh 2a54e8c1f5 Use "repeated" instead of "retweeted" for repeated statuses in Twitter API
This makes it consistent with the language used in Pleroma FE (at least
in English).

Resolves https://git.pleroma.social/pleroma/pleroma-fe/issues/533
2019-05-09 19:58:34 -04:00
rinpatch e4523c3010 Fix get_in_reply_to in OStatus' activity representer depending on embedded objects 2019-05-09 22:27:00 +03:00
lain a33bec7d58 Conversations: Import order, import as read. 2019-05-09 16:39:28 +02:00
lain e6d7f8d223 Credo fixes. 2019-05-08 18:19:20 +02:00
lain 6d19bb4eae Conversations: Add mix task to 'import' old DMs. 2019-05-08 18:09:07 +02:00
lain a4598b5e8b Visibility: Make it more resilient. 2019-05-08 18:08:50 +02:00
lain 920bd47055 ActivityPub: Remove leftover printf debugging. 2019-05-08 17:40:24 +02:00
lain fcf2f38d20 Conversations: Add a function to 'import' old DMs. 2019-05-08 17:37:00 +02:00
Alexander Strizhakov bfeb33e951 Merge develop
Merge conflict in lib/pleroma/activity.ex
2019-05-08 14:34:36 +00:00
Alex S a76e2622ca emoji dowload follow redirects 2019-05-08 19:05:25 +07:00
Maksim 799e1f48b5 Refactoring functions for dealing with oauth scopes. 2019-05-08 10:52:13 +00:00
kaniini 14deed7f7d Merge branch 'refactor/preload-bookmarks-with-activities' into 'develop'
Optimize bookmarks by preloading them with activities

Closes #861

See merge request pleroma/pleroma!1121
2019-05-07 19:37:41 +00:00
William Pitcock d64c3b604e twitterapi: use order constraint to force descending order 2019-05-07 19:33:25 +00:00
William Pitcock 6020ff3fb6 activitypub: add optional order constraint to timeline query builder 2019-05-07 19:33:22 +00:00
rinpatch 4c5125dedc Remove bookmarks assoc and add a fake bookmark assoc instead 2019-05-07 19:33:22 +00:00
rinpatch be067ec2ab Use with_preloaded_bookmark in create_by_object_ap_id_with_object 2019-05-07 19:33:22 +00:00
rinpatch 3a7c14645e - Actually use preloaded bookmarks in views
- Preload bookmarks in bookmark timeline
- Rework bookmark preload tests
2019-05-07 19:33:22 +00:00
rinpatch f841eb7cdb Preload bookmarks wherever the object is preloaded 2019-05-07 19:33:22 +00:00
rinpatch 06947c9147 Remove bookmarks assoc 2019-05-07 19:33:22 +00:00
kaniini a1a0df19c4 Merge branch 'docs/MRF-modules' into 'develop'
Documentation: MRF Modules

See merge request pleroma/pleroma!1122
2019-05-07 16:15:27 +00:00
William Pitcock e71ddf23ba containment: remove pointless moduledoc line 2019-05-07 16:11:22 +00:00
lambda 238dd72fad Merge branch 'conversations_three' into 'develop'
Conversations once more.

See merge request pleroma/pleroma!1119
2019-05-07 14:43:21 +00:00
Egor Kislitsyn 1557b99beb Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-05-07 16:51:11 +07:00
Maksim 1040caf096 fix format
Modified-by: Maksim Pechnikov <parallel588@gmail.com>
2019-05-06 17:51:03 +00:00
lambda aacac9da0b Merge branch 'feature/bbs' into 'develop'
BBS / SSH

See merge request pleroma/pleroma!997
2019-05-06 17:17:03 +00:00
Alexander Strizhakov ce6ca0fefe Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into feature/845-improve-status-deletion 2019-05-06 16:45:22 +00:00
Haelwenn (lanodan) Monnier 69a5074893
Remove H1 in @moduledoc 2019-05-06 04:53:12 +02:00
Haelwenn (lanodan) Monnier e41a2f98d5
mrf/tag_policy.ex: Add some documentation
mrf_tag:disable-remote-subscription exact way of working is quite
unclear to me. Is it the requester that is denied if they have a tag,
or is it the requestee if they have one?
2019-05-06 04:53:11 +02:00
Haelwenn (lanodan) Monnier af62ace954
Add short documentation on every MRF Policy 2019-05-06 04:49:50 +02:00
lain eb0fb73ddb BBS: Credo fixes. 2019-05-04 15:47:50 +02:00
lain c9d1cb2dce BBS: Use cached user fetcher. 2019-05-04 15:08:07 +02:00
lain 4c76f49e60 BBS: small fixes. 2019-05-04 15:06:18 +02:00
lain 6ad8ddfd29 Merge remote-tracking branch 'origin/develop' into feature/bbs 2019-05-04 15:00:45 +02:00
rinpatch d089ff2460 Merge branch 'fix/embeded-relationship-in-follows' into 'develop'
Fix embeded relationships in Mastodon API

See merge request pleroma/pleroma!1118
2019-05-03 20:36:13 +00:00
rinpatch 9907e974ca Merge branch 'fix-search-speed' into 'develop'
Search: Add fts index on objects table.

See merge request pleroma/pleroma!1120
2019-05-03 18:35:02 +00:00
lain 0e37fddd5a Search: Add fts index on objects table. 2019-05-03 19:21:09 +02:00
Haelwenn (lanodan) Monnier b5ad1715b2
MastoAPI: profile update with emoji_map 2019-05-03 16:41:23 +02:00
Haelwenn (lanodan) Monnier 46bbf9e1cf
TwitterAPI: profile update with emoji_map 2019-05-03 16:30:24 +02:00
Haelwenn (lanodan) Monnier 85434669bb
Web.TwitterAPI.UserView: Also view local user emojis 2019-05-03 16:27:51 +02:00
Haelwenn (lanodan) Monnier 2f76a40d02
formatter.ex: Add get_emoji_map/1 2019-05-03 16:27:50 +02:00
Haelwenn (lanodan) Monnier d70af32127
Pleroma.User: remove emojify on parse_bio 2019-05-03 16:27:50 +02:00
Haelwenn (lanodan) Monnier 85b5c60694
Pleroma.Formatter: width/height to class=emoji 2019-05-03 16:25:58 +02:00
lain c42ded13a2 Credo fixes. 2019-05-03 13:53:17 +02:00
feld acb04306b6 Standardize construction of websocket URL
This follows up on the change made in d747bd98
2019-05-03 11:45:04 +00:00
lain a0c755cc4a MastodonApi: Bump api level. 2019-05-03 13:40:43 +02:00
lain 81d1aa424d Streamer: Stream out Conversations/Participations. 2019-05-03 13:39:14 +02:00
rinpatch 38b79461df Fix embeded relationships in Mastodon API
Currently some endpoints render accounts without for user resulting in
embedded relationship being empty. It causes bugs in followers/following
tab in pleroma-fe but I fixed it for other endpoints as well just in
case
2019-05-03 00:49:17 +03:00
lambda 497d34b825 Merge branch 'iss-849' into 'develop'
Parse access_token from body parameters and URL parameters

See merge request pleroma/pleroma!1103
2019-05-02 14:17:17 +00:00
AkiraFukushima 533d8cd581 Parse access_token from body parameters and URL parameters 2019-05-02 21:04:00 +09:00
Mark Felder 3c4cab9be1 Merge branch 'develop' into update-oauth-template 2019-05-01 12:32:17 -05:00
Mark Felder 9a98f48ec3 Remove incorrect statement about valid characters 2019-05-01 12:29:48 -05:00
Roman Chvanikov 8af55728e4 Fix tests 2019-05-01 19:03:55 +02:00
lain 45f790becc Merge remote-tracking branch 'origin/develop' into conversations_three 2019-05-01 18:40:41 +02:00
Maksim c854bff8f5 Refactored Pleroma.Web.Auth.Authenticator 2019-05-01 13:28:04 +00:00
rinpatch 51e26f14f7 Remove redundant ensure_scrubbed_html
It is never used as handling for fake and non-fake activities was merged
into one function above it
2019-05-01 13:52:44 +03:00
lambda 0bcdaf378e Merge branch 'bugfix/web-notification-special-char' into 'develop'
fix the web push notification with special char for status created

See merge request pleroma/pleroma!1092
2019-05-01 10:45:32 +00:00
Alex S f11e7037c2 test fixes 2019-05-01 16:09:53 +07:00
Alex S bdfa3a6fa8 Merging with develop
Conflicts:
lib/pleroma/web/activity_pub/transmogrifier.ex
lib/pleroma/user.ex
2019-05-01 12:29:33 +07:00
Sachin Joshi 85fa2fbce4 add scrubber for html special char 2019-05-01 01:37:17 +05:45
Sachin Joshi cd6da3606b Merge branch 'develop' into bugfix/web-notification-special-char 2019-05-01 00:21:30 +05:45
rinpatch ce4825c1dc Do not normalize objects in stream_out unless the activity type is
Create

Saves quite a bit of time with delete activities because they would
always query the db
2019-04-30 20:21:28 +03:00
lain b0951a8849 WebPush: Use Object.normalize, rewrite tests so they test reality. 2019-04-29 18:15:30 +02:00
rinpatch 0fd176b990 Merge branch 'fix/add-default-scope-mastoapi' into 'develop'
Add default_scope to /api/v1/update_credentials

See merge request pleroma/pleroma!1100
2019-04-29 06:45:18 +00:00
kaniini 292c69481b Merge branch 'regression/rights-only-for-admin' into 'develop'
Fix `rights` in TwitterAPI's user entity being present only for Admins/Moderators

See merge request pleroma/pleroma!1102
2019-04-28 23:05:14 +00:00
rinpatch 61ca2f7a4e Fix rights in TwitterAPI's user entity being present only for
Admins/Moderators

In !1093 I reused `maybe_with_role` for `rights` object, however I
missed that `maybe_with_role` is called only for admins/moderators.
2019-04-28 19:42:43 +03:00
rinpatch ce3789e39a Add default_scope to /api/v1/update_credentials 2019-04-27 23:55:54 +03:00
rinpatch c3e9fcf098 Fix bookmarks depending on embeded object and move checking if the
status is bookmarked to SQL
2019-04-27 23:06:46 +03:00
kaniini 002ea343f8 Merge branch 'feature/bbcode' into 'develop'
BBCode support (backend)

See merge request pleroma/pleroma!1097
2019-04-27 07:44:24 +00:00
William Pitcock 501af917b5 add support for bbcode 2019-04-26 22:35:02 +00:00
lambda 4de5fef1f8 Merge branch 'feature/807-bookmark-endpoint-extension' into 'develop'
Feature/807 bookmark endpoint extension

Closes #807

See merge request pleroma/pleroma!1059
2019-04-26 11:59:47 +00:00
kaniini 48f68fd133 Merge branch 'feature/mastoapi-new-config' into 'develop'
Fix leaking private configuration parameters in Mastodon and Twitter APIs, and add new configuration parameters to Mastodon API

This patch:
- Fixes `rights` in TwitterAPI ignoring `show_role` 
- Fixes exposing default scope of the user to anyone in Mastodon API
- Extends Mastodon API to be able to show and set `no_rich_text`, `default_scope`, `hide_follows`, `hide_followers`, `hide_favorites` (requested by the FE in #674)

Sorry in advance for 500 line one commit diff, I should have split it up to separate MRs

See merge request pleroma/pleroma!1093
2019-04-26 02:41:35 +00:00
Mark Felder 24c3e2db2c Add mediaproxy whitelist capability 2019-04-25 18:11:47 -05:00
rinpatch dfc8425659 Move settings to Source subentity 2019-04-25 10:31:14 +03:00
Alex S a825056d4d test fixes 2019-04-25 14:09:57 +07:00
Alex S 85953c0836 fixes for tests 2019-04-25 13:46:40 +07:00
Alex S 229ce6abbc migration without using old field name
removing old field from db, after bookmarks migration
2019-04-25 13:42:10 +07:00
Alex S 3c2ae80008 unused 2019-04-25 13:42:10 +07:00
Egor Kislitsyn c157e27a00 Merge branch 'develop' into feature/disable-account 2019-04-25 13:41:10 +07:00
Alex S 1258128f4f favourites add bookmark display 2019-04-25 13:38:24 +07:00
Alex S 324c9c8ab5 migrate user.bookmarks to separate table 2019-04-25 13:38:24 +07:00
Alex S 73d01857e3 bookmarks in separate table 2019-04-25 13:38:24 +07:00
William Pitcock 0fd0ffcd76 activitypub: transmogrifier: send reject follow if following does not succeed 2019-04-25 00:48:45 +00:00
rinpatch 4baea6e6d9 Fix leaking private configuration parameters in Mastodon and Twitter APIs, and add new configuration parameters to Mastodon API
This patch:
- Fixes `rights` in twitterapi ignoring `show_role`
- Fixes exposing default scope of the user to anyone in Mastodon API
- Extends Mastodon API to be able to show and set `no_rich_text`, `default_scope`, `hide_follows`, `hide_followers`, `hide_favorites` (requested by the FE in #674)

Sorry in advance for 500 line one commit diff, I should have split it up to separate MRs
2019-04-24 20:01:42 +03:00
Sachin Joshi 963d5774af fix the status notification with special char 2019-04-24 07:06:17 +05:45
kaniini 030a7876b4 Merge branch 'security/fix-html-class-scrubbing' into 'develop'
html: lock down allowed class attributes to only those related to microformats

See merge request pleroma/pleroma!1090
2019-04-23 23:07:56 +00:00
William Pitcock f5535e5743 html: lock down allowed class attributes to only those related to microformats 2019-04-23 23:03:45 +00:00
Sergey Suprunenko 9dd36e5bcb Extend Mastodon API with public endpoint for getting Favorites timeline of any user (#789) 2019-04-23 02:47:43 +00:00
kaniini 10c40e13d2 Merge branch 'mastoapi/add-in-reply-to-screen-name' into 'develop'
Add `in_reply_to_account_acct` to MastoAPI status entity

See merge request pleroma/pleroma!1086
2019-04-23 02:43:53 +00:00
kaniini aa9d378985 Merge branch 'fix/normalize-activities' into 'develop'
Normalize acitvities instead of objects inside them

See merge request pleroma/pleroma!1085
2019-04-23 02:43:26 +00:00
Alex S d35246c449 added healthcheck setting to instance config 2019-04-22 17:00:06 +07:00
rinpatch f60d072bbb Add pleroma.in_reply_to_account_acct to MastoAPI status entity 2019-04-22 11:54:27 +03:00
rinpatch d21d921def Replace Object.normalize(activity.data[object] with Object.normalize(acitivty) to benefit from preloading 2019-04-22 11:27:29 +03:00
rinpatch 952a4ae68e Fix unclosed ` and put synopsis into a code block in pleroma.emoji mix
task docs
2019-04-22 11:02:31 +03:00
Egor b9cdf6d3b9 Use User.get_cached* everywhere 2019-04-22 07:20:43 +00:00
Alexander Strizhakov 88f0be9693 Feature/826 healthcheck endpoint 2019-04-22 07:19:53 +00:00
Egor Kislitsyn e8c2f9a73a Merge remote-tracking branch 'pleroma/develop' into feature/disable-account 2019-04-22 13:08:30 +07:00
kaniini 7fcbda702e Merge branch 'rework-emoji-management' into 'develop'
Remove finmoji and add a way to download emojis in packs

Closes #817 and #821

See merge request pleroma/pleroma!1073
2019-04-22 02:07:19 +00:00
Ekaterina Vaartis 3cefdc62e0 Fix emoji.txt / custom_emoji.txt / shortcode_globs handling 2019-04-21 23:07:14 +03:00
Ekaterina Vaartis ba19ba8a88 Formatting 2019-04-21 22:33:54 +03:00
Ekaterina Vaartis 153f5375a6 Replace MD5 with SHA256 for emoji pack verification 2019-04-21 22:28:41 +03:00
Ekaterina Vaartis d5c0fd35e1 Wrap the docstrings to 70 characters 2019-04-21 22:16:46 +03:00
Roman Chvanikov 4908e0eeee Fix Credo warning 2019-04-21 23:24:33 +07:00
Roman Chvanikov eeb093631c Fix Credo warning 2019-04-21 23:19:36 +07:00
Roman Chvanikov e56afefef9 Refactor conversation function in MastodonAPIController to use a View 2019-04-21 23:14:27 +07:00
Roman Chvanikov 2662bea4e0 Add accounts and last_status to conversation read response 2019-04-21 20:26:13 +07:00
Ivan Tashkinov 9256d2d4b4 [#923] Refactored OAuthController#authorize definitions, added test. 2019-04-21 10:51:32 +03:00
eugenijm 375fd21055 Set correct values in the MastoAPI reblog status view 2019-04-21 05:40:22 +03:00
Roman Chvanikov 24073f829f Refactor query to return only 1 message instead of 20 2019-04-21 00:40:41 +07:00
Ekaterina Vaartis 8f93d4c423 Remove most finmoji mentions where appropriate 2019-04-20 15:42:14 +03:00
Ekaterina Vaartis 53a3e61016 Fix priv/static/instance/static to be just instance/static
It was a misunderstanding
2019-04-20 15:08:51 +03:00
Ekaterina Vaartis 31cff7dbca Document the pleroma.emoji task 2019-04-20 15:06:07 +03:00
Ekaterina Vaartis 1e311d6662 Add a newline at the end of pack in ls-packs 2019-04-20 11:34:03 +03:00
Ekaterina Vaartis 52ed287e87 Fix incorrect multiple emoji tag handling introduced in initial impl 2019-04-20 11:17:17 +03:00
Ekaterina Vaartis 9bd5e2dec9 Make emoji default_manifest a config option 2019-04-20 11:17:17 +03:00
Ekaterina Vaartis 98d4b3de53 Treat the manifest path as a file if it doesn't start with http 2019-04-20 11:17:17 +03:00
Ekaterina Vaartis aaaa428512 mix format 2019-04-20 11:17:17 +03:00
Ekaterina Vaartis a141f0807b Assume packs without emoji.txt only have emoji pictures, unhardcode
unhardcode: remove hardcoded /instance/static and actually use the config option
as it is used in other places.

packs without emoji.txt: these are now assumed to have .png files that
are all emojis, their names are used as shortcodes
2019-04-20 11:17:17 +03:00
Ekaterina Vaartis eff725c3af Add a task to generate emoji packs 2019-04-20 11:17:17 +03:00
Ekaterina Vaartis 1e44b5478d Remove useless comment 2019-04-20 11:17:17 +03:00
Ekaterina Vaartis c5b7286b5f Move helper functions of emoji manager task down in the file 2019-04-20 11:17:17 +03:00
Ekaterina Vaartis 06db3ee1a8 Add MD5 verification for emoji pack source 2019-04-20 11:17:17 +03:00