Wykres commitów

284 Commity (7c71feb30d6e7cb13a4354514c091ab55c6254e4)

Autor SHA1 Wiadomość Data
Ryan Barrett 788b37279a
pass Object data in receive task HTTP payload instead of through datastore
trying to cut down datastore load and costs. this switches receive tasks from storing and fetching Objects from the datastore to passing their properties - notably as2, our_as1, bsky, etc - in the HTTP request body, as serialized JSON inside form-encoded params.

for #1354, #1149
2024-10-01 21:44:12 -07:00
Ryan Barrett 64b3b09365
common.unwrap bug fix, handle integer ids
fixes https://console.cloud.google.com/errors/detail/CMyCsrj2u_-gHw;locations=global;time=P30D?project=bridgy-federated
2024-09-26 21:11:15 -07:00
Ryan Barrett a64316df74
Web.poll_feed_task: add last_polled param to detect and suppress dupes
re 0f805e0885, 6cdbefa6de
2024-09-21 08:22:21 -07:00
Ryan Barrett 6cdbefa6de
Web.poll_feed_task: don't return 304 because it incurs retries
0f805e0885 made us both return 304 and create a new task on errors, which led to a task explosion because we'd retry and create more tasks. oops.
2024-09-21 07:48:08 -07:00
Ryan Barrett 794a772619
switch ATProto chat polling from task to cron job 2024-09-10 16:46:37 -07:00
Ryan Barrett 36ac136ebf
common.report_error: log message and exception 2024-08-30 13:09:15 -07:00
Ryan Barrett 6ebe119e6e
common.report_error bug fix, error_reporting.Client.report_exception doesn't take msg 2024-08-29 21:03:22 -07:00
Ryan Barrett a896b5c869
Protocol.check_supported: allow DMs to/from protocol bot user copy ids
for #966
2024-08-29 12:56:07 -07:00
Ryan Barrett 6675d9805c
User.user_link: add name, handle, pictures, proto kwargs, remove maybe_internal_link 2024-08-21 07:55:09 -07:00
Ryan Barrett 70dd6d3ceb
minor logging optimizations
for https://github.com/snarfed/bridgy-fed/issues/1149
2024-08-02 08:03:44 -07:00
Ryan Barrett 5679d696a4
cache models.get_originals in memory
for #1149
2024-08-01 16:20:13 -07:00
Ryan Barrett e9dc38c75c
actually turn on ndb global cache with global_cache_policy
🤦
2024-08-01 12:42:13 -07:00
Ryan Barrett c193a4634b
common.cache_policy, global_cache_timeout_policy: handle both types of keys
google.cloud.datastore.key.Key or google.cloud.ndb.key.Key. see https://github.com/googleapis/python-ndb/issues/987
2024-08-01 12:32:28 -07:00
Ryan Barrett 4097fe71fb
use ndb in-memory context cache for DID doc Objects
for #1149
2024-08-01 12:09:37 -07:00
Ryan Barrett 3529216e5d
disable caching get_originals (88cbe3b) until bugs are fixed
for #1149
2024-07-31 09:14:31 -07:00
Ryan Barrett 88cbe3b7b4
cache models.get_originals in memcache with new memcache_memoize decorator
for #1149
2024-07-30 14:50:33 -07:00
Ryan Barrett 33e0d0b14a
common.memcache_key: encode Unicode chars as UTF-8 2024-07-30 14:49:50 -07:00
Ryan Barrett 075c33cade
memcache: encode spaces in keys as %20
fixes https://console.cloud.google.com/errors/detail/CNPzqYzWg4_TyQE;time=P7D?project=bridgy-federated
2024-07-16 13:48:52 -07:00
Ryan Barrett 7b0151b0cf
memcache: truncate keys at 250 chars
max memcache key len:
https://github.com/memcached/memcached/wiki/Commands#standard-protocol
https://pymemcache.readthedocs.io/en/latest/apidoc/pymemcache.client.base.html

