Wykres commitów

165 Commity (e41ce9216cbcf8a424dfe418f6349c7fca6ed36a)

Autor SHA1 Wiadomość Data
Ryan Barrett e41ce9216c
noop, rename Protocol.get_object => Protocol.load 2023-03-29 13:13:32 -07:00
Ryan Barrett c3192cc1df
Webmention.fetch: add full authorship algorithm and fetch 2023-03-26 16:47:46 -07:00
Ryan Barrett 28e8baff6c
change Protocol.fetch() to return an Object instead of populating one 2023-03-22 20:49:28 -07:00
Ryan Barrett 20f86c7de3
handle wm => AP with targets that we've already federated wm => AP
fixes https://console.cloud.google.com/errors/detail/CMHpr9L3ooGKeQ;time=P30D?project=bridgy-federated
2023-03-22 12:30:55 -07:00
Ryan Barrett acf474e2a9
standardize fetch(id, obj) args 2023-03-20 19:25:05 -07:00
Ryan Barrett fb5f7b3fb0
move current user into Flask g request-global 2023-03-20 14:28:14 -07:00
Ryan Barrett b2c60226b7
add Webmention.send, tweak method signature 2023-03-20 11:26:43 -07:00
Ryan Barrett 7dc5a060a6
start Webmention subclass of Protocol, implement fetch 2023-03-19 21:08:24 -07:00
Ryan Barrett d433dd3abe
wm => AP: switch actors in outgoing activities from objects to string ids
mostly. also inlines single-element attributedTo lists to just the element, without the list.
2023-03-19 09:34:42 -07:00
Ryan Barrett 5169c2e44e
misc noop tweaks, mostly tests 2023-03-19 09:34:42 -07:00
Ryan Barrett 5e3c623552
add User.actor_id() 2023-03-19 09:34:42 -07:00
Ryan Barrett 31645618dc
abstracting protocols: start to use send()
#388
2023-03-10 07:36:50 -08:00
Ryan Barrett ffd8810b44
start to separate logic from protocols with new Protocol/ActivityPub classes
for #388
2023-03-10 07:36:50 -08:00
Ryan Barrett 2dfddec2ef
convert activitypub.py logic to use all AS1 2023-03-03 09:28:40 -08:00
Ryan Barrett 150f2ec5fe
webmention.py: noop refactoring, drop self.source_domain 2023-02-25 21:41:57 -06:00
Ryan Barrett 42c648284d
noop TODO comment 2023-02-24 11:51:24 -06:00
Ryan Barrett fd27dabe61
switch JSON properties to custom JSONProperty that works in web console UI
https://github.com/googleapis/python-ndb/issues/874#issuecomment-1442753255
2023-02-24 07:25:29 -06:00
Ryan Barrett 91a60c7e67
switch Object.as1 to be a ComputedProperty 2023-02-23 21:17:26 -06:00
Ryan Barrett e423bde6d0
unify logging for writing datastore entities into post put hook
and other logging tweaks
2023-02-14 15:38:42 -08:00
Ryan Barrett 588598c5ff
switch most uses of common.get_as2 to common.get_object 2023-02-14 14:56:27 -08:00
Ryan Barrett d64e5e875e
test_webmention: drop unused atom test data 2023-02-14 07:40:37 -08:00
Ryan Barrett 6446c8c421
convert Object.type and .object_ids to ComputedPropertys
https://googleapis.dev/python/python-ndb/latest/model.html#google.cloud.ndb.model.ComputedProperty
2023-02-13 21:43:49 -08:00
Ryan Barrett f39c532ad3
add User.homepage, is_homepage() 2023-02-12 12:03:27 -08:00
Ryan Barrett ad63e23aeb
/webmention: check that user exists at the beginning, not the end 2023-02-10 10:53:39 -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 e1856c21a1
add more logging for when we write Objects 2023-02-07 08:24:36 -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 08265123f6
Activity => Object: use 'in progress' status
#286
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 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 eca2f6f1ca
outbound AP: only log pretty-printed AS2 object on first request, not all 2023-01-24 16:49:48 -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 783abcaf25
add update profile button on user page UI
for #376
2023-01-23 18:57:49 -08:00
Ryan Barrett 1627ff667a
translate webmention from home page into profile (actor) Update
for #376, #331
2023-01-23 16:09:25 -08:00
Ryan Barrett 37e389447a
always store Follower.last_follow as AP/AS2 Follow activity
specifically, this switches storing outbound follows from inbound webmentions from AS1 to AS2.
2023-01-18 21:09:43 -08:00
Ryan Barrett 5182bb92f3
Mastodon interop: fill in the updated field for Updates if it's missing
Mastodon requires it:
https://docs.joinmastodon.org/spec/activitypub/#supported-activities-for-statuses
https://socialhub.activitypub.rocks/t/what-could-be-the-reason-that-my-update-activity-does-not-work/2893/4
https://github.com/mastodon/documentation/pull/1150
2023-01-17 11:16:14 -08:00
Ryan Barrett 1a9655e441
incoming webmentions, support AS1 activities with multiple objects
eg multiple repost-of. fixes https://console.cloud.google.com/errors/detail/CNm24c6QnvjQygE;time=P30D;refresh=true?project=bridgy-federated
2023-01-08 22:55:55 -08:00
Ryan Barrett 7ac1006021
background task bug fix: override task runner host
we were using request.host_url blindly, which was fed.brid.gy for user-facing requests, but bridgy-federated.uc.r.appspot.com for tasks. #335
2023-01-05 15:05:35 -08:00
Ryan Barrett 512737cc99
add task queue for delivering AP Creates and Updates to followers
fixes #335
2023-01-04 20:48:39 -08:00
Ryan Barrett fe5c3947a8
drop OStatus! it's been unused for years
fixes #282
2023-01-04 19:22:11 -08:00