Commit graph

1505 commits

Author SHA1 Message Date
William Pitcock
275c42e438 user: filter out duplicate follow requests 2018-08-05 01:11:13 +00:00
William Pitcock
0ee29994a5 formatter: preserve case of hashtags
when generating hashtag links, we used the casefolded version that we use in
the link URLs, instead of the original version.

accordingly, adjust the formatter to use the original text for the links, while
keeping the casefolded version for the URLs.
2018-08-05 00:37:38 +00:00
Hakaba Hitoyo
f72cfada1a add suggestions/web config 2018-08-02 18:03:35 +09:00
William Pitcock
3be58ad34e activitypub: actually send digest header when federating
this is needed for backwards compatibility with non-digest pleroma instances
2018-08-01 10:32:02 +00:00
Haelwenn (lanodan) Monnier
d5091c3175
Allow additionnal schemes in the config 2018-08-01 02:52:42 +02:00
William Pitcock
8da406afa2 activitypub: verify remote http signature digests by recomputing the digest and replacing the digest header 2018-07-31 23:24:30 +00:00
William Pitcock
2890aef9e8 activitypub: add digest header to outbound messages and sign it 2018-07-31 23:24:30 +00:00
Haelwenn (lanodan) Monnier
3623504e5d
[Pleroma.Formatter]: Add support for non-HTTP schemes in URIs
The call to the regex in add_links is there just to be sure it’s a legal URI, it can be removed if you want to get more performance.

The URI Schemes list is sorted, but with http(s) at the start (in case it might make it faster for common links).

Closes: https://git.pleroma.social/pleroma/pleroma/issues/127
2018-07-30 22:01:48 +02:00
Tristan Mahé
bc2668bb63 Merge remote-tracking branch 'upstream/develop' into feature/filter_exif 2018-07-19 17:44:18 -07:00
Hakaba Hitoyo
cc9c062b55 merge 2018-07-19 17:42:00 +09:00
lambda
41b0ecef95 Merge branch 'tests/plume' into 'develop'
Articles/Notes with a actor list outside object

See merge request pleroma/pleroma!252
2018-07-19 07:35:34 +00:00
lambda
54963a6379 Merge branch 'bugfix/activitystreams-notice-urls' into 'develop'
ostatus: return AS2 objects on /notice and /activities URLs like with /objects.

Closes #206

See merge request pleroma/pleroma!251
2018-07-19 07:31:33 +00:00
lambda
6f23fb53d3 Merge branch 'feature/fe-configuration' into 'develop'
serverside frontend configuration

See merge request pleroma/pleroma!256
2018-07-19 07:31:10 +00:00
Hakaba Hitoyo
b12d17d2ce configurable timeout 2018-07-18 13:36:20 +09:00
Hakaba Hitoyo
e4dd58307a better configuration 2018-07-18 09:58:59 +09:00
William Pitcock
b23630076f TwitterAPI: present pleroma frontend config in API 2018-07-17 15:46:24 +00:00
William Pitcock
cf219b6add config: make instance description configurable 2018-07-17 15:46:23 +00:00
Hakaba Hitoyo
5b4a21317d correct error message 2018-07-17 17:29:18 +09:00
Hakaba Hitoyo
8ff336e02a debug 2018-07-17 17:00:14 +09:00
Hakaba Hitoyo
2b7b1b3e6b add suggestionsThirdPartyEngine into /nodeinfo/2.0.json 2018-07-17 16:56:30 +09:00
Hakaba Hitoyo
d76f0d87be do nothing if configuration is skipped 2018-07-17 16:45:18 +09:00
Hakaba Hitoyo
df3233e7e7 improve getting host name 2018-07-17 13:20:58 +09:00
William Pitcock
99c0252314 mastodon api: support descriptions in media api, add PUT endpoint for updating metadata about a media upload 2018-07-17 03:40:47 +00:00
William Pitcock
cd19d37a90 mastodon api: use object name as alt text 2018-07-17 03:40:46 +00:00
William Pitcock
f10291a1d3 upload: use generic Document object type instead of Image (mastodon compatibility)
Mastodon does not use the object name as alt text when the object is an Image.
2018-07-17 03:40:45 +00:00
hakabahitoyo
e7c580828c format 2018-07-15 20:36:26 +09:00
hakabahitoyo
2eeaf01627 id field 2018-07-14 14:03:30 +09:00
hakabahitoyo
127882a5d5 configurable 2018-07-14 11:41:09 +09:00
hakabahitoyo
eb0afda3a7 http access to third party user recommendation 2018-07-14 10:04:37 +09:00
Tristan Mahé
5469fb9561 Merge remote-tracking branch 'upstream/develop' into feature/filter_exif 2018-07-13 11:14:37 -07:00
hakabahitoyo
3812b627ca better mock /api/v1/suggestions 2018-07-14 00:52:23 +09:00
hakabahitoyo
4a21c1b343 mock /api/v1/suggestions 2018-07-14 00:44:18 +09:00
hakabahitoyo
f944f8157a /api/v1/suggestions endpoint 2018-07-14 00:21:38 +09:00
Haelwenn (lanodan) Monnier
7501481db4
[Pleroma.Web.ActivityPub.Transmogrifier] Add Person finding 2018-07-12 23:37:07 +02:00
Haelwenn (lanodan) Monnier
8472fba2a7
[Pleroma.Web.ActivityPub.Transmogrifier]: Fix actor key outside of object
The code here is copied from feature/peertube by lain.

