Ryan Barrett
7c9a03c827
unify HTTP fetching, HTML and mf2 parsing, and error handling into webutil
...
see:
* snarfed/granary#171
* snarfed/webutil@f994884b2b
* snarfed/oauth-dropins@f5b6e73530
* snarfed/granary@284eb11508
2019-10-03 21:08:26 -07:00
Ryan Barrett
00d0cc5557
fully qualify relative Atom feed URLs before fetching
...
fixes #58 . thanks again for reporting @fluffy-critter!
2019-09-23 11:20:11 -07:00
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
7617d4893e
update test to match granary new whitespace handling
...
...again. specifically snarfed/granary@0ac54362ae
2019-09-19 11:56:29 -07:00
Ryan Barrett
9ff0a28dd3
minor bug fix in AP Undo Follow error handling
2019-08-14 11:16:37 -07:00
Ryan Barrett
ef8b9b13cc
bug fix in webmention => activitypub target fetch error handling
...
fixes https://console.cloud.google.com/errors/CPyMpaulkMKWZA
2019-08-13 16:23:47 -07:00
Ryan Barrett
27b643355f
make coveralls optional in circle, ie if it fails, don't fail the whole build
2019-08-13 16:15:04 -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
65044b081c
accept Undo of Follow even if Follower doesn't exist
2019-08-01 10:39:15 -07:00
Ryan Barrett
f02c212f37
AP delivery: skip inactive followers
2019-08-01 10:36:39 -07:00
Ryan Barrett
4b70a89046
handle AP Undo of Follow
...
needed for eg mastodon when you unfollow and then try to refollow someone. on unfollow, mastodon sends an Undo, and waits for a 200 before it shows success and will let you refollow.
2019-08-01 10:32:50 -07:00
Ryan Barrett
ad55cc95f3
update a handful of deps: requests, urllib3, jinja, etc.
2019-07-24 13:29:40 -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
6219e2d25e
update test to match granary new whitespace handling
...
specifically snarfed/granary@48b55441c5
2019-06-24 14:48:24 -07:00
Ryan Barrett
c055f3aeba
drop HTML tags from webfinger error messages
...
fixes #53
2019-06-24 14:46:45 -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
fe96eeb5c3
better link for wordpress atom feed instructions
2019-04-30 11:13:36 -07:00
Ryan Barrett
43e6e9f514
update wordpress atom feed instructions
...
...since the plugin isn't in the wordpress.org plugin registry any more. i couldn't find another plugin (!) so i just gave manual instructions for adding the link to <head>. fixes #51 .
2019-04-30 11:02:14 -07:00
Ryan Barrett
801bf4075d
detect non-domain requests, eg /nodeinfo.json, and 404
...
these are probably other mastodon instances assuming we're mastodon too.
2019-04-19 08:00:21 -07:00
Ryan Barrett
7c10585ad3
/response logs, once more with feeling
2019-04-18 11:18:14 -07:00
Ryan Barrett
f76d796f71
docs: add u-photo for images
...
for #48 , https://github.com/snarfed/bridgy-fed/issues/33#issuecomment-440395450
2019-04-17 09:06:20 -07:00
Ryan Barrett
90f7ac3e5b
add HTML meta redirects to mf2 rendered pages for end users
...
browsers will follow them, and hopefully all webmention receivers should/do ignore them, so we'll get the best progressive enhancement for both worlds.
IRC background:
https://chat.indieweb.org/dev/2019-04-11#t1555004634348000
https://chat.indieweb.org/dev/2019-04-16#t1555440757959400
2019-04-17 08:44:26 -07:00
Ryan Barrett
7a94537721
/responses: link logs for all requests, not just webmention => fed
2019-04-16 14:19:16 -07:00
Ryan Barrett
088e9cfaf7
skip outbound webmentions to same domain as source
2019-04-16 11:42:17 -07:00
Ryan Barrett
76686af538
cache lots of GET requests
...
this helps with requests that make external HTTP fetches, eg indieweb home pages/posts and federated profiles/posts, which change rarely.
in particular, outbound AP requests that get federated widely (eg Mastodon) result in all of those federated instances making the same bridgy fed requests at the same time, often within just a few seconds. more background: tootsuite/mastodon#4486
2019-04-16 11:05:18 -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
2e33354c27
add following and followers fields to AS2 actors
...
for #40 . they currently both point to endpoint URLs that don't actually work yet, just like the recently added outbox field.
2019-01-14 11:08:08 -08:00
Ryan Barrett
b7e8cd7d42
add conneg + AS2 support to /r/... redirect URLs
...
for pixelfed, #39 . specifically, if the client asks for application/activity+json or application/ld+json (which pixelfed does), fetch and convert to AS2 instead of returning a 302 redirect.
2019-01-04 12:17:50 -08: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
aa5fac01dd
webmention => AP: fix error handling for outbound AP requests
2018-12-11 11:00:54 -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
0af5c136bb
webmention => AP/Salmon: handle no targets or followers, return 200
...
fixes https://console.cloud.google.com/errors/CIrig_2B6_i87AE
2018-11-27 15:14:56 -08:00
Ryan Barrett
e964190162
webmention => AP: check for link to bridgy fed in source page
...
fixes #42
2018-11-27 10:27:12 -08:00
Ryan Barrett
9849c8a15d
docs: expand on discovery
...
fixes #18 . thanks again @swentel!
2018-11-25 09:26:54 -08:00
Ryan Barrett
cd8a13312c
webmention => AP: add original posts to docs
...
fixes #33
2018-11-24 22:35:20 -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
a52765821f
stop emailing me on every inbound webmention
2018-11-23 21:28:02 -08:00
Ryan Barrett
a89e0038de
webmention => AP: Create: another bug fix for string Follower actors
...
for #33 . follow-up to 2cb0dda2d1
.
2018-11-20 09:47:01 -08:00
Ryan Barrett
2cb0dda2d1
webmention => AP: Create: handle Follower with actor URL instead of object
...
we don't create these any more, we always fetch and store full actor objects, but we have a few old ones lying around in the prod datastore.
for #33
2018-11-20 08:37:57 -08:00
Ryan Barrett
11c66cfd3e
webmention => AP: fix AP replies etc after big Create refactoring
...
for #33
2018-11-20 08:24:29 -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
a88165c4e3
webmention => AP: big refactoring to support Create
...
#33 . still in progress!
2018-11-16 07:09:55 -08:00
Ryan Barrett
1c728f6590
AP => webmention: fetch actor for all activity types, including replies
...
fixes #41
2018-11-15 13:03:32 -08:00
Ryan Barrett
777a62208d
bump granary req't up to 1.14 for AS1/mf2 follow support
...
specifically snarfed/granary@6ef49f42e2
2018-11-15 13:01:52 -08:00
Ryan Barrett
0eb14e93d7
docs for follow support
...
#21
2018-10-24 21:53:59 -07:00
Ryan Barrett
1c41aa4fd0
AP: blindly accept all Accepts
...
#21
2018-10-24 21:44:21 -07:00
Ryan Barrett
2bb418dc72
webmention => AP support for u-follow-of => Follow
2018-10-24 21:28:52 -07:00