Wykres commitów

261 Commity (f938a2b57ea70a0174ea4013ee17d84a0db961be)

Autor SHA1 Wiadomość Data
Ryan Barrett c623a295c6
misc noop cleanups based on LGTM alerts
https://lgtm.com/projects/g/snarfed/bridgy/?mode=list
2019-09-19 11:57:16 -07:00
Ryan Barrett 879f6d1752
return 400 on more bad inputs, eg webmention source URLs 2019-08-13 13:29:31 -07:00
Ryan Barrett dd0a0d964b
don't assert on posts without u-id or u-url
fixes https://console.cloud.google.com/errors/CNLV_6K-gtPJDw
2019-07-24 13:03:15 -07:00
Ryan Barrett 7c8a2a4603
fix postprocess_as2() crash on multiply-valued inReplyTo
fixes https://console.cloud.google.com/errors/COTu_PXPjJ2ZWw
2019-06-06 06:35:57 -07:00
Ryan Barrett 088e9cfaf7
skip outbound webmentions to same domain as source 2019-04-16 11:42:17 -07:00
Ryan Barrett aa45f0c526
convert AP mentions to home page webmentions
for #46
2019-04-16 10:46:40 -07:00
Ryan Barrett 5bc639216e
more error handling for AS2 objects without id or URL
follows b7e44c9295. fixes https://console.cloud.google.com/errors/CLnu14G46vHLOg
2019-04-15 08:14:37 -07:00
Ryan Barrett b7e44c9295
don't choke on AS2 objects without id or URL
fixes https://console.cloud.google.com/errors/CO6w076w6oX32wE
2019-04-12 20:47:28 -07:00
Ryan Barrett 6e7c2008e9
handle SSL failures when fetching arbitrary URLs
fixes https://console.cloud.google.com/errors/CJOuzd2b1sehPA
2019-04-10 08:08:02 -07:00
Ryan Barrett b237e52d6a
add outbox, summary, and publicKey.id properties to actors
for #39, for pixelfed
2019-01-04 08:05:07 -08:00
Ryan Barrett b7f89dce99
webmention => AP: handle actor/attributedTo id as well as url
for #40
2018-12-11 10:59:41 -08:00
Ryan Barrett a9324adceb
webmention => AP: put images into AS2 'attachment' field for Mastodon
for https://github.com/snarfed/bridgy-fed/issues/33#issuecomment-440965618
2018-11-23 22:17:37 -08:00
Ryan Barrett ec3da6a485
webmention => AP: fix Salmon after big Create refactoring
for #33
2018-11-20 08:24:26 -08:00
Ryan Barrett 2bb418dc72
webmention => AP support for u-follow-of => Follow 2018-10-24 21:28:52 -07:00
Ryan Barrett 0f11cd1ff1
normalize user domains to URLs (with scheme) by following redirects
#21, for getting translated webmentions to have u-follow-of with full URL values, not just domains.
2018-10-23 12:39:16 -07:00
Ryan Barrett 98a19a994d
convert AP Follow to indieweb webmention with u-follow-of
#21, https://indieweb.org/follow
2018-10-23 11:11:50 -07:00
Ryan Barrett e090c2ba0a
AP Follow bug fix: actors are fed.brid.gy/DOMAIN, not /r/ redirect URLs 2018-10-21 18:54:27 -07:00
Ryan Barrett a4b309afef
activitypub: refactor Accept response to Follow activity
...and get tests working. #21
2018-10-21 15:28:42 -07:00
Ryan Barrett 9fc47c8ba9
AP => wm: switch to proxying reply wm source, unwrap URLs
for #35

example: https://webmention.io/realize.be/webmention/hG654HOgobymY54pMaNS
2018-10-17 17:49:56 -07:00
Ryan Barrett 27e56396b8
AP => wm: remove our redirect from target URLs
fixes the second half of #35
2018-10-17 12:00:38 -07:00
Ryan Barrett 9fb7f2fe26
AP => wm: prefer object URL for webmention source if available
fixes half of #35
2018-10-17 11:52:34 -07:00
Ryan Barrett 25d2724700 add Mention tag for Mastodon replies
fixes #34. thanks @swentel!
2018-10-16 11:38:12 -07:00
Ryan Barrett 2ffd10306f
AP => webmention: handle full AS2 activities
mastodon used to send bare objects for lots of things, e.g. replies, but now sends ful AS2 Create activities with embedded objects much more often. handle those too.

thanks for the nudge @swentel!
2018-10-15 11:52:11 -07:00
Ryan Barrett b25960ca93
wrap activity ids and urls and actor ids in our /r/ endpoint
for #16, #32. cc @swentel.
2018-10-14 07:58:17 -07:00
Ryan Barrett 5047337738
upgrade BS4 to 4.6.3, pin lxml to app engine prod's version 2018-10-11 17:03:26 -07:00
Ryan Barrett be2ea6ad28 webmention: if u-url is missing, default to source url
AS2 id, which is required for ActivityPub, comes from u-url, so we always need one.