Co-authored-by: lain <lain@soykaf.club>
2018-07-12 23:37:00 +02:00
William Pitcock
0899588e4d ostatus: return AS2 objects on /notice and /activities URLs like with /objects. 2018-07-12 17:15:47 +00:00
lambda
d93789dfde Merge branch 'feature/object-normalization' into 'develop'
object normalization

See merge request pleroma/pleroma!238
2018-07-12 16:48:15 +00:00
lambda
ceffb91065 Merge branch 'feature/mediaproxy-nodeinfo' into 'develop'
[Pleroma.Web.Nodeinfo.NodeinfoController]: add mediaProxy metadata

Closes #229

See merge request pleroma/pleroma!235
2018-07-12 16:47:19 +00:00
lambda
b1fcfcfae1 Merge branch 'bugfix/activitypub-object-actor' into 'develop'
activitypub: more robustly handle object-to-actor associations

See merge request pleroma/pleroma!250
2018-07-12 16:46:50 +00:00
William Pitcock
590d4df77c activitypub: more robustly handle object-to-actor associations 2018-07-12 16:39:03 +00:00
William Pitcock
b832df1e15 formatting 2018-07-12 16:12:54 +00:00
William Pitcock
f03e57f764 twitter api: activity representer: add summary field for testsuite 2018-07-12 16:12:16 +00:00
William Pitcock
152a526237 twitter api: refactor activity html generation, add support for Articles 2018-07-12 16:11:42 +00:00
William Pitcock
3b799f22b7 twitterapi: activity view: expose message summary text 2018-07-12 16:11:36 +00:00
lambda
b806aa36c8 Update nodeinfo_controller.ex 2018-07-12 06:00:55 +00:00
lambda
fe4387077a Merge branch 'feature/default-scope' into 'develop'
default scope setting

See merge request pleroma/pleroma!239
2018-07-12 05:59:12 +00:00
lambda
4a922305af Merge branch 'feature/article-support' into 'develop'
article support (plume, etc)

See merge request pleroma/pleroma!240
2018-07-12 05:58:39 +00:00
lambda
14054dd582 Merge branch 'feature/auto-shortcodes' into 'develop'
Feature: automatic shortcodes for emoji

See merge request pleroma/pleroma!245
2018-07-12 05:56:29 +00:00
lambda
33b0334216 Merge branch 'bugfix/status-url-field' into 'develop'
[Pleroma.Web.MastodonAPI.StatusView]: Fill the url field for statuses

Closes #231