fixes https://console.cloud.google.com/errors/detail/CNPzqYzWg4_TyQE;time=P30D?project=bridgy-federated
2024-07-12 07:50:54 -07:00
Ryan Barrett 98d21ae0d9
common.report_error/exception bug fix, handle running outside request context 2024-07-05 12:15:06 -07:00
Ryan Barrett 866f6593e3
add a few domains to the blocklist 2024-06-27 13:20:07 -07:00
Ryan Barrett 550e1030c4
drop unused TLD_BLOCKLIST
subsumed by using brevity.TLDs in 84949f265b
2024-06-23 09:22:50 -07:00
Ryan Barrett fc0cc1118a
activitypub.inbox: short circuit on activity or actor id on opted out domain 2024-06-23 09:20:22 -07:00
Ryan Barrett b20bbf0564
memcache config: try to only use prod Memorystore on prod GAE 2024-06-19 11:01:46 -07:00
Ryan Barrett 4e489a4ee0
activitypub.inbox: store seen activity ids in memcache, short circuit on seen ids earlier 2024-06-13 13:54:37 -07:00
Ryan Barrett 3c06739889
common.report_exception bug fix 2024-06-13 12:02:54 -07:00
Ryan Barrett ba00850840
turn on memorystore ndb global cache in hub and atproto_firehose 2024-06-04 19:27:52 -07:00
Ryan Barrett 3ccce1bc89
start using memorystore memcached for ndb global cache 2024-06-04 15:40:32 -07:00
Ryan Barrett 07517f1685
ndb global cache: limit to users and profile objects, not other objects/activities 2024-06-04 14:27:04 -07:00
Ryan Barrett 83893d0ea7
HTTP caching headers: switch to flask_util.headers
for #432, fixes https://console.cloud.google.com/errors/detail/CMK10__x4ZbgbQ;time=P7D;refresh=true?project=bridgy-federated
2024-06-04 14:19:39 -07:00
Ryan Barrett 712da61181
auth error reporting: standardize messages, include HTTP context
trying to collect them into two top-level Error Reporting errors, with details for each one in the user field

for #566
2024-06-04 11:27:17 -07:00
Ryan Barrett e8e2c9692d
common.report_error bug fix
fixes https://console.cloud.google.com/errors/detail/COyxtrLf5r2XowE;time=P30D?project=bridgy-federated
2024-06-03 16:20:53 -07:00
Ryan Barrett cc564a2b19
turn on authorization checks! HTTP sig matches actor, actor is allowed to modify object
for #566
2024-06-03 14:12:08 -07:00
Ryan Barrett 9c4888b02e
switch from flask_util.cached to HTTP caching, suppress some verbose logging 2024-05-30 14:55:35 -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 348987f0b4
add Protocol.REQUIRES_OLD_ACCOUNT, enable for ActivityPub 2024-05-11 19:20:33 -07:00
Ryan Barrett f2b5f79489
ATProto firehose: add handle wrapper that catches exceptions
also refactor and simplify load_dids, error reporting. #978
2024-05-10 19:59:12 -07:00
Ryan Barrett b49fe13e59
ATProto firehose: use report_exception() so we get stack traces 2024-05-09 21:31:41 -07:00
Ryan Barrett 940c0e8cae
ATProto firehose: don't assume required fields, handle error reporting errors
for #978
2024-05-09 13:26:24 -07:00
Ryan Barrett a690bc0115
add bsky.social, x.com to domain blocklist
for https://github.com/snarfed/bridgy-fed/discussions/1035 . thanks for the nudge @lucajet!
2024-05-09 07:08:34 -07:00
Ryan Barrett 0f35a2e1a1
ATProto firehose: convert to function we can run in a thread
for #978
2024-05-07 16:58:52 -07:00
Ryan Barrett c608ecaa36
noop: misc constants cleanup 2024-05-05 16:35:23 -07:00
Ryan Barrett 0781a4c695
AP inbox delivery: return 422 when a user with a bad handle follows the bot user
for #982
2024-05-04 13:39:39 -07:00
Ryan Barrett b6845246e9
fix protocol bot users' image URLs
re: #967
2024-04-28 08:14:55 -07:00
Ryan Barrett 3c62f7cfcc
give up on email for now, still can't get SMTP to work
Gmail SMTP is unhappy with auth, even though I got it to work on https://shell-py3.appspot.com/ , and Gandi SMTP seems to block Google Cloud IPs. sigh.
2024-04-24 15:30:20 -07:00
Ryan Barrett a79dc45b28
email: update from address 2024-04-24 15:07:42 -07:00
Ryan Barrett b543fdb1d5
switch to Gmail SMTP, other minor tweaks 2024-04-24 14:26:20 -07:00
Ryan Barrett ece168fac1
email me when someone enables or disables a protocol 2024-04-24 11:15:28 -07:00
Ryan Barrett 11eb082190
tighten common.unwrap so it doesn't remove protocol bot user URLs
...like https://bsky.brid.gy/ . this hopefully fixes following bot users in eg AP to enable protocols.
2024-04-23 12:00:39 -07:00
Ryan Barrett ed78090d2c
expand User.ap_subdomain to allow protocol subdomains like bsky
part of setting up per-protocol bot users for #880
2024-04-22 11:12:03 -07:00