fixes #20
2017-12-12 18:07:12 -08:00
Ryan Barrett da4873fc64 activitypub: cc all original recipients (in to and cc) 2017-11-05 15:50:23 -08:00
Ryan Barrett 29fb93ca92 change username from 'me' to web site domain
for #3, tootsuite/mastodon#5523
2017-10-26 17:07:57 -07:00
Ryan Barrett cf1f4122ec log more json response bodies 2017-10-24 18:31:13 -07:00
Ryan Barrett a1a66c2f24 fix logging for failed outbound HTTP requests
also disable logging full parsed mf2 in activitypub actor handler.
2017-10-24 18:27:07 -07:00
Ryan Barrett 786173d270 activitypub: point actor ids to bridgy fed, not source web site
...since we want to serve them as AS2.

for tootsuite/mastodon#5500
2017-10-23 21:57:08 -07:00
Ryan Barrett e538f97456 activitypub: prefer id over url for inReplyTo and Like/Announce object
as per tootsuite/mastodon#5500
2017-10-23 21:23:33 -07:00
Ryan Barrett 7dcbd9f107 minor fixes to a couple log msges 2017-10-23 21:02:07 -07:00
Ryan Barrett f2a422fa0b when we can't fetch AS2, demote log level to INFO 2017-10-22 15:59:51 -07:00
Ryan Barrett 530969da1b use non-unicode strings for Content-Type values
...because App Engine's wsgi.py requires header values to be str, not unicode.

also improve logic for whether to log HTTP response bodies.
2017-10-20 18:05:51 -07:00
Ryan Barrett b7007a4521 fetching AS2: handle Content-Type with charset suffix 2017-10-20 17:35:11 -07:00
Ryan Barrett c81a6b8ed2 activitypub: follow HTML link rels that point to AS2 objects
...by reusing common.get_as2(). also lots of misc refactoring.
2017-10-20 12:49:48 -07:00
Ryan Barrett e985516dc3 return parsed JSON from common.get_as2(); use it in activitypub 2017-10-20 07:13:04 -07:00
Ryan Barrett 527ca5585b add common.get_as2() 2017-10-20 07:01:38 -07:00
Ryan Barrett 7ca72a1b36 fix error handling in common.requests_*()
it can't use common.error() because it doesn't have a handler object.
2017-10-18 22:47:03 -07:00
Ryan Barrett bb9294ea51 tell common.error() explicitly when to include exc_info 2017-10-17 11:47:01 -07:00
Ryan Barrett a520fe8462 pass 4xx and 5xx responses from fedsocnets through to client
cc @mblaney
2017-10-16 22:27:54 -07:00
Ryan Barrett db75bd7589 webmention => activitypub: fix likes and reposts
thanks to @mblaney for finding!
2017-10-16 21:48:41 -07:00
Ryan Barrett 73ac7ba1e7 unify webmention sending from salmon and activitypub into common 2017-10-16 09:13:55 -07:00
Ryan Barrett 6190f3bc0c refactor abort() calls to use common.error() 2017-10-15 16:57:33 -07:00
Ryan Barrett a21c94b0f7 mastodon AP interop: add preferredUsername
details in https://github.com/tootsuite/mastodon/issues/4906#issuecomment-333680170
2017-10-02 16:53:18 -07:00
Ryan Barrett 1782370f5e as2: id and type, not @id or @type
goes with snarfed/granary@bb6d831c0e
2017-10-01 21:45:00 -07:00
Ryan Barrett 9400b0ee80 mastodon interop: ensure preferredUsername and id 2017-10-01 21:43:18 -07:00
Ryan Barrett 4284ef830d only add AP AS2 publicKey field to Person type; add test 2017-10-01 07:10:12 -07:00
Ryan Barrett 71f0a4c8d4 AP: add publicKey to actor object
needed for mastodon interop
2017-10-01 07:01:35 -07:00
Ryan Barrett c998901108 update webfinger, AS2, etc for receiving AP 2017-09-28 07:25:21 -07:00
Ryan Barrett db8e4249d8 webfinger: discover and return PuSH hub header links 2017-09-13 07:48:32 -07:00
Ryan Barrett 86c6934a98 webfinger: settle on 'me' username, just domain in paths 2017-09-12 09:07:37 -07:00
Ryan Barrett 4dd8f7e1a7 mastodon interop: salmon + activitypub + webfinger cleanup, tests 2017-09-03 13:03:31 -07:00
Ryan Barrett b975d68a72 mastodon interop: webfinger cleanup, tests 2017-09-03 12:35:18 -07:00
Ryan Barrett 76af3231e7 mastodon interop: got webmention => salmon slap to mastodon working!
TODO: lots of cleanup and tests
2017-09-03 12:20:37 -07:00
Ryan Barrett f6deddeb96 translate incoming webmentions to outgoing salmon slaps 2017-08-23 18:41:21 -07:00
Ryan Barrett 6ddd1d66d9 start on webfinger 2017-08-19 08:21:05 -07:00
Ryan Barrett 9c73e756c0 start on ostatus: add django-salmon dependency 2017-08-19 07:41:25 -07:00
Ryan Barrett 04e65d612d add webmention endpoint and conversion to AP inbox delivery 2017-08-15 08:39:32 -07:00
Ryan Barrett 576410005b extract out requests.get() and user agent header into new common.py file 2017-08-14 23:07:24 -07:00