See merge request pleroma/pleroma!246
2018-07-12 05:55:20 +00:00
William Pitcock
8546551257 activitypub: switch to using x509 representation for public keys instead of pkcs#1 2018-07-12 03:30:22 +00:00
Haelwenn (lanodan) Monnier
4326cb9920
[Pleroma.Web.Nodeinfo.NodeinfoController]: add mediaProxy metadata
Closes: https://git.pleroma.social/pleroma/pleroma/issues/229
2018-07-12 02:06:46 +02:00
Haelwenn (lanodan) Monnier
7a351cb36f
[Pleroma.Web.MastodonAPI.StatusView]: Fill the url field for statuses
Closes: https://git.pleroma.social/pleroma/pleroma/issues/231
2018-07-12 01:57:25 +02:00
Haelwenn (lanodan) Monnier
835345754d
/web/* template: Add class system-font 2018-07-03 17:26:47 +02:00
Jorty
748fff6544 Fix auto-shortcode emoji
Emoji were broken due to `Pleroma.Formatter` not knowing about the
auto-shortcode emoji. This moves that logic from
`Pleroma.Web.TwitterAPI.UtilController` to `Pleroma.Formatter`.

Additionally, it's now possible to specify multiple shortcode globs, and
the default globs were changed to `["/emoji/custom/**/*.png"]`, since
that's in the .gitignore and the files there would have to be shortcode
emoji anyway.
2018-06-30 21:31:08 -04:00
Jorty
c171f9790b Move emoji glob setting to config.exs
Also, a bit of formatting, and the glob includes an "/emoji/" prefix to
make it more intuitive to users
2018-06-30 17:58:44 -04:00
Jorty
0bfbf15b37 Allow emojis to be added automatically 2018-06-30 17:58:37 -04:00
William Pitcock
971bb4f2bd activity interpretation: formatting 2018-06-27 13:38:19 +00:00
William Pitcock
66819ea784 twitter api: use ActivityView.render_content() where appropriate instead of duplicating the logic 2018-06-27 13:38:07 +00:00
William Pitcock
ea982e7503 mastodon api: add interpreter for Article activity types 2018-06-27 13:38:00 +00:00
William Pitcock
121c1f6230 twitter api: refactor activity html generation, add support for Articles 2018-06-27 13:37:53 +00:00
William Pitcock
bd479606ba utils: make_create_data: add support for Article objects 2018-06-27 13:37:35 +00:00
William Pitcock
c42f28b82c transmogrifier: accept Article activities 2018-06-27 13:37:26 +00:00
William Pitcock
2f14996d9a twitter api: allow setting default_scope 2018-06-27 13:15:55 +00:00
William Pitcock
dcdf7b6686 twitter api: user view: show default message scope if known 2018-06-27 13:15:50 +00:00
William Pitcock
4f6de34f4f mastodon api: use info["default_scope"] if available for post scope 2018-06-27 13:15:42 +00:00
William Pitcock
7c63e70de1 activitypub: use Activity.normalize() in several places instead of using Activity.get_by_ap_id() directly. 2018-06-27 13:08:12 +00:00
William Pitcock
6f4ca7ddf7 ostatus: use Activity.normalize() instead of directly using Activity.get_by_ap_id(). 2018-06-27 13:08:05 +00:00
William Pitcock
5b240c3b18 federator: use Activity.normalize() instead of directly using Activity.get_by_ap_id(). 2018-06-27 13:07:55 +00:00
William Pitcock
bc05548370 ostatus: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:45 +00:00
William Pitcock
49da04c509 common api: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:35 +00:00
William Pitcock
15d624e077 activitypub: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:29 +00:00
William Pitcock
fb04fecfb4 streamer: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:23 +00:00
William Pitcock
47189531c5 user: use Object.normalize() instead of Object.get_by_ap_id() directly. 2018-06-27 13:07:17 +00:00
William Pitcock
b036a19c21 activity: add normalize() to find a complete activity given either URI or partial structure 2018-06-27 13:07:12 +00:00
William Pitcock
a200943240 object: add helper functions to handle various forms of a given object and return a normalized one 2018-06-27 13:06:52 +00:00
Tristan Mahé
dc8ace29d1 use the correct end file 2018-06-26 15:09:45 -07:00
Tristan Mahé
ca63585a32 maybe I should learn proper elixir ;D 2018-06-26 14:35:35 -07:00
Tristan Mahé
d8d43f1173 do the filtering 2018-06-26 14:03:23 -07:00
Tristan Mahé
c67cf8e9af format... 2018-06-26 13:49:57 -07:00
Tristan Mahé
cb21bf5fc2 filter exif data #187 2018-06-26 13:45:47 -07:00
Haelwenn (lanodan) Monnier
beb940a57e
[Pleroma.Web.MastodonAPI.MastodonAPIController]: Add rights to initial_state
Related to https://git.pleroma.social/pleroma/mastofe/issues/20
2018-06-26 20:48:35 +02:00
lambda
fc012491a5 Merge branch 'fix/mutes.json-emptyarray' into 'develop'
Return empty array from /api/qvitter/mutes.json

