Wykres commitów

68 Commity (0b7388fed3f1ebe3b0cea3f365aa4e430e7ddd63)

Autor SHA1 Wiadomość Data
Ryan Barrett 0b7388fed3
flask: move app to app.py, get templates working, port /responses 2021-07-07 08:07:20 -07:00
Ryan Barrett 86a4afdc97
flask: render: get tests working 2021-07-06 20:34:35 -07:00
Ryan Barrett fa2a970b2c
flask: render: add caching, get_required_param, update tests 2021-07-06 13:45:56 -07:00
Ryan Barrett a4c5a8e4c5
redirect: handle single /s that got collapsed by the browser (etc) 2021-06-28 22:52:04 -07:00
Ryan Barrett d4a94ff75a
migrate from webmention-tools to webutil.webmention 2021-04-25 11:40:19 -07:00
Ryan Barrett 064acef4b0
verify SSL certs (more)
requires snarfed/webmention-tools@0059627cfd
2021-04-03 21:15:28 -07:00
Ryan Barrett db732650a4
add https://w3id.org/security/v1 to actors' @context for HTTP sigs
fixes #76
2021-03-22 23:55:14 -07:00
Ryan Barrett 17fa355226
webfinger: misc noop comment and test tweaks 2021-03-12 14:35:59 -08:00
Ryan Barrett f9e8a5abd2
webfinger tests: expect application/jrd+json for JRD, not application/json
for snarfed/webutil@4b277abaa4
2021-03-11 14:14:33 -08:00
Ryan Barrett f74a6d33fa
add synthetic id to outgoing AS2 activities
for #12
2021-03-10 20:37:28 -08:00
Ryan Barrett 1f977a7d5c
stop /r/ from being an open redirect by checking that we've seen the domain 2021-03-07 07:36:34 -08:00
Ryan Barrett 6b4089efe4
/r/ redirect endpoint: use HTTP 301, not 302 2021-03-06 21:47:08 -08:00
Ryan Barrett 06cd35abba
upgrade to python 3.9 runtime and feedparser 6.0.2 2021-03-06 08:03:36 -08:00
Ryan Barrett 33436a35a1
webmention: de-dupe inboxes before delivering 2021-02-24 13:41:46 -08:00
Ryan Barrett c12b675a7a
webfinger: handle acct:[domain]@fed.brid.gy requests
fixes #73
2020-12-30 10:26:48 -08:00
Ryan Barrett eef94eb033
if ActivityPub inbox delivery fails, don't fall back to Salmon 2020-11-13 09:50:14 -08:00
Ryan Barrett 155be76bca
fix outbound AP headers and signature for Mastodon 3.2.1
https://github.com/snarfed/bridgy-fed/issues/68#issuecomment-720059695
2020-11-05 12:43:27 -08:00
Ryan Barrett 8af4571648
handle django-salmon port to pycryptodome
in snarfed/django-salmon@76f31ed25c
2020-10-31 13:23:36 -07:00
Ryan Barrett dba533a14b
temporarily disable actually deleting Followers on AP Delete requests
mastodon.social sends Deletes for every Bridgy Fed account, all at basically the same time, and we have many Follower objects, so we have to do this table scan for each one, so the requests take a long time and end up spawning extra App Engine instances that we get billed for. and the Delete requests are almost never for followers we have. TODO: revisit this and do it right.
2020-10-11 08:35:14 -07:00
Ryan Barrett 2c15820ef6
webmention => AP: handle multiple in-reply-to links
fixes #65. thanks again for reporting, @nekr0z!
2020-06-06 08:40:07 -07:00
Ryan Barrett 2a91f01393
webmention: handle missing Content-Type header
for https://console.cloud.google.com/errors/CNnflKqP5rHWvgE , https://console.cloud.google.com/errors/CPyMpaulkMKWZA
2020-05-20 23:36:11 -07:00
Ryan Barrett 9eae3087fd
404 requests for root paths that aren't user domains
lots of these are fediverse tools sniffing for specific implentations, eg mastodon etc.  /siteinfo.json, /status.php, etc.
2020-03-02 10:50:43 -08:00
Ryan Barrett 9784686b1c
implement AP Delete of actors when their accounts are deleted
fixes #63
2020-02-29 20:28:53 -08:00
Ryan Barrett df6b0b58ba
unify request handler classes and handle_exception; move away from HOST[_URL]
fixes:
* https://console.cloud.google.com/errors/CN68rO-5sOK9cQ
* https://console.cloud.google.com/errors/CJWCu8b5_ureAg
* https://console.cloud.google.com/errors/CN6W4Zy7irzgOA
* https://console.cloud.google.com/errors/CN278MyjhZbtOQ
2020-01-31 14:40:11 -08:00
Ryan Barrett 02d36b3b1f
migrate to the app engine standard python 3 runtime!
https://cloud.google.com/appengine/docs/standard/python3/python-differences
https://cloud.google.com/appengine/docs/standard/python/migrate-to-python3/
2019-12-25 22:26:26 -08:00
Ryan Barrett ab55c9d62c
ujson.dumps/loads() => util.json_dumps/loads() 2019-12-24 23:26:58 -08:00
Ryan Barrett 99a5c35ae3
switch from webutil.util.memcache_response to cache_response 2019-11-12 21:28:44 -08:00
Ryan Barrett faf676e8bb
switch from json to ultrajson for performance
https://github.com/esnme/ultrajson/
2019-10-29 07:06:15 -07:00
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 7617d4893e
update test to match granary new whitespace handling
...again. specifically snarfed/granary@0ac54362ae
2019-09-19 11:56:29 -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 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 6219e2d25e
update test to match granary new whitespace handling
specifically snarfed/granary@48b55441c5
2019-06-24 14:48:24 -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 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 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 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 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 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