Ryan Barrett
146abbf718
add shallow kwarg to Protocol.load
2023-06-17 14:13:17 -07:00
Ryan Barrett
bbcb8de44a
noop test refactoring: finally unify request context push/pop into testutil
2023-06-15 15:09:03 -07:00
Ryan Barrett
60a4a2bb9f
move domain non-TLD validation from webfinger into Web
...
fixes https://console.cloud.google.com/errors/detail/CMG7h4PJju67Og;time=P30D?project=bridgy-federated
2023-06-15 11:25:31 -07:00
Ryan Barrett
002c6a9740
add Protocol.subdomain_url()
...
for #512 , #548
2023-06-14 14:57:59 -07:00
Ryan Barrett
bfb462e414
Protocol.for_id: handle null Object.source_protocol
2023-06-13 21:36:56 -07:00
Ryan Barrett
730fa9155d
handle per-protocol subdomains in Protocol.for_id
...
for #548
2023-06-13 13:43:41 -07:00
Ryan Barrett
48c40c10a8
add Protocol.for_id and .owns_id
...
fixes #548
2023-06-13 13:21:30 -07:00
Ryan Barrett
98ec4fafdd
Protocol.for_domain: add fed kwarg, support URLs as well as domains
2023-06-12 22:05:13 -07:00
Ryan Barrett
fed9e40145
AP users: generalize sending class in Protocol.receive
...
for #512
2023-06-12 20:52:42 -07:00
Ryan Barrett
0902994af0
webfinger: infer protocol from brid.gy subdomain in request or resource
...
first commit for inferring protocol. exciting! for #512
2023-06-12 15:50:00 -07:00
Ryan Barrett
e7f8710cc4
noop test_protocol for_domain/for_request refactoring
2023-06-12 14:17:44 -07:00
Ryan Barrett
cb1f80832f
AP users: add Protocol.ABBREV, Protocol.OTHER_LABELS
...
for #512
2023-06-11 08:14:17 -07:00
Ryan Barrett
510cd036bf
AP users: add Protocol.for_domain and for_request
...
getting ready to serve per-protocol subdomains, eg nostr.brid.gy, ap.brid.gy, etc
for #512
2023-06-10 19:55:08 -07:00
Ryan Barrett
c98ab3f2d5
AP users: Object schema change, domains => users
...
also for AP => wm, only try to send webmentions to domains that we already have an existing Web user for. the vast majority of targets are fediverse URLs, and we were trying to send them all wms, ie at least running wm discovery and finding nothing. harmless, but a waste.
2023-06-09 12:56:45 -07:00
Ryan Barrett
7c82bf7ec5
AP users: finish migrating Follower from string domains/ids to User keys
...
for #512
2023-06-07 19:06:44 -07:00
Ryan Barrett
9cb8c1f9f2
AP users: start migrating Follower from string domains/ids to User keys
...
for #512
2023-06-07 12:43:48 -07:00
Ryan Barrett
9d1dc652f9
Protocol.load: bug fix, handle Object.as1 going from non-None to None
...
fixes https://console.cloud.google.com/errors/detail/CI3L3MzXjPza9gE;time=P30D?project=bridgy-federated
2023-06-02 21:53:44 -07:00
Ryan Barrett
29f1a1d4ac
AP users: start parameterizing URLs, including UI pages and AP endpoints
...
user pages now have /[protocol]/ prefix, AP endpoints have /ap/ prefix. for #512
2023-05-30 16:38:58 -07:00
Ryan Barrett
47b04f5574
rename Web.LABEL from 'webmention' to 'web'
2023-05-30 12:15:36 -07:00
Ryan Barrett
c8b2103e13
rename Webmention class => Web, webmention.py => web.py
2023-05-26 17:40:29 -07:00
Ryan Barrett
eaa4e5333a
start to make User subclasses for each protocol
...
#512
2023-05-26 16:07:36 -07:00
Ryan Barrett
892047a10c
add Protocol metaclass and protocol.protocols global for storing subclasses
2023-05-23 15:15:28 -07:00
Ryan Barrett
f933c7e237
AP users: serve AS2 for external homepage URLs
...
#512
2023-05-22 23:17:42 -07:00
Ryan Barrett
d2ab48b23e
switch circular imports to runtime imports; split out flask_app.py from app.py
...
runtime imports are just as bad, but...meh. eventually I'll untangle them for real. #486
2023-04-18 17:18:17 -07:00
Ryan Barrett
629c1a2bd4
unify Object.new/changed generation into Protocol.load
...
also:
* switch back to preserving fragments in URL ids
* webmention.fetch: if URL id redirects, preserve original id in Object
2023-04-03 07:53:15 -07:00
Ryan Barrett
e41ce9216c
noop, rename Protocol.get_object => Protocol.load
2023-03-29 13:13:32 -07:00
Ryan Barrett
e6be9cabb8
incoming AP: when we can't load the keyId, store a deleted Object
...
prevents re-fetching the same failing keyId actor over and over when we get the same Delete actor activity sent to all of our inboxes
2023-03-29 12:51:37 -07:00
Ryan Barrett
68de408789
Protocol.get_object(): store object before returning
...
also flesh out FakeProtocol
hopefully helps with https://console.cloud.google.com/errors/detail/CKCN17fmoZHraw;time=P30D?project=bridgy-federated , don't really know though
2023-03-27 14:14:37 -07:00
Ryan Barrett
fb5f7b3fb0
move current user into Flask g request-global
2023-03-20 14:28:14 -07:00
Ryan Barrett
aeb2fd480a
tests: rename remaining test data hostnames to clarify web vs fediverse
...
followup to f6e5727602
2023-03-19 15:43:55 -07:00
Ryan Barrett
6ce9a83181
don't add notification label unless an activity involves the user
...
for #442 (ish)
2023-03-13 20:38:46 -07:00
Ryan Barrett
71174b69f9
don't deliver replies to followers
...
also start new test_protocol file. fixes #444 .
2023-03-13 17:25:10 -07:00