See merge request pleroma/pleroma!234
2018-06-25 08:45:42 +00:00
lambda
dfc96f222c Merge branch 'feature/configurable-blocks' into 'develop'
Add more configurability to how blocks work

See merge request pleroma/pleroma!203
2018-06-25 06:12:29 +00:00
squidboi
ea214b8ba6
combined outgoing_blocks with statement 2018-06-24 23:05:44 -07:00
Vivian Lim
6160a1b3c0 mix format 2018-06-24 15:24:41 -07:00
Vivian Lim
1299bccc7d return unquoted empty array from /api/qvitter/mutes.json 2018-06-23 23:20:30 -07:00
Vivian Lim
6316003946 fixes- found that TwitterAPI.Controller adds .json suffix already 2018-06-23 23:05:54 -07:00
Vivian Lim
f2badd4424 return empty array for api/qvitter/mutes.json queries instead of html 2018-06-23 22:21:39 -07:00
squidboi
c4038ede07
fix mind-crushingly dumb syntax error 2018-06-23 14:32:00 -07:00
squidboi
f4990283de
change moved attributes into normal variables 2018-06-23 14:27:07 -07:00
squidboi
4e099fcfa9
move configurable module attributes into relevant functions 2018-06-23 14:16:08 -07:00
Haelwenn (lanodan) Monnier
5a4a45b875
[Pleroma.Web.MastodonApi.MastodonApiController] Add initial_state.meta.max_toot_chars 2018-06-23 16:22:49 +02:00
Haelwenn (lanodan) Monnier
a05c0ff61d
[Pleroma.Web.MastodonApi.MastodonApiController] Add /api/v2/search 2018-06-23 16:22:47 +02:00
Haelwenn (lanodan) Monnier
359093d73b
Fake 2.4.0 API 2018-06-23 16:12:57 +02:00
Haelwenn (lanodan) Monnier
c45133377a
lib/pleroma/web/activity_pub/mrf/simple_policy.ex: mix format
Hnng!
2018-06-23 16:12:57 +02:00
Francis Dinh
082920044a Normalize file extension for uploaded files 2018-06-21 14:04:12 -04:00
William Pitcock
60d6038be5 mrf simple: add accept lists
accept lists supplement reject lists by requiring that any message accepted by contained
by the accept list.

in other words, this functionality can be used to implement instances similar to
awoo.space.
2018-06-19 21:28:24 +00:00
lambda
90cf75f4a7 Merge branch 'features/column_media_streaming' into 'develop'
Add streaming to media tabs of federated and local TLs

See merge request pleroma/pleroma!225
2018-06-19 09:50:05 +00:00
lambda
be800d7936 Merge branch 'bugfix/block-follow-relationships' into 'develop'
fix follow relationship leaks when blocked

