Ryan Barrett
bf97c1af4f
store all incoming AP activities in Objects
2023-02-11 22:53:50 -08:00
Ryan Barrett
3feb44e414
apply AP Updates to stored Objects in datastore
...
for #409
2023-02-11 22:23:01 -08:00
Ryan Barrett
7e2fbd1ed0
make AP Deletes mark stored Objects deleted
...
for #409
2023-02-11 21:47:55 -08:00
Ryan Barrett
45fc9786a2
activitypub: fetch full objects of reposts so we can render them in feeds
...
for #419
2023-02-11 19:58:07 -08:00
Ryan Barrett
6d2668e64d
serve /r/ URLs as AS2 from the datastore, don't fetch and convert on the fly
...
for #392 , #378
2023-02-11 18:35:34 -08:00
Ryan Barrett
5d455b7d18
switch webfinger to serve entirely out of Users in datastore
...
no more fetching and converting users' home pages on demand!
for #392 , helps #378
2023-02-09 20:00:58 -08:00
Ryan Barrett
f16338fc57
fix crash on followers/following pages with before/after query params
...
fixes https://console.cloud.google.com/errors/detail/CPnW-eq837TnswE;time=P30D?project=bridgy-federated , introduced in a140a60a7f
2023-02-09 08:26:30 -08:00
Ryan Barrett
d5eac953d0
more error handling for signup UI flow when user's web site fetch fails
...
fixes #400
2023-02-08 20:28:30 -08:00
Ryan Barrett
cb66a2f33b
fix delivering reposts to followers
...
evidently broken by #286 . fixes #418
2023-02-08 11:03:54 -08:00
Ryan Barrett
b739bd4cee
return 404 on requests for unknown users instead of automatically creating them
2023-02-07 18:28:52 -08:00
Ryan Barrett
b5a0386cd0
store home page URL in update profile Objects, render better in activities UI
...
fixes #407
2023-02-07 12:44:41 -08:00
Ryan Barrett
52c6aa6160
fix update profile Object id
...
use synthetic URL with #update-[timestamp] fragment, not just home page URL
2023-02-07 12:23:08 -08:00
Ryan Barrett
cb605e96c6
user page activities: if object is user, render as pretty user link
...
for #406
2023-02-06 21:28:40 -08:00
Ryan Barrett
f922ce89bb
user page: activities: render fediverse actor links as @-@
...
for #406
2023-02-06 21:08:52 -08:00
Ryan Barrett
3623df8e20
bring back default signing user for shared inbox
...
for #403 , fixes https://console.cloud.google.com/errors/detail/CIfnyvKDx8mDTA;time=P30D?project=bridgy-federated
2023-02-06 20:08:32 -08:00
Ryan Barrett
4b37674624
always sign requests with current user's key, stop defaulting to snarfed.org
...
for #403
2023-02-06 19:23:25 -08:00
Ryan Barrett
717b068193
signed_post: don't follow redirects
...
fixes https://console.cloud.google.com/errors/detail/CLuyuajU2sqLtAE;time=P30D;refresh=true?project=bridgy-federated
2023-02-06 14:44:17 -08:00
Ryan Barrett
e42c11bab2
make follow UI respect User.use_instead
...
once more, with feeling for #403
2023-02-05 20:59:39 -08:00
Ryan Barrett
a820eeb57a
Activity => Object: temporarily disable inner object rendering
...
...until we're storing inner objects everywhere.
2023-02-05 08:17:22 -08:00
Ryan Barrett
d74c00f5b6
unfollow: handle Follower.last_follow with string id instead of object
...
fixes #402
2023-02-04 21:23:04 -08:00
Ryan Barrett
2a1b199558
Activity => Object: user dashboard UI bug fixes, add missing Object index
2023-02-04 20:46:28 -08:00
Ryan Barrett
9680f6f83e
Activity => Object: drop /recent, tweak feed queries, update datastore indices
2023-02-04 20:46:28 -08:00
Ryan Barrett
532ccb8ac1
Activity => Object: use StructuredProperty for Object.delivered etc, add protocol
...
#286
ndb implements StructuredProperty by hoisting each nested property into a
corresponding property on the parent entity, prefixed by the StructuredProperty's
name, eg delivered.uri, delivered.protocol, etc.
For repeated StructuredPropertys, the hoisted properties are all repeated on the
parent entity, and reconstructed into StructuredPropertys based on their order.
https://googleapis.dev/python/python-ndb/latest/model.html#google.cloud.ndb.model.StructuredProperty
2023-02-04 20:46:27 -08:00
Ryan Barrett
f9891b6ef7
Activity => Object: add activity label, unify Objects for AP => wm
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
4d2fcdd76f
Activity => Object: fully populate labels, source_protocol webmention
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
a76fe45891
Activity => Object: finish ap_delivered, ap_undelivered, ap_failed
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
97ffc10f72
Activity => Object: populate Object.object_ids property
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
eafba6d7cd
Activity => Object: populate Object.type
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
d72be97d78
Activity => Object: populate ap_* fields for inbox delivery results
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
94a74b9800
noop: test_webmention: switch more asserts to assert_object()
2023-02-04 20:46:27 -08:00
Ryan Barrett
9d4e73344b
Activity => Object: populate ap_delivered, ap_undelivered, ap_failed
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
58e836b380
Activity => Object: update webmention.py
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
060ad96752
Activity => Object: update activitypub.py
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
8176cd1f56
Activity => Object: update pages.py
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
23aff3b176
Activity => Object: update follow.py
2023-02-04 20:46:27 -08:00
Ryan Barrett
d655ea0024
Activity => Object: update xrpc_feed.py
...
#286
2023-02-04 20:46:27 -08:00
Ryan Barrett
cc453035c8
initial design of new Object model, implement it in render.py
2023-02-04 20:46:27 -08:00
Ryan Barrett
55ee0e468a
update follow tests for snarfed/oauth-dropins@52b00f602f
2023-02-04 20:46:10 -08:00
Ryan Barrett
82547c9557
override User.get_by_id() to handle use_instead
...
fixes #403
2023-02-04 19:53:30 -08:00
Ryan Barrett
d523cc085a
remove OStatus parts of Webfinger
...
background on Mastodon interop:
* https://docs.joinmastodon.org/spec/webfinger/
* https://github.com/mastodon/mastodon/pull/11280
* https://docs.joinmastodon.org/spec/activitypub/#publicKey
2023-01-25 20:59:40 -08:00
Ryan Barrett
f0a5f1745e
webfinger: return data even if site has no representative h-card
...
fixes #384
2023-01-25 20:41:29 -08:00
Ryan Barrett
38c7c1bc5f
webfinger: return 404 if User not found
...
for #384
2023-01-25 20:00:54 -08:00
Ryan Barrett
d724ae8cba
accept Updates to Person objects, do nothing with them
...
fixes #387
2023-01-25 19:44:48 -08:00
Ryan Barrett
d85ffaec04
implement stub empty outbox
...
for #383
2023-01-25 13:12:24 -08:00
Ryan Barrett
05c8dc83c4
override link label for home page to be "Web site"
...
for #331
2023-01-25 12:33:53 -08:00
Ryan Barrett
bb2d3e03de
noop: convert a few %s'es to f-strings
...
thanks flynt! https://github.com/ikamensh/flynt
2023-01-24 12:17:24 -08:00
Ryan Barrett
46736df21b
common.postprocess_as2 bug fix, handle multiply valued image field
2023-01-23 21:13:05 -08:00
Ryan Barrett
0d0a4ed642
update profile bug fix: always populate object.updated field
...
for #376
2023-01-23 20:53:34 -08:00
Ryan Barrett
e6889b4cf6
activities UI bug fix for rendering profile updates
2023-01-23 20:46:12 -08:00
Ryan Barrett
378bb5dbf4
activities UI: handle empty Activity, source_mf2 without `items`
...
for #376
2023-01-23 19:20:31 -08:00