Ryan Barrett
bfbae4b280
authz: normalize user ids before comparing, in both receive and Object.get_or_create
...
for #566
2024-05-29 12:29:38 -07:00
Ryan Barrett
d8910d52cd
LIMITED_DOMAINS bug fix, read lines from file separately
2024-05-28 20:40:48 -07:00
Ryan Barrett
ea0f61f446
authz: when comparing domains, handle common subdomains like www
...
for #566
2024-05-28 20:36:18 -07:00
Ryan Barrett
f2a64c8b5c
Object.get_or_create: rename actor => authed_as, add to all calls
...
for #566
2024-05-28 16:07:32 -07:00
Ryan Barrett
820f7fa4f4
authz: add protocol.NO_AUTH_DOMAINS for domains we can't authorize yet
...
...eg a.gup.pe. https://github.com/snarfed/bridgy-fed/issues/566#issuecomment-2130714037
2024-05-28 15:23:22 -07:00
Ryan Barrett
fc14298f0d
authz: expand LD Sigs check to any signature field, regardless of creator
...
for #566
2024-05-28 15:15:23 -07:00
Ryan Barrett
03672679b9
activitypub, protocol: misc noop logging and code style tweaks
2024-05-27 20:38:49 -07:00
Ryan Barrett
6f84a98a5d
Protocol.receive: more authz log message tweaks
...
for #566
2024-05-24 20:00:23 -07:00
Ryan Barrett
4ca02824c9
Protocol.receive: tweak authz logging messages
...
for #566
2024-05-24 19:30:31 -07:00
Ryan Barrett
6ffc4a3c3b
infra: add new router flex service, switch tasks to run on it
...
receive, send, webmention, and poll-feed
2024-05-23 20:40:54 -07:00
Ryan Barrett
aa5ec4cccd
Protocol.maybe_delete_copy: minor tweaks
...
for #783
2024-05-23 11:43:02 -07:00
Ryan Barrett
9de5eb400c
Protocol.targets: don't add ATProto for reposts of/replies to non-bridged posts
2024-05-22 23:28:53 -07:00
Ryan Barrett
15af8b2585
limited domains bug fix: don't count protocol bot user follows
2024-05-22 22:33:57 -07:00
Ryan Barrett
f39392e225
Protocol: when disabling a protocol, also delete that protocol's copy user
...
for #783
2024-05-22 16:33:13 -07:00
Ryan Barrett
45ba0fb69f
Protocol.send_task: handle missing url or protocol param
2024-05-22 14:28:17 -07:00
Ryan Barrett
1778a1145e
Protocol.bot_follow: send in separate task instead of inline
...
fixes #1041
2024-05-22 14:28:17 -07:00
Ryan Barrett
06e2e61b1e
ATProto: switch to granary's logic to populate strongRefs, via DatastoreClient
...
for #1007
2024-05-16 13:11:29 -07:00
Ryan Barrett
e4f9966686
Protocol.receive: second part of making explicit opt in override implicit opt out
...
for #1052 , #974
2024-05-15 11:41:20 -07:00
Ryan Barrett
03c5638bc1
Protocol.receive bug fix: resolve ids before checking for bot user follow, not after
...
for #1017
2024-05-14 17:01:20 -07:00
Ryan Barrett
f6798f2725
abstract "bridged from Bridgy Fed" profile label across protocols
...
for #976
2024-05-14 16:03:42 -07:00
Ryan Barrett
79e5d2be07
bug fix for User.status handling: check for false-ness, not is None
...
we have some users in the datastore with status None, some with False. 😕 fixes #1048
2024-05-12 19:02:07 -07:00
Ryan Barrett
348987f0b4
add Protocol.REQUIRES_OLD_ACCOUNT, enable for ActivityPub
2024-05-11 19:20:33 -07:00
Ryan Barrett
59b9e9c904
add protocol.LIMITED_DOMAINS
2024-05-11 17:39:04 -07:00
Ryan Barrett
de0af66979
basic anti-spam: add new Protocol.REQUIRES_AVATAR/NAME constants
...
...and start returning `blocked` from User.status for them
2024-05-11 16:03:07 -07:00
Ryan Barrett
389e2d9205
Protocol.targets: don't add trailing slash to PDS URL https://atproto.brid.gy
...
fixes #1032
2024-05-08 09:37:47 -07:00
Ryan Barrett
f533479e0b
noop: drop unused flask.g imports
2024-05-07 17:14:59 -07:00
Ryan Barrett
4da00192b0
when someone follows a bot user to opt in, have the bot user follow them back
...
fixes #999 . this makes sure we start receiving posts from AP users immediately, instead of waiting until a Bluesky opted in user follows them.
2024-05-07 10:54:18 -07:00
Ryan Barrett
2fa1ae73eb
when someone follows a bot user, refresh their profile first
...
...so that we're up to date on whether they're opted out or not
fixes #1017
2024-05-06 11:30:33 -07:00
Ryan Barrett
515be28cdd
Protocol.receive: automatically send to ATProto PDS if user has ATProto enabled
...
for #999
2024-05-05 17:21:24 -07:00
Ryan Barrett
2bf526ab7c
refactor validating handles in ATProto and elsewhere
...
for https://github.com/snarfed/bridgy-fed/issues/982
2024-05-03 15:18:16 -07:00
Ryan Barrett
91638ef8bb
bring back self replies check, only send self replies to followers
...
revises 073ce475e5
, #981 , #950 , #949
2024-05-02 13:39:10 -07:00
Ryan Barrett
0cfd188fd4
Protocol.targets fix for bug introduced in 073ce475e5
...
fixes https://console.cloud.google.com/errors/detail/CIzN5p2u2IPGpQE;time=P30D?project=bridgy-federated
2024-05-01 18:53:09 -07:00
Ryan Barrett
073ce475e5
Protocol.receive: bridge replies to followers where in-reply-to already is
...
...ie if it's on the follower's protocol, either native or bridged.
for #981 , #950 , #949
not confident in this, despite the tests. worried it will either over- or under-deliver. guess we'll see.
2024-05-01 17:45:48 -07:00
Ryan Barrett
ee9bb53745
ATProto: drop trailing slash from PDS URL
...
the ATProto DID spec says it shouldn't be there: https://atproto.com/specs/did#did-documents
> The serviceEndpoint field must contain an HTTPS URL of server. It should contain only the URI scheme (http or https), hostname, and optional port number, not any "userinfo", path prefix, or other components.
thanks for the nudge @mackuba!
2024-05-01 17:45:48 -07:00
Ryan Barrett
9617d8ab71
move Protocol.is_enabled to User.is_enabled
2024-04-27 20:34:37 -07:00
Ryan Barrett
cbe4b59206
convert Protocol.is_enabled_to to an instance method
...
next commit will move it to User
2024-04-27 20:27:33 -07:00
Ryan Barrett
c065c712f1
more id/handle translation tweaks for protocol bot users
...
hopefully fixes Accept actor for responding to bot user follows in AP
2024-04-25 14:29:48 -07:00
Ryan Barrett
1d20befe7e
Protocol.receive: always wrap actor objects in update, not post/create
2024-04-25 13:45:27 -07:00
Ryan Barrett
dd1d53c28b
allow receive tasks for protocol bot domains, for update profile button
2024-04-25 12:39:04 -07:00
Ryan Barrett
3d84dc4d36
don't show protocol bot users in their own protocols
2024-04-25 11:21:33 -07:00
Ryan Barrett
d6a10b4be0
update profile button: make receive task instead of running it inline
2024-04-24 17:06:25 -07:00
Ryan Barrett
41b2aaa1a8
incoming DMs to protocol bot users: filter out @-mentions
...
for #880
2024-04-24 16:45:43 -07:00
Ryan Barrett
06bf3bf534
receive: drop activity if protocol doesn't own actor
...
it's probably from a bridged user, and we only want to handle original activities, not bridged ones.
fixes https://console.cloud.google.com/errors/detail/CM6i4sH4176iaQ;time=P30D?project=bridgy-federated
2024-04-24 15:57:00 -07:00
Ryan Barrett
b543fdb1d5
switch to Gmail SMTP, other minor tweaks
2024-04-24 14:26:20 -07:00
Ryan Barrett
0238b46e36
add Protocol.HAS_COPIES, use to generate ids.COPIES_PROTOCOLS
2024-04-23 16:52:53 -07:00
Ryan Barrett
304994e3b7
Protocol.for_id: return Web for protocol bot users
2024-04-23 09:39:30 -07:00
Ryan Barrett
d4a56127d9
incoming webmentions: stop converting home pages to update activities
...
pass Protocol.receive the bare actor object, let it convert to update activity, like with posts etc
2024-04-23 06:50:55 -07:00
Ryan Barrett
03b0f54cfe
Protocol.receive: wrap bare actor object in update activity
2024-04-22 18:39:27 -07:00
Ryan Barrett
b9551c4de7
adjust Web.owns_id to say it owns protocol bot user domains but not their pages
...
eg bsky.brid.gy True, https://bsky.brid.gy/ True, https://bsky.brid.gy/foo False.
also move our internal synthetic UI-initiated follow ids from https://fed.brid.gy/web/ ... to under the user's own domain. hopefully this won't break anything 🤞
2024-04-22 11:58:01 -07:00
Ryan Barrett
10023d17fd
Protocol.enable_protocol: create copy user if necessary
2024-04-21 12:18:12 -07:00
Ryan Barrett
6b597c90c3
User.get_or_create: abstract propagate and create_for across protocols
2024-04-21 11:40:13 -07:00
Ryan Barrett
f357ea1698
ActivityPub: accept non-public DMs to protocol bot users
...
for #880
2024-04-21 08:36:03 -07:00
Ryan Barrett
1686a2ba91
opt in/out prompt: accept yes/no DMs to bot users to enable/disable protocols
...
for #880
2024-04-21 08:08:12 -07:00
Ryan Barrett
0c37d94191
ids.translate_* noop refactoring: from_proto => from_, to_proto => to
2024-04-20 21:03:06 -07:00
Ryan Barrett
70da21a7f3
Protocol.receive: send accepts for bot user follows
2024-04-20 21:02:14 -07:00
Ryan Barrett
20e061f476
Protocol.receive: extract out maybe_accept_follow method
...
for #880
2024-04-19 12:53:44 -07:00
Ryan Barrett
3c55d7c145
protocol: extract out enable/disable_protocol methods
...
for #880
2024-04-19 12:53:44 -07:00
Ryan Barrett
2886ae180d
remove common.ENABLED_PROTOCOLS, use Protocol.DEFAULT_ENABLED_PROTOCOLS instead
...
also use is_enabled_to in user page template
2024-04-18 16:39:15 -07:00
Ryan Barrett
8bcae4c09d
Protocol.receive: following protocol user enables that protocol
...
for #880
2024-04-18 16:09:09 -07:00
Ryan Barrett
d36885728f
Protocol.receive: blocking protocol user disables that protocol
...
for #880
2024-04-18 16:03:51 -07:00
Ryan Barrett
39a641e000
remove USER_ALLOWLIST in favor of User.enabled_protocols
2024-04-17 17:02:17 -07:00
Ryan Barrett
259b7d72dd
start on conditional opt in
...
* add Protocol.DEFAULT_ENABLED_PROTOCOLS
* add User.enabled_protocols
* move common.is_enabled to Protocol.is_enabled_to, include opt out/in
2024-04-17 16:43:10 -07:00
Ryan Barrett
393605bde9
change ATProto.ABBREV to bsky
...
🤞 , for #961
2024-04-17 06:54:16 -07:00
Ryan Barrett
2ec22de09f
abstract redirect.py to be multi-protocol
...
...mostly. creating the underlying user opportunistically is still Web-only.
2024-04-14 18:26:34 -07:00
Ryan Barrett
5ec2159546
user page: link to bridged Bluesky profile
...
for #825
2024-04-12 08:46:59 -07:00
Ryan Barrett
ea1f3dce49
user page bug fix for 133d640f1d
2024-04-12 07:16:06 -07:00
Ryan Barrett
5767ffabb5
add new Object.normalize_ids method, use in Protocol.receive
...
eg https://bsky.app/ ... URLs to DIDs for actors or at:// URIs for objects
this hopefully fixes web => ATProto follows of https://bsky.app/ ... profile URLs.
2024-04-09 13:07:57 -07:00
Ryan Barrett
c57e905204
Protocol.for_id: add remote kwarg
2024-04-09 10:48:05 -07:00
Ryan Barrett
5c470a4647
consider opted out Web domains in ActivityPub.status, not is_blocklisted
...
follow-up to df321234c0
2024-03-31 18:50:01 -07:00
Ryan Barrett
df321234c0
load and include Web.manual_opt_out users in Protocol.is_blocklisted
2024-03-28 09:18:35 -07:00
Ryan Barrett
878bbde328
atproto: handle bsky.app URLs in load, not fetch
2024-03-14 15:40:25 -07:00
Ryan Barrett
9b2bb9ef37
make ATProto.load([DID]) return the profile record by default
...
add did_doc kwarg to make it return the DID doc instead
2024-03-13 16:08:08 -07:00
Ryan Barrett
7bf29d411f
atproto: only enable indieweb.org and snarfed.org, for now
2024-03-13 13:07:30 -07:00
Ryan Barrett
663063e06c
test_integrations: add ATProto => Web follow
2024-03-12 21:41:05 -07:00
Ryan Barrett
c9c74ac6b3
suppress many Protocol.load logging messages
2024-03-12 11:12:34 -07:00
Ryan Barrett
c0b75e4fbd
Protocol.load: return None if the entity is too big
...
fixes https://console.cloud.google.com/errors/detail/CO-fpZfMq_6ktgE;time=P30D?project=bridgy-federated
2024-03-11 15:31:31 -07:00
Ryan Barrett
8288390cfd
AP inbox delivery, Protocol.receive: error on blocklisted ids
...
fixes https://console.cloud.google.com/errors/detail/CN278MyjhZbtOQ;time=P30D?project=bridgy-federated , https://console.cloud.google.com/errors/detail/CLSnttKfy4v90wE;time=P30D?project=bridgy-federated
2024-02-27 06:42:19 -08:00
Ryan Barrett
8cb3628270
Protocol.targets: bug fix for self replies
2024-02-12 19:02:00 -08:00
Ryan Barrett
ddbd7f3fec
protocol.load: allow an object to switch protocols
...
fixes https://console.cloud.google.com/errors/detail/CPb-q_DKzvrYOw;time=P30D?project=bridgy-federated
2024-02-10 22:12:44 -08:00
Ryan Barrett
484c637219
authorization check: handle domain vs homepage for web users
...
for #566
2024-02-10 10:30:25 -08:00
Ryan Barrett
6a63820cd8
tighten Object.owns_id to reject blocklisted domains
...
fixes https://console.cloud.google.com/errors/detail/CLSnttKfy4v90wE;time=P30D?project=bridgy-federated
2024-02-08 14:41:15 -08:00
Ryan Barrett
c966090912
Protocol.load: reload objects if our copy is over 30d old
...
fixes #628
no clue how much this will impact our outbound request load. we'll see!
2024-02-08 11:23:09 -08:00
Ryan Barrett
3bcef0d37d
follow UI: specific error message for trying to follow bridged accounts
...
thanks for the nudge @campegg!
2024-01-25 17:05:26 -08:00
Ryan Barrett
bab5270c3b
start clearing Object.our_as1 again on updates
...
fixes #778 . bug was that when we fetched a web object, we'd populate the new `mf2` value, but still keep the old `our_as1`, which then overrode it in `as1`. ugh.
partially reverts commit 62ca4022fb
for #721 .
2024-01-08 13:03:44 -08:00
Ryan Barrett
6e236e2d70
switch User.ap_actor to id_as, use Web.ap_subdomain property
2023-11-30 17:10:18 -08:00
Ryan Barrett
62ca4022fb
stop clearing Object data properties
...
...so that we have original data preserved when we override it in our_as1. fixes #721
2023-11-28 06:39:34 -08:00
Ryan Barrett
ee373095e2
send follow accepts to protocols that support them
...
for #710
2023-11-27 16:32:22 -08:00
Ryan Barrett
8f7facda97
don't automatically accept follows from protocols that support them natively
...
for #710 . adds per-protocol `HAS_FOLLOW_ACCEPTS` constant
2023-11-27 14:44:05 -08:00
Ryan Barrett
8f0d2d8650
AP: handle opted out users in following/ers, outbox collections
2023-11-27 11:32:30 -08:00
Ryan Barrett
b81fa2090b
Protocol.receive: handle opted out users
2023-11-27 06:53:22 -08:00
Ryan Barrett
03315891aa
drop a lot of g.user
...
for #690
2023-11-25 20:23:19 -08:00
Ryan Barrett
1591dfb641
pass user to Protocol.send/convert instead of using g.user
...
for #690
2023-11-25 20:07:14 -08:00
Ryan Barrett
e947891d75
Protocol.receive: fail if incoming activity doesn't have actor or author
...
for #690
2023-11-25 14:50:08 -08:00
Ryan Barrett
fefcbbb77e
drop Protocol.actor_key's default_g_user kwarg
...
for #690
2023-11-19 21:53:38 -08:00
Ryan Barrett
4d095fa3d9
misc cleanup
...
* remove obsolete TODOs, commented out code
* remove obsolete circular imports of per-protocol modules
* minimize Object put in Protocol.load
* remove duplicated Protocol.load tests in test_activitypub
* re-enable rest of ActivityPubUtilsTest.test_postprocess_as2_idempotent
* drop default cls=Web in TestCase.make_user
2023-11-15 14:23:08 -08:00
Ryan Barrett
95631396b7
atproto: fill in createdAt
...
for snarfed/granary@a0795b8c34
2023-11-14 15:24:51 -08:00
Ryan Barrett
cbbea104fc
cache Protocol.for_id
...
fixes #727
2023-11-13 14:18:32 -08:00
Ryan Barrett
91c25f6955
testutil noop, TestCase.make_user: include source_protocol in profile Object
2023-11-13 14:08:21 -08:00
Ryan Barrett
12158eba64
Protocol.targets bug fix, handle composite inReplyTo
2023-11-13 14:08:21 -08:00
Ryan Barrett
0364ece4a8
stop resolving ids in Protocol.targets, since Protocol.receive already did it
2023-11-12 13:21:35 -08:00
Ryan Barrett
2a7c0adf0f
bug fixes for suppressing mentions of in-reply-to-authors
...
for 84324c0c0b
, #686
2023-11-11 14:52:21 -08:00
Ryan Barrett
84324c0c0b
Protocol.targets: suppress mentions of in-reply-to authors
...
fixes #686
2023-11-10 14:39:40 -08:00
Ryan Barrett
e801d52ed7
Protocol: add force= to /queue/send, allow unknown params in /queue/receive
2023-11-08 11:28:17 -08:00
Ryan Barrett
06275324fd
Web.convert: call translate_ids
2023-11-03 15:52:37 -07:00
Ryan Barrett
fdc5b8e1e9
Protocol.translate_ids bug fix: handle create/update user profile activities
2023-11-03 15:10:05 -07:00
Ryan Barrett
def5638a64
Protocol.translate: distinguish between object and user ids
2023-11-02 13:08:24 -07:00
Ryan Barrett
9aff3122c0
noop: rename get_for_copy[ies] => get_for_original[s]
2023-11-02 13:08:23 -07:00
Ryan Barrett
9358bf2fd2
Protocol.translate_ids: minor tweaks, bug fixes, comments
2023-11-01 12:33:38 -07:00
Ryan Barrett
db646909e2
delivery: switch from threads to tasks, one per send
...
for #652
2023-10-31 12:49:27 -07:00
Ryan Barrett
c280a3f213
switch Protocol.translate_ids from using subdomain_wrap to translate_object_id
2023-10-26 17:18:01 -07:00
Ryan Barrett
cfbfba654e
move User.get_for_copy/ies to module level, add Object results
2023-10-26 16:00:03 -07:00
Ryan Barrett
5843235fd1
rename ids.convert_id => translate_user_id, convert_handle => translate_handle
2023-10-26 13:53:31 -07:00
Ryan Barrett
f74be7b0e5
add Protocol.convert_wrap
2023-10-26 13:53:31 -07:00
Ryan Barrett
3471476092
Revert "Protocol.receive: bump up threads from 10 to 30"
...
Seemed to make things worse, not better. Guess I need to implement continuation passing across task handler requests. #652
This reverts commit 66da2efc7a
.
2023-10-25 12:31:52 -07:00
Ryan Barrett
acb1c703a3
rename Protocol.serve => .convert, move Content-Type to class constant
2023-10-25 12:31:52 -07:00
Ryan Barrett
422a240183
Resolve protocol-subdomain-wrapped ids/URLs by stripping the subdomain wrapping
...
Renames Object.replace_copies_with_originals => resolve_ids. As a side effect, also fixes https://console.cloud.google.com/errors/detail/CK3U3PONxv5Q;time=P30D?project=bridgy-federated
2023-10-24 10:47:44 -07:00
Ryan Barrett
d12fd99b03
noop: move Protocol.subdomain_url to common.subdomain_wrap
2023-10-23 15:44:32 -07:00
Ryan Barrett
16d8832c72
receive: support ?force=true to skip "already seen this id" check
2023-10-19 22:15:14 -07:00
Ryan Barrett
3b88b0f315
AP: don't create "receiving" user in inbox, don't set actor to g.user in send
...
more iffy kinda scary changes. gulp. important though, baby step toward killing g.user! #690
2023-10-19 16:15:40 -07:00
Ryan Barrett
89cd73831b
rework g.user
...
* it's always sending user ie actor
* don't pass it to task from atproto.poll_notifications (we were incorrectly passing the receiving user)
* in Protocol.receive, default g.user to actor/author
* in ActivityPub.signed_request, if g.user is ActivityPub, it won't have AP keys, so use default signing user instead
kinda scary and iffy. 🤞 🤞 🤞
2023-10-18 13:56:53 -07:00
Ryan Barrett
e66ca3fb7f
noop: expand a few log messages
2023-10-18 13:13:44 -07:00
Ryan Barrett
9e1acf1cf7
replace copy ids with originals in Protocol.load
...
honestly not sure if this is necessary yet, and it's moderately expensive, two serial datastore queries with an IN filter. we'll see.
2023-10-18 11:18:20 -07:00
Ryan Barrett
efdf84a023
Protocol.receive: replace copy ids with originals, related bug fixes
2023-10-18 11:03:22 -07:00
Ryan Barrett
b8c7d1cd96
receive_task: set object.new to force receive to process it
2023-10-18 11:03:21 -07:00
Ryan Barrett
fc96959383
tone down logging, especially for polling ATProto notifs
2023-10-18 11:03:21 -07:00
Ryan Barrett
66da2efc7a
Protocol.receive: bump up threads from 10 to 30
...
10 still isn't enough! tantek's ~300 inboxes are still hitting the 10m deadline.
2023-10-16 13:47:54 -07:00
Ryan Barrett
325ba64c66
authorization: block external requests to cloud task handlers
...
...by checking for a GAE Cloud Tasks header: https://cloud.google.com/tasks/docs/creating-appengine-handlers#reading_task_request_headers
2023-10-16 13:04:34 -07:00
Ryan Barrett
db3a5e7fd6
authorization: pass and accept authed_as in receive task handler
...
for #566
2023-10-16 12:45:27 -07:00
Ryan Barrett
c83c77a73e
authorization: log when authed user doesn't match activity's author/actor
...
for #566 . just logging for now, want to see if we're already hitting this at all.
2023-10-16 11:13:38 -07:00
Ryan Barrett
55c8d9bec6
authorization: log updates, deletes, creates from the wrong actor
...
for #566 . just logging for now, want to see if we're already hitting this at all.
2023-10-16 06:37:52 -07:00
Ryan Barrett
441c5aa29f
log_data bug fixes
2023-10-14 14:13:13 -07:00
Ryan Barrett
f3039fc87a
Protocol.send: bring back log_data kwarg
2023-10-13 18:29:28 -07:00
Ryan Barrett
d0da119b07
add opt out via #nobridge or #nobot text in user profile bio
...
fixes #666
(unfortunate issue number 😆 )
2023-10-13 12:36:31 -07:00
Ryan Barrett
1b78e86e6c
add Protocol.LOGO_HTML constant, change user page to link to external user
...
for #442
2023-10-11 12:25:38 -07:00
Ryan Barrett
f002b536d9
add thread name to log message prefix to trace across Protocol.deliver threads
2023-10-10 10:13:57 -07:00
Ryan Barrett
5bf081afdb
make Protocol/Web.key_for() follow use_instead
...
fixes #662 . probably more to do here eventually though, eg #665 .
2023-10-10 09:58:07 -07:00
Ryan Barrett
d5499acaf3
AP: parallelize inbox delivery with a thread pool
...
fixes #652 . this should make inbox deliveries roughly 10x faster.
2023-10-07 15:08:02 -07:00
Ryan Barrett
5efd97d867
add Object.lock and new add, remove, and put methods
2023-10-07 13:51:59 -07:00
Ryan Barrett
59abcb00bc
Protocol.send: drop log_data kwarg
...
protocols are responsible for logging objects themselves
2023-10-07 12:54:32 -07:00
Ryan Barrett
7e7962fe45
add orig_obj kwarg to Protocol.send
2023-10-07 12:49:39 -07:00
Ryan Barrett
4909c0814e
deliver self-replies to all followers
...
fixes #639
2023-10-06 14:59:47 -07:00
Ryan Barrett
62302b9105
more docstring formatting tweaks
2023-10-06 08:22:50 -07:00
Ryan Barrett
db29ad7757
docs: fix docstring formatting, other tweaks
2023-10-05 23:32:31 -07:00
Ryan Barrett
e89730e68f
drop /_ah/ path prefix on task handlers
...
...since it's not supported in dispatch.yaml: https://cloud.google.com/appengine/docs/flexible/reference/dispatch-yaml?tab=python#url
2023-09-29 13:49:17 -07:00
Ryan Barrett
03a9295224
noop, tweak logging in protocol.py
2023-09-29 11:32:28 -07:00
Ryan Barrett
01d3b67bed
add Protocol.for_handle
2023-09-29 11:32:28 -07:00
Ryan Barrett
a823dd1d65
use protocol subdomains in AP inbox
...
...and other misc protocol subdomain fixes
2023-09-27 13:55:16 -07:00
Ryan Barrett
771de9770e
AP inbox bug fix: handle Like with null object
...
fixes https://console.cloud.google.com/errors/detail/CIiI9b-nz7-bIA;time=P30D?project=bridgy-federated
2023-09-27 09:43:16 -07:00
Ryan Barrett
e9e8827ef9
standardize more on 'handle' and 'id' terms
...
* User.readable_id => handle
* User.readable_or_key_id => handle_or_id
2023-09-25 12:33:24 -07:00
Ryan Barrett
169f8d7a2c
add Protocol.handle_to_id, implement in all protocols
2023-09-22 13:11:15 -07:00