See merge request pleroma/pleroma!230
2018-06-19 09:42:45 +00:00
William Pitcock
056305dfa7 user: add helper function to fetch a user given only an ap_id (fix tests) 2018-06-19 08:31:06 +00:00
lambda
db0731b6ac Merge branch 'feature/exclude-replies-filter' into 'develop'
activitypub: support filtering activities by whether or not they are a reply (closes #109)

Closes #109

See merge request pleroma/pleroma!226
2018-06-19 05:15:11 +00:00
William Pitcock
320ca7b11e user: when processing a block in User.block(), ensure all follow relationships are broken
this is needed for activitypub conformance

ref #213
2018-06-19 00:59:26 +00:00
William Pitcock
c95941e64d activitypub transmogrifier: fix handling of contentMap. 2018-06-18 22:14:50 +00:00
William Pitcock
7e0f62acee object: add helper functions to handle various forms of a given object and return a normalized one 2018-06-18 05:27:10 +00:00
William Pitcock
6f384d35dd ostatus: we need to include the original author of a message as a mention
this is due to the use of activity.recipients which may not necessarily contain the original
author if the actors are not following each other.
2018-06-18 05:27:09 +00:00
William Pitcock
591c82620e activitypub: filter destination list for announce activities differently than normal (closes #164) 2018-06-18 04:36:25 +00:00
William Pitcock
4f589998ee activitypub: support filtering activities by whether or not they are a reply (closes #109) 2018-06-18 03:21:32 +00:00
Haelwenn (lanodan) Monnier
b670d4d683
MastodonAPI: Add streaming to media tabs of federated and local TLs 2018-06-17 16:17:15 +02:00
Henry Jameson
0b1ca6a584 Token-generating task 2018-06-17 14:30:07 +03:00
squidboi
2e294ee44a Merge branch 'develop' into feature/configurable-blocks 2018-06-16 15:37:16 -07:00
lambda
1ea4a18ad8 Merge branch 'feature/configure-mrf-rejectnonpublic' into 'develop'
Configs for mrf_rejectnonpublic

See merge request pleroma/pleroma!205
2018-06-16 10:39:36 +00:00
eal
a938d07df1 Merge branch 'bugfix/mastofe_thread_render' into 'develop'
lib/pleroma/web/mastodon_api/views/status_view.ex: Fix status.json so it renders threads

See merge request pleroma/pleroma!223
2018-06-15 20:43:30 +00:00
Haelwenn (lanodan) Monnier
72c2915ecd
Pleroma.Web.MastodonAPI.StatusView: Fix status.json so it renders threads 2018-06-15 22:14:17 +02:00
lain
00d7d109ef Fix typo 2018-06-15 22:01:17 +02:00
lambda
de20c8d620 Merge branch 'fix/missing-file-extension' into 'develop'
Add missing file extension if file does not have one

See merge request pleroma/pleroma!222
2018-06-14 19:11:30 +00:00
Francis Dinh
0a95b5594b Add missing file extension if file does not have one 2018-06-14 12:16:34 -04:00
eal
12c7a023de upload.ex: add MPEG Layer 3 file header. 2018-06-14 16:41:08 +03:00
lambda
2723fb5150 Merge branch 'bugfix/mrf-orphaning' into 'develop'
activitypub transmogrifier: handle activity lookup failure

Closes #156

See merge request pleroma/pleroma!216
2018-06-14 07:20:54 +00:00
lambda
8c7fdcb31b Merge branch 'feature/twitterapi-unrepeat' into 'develop'
Add TwitterAPI unretweet endpoint and cleanup AP.unannounce

See merge request pleroma/pleroma!218
2018-06-14 07:19:36 +00:00
lambda
2c303b3302 Merge branch 'bugfix/oauth2-param-name' into 'develop'
oauth: support either name or username parameter with grant_type=password

Closes #180

See merge request pleroma/pleroma!219
2018-06-14 07:14:18 +00:00
lambda
280ac243aa Merge branch 'bugfix/oauth-password-with-email' into 'develop'
oauth: fix password-based login when username is email address

Closes #199

See merge request pleroma/pleroma!220
2018-06-14 07:13:05 +00:00
William Pitcock
5442466569 oauth: fix password-based login when username is email address
closes #199
2018-06-14 02:32:30 +00:00
William Pitcock
4894b88b1b oauth: support either name or username parameter with grant_type=password
closes #180
2018-06-14 02:07:43 +00:00
Francis Dinh
1555c66650 Add unretweet TwAPI endpoint and cleanup AP.unannounce 2018-06-13 21:33:36 -04:00
William Pitcock
401e8af943 activitypub transmogrifier: handle activity lookup failure
with the introduction of MRF, it is possible that an activity may be orphaned from it's parent, if
an activity in the chain was rejected by the active MRF policies.  accordingly, handle this in the
same way as any other orphaned activity.

closes #156
2018-06-13 22:19:38 +00:00
William Pitcock
b5bc08fac3 streamer: don't relay boosts of messages which would otherwise be blocked 2018-06-13 21:59:56 +00:00
lambda
ea42ba603f Merge branch 'feature/webfinger-rfc7033-compliant' into 'develop'
webfinger: send JRD by default instead of XRD

See merge request pleroma/pleroma!211
2018-06-13 07:18:03 +00:00
William Pitcock
3d402a9e20 webfinger: send JRD by default instead of XRD
JRD being the default representation for WebFinger responses was standardized 5 years ago in
RFC 7033.
2018-06-13 07:03:14 +00:00
William Pitcock
59f95a7095 webfinger: refactor webfinger() functions
- remove code duplication
- move user lookup to parent with statement
- tighten both user lookup by nickname and activitypub URI with a type constraint
2018-06-13 06:42:27 +00:00
eal
3326205f95 set_moderator: ensureall applications are started. 2018-06-12 15:42:40 +03:00
Henry Jameson
9c1cf1befb formatting 2018-06-12 15:01:40 +03:00
Henry Jameson
f42ffbe9a8 Initial invites support + tests. 2018-06-12 14:55:16 +03:00
lambda
3f42806b1b Merge branch 'develop' into 'develop'
Dedupe uploads

See merge request pleroma/pleroma!115
2018-06-12 08:26:26 +00:00
lambda
f34232da86 Update sample_config.eex 2018-06-12 07:23:45 +00:00
lambda
564c73ab24 Merge branch 'feature/list-streaming' into 'develop'
MastoAPI: Add streaming for lists.

See merge request pleroma/pleroma!183
2018-06-12 07:19:45 +00:00
William Pitcock
9810471237 router: remove stub /domain_blocks entry 2018-06-11 23:40:19 +00:00
William Pitcock
f8e0942745 twitter api: add approve/deny endpoints 2018-06-11 22:15:53 +00:00
William Pitcock
e08cf21e5b twitter api: add friend requests list api 2018-06-11 22:15:53 +00:00
William Pitcock
ba8dab7542 twitterapi: user view: return if an account is locked or not 2018-06-11 22:15:53 +00:00
William Pitcock
d96377f359 activitypub transmogrifier: accept/reject outgoing: we might send the actual object instead of the URI in some cases, handle it 2018-06-11 22:15:53 +00:00
William Pitcock
5eed1ea181 run mix format 2018-06-11 22:15:53 +00:00
William Pitcock
993312cdb3 twitterapi: add profile setting for locked/unlocked accounts 2018-06-11 22:15:53 +00:00
William Pitcock
4084889a2d activitypub transmogrifier: remove debug code 2018-06-11 22:15:53 +00:00
William Pitcock
1452b2823f user: add a workaround for situations where Pleroma may believe a followee is followed
this was caused by lack of Undo follows in the early days, and can likely be eventually removed
2018-06-11 22:15:53 +00:00
William Pitcock
76f80ba8c2 activitypub: when unfollowing, update the follow activity's disposition to 'cancelled' so it cannot be reused 2018-06-11 22:15:53 +00:00
William Pitcock
a2c4a5a75b mastodon api: allow setting an account locked or not 2018-06-11 22:15:53 +00:00
William Pitcock
ad7188fe92 user: use Enum.uniq on the follow request query 2018-06-11 22:15:53 +00:00
William Pitcock
f328de8eb7 activitypub transmogrifier: send Rejects in the format Mastodon wants 2018-06-11 22:15:53 +00:00
William Pitcock
876ad6aa38 activitypub transmogrifier: send @context on accept activities 2018-06-11 22:15:53 +00:00
William Pitcock
760eb72a38 add a bunch of stuff 2018-06-11 22:15:53 +00:00