Wykres commitów

368 Commity (16724974b7a2b32d910b11b8d5d56b1d0df5cfbe)

Autor SHA1 Wiadomość Data
Ryan Barrett 16724974b7
User.get_or_create bug fix: check status when creating a new user 2024-06-23 09:08:13 -07:00
Ryan Barrett 349f4ba544
user page UI: ellipsize user-visible handles
fixes #994
2024-06-19 11:05:10 -07:00
Ryan Barrett cb2a3bef0b
Object: drop legacy converting (un-escaping) between ^^ and # in ids/URLs
for #469, well over a year old, I think we're safe to forget about this now
2024-06-13 13:24:32 -07:00
Ryan Barrett fdca3b6d55
Protocol.receive: don't attempt to deliver to followers on non-enabled protocols
mostly just handles this more gracefully. these deliveries were failing anyway, just not cleanly. fixes eg https://console.cloud.google.com/errors/detail/CMHloZaRmPXQZQ;time=P30D?project=bridgy-federated , probably others too
2024-06-13 12:02:54 -07:00
Ryan Barrett 026d99edc0
pass ignore_links=True to html_to_text everywhere
for #976
2024-06-06 18:14:35 -07:00
Ryan Barrett 3fe402e54c
drop Object cache in Protocol.load 2024-06-04 14:27:04 -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 bad49575fb
Web: always use fetched URL as id, not u-url
fixes #829, cc #566
2024-06-03 16:20:46 -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 251bd202d7
deprecate Users.atproto_notifs_indexed_at, atproto_feed_indexed_at 2024-06-03 14:12:08 -07:00
Ryan Barrett a2376f8f14
prune more logging messages 2024-06-01 07:17:44 -07:00
Ryan Barrett fabfb58aa4
Object.get_or_create authz: allow an id on its own object
for #566
2024-05-29 20:17:33 -07:00
Ryan Barrett d6728a2e1b
Object.get_or_create authz check: allow a user to modify their profile object
for #566
2024-05-29 16:39:09 -07:00
Ryan Barrett 8f5d8221a9
add ids.profile_id, use everywhere
for #566
2024-05-29 16:18:15 -07:00
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 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 0a3976e33a
Object._post_put_hook: use objects_cache_lock for objects_cache
fixes https://console.cloud.google.com/errors/detail/CMv025380KiFOg?project=bridgy-federated
2024-05-27 20:38:51 -07:00
Ryan Barrett 5a77dde7e8
noop: Object.actor_link: remove dead code 2024-05-24 09:53:16 -07:00
Ryan Barrett 91ffffc8e0
bug fix for quality filter (REQUIRES_*) status checks
they go before explicit opt in overrid
2024-05-16 23:33:30 -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 71b2306476
User.status/is_enabled: make explicit opt in override implicit profile opt-outs
...like Bluesky's hide from logged in views. fixes #1052
2024-05-15 10:35:03 -07:00
Ryan Barrett 2b449c6d31
User.status blocked bug fix for account age
for #1048
2024-05-13 07:35:12 -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 890c7083d3
Protocol.REQUIRES_NAME: check against handle, id 2024-05-11 16:47:12 -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 67e0ac414e
stop storing Object.as1 in datastore, generate it dynamically instead
I thought I'd use it in the web console for debugging more, but I use a Python shell instead
2024-05-07 22:13:54 -07:00
Ryan Barrett f533479e0b
noop: drop unused flask.g imports 2024-05-07 17:14:59 -07:00
Ryan Barrett 38a8067ef7
models.PROTOCOLS: switch to hard coding protocol string labels/abbrevs
we used to wait for ProtocolUserMeta to populate these string keys, but that was awkward to use in datastore model properties with choices, below; it required overriding them in reset_model_properties, which was always flaky.
2024-05-07 16:15:20 -07:00
Ryan Barrett 5fa0645d0b
user page: don't show DMs to protocol bot users
fixes #1022
2024-05-06 12:10:13 -07:00
Ryan Barrett c98d8fce00
switch ATProto polling from cursor to indexedAt
for #954
2024-05-05 07:31:12 -07:00
Ryan Barrett 2f1ec8779f
ATProto: start using cursors in feed and notif polls
for #954
2024-05-03 12:54:59 -07:00
Ryan Barrett 0ddb1255f4
UI: fix main user link on user pages to be external 2024-04-30 16:13:31 -07:00
Ryan Barrett f668a53f74
User.is_enabled: if a user explicitly opts in, override profile opt outs
fixes #974
2024-04-30 12:38:43 -07:00
Ryan Barrett b6be345921
UI: refactor actor link rendering into User.user_link / Object.actor_link 2024-04-29 12:27:00 -07:00
Ryan Barrett bf70ddd348
user pages UI: don't show user in every activity on profile and feed pages
it's redundant
2024-04-29 11:26:28 -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 4012b13a5a
User: add delete as a type that expires 2024-04-26 09:59:08 -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 55ae9fd2bb
User.enable/disable_protocol: move email out of datastore tx 2024-04-24 14:34:52 -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 506de7fd1d
User.get_or_create: if the id is a copy, return the original
...which will be in a different protocol! worried this will break something. hrm.
2024-04-23 17:56:59 -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 c86c91b25b
User.enable_protocols bug fix: only call create_for for copy protocols
also add integration test for following protocol bot user from ATProto
2024-04-23 16:38:08 -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 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 0c37d94191
ids.translate_* noop refactoring: from_proto => from_, to_proto => to 2024-04-20 21:03:06 -07:00